mechatronics design of motion systems
TRANSCRIPT
-
8/13/2019 Mechatronics Design of Motion Systems
1/17
International Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 1
131402-6565-IJMME-IJENS April 2013 I JENS I J E N S
Abstract-- To help in facing the two top challenges in
developing mechatronic systems, while maintaining desired
accuracy and to optimize system level performance to meet the
design requirements, this paper proposes an accurate
mathematical and simulink models for accurate mechatronicsdesign and verification of both system and control of motions
throughout Mechatronics systems design and development
process, including proper selection, analysis, integration and
verification of the overall system and sub-systems performance
in terms of output speed, angle, torque, current, acceleration
and signals, resulting in simplifying and accelerating
Mechatronics systems design process. The proposed models
intended to be used for research purposes in mechatronics
motion systems design, motion control applications, as well as,
for the application in educational process. The proposed model
can be modified to include any control strategy and/or any
actuator. The model was created and verified using MATLAB
simulink software
I ndex Term Mechatronics system, Motion control,
Mathematical and simulink function block models.
I. INTRODUCTIONMechatronics system design is Modern interdisciplinary
design procedure; it is a concurrent selection, integration and
optimization of the system and all its components as a whole
and concurrently, all the des ign disciplines work in parallel and
collaboratively throughout the design and development
process to produce an overall optimal des ign. Mechatronicsdesign approach tends to develop products with synergy and
integration toward constrains like higher performance, speed,
precision, efficiency, lower cos ts and functionality. The two
top challenges faced in developing mechatronic systems are
the early identifying system level problems and ensuring that
all design requirements are met, in order to evaluate concepts
generated during the design process, without building and
testing each one, mechatronics engineer, must be skilled in
modeling, simulation, analysis, and control of dynamic systems
and understand the key issues in hardware implementation [1-
6].
Motion control is a sub-field of control engineering, in which
the position or velocity of a given machine are contro lled us ing
some type of actuating device. Most used actuating devicesin mechatronics applications are electric actuating machines,
which are used in many, if not most, modern machines (e.g.
electric cars, locomotives, fans, turbines, and drills), robotics
(e.g. Mobile robot and robot arm), industrial and
manufacturing (e.g. conveyer belts, rolling, cutting, welding,
saws and bending machines as well as to spin gears and food
and medical industry mixers), also, many kitchen appliances
use DC motors. Two main motion control applications are of
concern; mobile robots and robot arms.
Accurate control of motion is a fundamental concern in
mechatronics applications, where placing an object in the
exact des ired location with the exact possible amount of force
and torque at the correct exact time, while consuming minimumpower, at minim cos t, is essential for efficient s ystem operation,
while maintaining accuracy, to simplify and accelerate
Mechatronics systems design process, and considering the
two top challenges faced in developing mechatronic systems,
including proper selection, analysis, integration and
verification of the overall system and sub-systems
performance throughout the development proces s, and
optimize system level performance to meet the design
requirements, this paper proposes an accurate general
mathematical and simulink models of system, motions and
control in mechatronics applications, in terms of output speed ,
angle, torque, current, acceleration and signals, in terms of best
selection and integration of system's mechanical parts,
controller and components , as an application example the
proposed model will be tes ted in mechat ronics des ign of two
systems a mobile robotic platform and robotic arm systems,
where an electric motor, a motion control system and
corresponding components are selected, designed and
integrated to move a given mechanical system to/with a
desired output (speed and/or position), corresponding to
applied input voltage ,Vin, achieving and maintaining all design
requirements.
Mechatronics Design of Motion Systems;
Modeling, Control and Verification.Farhan A. Salem1,2
1Mechatronics program,. Dept. of Mechanical Engineering, Faculty of Engineering, Taif University, 888, Taif,
Saudi Arabia.2Alpha Center for Engineering Studies and Technology Researches, Amman, Jordan.
Email: [email protected]
-
8/13/2019 Mechatronics Design of Motion Systems
2/17
Internat ional Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 2
131402-6565-IJMME-IJENS April 2013 IJENS I J E N S
Mobile robot is a platform with a large mobility within its
environment (air, land, underwater) it is not fixed to one
physical location. Mobile robots have potential application in
industrial and domestic applications. Accurate designing and
control of mobile robot is not a s imple task in that operation of
a mobile robot is ess entially time-variant, where the operation
parameters of mobile robot, environment and the road
conditions are always varying, therefore, the mobile robot as
whole as well as the controller should be designed to make the
system robust and adaptive, improving the system on both
dynamic and steady state performances [1].Single joint robot
arm system consists of three main parts; arm, connected to
actuator through gear train.
The following nominal values for the various parameters of two
different eclectic motor can be used and tested: First motor:
Vin=12 Volts; Jm=0.02 kgm; bm=0.03;Kt=0.023 N-m/A; Kb
=0.023 V-s/rad; Ra=1 Ohm; La=0.23Henry; TLoad, gear ratio ,
for simplici ty ,n=1. Second motor: Vin=12 Volts;Motor torque
constant, Kt = 1.1882 Nm/A; Armature Resistance, Ra =
0.1557 Ohms () ; Armature Inductance, La = 0.82 MH
;Geared-Motor Inertia: Jm= 0.271 kg.m
2
, Geared-Motor Viscousdamping bm= 0.271Nms; Motor back EMF cons tant, Kb =
1.185 rad/s/V, gear ratio, for simplicity , n=1, 10.
The robot arm system to be designed, has the following
nominal values; arm mass, M= 8 Kg, arm length, L=0.4 m, and
viscous damping constant, b = 0.09 N.sec/m. so that a voltage
range of 0 to 12 volts corresponds linearly of an Robot arm
output angle range of 0 to 180, that is to move the robot arm to
the desired output angular position, L , corresponding to the
applied input voltage ,Vin . The mobile robot system to be
designed, has the following nominal values wheel radius r
=0.075 m, wheelchair height,h= 0.920 m, wheelchair width ,b =
0.580 m, the distance between wheels centers = 0.4 m, The
most suitable linear output speed of used, domestic, mobilerobot is to move with 0.5 meter per second, (that is =V/r =
0.5/ 0.075 = 6.6667 rad/s,) . Tachometerconstant,Ktac = 12 /
6.6667=1.8 (rad/sec)
II. SYSTEM MODELING
We are to model overall systems and sub-systems including
mechanical system, actuator, system dynamics, control
systems and sens ors. The control of mechatronics system's
motion is simplified to electric machines motion control that
may or not include gear system . Motion control system and
components , A negative closed loop feedback control system
with forward controller and corresponding simulink model
shown in Fig.1are to be used. Electric machine is powered anddesired output movements will rely on how the electric motor is
commanded, by using a simple controller of e.g. PIC
microcontroller, and corresponding feedback element,
interfaces and electric machine, the output movements (the
rotation to a fixed speed or angle) can be controlled easily.
Different researches on this theme, can be found, most of it
study separate systems and control design. In [14] modeling,
simulation and analysis of the basic open loop DC motor
system using different approaches; different simplified and
accurate models are derived for different application. In [15]
analysis of how to choose DC motor to be balance with their
applications for a given mobile robot, also, specification of DC
Motor that can be used with desire mobile robot is determined
using MATLAB Simulink model. In [16] an accurate general
purpose mobile robotic platform for system and controller,
selection, design, modeling, testing and validation. In [17] a
model and control of mobile robots are presented. [18]
Addresses mechatronics design, modeling, controller
selection, design, simulation and analysis issues of a simple
robot arm considering all the forces applied upon the system.
In [18] a proposed mechatronics design including modeling
and control selection are introduced.
Meanwhile Mobile system dynamics depends on dynamics
between the surface, wheels and mobile platform, robot arm
dynamics depends on arm's mass, length and shape. The
geometry of the mechanical part determines the moment of
inertia, for simplicity, the mobile platform can be considered to
be of the cuboide or cubic s hape. Also, arm is cons idered as a
rod of mass m, length , (so that m=**s), this rod is rotatingaround the axis which passes through its center and is
perpendicular to the rod .The total equivalent inertia,Jequivand
total equivalent damping, bequiv at the armature of the motor
with gears attaches , can be calculated from known formulae.
Input units Control unit Output unit
Sensors Converters Microcontroller Motor driver
Fig. 1. (a) Motion control system and components
Fig. 1. (b) mot ion cont rol using microcontroller, and corresponding
feedback element .
-
8/13/2019 Mechatronics Design of Motion Systems
3/17
Internat ional Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 3
131402-6565-IJMME-IJENS April 2013 IJENS I J E N S
Controller
(angle, speed)Control voltage,
Vc
Angle or Speed measure e,.g
Potentiometer Tachometer
Sensor
+
-
Error, VoltAngle or Speed
reference (desired)
Volt
Motor shaft
or
Fig. 1. (c)Two Block diagram representations of PMDC motor control
Error Angle or speed
Vpot or Vtach
Robot.mat
To File
Reference i nput
Output shft
angle, speed
-K-
Kpot or Ktach
In1 Out1
DC Motor
Subsystem
P(s)
Controller to be
selected and designed
Fig. 1 . (d) P reliminary simulink model for negative feedback withforward compensation
II.I ELECTRIC MOTOR MODELING
The actuators most used in mechatronics motion control
systems, are DC machines (motors). Because their torque-
speed characteristics are achievable with different electrical
configurations and their speeds can be smoothly controlled
and in most cases are reversible, also, DC Motor and its
features can be analyzed both by Control System design
calculation and by MATLAB software .There are many DC
motors that may be more or less appropriate to a specific type
of application each has its advantages, limitations and
disadvantages. The designer must select the best one forspecific application. In [11] different types of DC machines, are
introduced with their mathematical models, current and torque
characteristics, it was shown that allmostly, all DC machines
has identical models, therefore any DC machine can be used to
build the proposed motion model, to be accurate for each
particular case, it is required, only, to modify the used actuator
model. DC motors are an example of electromechanical
systems with electrical and mechanical components, it turns
electrical energy into mechanical energy and produces the
torque required to move the load to the desired output
position, L, or rotate with the desired output angular speed,
L. The produced torque is exerted to accelerate the rotor and
ultimately this mechanical power will be transmitted through a
gear set to mechanical system part. The fundamental sys tem of
electromagnetic equations for any electric motor is given by
[14-15]:
( )
ks
s s s s
kRs R R b m R
s s s R
R R R S
du R i j
dt
du R i j P
dt
L i L i
L i L i
(1)
Where: k the angular speed of rotating coordinate system
(reference frame), Depending on motor construction (AC or
DC), the method of the supply and the coordinate system
(stationary or rotating with the rotor or stator flux) the above
mentioned model becomes transformed to the desirable form
[16]. To write the equivalent electric actuator model, for output
speed control, model of a symmetric half of the mobile robot
platform is constructed , the same model is used for output
angle control, as well as for current, torque and acceleration.
The PMDC motor open loop transfer functions without any
load attached relating the input voltage, Vin(s), to the motor
shaft output angle,m(s) , and speed m(s) , are given by:
3 2
2
( )( ) ( ) ( )
( )
( ) ( ) ( )
t
in a m a m m a a m t b
t
in a m a m m a a m t b
KsV s L J s R J b L s R b K K s
Ks
V s L J s R J b L s R b K K
2
The transfer function of PMDC, equivalent to robot arm
transfer function, in terms of input volt and output angular
pos ition, is given by:
3 2( ) *
( ) ( ( )
arm t
in a equiv a equiv equiv a a equiv t b
s K n
V s L J s R J b L s R b K K s
3
The transfer function of PMDC, equivalent to mobile robot
platform transfer function, in terms of input volt and output
angular speed is given by:
2
( ) /
( ) ( ) ( ) ( )
mobile t
in a equiv a equiv equiv a a equiv t b
s K n
V s L J s R J b L s R b K K
4
Major mechanical and electrical nonlinearities, (e.g. coulomb
friction), can be included, in this model, which is considered as
disturbance torque, and is given by:
TeTT - TEMF - Tf= 0
At s teady is given by:
Tf= Te - b*In the following calculation the disturbance torque, T, is all
torques including coulomb friction, and given by T=Tload+Tf ,
and correspondingly, the open-loop transfer function of the
PMDC, is given by: 2
( )( )
topen
a a equiv equiv a a b t
KG s
L s R J s b s L s R T K K
5
The geometry of the part determines the moment of inertia (e.g.
cuboide, Cylindrical, rod, disc, sphere etc), equations for the
total equivalent inertia, Jequiv and total equivalent damping,
bequivat the armature of the motor with gears at taches are given
in tables, for mobile robot the mobile platform can be
-
8/13/2019 Mechatronics Design of Motion Systems
4/17
Internat ional Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 4
131402-6565-IJMME-IJENS April 2013 IJENS I J E N S
cons idered to be of the cuboid or cubic shape and calculated
by Eq.(6), also the total inertia can be calculated from the
energy conservation principle.
2
2 2
1 1
2 2
3
2 2
2
2
1
12 12
0.5* * 0.5* *
*
equiv m Load equiv m Load
mobile arm
total load
totalload
N Nb b b J J J
N N
bhJ J ml
m J
mJ
6
Considering that linear velocity of platform, depends on
motor's angular speed, wheels radius, r, and gear ratio, n,
subs tituting, gives:
2 2 2
2 2 2
* ,
* * *
*
shaft
total total
load
n rn
r n
m r m r J
n n
Form robot arm application: The moment of inertia of the
robot arm can be found by computing the following integral:
2/2 3 3
/22
/2
/2
/ 8 12
3 3 12
ll
l
l
x m lx sdx s s ml
sl
Calculating and subs tituting values in (6) gives:
JLoad= (8*(0.4) ^2)/12 = 0.106666666666667 kg.m2
Substituting, we obtain,Jequiv,to be :
Jequiv = Jm + Jload *(1/1)Jequiv=0.02+0.107= 0.1267 kgm
Obtaining the total damping, btotal , gives:
bequiv = bm + bload(1/1)bequiv_arm = 0.03 + 0.09 = 0.12 N.sec/m
Form mobile robot application: The total equivalent inertia,
Jequivand total equivalent damping, bequiv at the mobile robot
armature of the motor are ,Jequiv=0.2752 kg.m2 , bequiv= 0.3922N.m.s. Neglecting the DC motors inductance, by assuming L
0, we have, transfer function relating input voltage and
outputspeed:
/( )
( ) 1
t a equiv
t b
equiv
equiv a
K R Js
V s K Ks b
J R
Transfer function relating input Vin (s)and output current:
1
( )
( ) 1
equiv
a equiv
t b
equivequiv a
bs
R JI s
V s K Ks b
J R
The transfer function relating the input voltage, Vin (s), to the
output armature current,Ia(s),directly follows:
2
1
( )
( )
a
a ma
in equiv a equiva b t
a equiv a m a equiv
Ls
L JI s
V s b R bR K Ks s
L J L J L J
Equation relating the torque developed by the motor and the
motor shaft angle is given by:
2( ) 1
( )
m
m equiv equiv
s
T s J s b s
II.II SYSTEM DYNAMICS MODELING
When deriving an accurate mathematical model for motion
system it is important to study and analyze dynamics betweensystem and surroundings, and considering all the forces
applied upon the system. The suggested model will tested for
mechatronics motion control design applications of two
systems mobile robot and robot arm. For other systems the
proposed model will include a s eparate b lock for load torques
of particular application form and dimensions, such that the
model can be applied to any motion control sys tem.
For robotic arm; Torque, T is defined as a turning or twisting
force and is calculated as given next: *T F L , Where: F Theforce acts at a length, L, from a pivot point. The torque
required to hold a mass, m, at a given distance from a pivot is
therefore:
( * )*T m g L
To calculate the extra torque required to move (i.e. create an
angular acceleration), we calculate the moment of inertia of the
part from the end to the pivot . For mobile robotic platform; In
[4,13,17] an accurate derivation of all forces acting on mobile
platform system, when it is running are introduced. For mobile
robot, considering dimensions, and the following most acting
forces and corresponding torques, can be considered:
Rolling resistance force,
_ r rF C C cos( )R normal forceF Mg 7
In terms of the vehicle linear speed Eq.(7) becomes:
r0 r1F M *g* C -C * * ( )R sign
The rolling resistance torque is given by:
R rT * *C * cos( ) * wM g r 8
The hill-climbing resistance force is given by:
climbF * *sin( )M g 9
The hill-climbing res istance,slope, torque, is given by: 10 climb slopeT T = * *sin( ) * wheelM g r
The total inertia force of the mobile platform,
slopeF F =Minertiad
dt
The inertia torque is given by:
2
slopeF F =r Minertia
d
dt
Aerodynamic Drag force, given by:2
aerod dF 0.5 AC vehicl
The aerodynamics torque is given by:
2
aerod d
1T AC
2 v ehicle wr
The angular acceleration force is given by:
-
8/13/2019 Mechatronics Design of Motion Systems
5/17
Internat ional Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 5
131402-6565-IJMME-IJENS April 2013 IJENS I J E N S
2
acc_ angle 2F
wheel
GJ
r 11
The angular acceleration torque is given by:
12 2 2
acc_ angle 2w
w w
G GT r J J
r r
III. CONTROLLERSELECTION AND DESIGN
The goal for a control system is to achieve a fast response to astep command with minimal overshoot, and minimum error or
follow a given reference input signal [17]. The modern
advances in electric motors and controllers improve motors
speed, acceleration, controllability, and reliability; also allow
designers a wider choice of power and torque. The term
control system design refers to the process of selecting
feedback gains that meet design specifications in a closed-loop
control system. Most design methods are iterative, combining
parameter s election with analys is, simulation, and insight into
the dynamics of the plant [18].There are many motor motion
control strategies that may be more or less appropriate to a
specific type of application each has its advantages and
disadvantages. The designer must select the best one for
specific application, in [11] most suitable control s trategies for
DC motor motion control, are suggested, were different control
strategies were selected, designed, applied and their action
were compared to select the most suitable control of a given
DC motor in terms of output speed and angle, Most of these
suggested control strategies will be applied in suggested
system model, mainly PID, PI, PD as separate blocks to be
applied with and without deadbeat response, also lead and lag
compensators, the designer must select the best controller for
specific application.
Systems design with prefilter: Prefilter is defined as a transferfunction Gp(s) that filters the input signal R(s) prior to
calculating the error signal. Adding a control system to plant,
will result in the addition of poles and/or zeros, that will effect
the response, mainly the added zero, will significantly inversely
effect the response and should be cancelled by prefilter,
therefore the required prefilter transfer function to cancel the
zero is given by (13). In general. The prefilter is added for
systems with leadnetworks or PIcompensators. A prefilter for
a system with a lag network, mainly, is not, since we expect the
effect of the zero to be insignificant.
Pr ( ) /efilter O OG s Z s Z 13
PID controller design: PID controllers are most used to
regulate and direct many different types of dynamic plants the
time-domain, The PID gains are to be designed and tuned to
obtain the desired overall desired response. The PID controller
transfer function is given by:2
I D P IPID P D
K K s K s KG K K
s s
14
Proportional Integral -PI controlleris widely used in variable
speed applications and current regulation of electric motors,
because of its simplicity and ease of des ign. PI controller
transfer function is given by:
( )
( )
P II
PI P
I
P
P oP
PI
K s KKG s K
s s
KK s
K s ZKG s
s s
15
Where, Zo: Zero of the PI-controller, KP: The proportional gain.The PI zero,Zo=- KI/ KP, will significantly and inversely effect
the response and should be cancelled by prefilter given by
(13).
Proportional -Derivative - PD controller: The transfer
function of PD-controller is given by Eq.(15) :
( ) ( ) ( )PPD P D D D PDD
KG s K K s K s K s Z
K 16
The PD-controller is equivalent to the addition of a simple
zeroat: /PD P DZ K K
The required prefilter transfer function to cancel the PI- zero at
ZPI=KI/ KPis given by: _ Pr ( ) /PI efilter PI PIG s Z s Z (17)
For systems with PD compensators, a prefilter is used to
eliminate any undesired effects of the term s + z introduced in
the closed-loop transfer function, the required prefilter transfer
function is given by:
_ Pr ( )
PD
PI efilter
PD
ZG s
s Z
Lead compensator:Lead compensator is a soft approximation
of PD-controller, the following approximated controller transfer
function of PD controller, and called lead compensator is given
by:
( ) Where :oC o oo
s ZG s K Z P s P
18
If Z < P this controller is called a lead controller (or lead
compensator). If Z > P : this controller is called a lag controller
(or lag compensator) .
Lag compensator; The Lag compensator is a soft
approximation of PI controller, The Lag compensator transfer
function is given by.
19
( )( )
o
lag c
o
s ZG s K
s P
Where: Zo> Po, and Zosmall numbers near zero andZo=KI/KP
, the lag compensator zero. Po: small number ,The smaller wemake Po, the better this controller approximates the PI
controller.
Lead integral compensatorcontroller transfer function is given
by:
_
( ) ( )1( )
( ) ( )
o oLead Integral C C
o o
s Z s ZG s K K
s s P s s P
-
8/13/2019 Mechatronics Design of Motion Systems
6/17
Internat ional Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 6
131402-6565-IJMME-IJENS April 2013 IJENS I J E N S
Eliminating the steady state error, but disturb transient
response settling time, and overshoot.
III.I POSITION AND VELOCITY FEEDBACK SENSORS
MODELING; POTENTIOMETER AND TACHOMETER
To calculate the error, we need to convert the actual output
(position, speed, torque, current) into voltage, V, then compare
this voltage with the input voltage Vin, the difference is the
error signal in volts.
Potentiometer is a sensor used to measure the actual output
robot position, L ,convert into corresponding volt, Vp and
then feeding back this value to controller, the Potentiometer
output is proportional to the actual position, L, this can be
accomplished as follows: The output voltage of potentiometer
is given by:
Vp= L* Kpot
Where: L :The actual position. Kpot the potentiometer
constant; It is equal to the ratio of the voltage change to the
corresponding angle change, and given
by: potK (Voltage change) / (Degree change) . Depending on
maximum desired output arm angle, the potentiometer can bechosen. for our case, input volt range Vin= 0:12, and input
angle range = 0:180 degrees, subs tituting, we have:
12 0 / 180 0 0.0667 V / degreepotK
Potentiometer constant Kpot = 0.0667 V/degree. This value
(0.0667), means that each one input volt corresponds to
180/12= 15 output angle in radians , to obtain a desired output
angular pos ition of 180 , we need to apply 12 volts, to obtain
an angular position of 90 we need to apply
( 90*0.0667= 6.0030 Volts).
Tachometer is a sensor used to measure the actual output
mobile robot angular speed, L .. Dynamics of tachometer can
be represented us ing the following equation: * / *out tac out tacV t K d t dt V t K
The transfer function of the tachometer is given by:
Vout(s) / (s) =KtacA suitable linear output s peed of domestic mobile robot is to
move with 0.5 m/s, that is:
V/r 0.5/0.075 6.6667 rad / s,
Tachometerconstant,Ktac = 12 / 6.6667=1.8
III.II THE CONTROL OF OUTPUT POSITION (ROBOT
ARM) WITH POSITION AND VELOCITY FEEDBACK.
For the feedback system shown in Fig.2, a velocity feedback is
used to stabilize systems that tend to oscillate, for this system
the output is the angular displacement, L, the rate of change of
angular position , dL(s) /dt, is actual output angular speed,
and the error signal , Ve,is given by:
* /e in pot o tac oV V K K d dt
Taking Laplace transform, and separating we have:
Ve(s) = Vin(s) - L(s) *(Kpot- Ktac*s)
L(s) = Ve(s)* Kcon*Garm(s)
Substituting, Ve, we have:
L(s) = Ve(s)*Kcont* Garm (s)= K*G(s)[Vin(s) - L(s) *( Kpot-
Ktac*s)]
L(s) = Kcont* Garm (s)*[Vin(s) - L(s) *( Kpot+ Ktac*s)]
L(s) = Kcont* Garm (s)*Vin(s) - Kcont* Garm(s)*L(s) *( Kpot+
Ktac*s)
L(s) + Kcont* Garm (s)*L(s) *( Kpot+ Ktac*s) = Kcont*
Garm(s)*Vin(s)
L(s) [ 1 + Kcont * Garm(s)*( Kpot+ Ktac*s)] = Kcont* Garm(s)*Vin
(s)
The overall transfer function in terms of input voltage and
output angular position
con arm
arm
K *G ( )( )
( ) 1 *G ( ) *
L
in cont pot tac
ssTF
V s K s K K s
For this transfer function, if given the DC motor transfer
functions and parameters, controller transfer function and
sensors gains Kpot, Ktac, we can evaluate the behavior of oursystem
Fig. 2. The control of output position with position and velocity
feedback.
IV. SYSTEM SIMULATIONS
In the proposed model the following sub-systems will be
simulated; electric actuator, input s ignals, most used and
proved control strategies for motion control, dynamics
between system and surroundings considering all the forces
applied upon the system. Based on derived equations, the
driving torques, can be s imulated, with function block model as
shown in Fig. 3(a)(b) , also a repeating sequence stair model
can be used to s imulate different disturbance torques . Different
inputs can be applied to the suggested model, to simulate
different real life inputs including; constant input, step, ramp,
motion reference profile, the simulation of motion profile is
shown in Fig. 3(d). PM Motor subsystem simulation is shown
in Fig. 4(a). The proposed model for mechatronics motion
control applications in terms of output speed and/or angle, as
well as torque, current, acceleration and controller action, is
shown in Fig. 4(b), While maintaining accuracy, this model will
simplify as well as accelerate Mechatronics systems design
proces s, both mechanical system and controller selection,
analysis, design and validation. This model can be used for
-
8/13/2019 Mechatronics Design of Motion Systems
7/17
Internat ional Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 7
131402-6565-IJMME-IJENS April 2013 IJENS I J E N S
any mechatronics motion control application the use PM motor
as prime mover. The model allows designer, using manual
switches, to select each of the following; sys tem to be deigned
and tested, (e.g. mobile robot, robot arm, conveyer ), select
control strategy ( PID, PI, PD, PI, with or without dead beat
response, lead or lag as well as lead integral compensator),
also, select input and disturbances type. The model, also,
allows visual readings of output speed, angle, as well as
torque, current, acceleration and controller action. It is
important to consider that this model can be modified to
include any control strategy, as well as, any DC machine,
depending on particular application, it is required, just to
modify, the used actuator model. The presented model allows
the use of MATLAB PID block, to be used as PI, PD and PID
controller with tuning capabilities, also a separate PD, PI
controllers models are included, as well as prefilter. Also, the
presented is support with MATLAB m.file to define and select
all system's parameters, dimensions and coefficients; that is
PMDC, mobile robot, robot arm, sensor, system dynamics and
controllers gains, poles and zeros, also this m.file can be used
separately to design, analyze derive and plot system's openloop and closed loop transfer function in terms of output
speed and/or angle, as well as torque, current and acceleration.
r^2*m*g/2
1Load torqe
sin(u)
cos(u)
SinCos
Product4
Product2
Product13
Product1du/dt
Derivative1
-C-
g
0.5
5
Inclination angle
4
Angular speed
3 r, wheel radius
2m ,Load mass
1Rolling friction coefficient
Fig. 3. (a) Load torque simulation, considering and not considering
coulomb friction
r^2*m*g/2
Coloumb friction
1Load torqe
sin(u)
cos(u)
SinCos
Product4
Product3
Product2
Product13
Product1du/dt
Derivative1
-C-
g
0.5
7
bm
6
motor Torque, Kt*i
5
Inclination angle
4
Angular speed
3 r, wheel radius
2m ,Load mass
1
Rolling friction coefficient
Fig. 3. (b) Load to rque simulation, considering and not considering
coulomb friction
Rolling f riction coeff icient
m ,Load mass
r, wheel radius
Angular speed
Inclination angle
Load torqe
Load Subsystem
Fig. 3. (c) Load t orque function block model
1
Out1Switch1
Switch
Ramp
slope=2
Ramp
slope=1
12
Constant7.999
Clock
Fig. 3. (d) motion profile simulation.
-
8/13/2019 Mechatronics Design of Motion Systems
8/17
International Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 8
131402-6565-IJMME-IJENS April 2013 IJENS I J E N S
Current
Torque
13 POSITION linear speed
12 mobile li near speed
11POSITION LINEAR Acceleration
10
OUTPUT from angle feedback
9
OUTPUT from speed feedback
8
controller singal
7
OUTPUT from summing to controller6
From input Volt to PI filter
5SPEED LINEAR Acceleration
4 Torque3 Curent
2 Angular position
1Angular speed
Sum.4
Sum.1
Product9
Product8Product7
Product5
Product4
Product3
Product2
Product13Product12
Product11
Product10
1
s
Integrator.21s
Integrator..4
1s
Integrator..1
du/dt .
du/dt ,1
du/dt ,
15 Wheel radius
14 sensor output13
Ktach, speed feedback
12n, Gear ratio11
From PI filter
10
Controller output
9
Kpot, angle feedback
8
bm
7
T, Load torque
6
Ra
5
Input Voltage
4Kt, Torque constant
3
Kb, EMF constant
2Jm
1La
Fig. 4. (a) Motor subsystem model.
IV.I MATLAB M.FILE
V.I.I SUPPORTING MATLAB PROGRAM
The model is support with, written below, MATLAB
m.file to define and select all system's parameters,
dimensions and coefficients, controller selection (PID, PI
with deadbeat, PD with deadbeat) analyze, derive and to plot
system's response output results in terms of speed and/or
angle, as well as torque, current and acceleration. Also this
m.file can be used separately to design, motion system and
controller selection (PID, PI with deadbeat, and PD with
deadbeat) analyze, derive and plot system's open loop and
closed loop transfer function and corresponding plots of
response curves:
clc, close all, clear all
format short
% First DC motor (used)parameters
% Vin=12 ; Kt= 1.1882 ; Ra = 0.1557; La
= 0.82; Jm = 0.271; bm=0.271; Kb =
1.185; Jm =0.271 ;n=1;
%Second DC motor (used) parameters
Vin=12 ;V=12; Kt= 0.023 ; Ra = 1; La =
0.23 ; Jm = 0.271; bm=0.03; Kb = 0.023;
n=1;Jm =0.02 ;n=1;
r=0.075;% m wheel radiusg=9.79379 ;% m/s^2, grav. acc.
mobile_robot_wedth=0.580 ;% m
mobile_robot_height=0.920 ;% m
desired_linear_speed=0.5;% m/s
desired_angular_speed=
(desired_linear_speed)/r;
m=100;% mobile total mass
b_mobile=0.09;rolling_f=0.01;Kp_PI=2;Kd_
PD=2;Zo=0.1;
Po=0.11;Kp_compensator=2;Tl=10;
Cr= 0.014; % Rolling Resistance
Coefficient
inclination_angle=45;
M= 8 ; Length=0.4 ; b_arm = 0.09 ;
angle_max=90;V_max =12;
Ktach =Vin/ desired_angular_speed;
Kpot=V_max /angle_max;
Kp_PI=2;Kd_PD=2;Zo=0.1;Po=0.2;
Kp_compensator=2;Tl=10;inclination_angle
=45;
Cr= 0.014; % Rolling Resistance Coe.
% Jm = input(' Enter Motor armaturemoment of inertia (Jm) :');
% bm = input(' Enter damping constant
of the the motor system (bm):');
% Kb = input(' Enter ElectroMotive
Force constant (Kb):');
% Kt = input(' Enter Torque constant
(Kt):');
% Ra = input(' Enter electric
resistance of the motor armature (ohms),
(Ra):');
% La =input(' Enter electric
inductance of the motor armature,Henry,(La) :');
% inclination_angle=input(' Enter
inclination angle :');
disp(' ')
disp( ' ==============================')
num1 = [1];
den1= [La ,Ra];
num2 = [1];
den2= [Jm ,bm];
A = conv( [La ,Ra], [Jm ,bm]);
-
8/13/2019 Mechatronics Design of Motion Systems
9/17
International Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 9
131402-6565-IJMME-IJENS April 2013 I JENS I J E N S
TF1 =tf(Kt*n, A);
%obtaining open loop transfer functions
of DC motor system and step response
disp('DC motor OPEN loop transfer
function, Speed/Volt: ')
Gv= feedback(TF1,Kt)
disp( ' ==============================')
disp(' DC motor OPEN loop transferfunction, Angle/Volt: ')
Ga=tf(1,[1,0] )*Gv
subplot(2,1,1),step (V*Ga);title('
Position step response , open loop DC
motor system')
subplot(2,1,2),step (V*Gv);title(' Speed
step response , open loop DC motor
system')
disp( ' ==============================')
disp( ' DC motor response curves are
ploted')
disp( ' ==============================')disp(' click any key to continue
');pause,home, disp(' ')
x=1;
while1==1;
home
disp( ' ==============================')
disp(' It is required to design a
robot ARM or MOBILE robot? ')
disp( ' ==============================')
AA= input(' Enter (1) for Robot arm
design and enter (2) for Mobile robot
design: ','s');
disp( ' ==============================')
ifstrcmp(AA,'2')==1;
home, disp( ' ')
disp(' YOUR
choice is Mobile robot design ')
disp(' Please enter
robot dimensions and parameters :')
disp( ' ==============================')
disp(' click any key to continue
'); pause, home
% wheel_radius= input( ' Enter
mobile robot wheel radius : ' );% mobile_robot_height= input( '
Enter mobile robot height : ' );
% mobile_robot_wedth= input(
' Enter mobile robot wedth : ' );
% Dist_wheels= input( '
Enter Disttance between wheels : ' );
% desired_linear_speed=
input( ' Enter mobile robot desired
output linear speed : ' );
% m= input( ' Enter mobile
robot total mass : ' );
% friction= input( ' Enter
rolling friction coefficient between the
wheel and road surface : ');
% V = input(' Enter
applied input voltage Vin :');
J_mobile =(mobile_robot_wedth*(mobile_robot_height)^3)/12;
Jequiv_mobile = Jm+
J_mobile/(n)^2;
bequiv_mobile = bm +
b_mobile/(n)^2;
desired_angular_speed=
(desired_linear_speed)/r;
Ktach =Vin/
desired_angular_speed ;%tachometer
constant
num_mobile=[ Kt*n];
den_mobile=[La*Jequiv_mobile
,(Ra*Jequiv_mobile+bequiv_mobile*La),(Ra* bequiv_mobile+Kt*Kb)];
disp( ' ==============================')
disp( ' mobile robot open loop transfer
function and step response')
disp( ' mobile robot open loop
transfer function, Omega/Volt')
G_robot_angular_speed_open=tf(num_mobile
, den_mobile)
disp( ' ==============================')
disp( ' mobile robot open loop
transfer function, linear speed/Volt')
G_robot_linear_speed_open=tf(num_mobile,
den_mobile)*r
disp( ' ==============================')
disp( ' mobile robot open loop
transfer function, Vin/Current')
G_robot_volt_current1=tf((1/Ra)*[1,
bequiv_mobile/Jequiv_mobile ],
[1,(1/Jequiv_mobile)*(bequiv_mobile+(Kt*
Kb)/Ra) ])
disp( ' ==============================')disp( ' mobile robot open loop transfer
function, Vin/Current')
G_robot_volt_current2=tf((1/La)*[1,
La/Jequiv_mobile ],
[1,(Ra/La)+(bequiv_mobile/Jequiv_mobile)
, (Ra*bequiv_mobile/La*Jequiv_mobile+
Kt*Kb/La*Jequiv_mobile) ])
disp( ' ==============================')
-
8/13/2019 Mechatronics Design of Motion Systems
10/17
International Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 10
131402-6565-IJMME-IJENS April 2013 IJENS I J E N S
disp( ' mobile robot open loop transfer
function, Torque/Angle')
G_robot_torque_angle=tf([1 ],
[(Jequiv_mobile)^2, bequiv_mobile,0
])
disp( ' ==============================')
disp( ' mobile robot CLOSED loop
transfer function, Linear speed/Vin')
G_robot_linear_speed_closed=feedback(G_robot_linear_speed_open, Ktach)
disp( ' ==============================')
disp( ' mobile robot CLOSED loop
transfer function, Vin/Vtach')
G_robot_linear_Vin_V_tach=tf([2*Kt*Ktach
],[r^2*m+2*bequiv_mobile,(Ra*(r^2*m+2*be
quiv_mobile))+La*(rolling_f
+2*Jequiv_mobile),Ra*(rolling_f
+2*Jequiv_mobile)+2*Kb*Kt ])
disp( ' ==============================')
disp( ' mobile robot CLOSED loop
transfer function, Linear speed/Vin')
G_robot_linear_speed_closed=feedback(G_robot_linear_Vin_V_tach,Ktach)
fig., subplot(3,2,1),
step(G_robot_angular_speed_open),ylabel(
'Mobile Angular speed, \omega Rad/s
'),xlabel(' Time '), title('Open loop
Mobile Angular speed Rad/s, '), grid,
subplot(3,2,2),step(G_robot_linear_speed
_open),ylabel('Mobile linear speed, \nu
Rad/s '),xlabel(' Time '), title('Open
loopMobile linear speed m/s, '), grid,
subplot(3,2,3),step(G_robot_linear_speed
_closed),ylabel('Mobile linear speed,
\nu Rad/s '),xlabel(' Time '),
title('Closed loop Mobile linear speed
m/s, '), grid,
subplot(3,2,4),step(G_robot_volt_current
1),ylabel('Mobile current Amp
'),xlabel(' Time '), title('simplified
Input volt vs current, '), grid
subplot(3,2,5),step(G_robot_volt_current
2),ylabel('Mobile current Amp
'),xlabel(' Time '), title(' Input volt
vs current, '), grid
subplot(3,2,6),step(G_robot_torque_angle
),ylabel('Mobile torque '),xlabel(' Time'), title(' Input torque vs angle, '),
grid, fig.
subplot(2,1,1),step(G_robot_linear_Vin_V
_tach),ylabel('Mobile Vin vs Vtach
'),xlabel(' Time '), title(' Input volt
vs tacho output volt, '), grid
subplot(2,1,2),step(G_robot_linear_speed
_closed),ylabel('Mobile speed
'),xlabel(' Time '), title(' Input volt
vs output speed, '), grid
pause(2); home
disp( ' ==============================')
disp( ' select controller; PID or PI
with dead beat response? ')
WW= input( ' Enter (1) for PID, enter
(2) for PI with deadbeat response:
','s');
disp( ' ==============================')
ifstrcmp(WW,'1')==1;home, disp( ' '); disp( '
==============================')
disp(' YOUR choice is PID controller
for mobile robot control ')
disp(' Enter PID gains : ')
disp(' you can run simulink model and
use gain from PID block : ')
disp( ' ==============================')
Kp= input( ' Enter Proportional gain, Kp
= ');Kd= input( ' Enter Derivative
gain, Kd = ');Ki= input( ' Enter
Integral gain, Ki = ');PID_num=[ Kd Kp
Ki];PID_den=[ 1 0];disp( ' ==============================')
disp( ' PID transfer function')
G_PID=tf(PID_num,PID_den)
G_forward_PID=
series(G_PID,G_robot_linear_Vin_V_tach);
disp( ' ==============================')
disp( ' mobile robot closed loop with
PID transfer function, /linear
speed/Vin')
G_mobile_PID_closed=
feedback(G_forward_PID, Ktach);fig.
step(G_mobile_PID_closed),ylabel('Mobile
Vin vs Vtach '),xlabel(' Time '),
title(' Input volt vs tacho output volt,
'), grid;
step(G_robot_linear_speed_closed),ylabel
('Mobile speed '),xlabel(' Time '),
title(' Input volt vs output speed, '),
grid
elsestrcmp(WW,'2')=1;
home; disp( ' ')
disp( ' ==============================')
disp(' YOUR choice is PI controller with
deadbeat response for mobile robot
control ')disp( ' ==============================')
alpha=1.9;bita=2.2;Ts=1.2;omega_n=4.04/T
s;
Kp=((bita*(omega_n^2)*n*La*Jequiv_mobile
)-
((n*Ra*bequiv_mobile)+(n*Kt*Kb)))/(Kt*Kt
ach); Kp_PI=Kp;
Ki=omega_n^3*n*La*Jequiv_mobile/(Ktach*K
t); ZPI= Ki/Kp; Home, disp(' ')
disp( ' ==============================')
-
8/13/2019 Mechatronics Design of Motion Systems
11/17
International Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 11
131402-6565-IJMME-IJENS April 2013 I JENS I J E N S
disp( ' PI controller & Deadbeat
prefilter gains and zero are :')
fprintf(' Kp_PI =%g , Ki=%g
,ZPI=%g \n',Kp,Ki,ZPI);
num_deadbeat=[Ki*Kt/(n*La*Jequiv_mobile)
]; den_deadbeat=[1 , (Ra*Jequiv_mobile
+bequiv_mobile*La)/(La*Jequiv_mobile) ,
((n*Ra*bequiv_mobile)+(n*Kt*Kb)+(Ktach*Kp*Kt))/(n*La*Jequiv_mobile) ,
(Ktach*Ki*Kt)/(n*La*Jequiv_mobile)];
disp( ' ==============================')
disp('Closed loop transfer function with
PI deadbeat respnse & prefilter ')
T_mobile_deadbeat
=tf(num_deadbeat,den_deadbeat)
;fig., step(12*r*T_mobile_deadbeat);
ylabel('Mobile linear speed \nu
'),xlabel(' Time '), title('Mobile
linear, PI with Dead beat response, '),
grid,
endelsestrcmp(AA,'1')==1;home
disp( ' ')
disp( ' ==============================')
disp(' YOUR choice is
Robot arm design ')
disp(' Please enter Arm
dimensions and parameters :')
disp( ' ==============================')
% M= input(' Enter robot
arm mass , M=');
% Length = input(' Enter
robot arm Length, L=');
% b_arm= input(' Enter damping
factor of robot arm, b_arm =');
% n= input( 'Enter gear
ratio n = ');
% V = input(' Enter
applied input voltage Vin :');
% V_max = input(' Enter
maximum allowed voltage , V max :');
% Angle_max = input( ' Enter maximum
allowed angle for robot arm : ');
Kpot=V_max /angle_max; % pot
constsnt
Jequiv=((M* Length^2)/12)+Jm;bequiv= bm + b_arm;
num_arm_open = [Kt*n*(180/pi)];
den_arm_open=[La*Jequiv
(Ra*Jequiv+La*bequiv)
(Ra*bequiv+Kt*Kb) 0];
disp(' ');
disp(' click any key to continue ');
pause; home; disp( '
==============================')
disp('Arm OPEN loop transfer function :
')
Ga_arm_open=tf(num_arm_open,den_arm_open
)
disp( ' ==============================')
disp('Arm CLOSED loop transfer function
: ');
G_close_arm=feedback(Ga_arm_open,(Kpot/n
)); disp( ' Response plots are plotted'); fig.; subplot(2,1,1),
step(V*Ga_arm_open);ylabel('Arm
position, \theta Rad '),xlabel(' Time
'), title('OPEN loop Arm Angular
position Rad/s, '), grid;
subplot(2,1,2),step(V*G_close_arm);ylabe
l('Arm position, \theta Rad
'),xlabel(' Time '), title('CLOSED loop
Arm Angular position Rad/s, '), grid,
home; disp( '
==============================')
disp( ' select controller; PID, PD with
dead beat response? ')WWW= input( ' Enter (1) for PID, enter
(2) for PD with deadbeat response:
','s');
disp( ' ==============================')
ifstrcmp(WWW,'1')
home, disp( ' ')
disp( ' ==============================')
disp(' YOUR choice is PID
controller for robot arm ')
disp(' Enter PID gains : ')
disp(' you can run simulink
model and use gain from PID block : ')
disp( ' ==============================')
Kp= input( ' Enter Proportional gain,
Kp = ');
Kd= input( ' Enter Derivative gain, Kd =
');
Ki= input( ' Enter Integral gain, Ki =
');
PID_num=[ Kd Kp Ki];PID_den=[ 1 0];
Home, disp( ' ')
disp( ' ==============================')
disp( ' PID transfer function')
G_PID=tf(PID_num,PID_den)
disp( ' ==============================')disp( ' Closed loop Robot arm transfer
function with PID')
G_forward_PID=
series(G_PID,Ga_arm_open);
G_arm_PID_closed=
feedback(G_forward_PID, Kpot)
fig.
step(V*G_arm_PID_closed),ylabel('Arm
angle \theta Rad '),xlabel(' Time '),
-
8/13/2019 Mechatronics Design of Motion Systems
12/17
International Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 12
131402-6565-IJMME-IJENS April 2013 IJENS I J E N S
title(' Input volt vs output
Armangle,PID '), grid
else strcmp(WWW,'2')==1;
home, disp( ' ')
disp( ' ==============================')
disp(' YOUR choice is robot arm design
; PD controller with dead bead
controller response ')
disp( ' ==============================')omega_n=2.4;alpha=1.82 ;
disp( ' PD transfer function = Kds + Kp
is given by :')
Kp=(omega_n*Ra*Jm)/(Kt*Jequiv);
Kp_PD=Kp;Kd=(((alpha*omega_n)-(bm/Jm)-
((Kt*Kb)/(Jequiv*Ra)))*Ra*Jequiv)/Kt*Kpo
t;ZPD=Kp/Kd;ZPI=ZPD;G_PD=Kd*[ 1 ZPD];
num_arm_PD =G_PD* [Kt*n];
den_arm_PD=[La*Jequiv
(Ra*Jequiv+La*bequiv)
(Ra*bequiv+Kt*Kb) 0];
G_mobile_PD_tf= tf(num_arm_PD,
den_arm_PD);G_mobile_PD_dead_closed=feedback(G_mobile_PD_tf, Kpot);
disp(' ')
disp( ' ==============================')
disp( ' PD controller & Deadbeat
prefilter gains and zero are :')
fprintf(' Kp_PI =%g , Kd=%g ,ZPd=%g
\n',Kp,Kd,ZPd);
disp( ' ==============================')
disp( ' Prefilter transfer function :');
prefilter_num=[ZPD];prefilter_den=[1
ZPD];G_prefilter=tf(prefilter_num,prefil
ter_den)
disp( ' ==============================')
disp( ' Robot arm overall closed loop
transfer function :')
G_mobile_PD_dead_overall=series(G_prefil
ter,G_mobile_PD_dead_closed)
Fig.,
step(V*G_mobile_PD_dead_overall),ylabel(
'Mobile speed \nu'),xlabel(' Time '),
title(' Arm PD with deadbeat response,
'), grid
disp(' click any key to continue ');
pause,end, end,end,
x=x+1;end
IV.I.II MATLAB CODE FOR PLOTTING ALL
SIMULATION RESPONSE CURVES
By defining blocks in simulink model, running simulation, all
data will de defined in MATLAB workspace , To plot all
response curves, run simulation then the next code, can be
used:
load model1.mat,load model2,load
model3,load model4,load model5,load
model6,load model7,load model8,load
model9,load model10,load model11;fig.,
subplot(2,2,1);plot(model_angular_positi
on), ylabel('\Theta , Rad'),xlabel('
'), title('Angular position Rad '), grid
subplot(2,2,2);plot(model_angular_speed)
, ylabel('Angular speed, \omega Rad/s'),xlabel(' '), title('Angular speed
Rad/Time, '), grid; subplot(2,2,4);
plot(model_angular_speed_RPM),
ylabel('Angular speed, RPM
'),xlabel('Time(sec)'), title('Angular
speed RPM, '), grid;
subplot(2,2,3);plot(model_current),
ylabel('Current, Amp
'),xlabel('Time(sec)'), title('Current
Amp/s, '), grid; fig., subplot(2,2,1);
plot(model_Torque), ylabel('Motor
Torque, Nm'),xlabel(' '), title('Motor
Torque Nm/Time '), grid; subplot(2,2,2);plot(load_torque), ylabel('Load Torque,
Nm'),xlabel(' '), title('Load Torque
Nm/Time '), grid
subplot(2,2,3);plot(model_linear_acceler
ation), ylabel('Linear speed Accel.,
M/s^2'),xlabel('Time(sec)'),
title('Acceleration of Linear speed
M/Time '), grid; subplot(2,2,4);
plot(model_position_linear_acceleration)
, ylabel(' Position Accel.,
M/s^2'),xlabel('Time(sec)'),
title('Acceleration of Position /Time
'), grid, fig., subplot(2,2,1);
plot(model_linear_speed), ylabel('
Mobile linear speed.,
M/s'),xlabel('Time(sec)'), title('mobile
linear speed M/s '),
grid;subplot(2,2,2);plot(model_angel_lin
ear_speed), ylabel(' Angle linear
speed., M/s'),xlabel(' Time(sec) '),
title('Angle linear speed M/s '), grid
subplot(2,2,3); plot(controller_action),
ylabel(' controller_action'),
xlabel('Time(sec)'), title('controller
signal (mA)'), grid
V. TESTING AND ANALYSIS
VI.I Mechatronics motion control design in terms of output
linear speed of Mobilerobot; plant, components, controller
selection, design and evaluation of output speed, current,
torque and acceleration and angle.
It is required to select, design and integrate a Mobile robot
system, with suitable selection of it's corresponding
mechanical parts, actuator's and sensor's parameters and
-
8/13/2019 Mechatronics Design of Motion Systems
13/17
International Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 13
131402-6565-IJMME-IJENS April 2013 I JENS I J E N S
platform dimens ions, to move with linear speed of 0.5 m/s,
(that is with angular speed of =V/r = 0.5/ 0.075 = 6.6667
Rad./s ,), , here notice that, when defining system
parameters, us ing m.file, des igner can chose and define
tachometer constant Ktach, corresponding to desired output
linear speed.
Now, switching the proposed model to output speed control
(mobile robot , conveyer belts, rolling) ,by switching sensor
to read output speed, selecting input signal to be step inputof 12 volts, selecting PID controller, running supporting
m.file to define system parameters, dimensions and
constrains, and finally running simulation, will result in
output speed, current, torque, acceleration and angle
response curves shown in Fig. 5, also direct visual readings
of all final outputs values can be taken, directly, from the
general model, the simulation results shows that the mobile
robot system, with selected parameters, dimensions and
applying PID controller with suitable gains, reaches, the
desired output linear speed of 0.5 m/s, in 0.35s, and zero
steady state error, cons tant current consumption, the PID
gains are KP=303.417042667051, KI= 414.72923375291,
KD=18.789820346901 . Now, to test designed system
robustness, Keeping the same parameters, but switching the
input to profile input signal and applying stair changing
disturbance, will result in response curves shown in Fig. 6,
the response curve show that system, while achieving
design criteria, maintain design criteria under disturbance
effect.
Now, to tes t and analyze the effect of applying Lead
integral compensator, we replace the PID controller, with
Lead integral compensator with Zo=.1; Kp =0.4; Po=0.091;
Ruining the model, will result in response curves shown in
Fig. 7, the gain , pole and zero can be adjusted for better
response.Now, to test and analyze the effect of applying PI controller
with deadbeat response, we replace the PID controller with,
PI with deadbeat response, by switching the system to PI
controller and switching-on the prefilter, the PI zero,Zo= KI/
KP, can be defined from either supporting m.file calculations
results or using modified PID block to simulate PI and
tuning. Ruining the model, will result in response curves
shown in Fig. 8.
Using the resulted response curves and/or visual readings
from model, we can evaluate and/or validate our selection
and design and correspondingly we can or adjust or select
most suitable controller or change system parameters to
meet design criteria. In conclusion the design, modeling,simulation and evaluation processes of motion control are
minimized in time, and also simplified.
VI.II Mechatronics motion control design in terms of output
angular displacement of a robotarm: plant and controller
selection, design and evaluation of output angle, current,
torque and acceleration and speed.
It is required to select, design and integrate a single joint
robot arm system, with suitable selection of it's mechanical
part, actuator, sensor parameters and d imens ions , so that an
input voltage in the range of 0 to 12 volts corresponds
linearly of Robot arm output angle range of 0 to 180, that is
to move the robot arm to the desired output angular
pos ition, L, corresponding to the applied input voltage ,Vin
, Kpot =(12/180=0.0667), Switching the proposed general
model to output angle control (robot arm), by switching
sensor to read output angular displacement, switching load
torque ,selecting input signal to step input of 12 volts,
selecting PID controller, running supporting m.file to definesystem parameters, constrains and parameters, and finally
running simulation, will result in output angular
displacement, current, torque, acceleration and angle
response curves shown in Fig. 9. Now, changing the
desired output angle output range to 0 to 45. ( for = 45,
Kpot =12/45=0.2667), Ruining the model, will result in
response curves shown in Fig. 10. Using the resulted
response curves and/or visual readings from model, we can
evaluate or validate our selection, design and
correspondingly we can or adjust or replace controller or
change system parameters to meet des ign criteria.
The proposed general model can be used to test , evaluate
and validate any given mechatronics motion control system
design e.g. electric cars, locomotives, turbines, robotics,
conveyer belts, rolling, cutting, welding, saws and bending
machines.
0 0.5 1 1.5-0.2
0
0.2
0.4
0.6
Time(sec)
Mobilelinearspeed.,
M/s
mobile linear speed M/s
0 0.5 1 1.5-0.2
0
0.2
0.4
0.6
Time(sec)
Anglelinearspeed.,
M/s
Angle linear speed M/s
Fig. 5. (a) mo bile robot output linear speed, and angle change vs t ime
responses
0 0.5 1 1.5-5
0
5
10
,Rad
Angular position Rad
0 0.5 1 1.5-5
0
5
10
Angularspeed,
Rad/s
Angular speed Rad/Time,
0 0.5 1 1.5-50
0
50
100
Time(sec)
Angularspeed,RPM
Angular speed RPM,
0 0.5 1 1.50
100
200
300
Time(sec)
Current,Amp
Current Amp/s ,
Fig. 5. (b) mobile robot output angular position, angular speed,
current vs time responses
-
8/13/2019 Mechatronics Design of Motion Systems
14/17
International Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 14
131402-6565-IJMME-IJENS April 2013 IJENS I J E N S
0 0.5 1 1.50
100
200
300
MotorTorque,Nm
Motor Torque Nm/Time
0 0.5 1 1.5-100
0
100
200
LoadTorque,Nm
Load Torque Nm/Time
0 0.5 1 1.5-10
0
10
20
30
Time(sec)
LinearspeedAccel.,M/s2
Acceleration of Linear speed M/Time
0 0.5 1 1.5-0.2
0
0.2
0.4
0.6
Time(sec)
PositionAccel.,M/s2
Acceleration of Position /Time
Fig. 5. (c) mobile robot output mot or t orque, load torque, linear
acceleration and acceleration vs time responses.
0 2 4 6-0.2
0
0.2
0.4
0.6
Time(sec)
Mobilelinearspeed.,
M/s
mobile linear speed M/s
0 2 4 6 8-1
-0.5
0
0.5
1
Time(sec)
Anglelinearspe
ed.,
M/s
Angle linear speed M/s
Fig. 6. (b) mobile robot output linear speed, and angle change vs time
responses applying motion profile input.
0 2 4 6-10
0
10
20
30
,
Rad
Angular position Rad
0 2 4 6-5
0
5
10
Angularspeed,
Rad/s
Angular speed Rad/Time,
0 2 4 6-50
0
50
100
Time(sec)
Angularspeed,
RPM
Angular speed RPM,
0 2 4 60
50
100
150
Time(sec)
Current,Amp
Current Amp/s,
Fig. 6. (b) mobile robot output angular position, angular speed and
current response curves applying motion profile. input
0 5 10 15 20-0.2
0
0.2
0.4
0.6
Time sec
Mobilelinearspeed.,M/s mobile linear speed M/s
0 5 10 15 20-0.2
0
0.2
0.4
0.6
Timesec
Anglelinearspeed.,M/s
Angle linear speed M/s
i
ll
i
ll i lFig. 7. Mobile robot; linear speed vs time response applying Lead
integral compensator
0 2 4 6-0.2
0
0.2
0.4
0.6
Time sec)
obilelinearspee
.,
smobile linear speed M/s
0 2 4 6-0.2
0
0.2
0.4
0.6
Time sec)
Anglelinearspeed.,M/s
Angle linear speed M/s
i
ll
i
ll i lFig. 8. Mobile robot output linear speed vs time response of applying
PI with deadbeat response.
0 5 100
50
100
150
200
,
Rad
Angular position Rad
0 5 10-50
0
50
100
Time(sec)
Angularspeed,
Rad/s
Angular speed Rad/Time,
0 5 10-1
0
1
2
3
Time(sec)
MotorTorque
,Nm
Motor Torque Nm/Time
0 5 10-5
0
5
10
Time(sec)
Anglelinearspe
ed.,
M/s
Angle linear speed M/s
Fig. 9. (a) Robot arm response; output position, t orque, speed vs
time response curves
0 5 10-2
0
2
4
6
Time(sec)
P
ositionAccel.,M/s2
Acceleration of Position /Time
0 5 10-50
0
50
100
Time(sec)
Current,Amp
Current Amp/s,
0 5 10-5
0
5
10
15x 10
4
Time(sec)
controlleraction
controller signal (mA)
0 5 10-500
0
500
1000
Time(sec)
Angularspeed,RPM
Angular speed RPM,
Fig. 9. (b) Robot arm response ; acceleration, current and speed vs
time response curves
0 1 2 3 4-20
0
20
40
60
Time (seconds)
l
Output Angle
0 1 2 3 4-50
0
50
100
150
Time (seconds)
omega
Output speed
li
li
Fig. 10 . Robot arm output position and Speed vs time response curves
for desired output of 45, Kpot =0.2667
-
8/13/2019 Mechatronics Design of Motion Systems
15/17
International Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 15
131402-6565-IJMME-IJENS April 2013 I JENS I J E N S
PIController
Leadintegralcomp.
PD-Controller
speedsensor
Loadtorque
REFERENCEINPUT(SPPEDorA
NGLE)
aglesensor
Kt*i
r
wheelradius
speedLINEARaccelerationm/m^2
speedLINEARaccele
ration
rr
Out1
profileinput_1
positionlinearspeedm/s
n n
-C-
inclination_angle
controllersignal
-K- _
TorqueinN/m
Torque
model8.mat
ToFile5
model7.mat
ToFile4
model6.mat
ToFile3
Tl
Tload
Repeating
Sequence
Stair
Ra
Ra
Out1
Prfileinput_2
Positionlinearspeed
Positionlinearaccelerationm/s^2
Positionlinearacce
leration
PID(s)
PIDController
Mobilelinearspeedm/s
Mobilelinear
speed
Loadtorque.,
Loadtorque,.
Rollingfrictioncoefficient
m
,Loadmass
r,wheelradius
Angularspeed
Inclinationangle
motorTorque,Kt*i
bm
Loadtorqe
LoadtorqueSubsystem
Loadtorque
s+Zo
s+Po
Leadorlag
La
La
Ktach
Ktach
Kt
Kt
Kpot
Kpot
Kb
Kb
J
m
J
m
InputVolt(0:12)
9.55
-K-
Gain
du/dt
Derivative
ZPI
s+ZPI
DeadbeatPI-prefilter
ZPD
s+ZPD
DeadbeatPD-prefilter
Current.
CurrentinAmp
Controlleraction
bm
Bm.
bm Bm
Angularspeed.
AngularspeedinRPM
Angularposition.
Angularpositioninrad
A
NGULARspeedinrad/sec
ANGULARspeedinRPM
La
Jm
Kb,EMFconstant
Kt,Torqueconstant
InputVoltage
Ra
T,Loadtorque
bm
Kpot,anglefeedback
Controlleroutput
From
PIfilter
n,Gearratio
Ktach,speedfeedback
sensoroutput
Wheelradius
Angularspeed
Angularposition
Curent
Torque
SPEEDLINEARAcceleration
From
inputVolttoPIfilter
OUTPUTfrom
summingtocontroller
controllersingal
OUTPUTfrom
speedfeedback
OUTPUTfrom
anglefeedback
POSITION
LINEAR
Acceleration
mobilelinearspeed
POSITIONlinearspeed
ACTUATOR
Subsystem
model11.mat
.2
model10.mat
.1
...
..,
-K- ..
Cr
.-
.,.
-K- .,
model1.mat
.
s+ZPI
s -
model4.mat
,.
0 ,,.1
36 ,,
.
model5.mat
,,
m,
1 s `
9
8
7
6
5
4
3
2
10
1
model3.mat
.
model9.mat
model2.mat
Fig. 4. Th e general purpose model, for mechat ronics motion cont rol applications in t erms of output speed and/or angle, as well as torque, current and
acceleration
VI. SCOPE AND LIMITATIONS
The proposed model with load torque models is limited to
motion control systems design, and tested particularly, for
mobile robotic platforms speed and s ingle joint robotic arms
pos ition using electric actuators as prime mover, but can ,
also, be used for system and motions control design and
verification of any given system, considering system's loadtorque and inertia. The proposed model can be modified to
include any control strategy and/or any actuator model
CONCLUSION
To help in facing the two top challenges faced in developing
mechatronic systems, while maintaining desired accuracy
and to optimize system level performance to meet the design
requirements, an accurate mathematical and simulink models
are proposed for accurate mechatronics design and
verification of both system and control of motions
throughout Mechatronics sys tems des ign and development
process , including proper selection, analys is, integration
and verification of the overall system and sub-systems
performance in terms of output s peed, angle, torque, current,
acceleration and signals, resulting in simplifying and
accelerating Mechatronics systems design process. The
proposed models intended to be us ed for research purposesin mechatronics motion systems design, motion control
applications, as well as, for the application in educational
process . The proposed model can be modified to include
any control strategy and/or any actuator. The model was
created and verified using MATLAB simulink software.
The proposed model can be used to select most suitable
control strategy (P, PI, PD, PID, lead, lag, lead integral and
deadbeat response) for corresponding motion control and
to ensure achieving all design requirements, also test,
evaluate and validate any given mechatronics motion
-
8/13/2019 Mechatronics Design of Motion Systems
16/17
International Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 16
131402-6565-IJMME-IJENS April 2013 IJENS I J E N S
control system design including; electric cars, locomotives,
turbines, robotics, conveyer belts, rolling, cutting, welding,
saws and bending machines, where designer using the
resulted, from model, response curves and/or visual
numerical readings, can early identifying system level
problems and ensuring that all des ign requirements are met,
therefore the design, modeling, simulation and verifying
proces ses of motion control are minimized in time and also
simplified.
REFERENCES[1] Wilfried Voss, ''A Comprehensible Guide to Servo Motor Sizing'',
Published by Copperhill Technologies Corporation,
Massachusett s, 2007.
[2] Devdas Shetty, Richard A. Kolk, Mechatronics System Design,Second Edition, SI, Cengage Learning, 2011.
[3] K. Craig, F. Stolfi, Teaching control system design throughmechatronics: academic and industrial perspectives.
Mechatronics, Vol 12, No. 2, pp. 371-381, 2002.
[4] Vasilije S. Vasi , Mihailo P. Lazarevi, Standard IndustrialGuideline for Mechatronic Product Design , FME Transactions,
104 , vol. 36, No 3, 2008.
[5] Grzegorz Seiklucki,Analysis of t he Transfer-Function Models ofElectric Drives with Controlled Voltage Source PRZEGL AD
ELEKTROTECHNICZNY (Electrical Review), ISSN 0033-
2097, R.88NR7a/2012
[6] Yu Wang, Ying Yu,Chun Xie, Xiaoyang Zhang, Weizhi Jiang, Aproposed approach to mechat ron ics design educat ion:
Integrating design methodology, simulation with projects,
Mechatronics, November 2012.
[7] Ahmad A. Mahfouz, Mohammed M. K. , Farhan A. SalemModeling, simulation and dynamics analysis issues of electric
motor, for mechatronics applications, using different
approaches and verification by MATLAB/Simulink (I). I.J.
Int elligent Systems and Applications, 2013, 05, 39-57.
[8] Wai Phyo Aung, Analysis on Modeling and Simulink of DCMotor and its Driving System Used for Wheeled Mobile Robot,World Academy of Science, Engineering and Technology 32
2007
[9] Farhan A. Salem ; Mechatronics design of general and accuratemodel for Mechatronics mobile robotic platform system and
controller, selection, design, modeling, testing and validation.
Submitted and under review to Estonian Journal of Engineering,
2013
[10]Bashir M. Y. Nouri ,modeling and cont rol of mobile robotsProceeding of the First International Conference on Modeling,
Simulation and Applied Optimization, Sharjah, U.A.E. February
1-3, 2005.
[11]Farhan A. Salem Ahmad A. Mahfouz, Modeling, controllerselection and design of electric motor for mechatronics motionapplications, using different control strategies and verification
using MATLAB/Simulink (II ). Submitt ed and accept ed, , 2012
[12] Ahmad A. Mahfouz, Ayman A. Aly, Farhan A.Salem,"Mechatronics Design of a Mobile Robot System", IJISA,
vol.5, no.3, pp.23-36, 2013.
[13]Farhan A. Salem, Mechatronics design of Small electric Vehicle's,International Journal of Mechanical & Mechatronics
Engineering 1310701-5252 IJMME / IJENS
[14]M.P.Kazmierkowski, H.Tunia "Automatic Control ofConverter-Fed Drives", Warszawa 1994.
[15]R.D. Doncker, D.W.J. Pulle, and A. Veltman. Advanced Electri-cal Drives: Analysis, Modeling, Cont rol. Springer, 2011 .
[16]Farhan A. Salem, Mechatronics motion control design ofelectric motor for desired deadbeat response specifications,
support ed and verified by new MATLAB built -in function and
simulink model, Submitted to Int. J. Intelligent Systems
Technologies and Applications, 2012
[17]Hedaya Alasooly, Control of DC motor using different controlstrategies, global journal of t echnology and optimization, volum
2 , 2011.
[18]MathWorks, 2001, Introduction to MATLAB, the MathWorks,Inc. Control System Toolbox, t he MathWorks, Inc.
[19]Richard C. Dorf, Robert H. Bishop, Modern Cont rol Systems 12Ed, Pearson Education, Inc., 2001
[20]Thomas R. Kurfess, Robotic and Automation Handbook,Washington, D.C., United States of Amarica, 2005.
[21]M.P.Kazmierkowski, H.Tunia "Automatic Control ofConverter-Fed Drives", Warszawa 1994.
NAMENCLATURE
Symbol Quantity UNIT
Vin The app lied input voltage Volte, V
Ra Armature resistance Ohm ,
ia Armature current Ampere, A
Kt Motor torque constant N.m/A
Ke Motor back-electromotive force. V/(rad/s)
m Motorshaftangular velocity rad/s
Tm Torque produced by the motor N.m
Jm Motor armature moment of inertia kg.m2
Jtotal Total inertia=Jm+Jload kg.m2
La Armature inductance Henry , H
b Viscousdampingfriction coefficient N.m/rad.s
ea,EMF: The back electromotive force, ea,EMF:
m Motor shaft output angular
position
radians
m Motor shaft outp ut angular speed rad/sec
M The mass of the platform and
cargo
Kg
g The gravity acceleration m/s2
Road or the hill climbing angle,
road slope
Rad
Cr The rolling resistance coefficients
Cd Aerodynamic drag coefficient
Zo Zero of the PI-controller
Tf coulomb friction torqueKP The proport ional gain,:
KI The Integral gain
KD The derivative gainKPI The proportional coefficient
Kpot The pot entiometer constant
-
8/13/2019 Mechatronics Design of Motion Systems
17/17
International Journal of Mechanical & Mechatronics Engineering IJMME-IJENS Vol:13 No:02 17
Ktac The tachometer constant
Farhan Atallah Sale m AbuMahfouz:
B.Sc., M.Sc and Ph.D., in Mechatronics of
production systems. Now he is ass. professor
in Taif University, Mechatronics sec., Dept.
of Mechanical Engineering and director of
alpha center for engineering studies and
technology researches. Research Interests;Design, modeling and analysis of primary
Mechatronics Machines.Cont rol and algorithm selection, design and
analysis for Mechatronics systems.Rotor Dynamics and Design for
Mechatronics applications