23
ModelRob: A Simulink Library for Model-Based Development of Robot Manipulators Indranil Saha Department of Computer Science University of California Los Angeles Joint work with Natarajan Shankar (SRI International) Indranil Saha ModelRob 1/20

ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

ModelRob: A Simulink Library for Model-BasedDevelopment of Robot Manipulators

Indranil Saha

Department of Computer ScienceUniversity of California Los Angeles

Joint work with Natarajan Shankar (SRI International)

Indranil Saha ModelRob 1/20

Page 2: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Applications of Robot Manipulators

Indranil Saha ModelRob 2/20

Page 3: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Applications of Robot Manipulators

Many applications, including in some mission-criticalsystems, for example, spacecraft and in somelife-critical systems, for example, tele-surgical robots

Indranil Saha ModelRob 2/20

Page 4: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Model-Based Development of Cyber-Physical Systems

����������������� ��

���������������

�������������������

� �

����������������������

�����������

�������� �����

�������

����

����

������������

����������

Indranil Saha ModelRob 3/20

Page 5: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Model-Based Development of Cyber-Physical Systems

����������������� ��

���������������

�������������������

� �

����������������������

�����������

�������� �����

�������

����

����

������������

����������

Main activity is modeling, code generation is automatic

Indranil Saha ModelRob 3/20

Page 6: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Robotics Toolbox [Corke96]

A comprehensive toolbox to model robot manipulators inSimulink

Modeling blocksets are developed in Matlab S-functions

Useful for Simulation

Production code generation is not possible

Indranil Saha ModelRob 4/20

Page 7: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Objective

To generate code automatically for the robotmanipulator software from the model

Indranil Saha ModelRob 5/20

Page 8: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Objective

To generate code automatically for the robotmanipulator software from the model

Need a library of Simulink blocks, blocks shoulduse only Simulink’s basic blocks

Indranil Saha ModelRob 5/20

Page 9: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

ModelRob Library

A library to model kinematics of a robot manipulator inSimulink

Useful for both Simulation and Code Generation

Generated C code for M7 Controller (SRI’s tele-surgicalrobot)

- above 5000 lines of code in a few seconds

Indranil Saha ModelRob 6/20

Page 10: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Modeling of Cartesian Space Motion Control of aRobot Manipulator

Indranil Saha ModelRob 7/20

Page 11: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Simulation Result

Indranil Saha ModelRob 8/20

Page 12: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Conformance with Robotics Toolbox

Indranil Saha ModelRob 9/20

Page 13: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Fixed-Point Implementation of Robot Software

��������������

��������������

������� ������������

����������������� ����

��������������

��������������

���������������������

������������������

�������

��������� �����

���������

���������������� �����

��������������������������� ����

��������������

�������

��

��

��

��

����������

����������

Indranil Saha ModelRob 10/20

Page 14: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Fixed-point Modeling of M7 Controller

Created two fixed-point model for cartesian space motioncontrol of a robot manipulator: 8-bit model and 16-bitmodel

The end-effector still follows the trajectory, but with largererror

Error decreases as the number of bits increases

Indranil Saha ModelRob 11/20

Page 15: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Simulation Results

(b)

(a)

(b)

(a)

8-bitimplementation

16-bitimplementation

Indranil Saha ModelRob 12/20

Page 16: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Cyber-Physical System Development Flow

����������������� ��

���������������

�������������������

� �

����������������������

�����������

�������� �����

�������

����

����

������������

����������

Indranil Saha ModelRob 13/20

Page 17: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Limitations of Simulation

Simulation can find out bugs, but cannot guaranteecorrectness

Needs disciplined analysis approaches - formal verification

Indranil Saha ModelRob 14/20

Page 18: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Cyber-Physical System Development Flow

��������������

��������������

������� ������������

����������������� ����

��������������

���������������

�������

��

��

��������������

����������

Indranil Saha ModelRob 15/20

Page 19: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Two Step Verification Approach

Dimensional Consistency CheckingCheck if the Simulink model is well-formed with respect todimensionEnsures that the mathematical equations of the systemhave been captured correctly in the model

Functional VerificationVerification of functional properties of the system on themodelMakes sure that the system has been designed correctly

We present two toolsDimSim An automatic dimension checker for SimulinkSimprover A Simulink verifier through theorem proving

Indranil Saha ModelRob 16/20

Page 20: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Verification Issues

A number of verification tools available for Simulink models

The tools do not support nonlinear arithmetic

Need to build the tools the can handle specificnonlinearities arisen in robot models

Indranil Saha ModelRob 17/20

Page 21: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

What Properties to Verify?

Two very intutive properties..

While moving the end-effector, no part of the robotmanipulator should go inside an unsafe region.

Eventually the end-effector follows the desired trajectorywithin certain specified error bound.

Indranil Saha ModelRob 18/20

Page 22: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Future Work

Developing verification tools suitable for robot software

Extending the Library to support modeling of

- robot dynamics

- stationary robots, e.g., cylindrical, spherical and parallelrobots

- mobile robots, e.g., wheeled robots and legged robots

Indranil Saha ModelRob 19/20

Page 23: ModelRob: A Simulink Library for Model-Based Development ... · Modeling of Cartesian Space Motion Control of a Robot Manipulator Indranil Saha ModelRob 7/20. ... Created two fixed-point

Thank You!!http://www.csl.sri.com/∼shankar/ModelRob.tar

Indranil Saha ModelRob 20/20