mechatronics design of motion systems

Upload: unsha-bee-kom

Post on 04-Jun-2018

242 views

Category:

Documents


0 download

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