逢 甲 自動控制工程學系專題製作 專 題 論 文 · 彌補思考式ai 和反應式ai...

50
自動控制工程學系專題製作 HexCrawlerSimMechanics模型建立 Modeling of HexCrawler by using SimMechanics 指導教授:林南州 生:傅承偉 中華民國九十六年六月二十一日

Upload: others

Post on 30-Aug-2019

4 views

Category:

Documents


0 download

TRANSCRIPT

  • HexCrawlerSimMechanics

    Modeling of HexCrawler by using SimMechanics

  • i

  • PARALLAX HexCrawler Robot Kit

    MATLAB SimMechanics

    ii

  • Abstract

    The research goal, mainly is constructing constructs hexrobots to

    explore hexrobots the gait behavior patterns and the computer analog

    modeling. The nature insect always can in rugged the uneven road surface

    smooth migration, and has the formidable environment adaptiveness,

    thereupon my human desire discussion imitation insect type structure

    hexrobots organization by and its walk way, therefore we choose a group

    to imitate the insect condition six full machines artificial this topic the

    research main body.

    The research study uses HexCrawler Robot Kit which PARALLAX

    Corporation produces is the research subject, and uses in MATLAB

    SimMechanics to construct constructs hexrobots the computer model, the

    affiliation by such experimental study, discusses hexrobots the capacities,

    also expected constructs the model which constructs future to be able to

    perform to apply in hexrobots research.

    iii

  • .................................................................................................................................i

    ........................................................................................................................ii

    Abstract ........................................................................................................................ iii

    .........................................................................................................................iv

    ...........................................................................................................................vi

    ........................................................................................................................ viii

    ..................................................................................................................1

    1.1 ..............................................................................................1

    1.2 ..............................................................................................2

    1.3 ..........................................................................................................3

    ......................................................................................5

    2.1 HexCrawler Robot ...........................................................................5

    2.1.1 ...........................................................................................6

    2.1.2 ...............................................................................................7

    2.2 HexCrawler Robot ...........................................................................9

    2.2.1 ..............................................................................................9

    2.2.2 ....................................................................................11

    3.1 SimMechanics........................................................................................13

    3.2 ...........................................................................................14

    3.2.1 ....................................................................................15

    3.2.1 ........................................................................................17

    3.3 ...............................................................................................19

    3.3.1 ....................................................................................19

    3.3.2 ....................................................................................22

    iv

  • 3.4 ...................................................................................................25

    ....................................................................................28

    ............................................................................................34

    ......................................................................................................................35

    A M- ..........................................................................................36

    B M- ..........................................................................40

    v

  • 2.1 HexCrawler .. 5

    2.2 CAD .. 6

    2.3 ...... 7

    2.4 HS-322HD 7

    2.5 . 8

    2.6 . 8

    2.7 . 9

    2.8 . 9

    2.9 10

    2.10 . 11

    2.11 ..... 11

    2.12 ..... 12

    3.1 MATLAB . 13

    3.2 SimLink 14

    3.3 .. 15

    3.4 .. 16

    3.5 .. 17

    3.6 .... 18

    3.7 .... 18

    3.8 .... 20

    3.9 .... 21

    3.10 ()(). 22

    3.11 . 23

    3.12 .. 24

    vi

  • 3.13 .. 25

    3.14 .. 26

    3.15 .. 27

    4.1 .... 28

    4.2 .... 29

    4.3 .... 29

    4.4 .... 30

    4.5 .... 30

    4.6 .... 31

    4.7 .... 32

    4.8 .... 32

    4.9 .... 33

    4.10 ... 33

    vii

  • 2.1 HexCrawler Robot Kit . 5

    3.1 ... 15

    3.2 . 17

    3.3 19

    3.4 22

    3.5 25

    viii

  • 1.1

    AI AI

    [Ref. 5]

    1

  • 1.2

    HexCrawler SimMechanics

    (1)

    (2)

    (3)

    (4)

    (5)

    (6)

    2

  • 1.3

    (robotics revolution)

    [Ref. 6]

    50%

    R.A.Brooks

    3

  • McMahon[Ref. 3]

    Full,Blickhan Ting[Ref. 2]

    Donner[Ref. 1] 80

    SSAHexpod SSAHexpod

    (gait)MIT

    80 Genghis

    4

  • 2.1 HexCrawler Robot

    MATLAB SimMechanics HexCrawler

    PARALLAX

    HexCrawler Robot Kit 2.1

    2.1 HexCrawler Robot Kit

    PARALLAX HexCrawler Robotics kit

    Gauge 5052 Aluminum

    ( 2.69g/cm3)

    19.56" 15.75" (49.68cm

    40.00cm) leg to leg

    282sq. 6(15.24cm)

    4.86(12.34cm)

    7.5lbs.(3.4kg) 4lbs.with servos.(1.81kg)

    2(&) HS-322HD 12

    Parallax Board of education (BOE)

    Basic Stamp2 (BS2)

    Parallax Servo Controller (PSC)

    2.1 HexCrawler

    5

  • 2.1.1

    2.2 CAD

    2.2

    2.3

    Hip Jpint

    Knee Joint

    1

    2 2.3

    6

  • 2.3

    2.1.2

    PARALLAX HexCrawler Robot

    Kit

    HexCrawler Robot Kit

    19.56"

    15.75" (49.68cm 40.00cm) 4lbs.with servos.(1.81kg) Parallax Servo

    Controller (PSC) 2.4 HS-322HD

    2.4 HS-322HD

    7

  • 2.5

    2.5

    2.6

    8

  • 2.2 HexCrawler Robot

    2.2.1

    [Ref.13]

    McGhee

    McGhee

    1

    2

    3

    4

    5

    6

    2.7

    1

    2

    3

    4

    5

    6

    2.8

    9

  • 1

    2

    3

    4

    5

    6

    2.9

    2.9

    t=0

    145 1 2 1

    145 1/21

    d

    236 1

    236 1 2 1

    d

    145 1

    145 1 2 1

    d

    2.10

    10

  • 2.10

    2.2.2

    Moment of inertia

    2.11

    2

    121 mbIxx = 2

    121 maIyy = ( )22

    121 bamIzz +=

    11

  • (1)

    2.12

    ( 2.69g/cm3)

    gm 716.620716.109915.105049.405 =++=

    0 0 16022.749 0 00 0 0 66294.53785 00 0 0 0 82317.287

    IxxI Iyy

    Izz

    2cmg = =

    (2)

    gm 206.58=

    0 0 108.44 0 00 0 0 70.9346 00 0 0 0 38.513

    IxxI Iyy

    Izz

    = =

    2cmg

    12

  • HexCrawler SimMechanics

    MATLABMathWorks 1984

    MATrix LABoratoryMATLAB

    3.1 SimMechanics

    3.1 MATLAB

    MATLAB/ Simulink

    (mathematical)(computation) (control)

    (DSP)(Communication)

    MATLAB/ Simulink SimMechanics

    (Physical Modeling)(Physical System)

    Simulink (System-Level)

    SimMechanics

    13

  • (Subsystem)

    SimMechanics

    Simulink SimMechanics

    3.2 SimLink

    3.2

    SimMechanics

    SimMechanics

    SimMechanics

    14

  • 3.2.1

    (1)

    3.1

    (2)

    SimMechanics 3.3

    3.3

    15

  • (3)

    3.4

    3.4

    3.4 (0,0,0)

    620.716(g)[16022.749 , 0 , 0 ; 0 , 66294.53785 , 0 ; 0 , 0 ,

    82317.287]

    SimMechanics

    3.5

    16

  • 3.5

    3.2.1

    (1)

    3.2

    1

    17

  • (2)

    3.6

    3.6

    3.7

    90

    3.7

    18

  • 135 246

    3.3

    3.3.1

    (1)

    3.3

    4

    MATLAB

    19

  • (2)

    3.8

    3.8

    SimMechanics 3.8

    MATLAB

    MATLAB M (gfm.m)

    20

  • (InitSetup.m)

    K_GROUND = 1000; //

    C_GROUND = 0; //

    MU_S = 0.4; //

    MU_K = 0.2; //

    LIMB_COND = [0 1 0 1 0 1]; //

    P_PLANT = [0 0 0; 0 0 0; 0 0 0; 0 0 0; 0 0 0; 0 0 0]; //

    ;

    y = [FFootX FFootY FFootZ PFootZ LimbCond PX PY PZ];

    (3)

    3.9

    21

  • 3.10 ()()

    3.3.2

    (1)

    3.4

    4

    22

  • MATLAB

    (2)

    3.11

    23

  • 3.12

    3.12

    24

  • 3.4

    (1)

    3.5

    SimLink

    (2)

    3.13

    25

  • 3.13 2

    3.14

    3.14 IC

    MATLAB SimLink

    3

    3.14

    2 3 0

    26

  • 3.15

    27

  • MATLAB

    4.1 4.2 4.3 4.4 SimMechanics

    4.5 4.6

    4.1

    28

  • 4.2

    4.3

    29

  • 4.4

    4.5

    30

  • 4.6

    31

  • 4.7

    4.8

    32

  • 4.9

    4.10

    33

  • MATLAB SimMechanics

    SimMechanics

    SimMechanics

    SimMechanics SimLink

    34

  • [1] Donner,M.,Real Time Control of Walking, Brikaurser, Boston,1987.

    [2] Full, R. J., Blickhan, R. and Ting, L. H.,Leg Design in Hexapodal

    Runners,J. exp. Biol. 158,pp.369-390, 1991.

    [3] McMahon, T. A.,Mechanics of Locomotion,the International Journal of

    Robotics Research, Vol.3, No.2, summer1984.

    [4] Kenneth S. Espenschied, Roger D. Quinn, Randall D. Beer, Hillel J. Chiel,

    Biologically based distributed control and local reflexes improve rough

    terrain locomotion in a hexapod robot, Elsevier of Robotics and Autonomous

    Systems, 1996.

    [5] NanJou Lin,Dynamics and Control of Open-and Closed-Chained Multibody

    Systems,Ph.d. Dissertation, Case Weatern Reserve University, 1992.

    [6] Raibert, M.H., Introduction: Legged Locomotion, the International Journal of

    Robotics Research, Vol.3, No.2, summer 1984, pp.2-3.

    [7]

    10 4 2002 8 pp.392-396

    [8] 273 pp.129~141

    [9]

    [10]

    1993

    [11]

    [12]

    2006

    [13] 4+2

    2001

    35

  • A M -

    function y = gfm(u)

    % Force model of ground with friction

    % LimbID

    % Identification number of the limb.

    LimbID = u(1);

    % [PFootX, PFootY, PFootZ]

    % Position of the foot in inertia frame.

    PFootX = u(2);

    PFootY = u(3);

    PFootZ = u(4);

    % [VFootX, VFootY, VFootZ]

    % Velocity of the foot in inertia frame.

    VFootX = u(5);

    VFootY = u(6);

    VFootZ = u(7);

    % KGround

    % Stiffness of the force model of the ground.

    global K_GROUND;

    KGround = K_GROUND;

    % CGround

    % Damping coefficient of the force model of the ground.

    global C_GROUND;

    36

  • CGround = C_GROUND;

    % MuS

    % Static friction coefficient.

    global MU_S;

    MuS = MU_S;

    % MuK

    % Kinetic friction coefficient.

    global MU_K;

    MuK = MU_K;

    % LimbCond

    % 1 designates the foot as being touching or penetrating the ground.

    % 0 designates the foot as being released from the ground.

    global LIMB_COND

    LimbCond = LIMB_COND(LimbID);

    Down = 1;

    Up = 0;

    % [PX, PY, PZ]

    % Position of the plant of the foot in inertia frame, or the point of

    % contact made by the foot when it first penetrated the ground.

    % PZ is simply the ground z location.

    global P_PLANT;

    PX = P_PLANT(LimbID, 1);

    PY = P_PLANT(LimbID, 2);

    PZ = P_PLANT(LimbID, 3);

    37

  • if PFootZ

  • PY = PFootY + sin(FFootHorAng) * SFriction / KGround;

    P_PLANT(LimbID, 1) = PX;

    P_PLANT(LimbID, 2) = PY;

    end

    else

    FFootX = 0;

    FFootY = 0;

    FFootZ = 0;

    end

    y = [FFootX FFootY FFootZ PFootZ LimbCond PX PY PZ];

    39

  • B M -

    clear global K_GROUND;

    global K_GROUND;

    K_GROUND = 1000;

    clear global C_GROUND;

    global C_GROUND;

    C_GROUND = 0;

    clear global MU_S;

    global MU_S;

    MU_S = 0.4;

    clear global MU_K;

    global MU_K;

    MU_K = 0.2;

    clear global LIMB_COND;

    global LIMB_COND;

    LIMB_COND = [0 1 0 1 0 1];

    clear global P_PLANT;

    global P_PLANT;

    P_PLANT = [0 0 0; 0 0 0; 0 0 0; 0 0 0; 0 0 0; 0 0 0];

    40

    HexCrawlerSimMechanics().doc Modeling of HexCrawler by using SimMechanics.docHexCrawlerSimMechanics().doc Abstract 1.1 1.2 1.3 2.1 HexCrawler Robot 2.1.1 2.1.2 2.2 HexCrawler Robot 2.2.1 2.2.2 3.1 SimMechanics 3.2 3.2.1 3.2.1 3.3 3.3.1 3.3.2 3.4 A M- B M-