Вы находитесь на странице: 1из 13

Modeling and Simulating an Industrial Measurement Robot

Laboratory Exercises 1 and 2


EL1820, Modeling of Dynamical Systems August 2012

Johansson Christian Larsson, Oscar Fl ardh, Mikael Johansson and Bjorn Automatic Control/School of Electrical Engineering/KTH Based on material developed by Krister Edstrom, and Jan-Erik Stromberg Thomas Schon, Automatic Control, Linkopings Universitet

Goal: The goal is to gain experience and insight in modeling and simulating a realistic industrial system. Models of an industrial measurement robot will be developed using Simulink and Dymola.

NB: You need to have a good understanding of the underlying phenomena when you develop a mathematical model of a real system. This means that modeling will take a lot of time. It is therefore crucial for you to thoroughly prepare before the laboratory exercises! Do the preparation tasks before the laboratory session. 1

Contents
1 Introduction 2 System Desription 2.1 Servo Motor . . . . 2.2 Toothed Belt Drive 2.3 Lead Screw Drive . 2.4 Robot Arm . . . . . 2.5 Current Regulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 4 4 6 6 6 6 7 7 7 8 9 9 9 9 10 11

3 Laboratory Exercise 1 Modeling the Servo Motor 3.1 Purpose and Content . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Preparatory Exercises . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Laboratory Exercises . . . . . . . . . . . . . . . . . . . . . . . . . 4 Laboratory Exercise 2 Modeling of the Complete Robot 4.1 Purpose and Content . . . . . . . . . . . . . . . . . . . 4.2 Modeling Tips . . . . . . . . . . . . . . . . . . . . . . . 4.3 Preparatory Exercises . . . . . . . . . . . . . . . . . . . 4.4 Laboratory Exercises . . . . . . . . . . . . . . . . . . . A Tables . . . . . . . . . . . . . . . . . . . . . . . .

1 Introduction
We will develop a model of an industrial measurement robot and verify that the model behaves as expected in simulations. The robot under consideration is shown in Figure 1.

Figure 1: Two pictures of the robot. The exercise is divided into two four-hour sessions. In the rst session, we will model the servo controlling the robot arm. We will develop a model based on a block diagram, which can be simulated in Simulink, and we will develop an object oriented model, which can be simulated in Dymola. Both Simulink and Dymola are described in the appendix. In the second session, the model will be extended to a more complete model of the complete robot arm. This extension is only done in Dymola. There are preparation tasks to be done before both sessions. It is very important that you have carefully done the preparation tasks, otherwise there will not be time to complete the exercise.

2 System Desription
An intuitive picture of the system is shown in Figure 2: an external voltage source serves as reference signal for a current regulator, which drives a servo motor. The servo motor is connected to transmissions, a toothed belt drive and a lead screw drive, that change the vertical position of the robot arm.

Figure 2: Explanatory sketch of the robot arm. An alternative picture of the subsystems and how they interact is shown in Figure 3. More detailed descriptions of the subsystems follow below.

Figure 3: The main components in the system and their interaction. The interaction quantities are expressed in SI-units.

2.1 Servo Motor


The servo is a simple DC motor, see Figures 4 and 5.

Figure 4: The electrical subsystem.

Figure 5: The motor. The electrical data and mechanical data for the DC motor are given in Figure 9. The motor under consideration is M-586-0585. In Figure 9, there is a diagram with two curves corresponding to M-5860585. The upper curve species three constraints on the motor: maximum number of revolutions, maximum torque, and maximum power (try to nd out how!). The lower curve species the relationship between torque and angular velocity when the current to the motor is kept constant. This current is called continuous stall current and it can be read to be 3.9 A. In the section winding specications in Figure 9, there are two resistors and one inductor. The reason for this is that the winding is not an ideal inductor. The winding is both inductive and resistive. In Figure 5, RI corresponds to the armature resistance, Rr + RI corresponds to the terminal resistance, and II corresponds to the armature inductance.

In reality, the servo is connected to a tachometer, see Figure 4. The tachometer makes it possible to use the angular velocity of the servo in the feedback controller. However, since we are not going to do controller design, we neglect the tachometer.

2.2 Toothed Belt Drive


The servo motor is connected to a toothed pulley with an outer diameter of 20 mm and a thickness of 10 mm. The toothed pulley drives another toothed pulley, with an outer diameter of 80 mm and a thickness of 15 mm, using a toothed belt. The toothed belt has a length of 750 mm, and it is elastic, which makes it 0.4% longer at full load (200 N). Also assume that the belt is tightened. The pulleys are made of aluminum, with a density of 2.7 103 kg/m3 . The formulas for the moment of inertia for the pulleys can be found in, e.g., the Physics Handbook or a book in mechanics. There is energy loss at both pulleys. The smaller pulley has a friction of 2 105 Nms/rad and the larger pulley pulley has a friction of 5 105 Nms/rad.

2.3 Lead Screw Drive


The larger pulley in the belt drive is connected to a lead screw drive with a pitch of 1 inch per revolution. Data for the lead screw drive (the serial number is B-8000) is given in Figure 7. The nut in the lead screw drive is connected to the robot arm through a spring with the spring constant 75 kN/m. The total length of the screw is 1 m (note that the moment of inertia in Figure 7 is per length unit). The friction in the screw can be neglected.

2.4 Robot Arm


The lead screw drive changes the vertical position of the robot arm. The mass of the robot arm is 5.5 kg and the friction is small, 25 Ns/m.

2.5 Current Regulator


A reference signal is given to the current regulator through the port (t1 , t2 ). The current regulator supplies electrical current through the port (t3 , t4 ). The operational amplier Q2 in Figure 6 is a power amplier, which can give up to 10 V. The operational amplier Q3 amplies the voltage across the current meter shunt R9 , and it gives an output which is proportional to the current in the motor. By using this signal for feedback, the current can be regulated. For simplicity, we will use a current source instead of the current regulator in the laboratory exercises. However, note that if you are using an ideal current source, then there cannot be any inductors in the circuit.

Figure 6: Circuit diagram for the current regulator.

3 Laboratory Exercise 1 Modeling the Servo Motor


3.1 Purpose and Content
We will model the servo motor that drives the robot arm. The models will be developed in Simulink and Dymola to illustrate the differences between object oriented models and block diagram models.

3.2 Preparatory Exercises


1. Derive a state space model of the servo motor. Assume that the motor is driven by a voltage source instead of a current source. 2. Use the motor specications in the Appendix to nd numerical values of the model parameters. Note that the mechanical damping of the motor can be found by looking at the slope of an appropriate curve in Figure 9. 3. Translate your state space model to a block diagram, based on integrator elements, which can be implemented in Simulink. 4. If you have not used Simulink before you should briey read through the Getting started guide (http://www.mathworks.com/help/pdf_doc/ simulink/sl_gs.pdf). Especially chapter 2 and 3 might be useful. 5. Try to gure out what the object oriented model should look like. Look at the available standard components in Modelica, which you can nd at http://www.modelica.org/ModelicaLibrariesOverview. 7

6. If you have not used Dymola before it you should briey read through the Getting started guide (http://www.3ds.com/fileadmin/PRODUCTS/ CATIA/DYMOLA/PDF/Getting-Started.pdf).

3.3 Laboratory Exercises


1. Implement your models in Simulink and Modelica. 2. The time constants of the motor are given in Figure 9. They can be computed using the parameters from the preparatory exercises and they can also be computed using simulation. Do they match. 3. Compare the results from the two simulation programs (Simulink and Dymola). Do they match? Why or why not? 4. Discuss the differences between object oriented and block diagram based modeling. What are the benets and what are the drawbacks? Which one do you prefer in this case? Why?

4 Laboratory Exercise 2 Modeling of the Complete Robot


4.1 Purpose and Content
This time, we will model the complete robot in Dymola.

4.2 Modeling Tips


We start with giving some general tips on how to create and test models of complex systems in a structured way. First, divide the model into smaller modules and try to develop an intuition on how these smaller modules work. Make a list of the properties that are most interesting from a modeling point of view. Start with a very simple model, which incorporates the essential properties. For example, if you model a gear that mesh with another smaller gear, the most important property is that they scale the torque and angular velocity. Then, for an improved model, you can also consider the friction between the meshing teeth and the elasticity of the materials. Test the smaller modules rst, before you put them together. This will make debugging easier. When the simple model is extended with additional dynamics, it is advisable to add the slowest dynamics rst. If one of the gears in the example above is connected to a long rod of aluminum, then the rod has probably slower dynamics than the gears (if you turn the rod by applying torque to the end that is not connected to the gear, it will take longer time for the motion to propagate through the rod, compared to the time it takes for the second gear to rotate when the rst gear is rotated). In this case, it is more important to model the dynamics of the rod than it is to model the dynamics of the meshing of the gears.

4.3 Preparatory Exercises


1. Modify your servo motor model from the rst session to be driven by a current source instead of a voltage source. 2. Derive a bond graph for the components in Figure 3. Comment on your assumptions and derive numerical values for the parameters needed. 3. Reect on how a complete robot model can be structured in Modelica. As a rst choice, use the components in Modelicas standard library. We will 9

use the libraries Electrical (Basic and Sources), Mechanical (Rotational and Translational), and Blocks (Sources). With some effort, you should be able to model the system using only these standard components.

4.4 Laboratory Exercises


1. Show your bond graph to the teaching assistant, and motivate the assumptions you made. For example, we assumed that the voltages in the regulator are within the bounds given by the supply voltages. 2. The actual system will oscillate quite a bit. Can you see this in the simulations? What is the cause of the oscillations? 3. Is the system sensitive to variations in the friction coefcients? Which system properties change when the friction coefcients are varied? 4. Is it possible to reach the maximum velocity of 500 mm/s? Keep your answer to question 1 in mind. If it is not possible to reach the maximum velocity, suggest some measure to solve this problem. 5. Why is the current regulator needed?

10

APPENDIX
A Tables

Figure 7: Mechanical properties of the lead screw drive.

11

Figure 8: The servo motor.

12

Figure 9: Properties of the servo motor. 13

Вам также может понравиться