18
MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th , 2010

MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

Embed Size (px)

Citation preview

Page 1: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

MATLAB Robot Simulator

Adam LodesUniversity of Missouri

December 6th, 2010

Page 2: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

Introduction• Code a simulator that can model any robot

• Given the DH parameters, model and animate the robot

• Allows for the user to visualize joints and movements of any robot

• Use Puma3D by Walla Walla Washington as an example simulator

Page 3: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

Problem Statement

• The DH parameters are a set of 4 parameters that describe any link of a robot.

• Each robot can be adequately described by the set of DH parameters for each link

• From any DH table, the simulator can construct a model for the robot, and animate each joint.

Page 4: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

Approach• Assumption is to model the robot from only the DH

parameters.– No link data available– No end-affecter data available

• Aim is to model any robot, regardless of joint configuration

• Aim is to animate each joint independently

• Build simulator in MATLAB

• Use the Puma3D simulator written by Walla Walla Washington

Page 5: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

Coding Order and Approach• GUI management (uicontrol, uitable)– Enter the DH table

• Construct individual links from cylinders and rectangles (patch objects)

• Construct all the links from the entered DH table– Test many different robots

• Animate each link with tester code– Apply to all links independently– Test with many different robots

• Add control GUIs for the animation• Add extra functions (Home, Random Move)• Add an end-affecter • Add GUI support for loading different Robots

Page 6: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

Results

• Able to model any DH table• Pre-made DH tables:– Tester– Scara– Example from Class– Puma 560– Puma 260

Page 7: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

GUI 0

Page 8: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

GUI 1

Page 9: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

GUI 2

Page 10: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

GUI 3 (The Robot)

Page 11: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

Tester Robot

• Random DH table I made up to build the code

-150

-100

-50

0

50

100

150

-150

-100

-50

0

50

100

150

-100

-50

0

50

100

150

X

Y

Z

Page 12: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

SCARA Robot

-150

-100

-50

0

50

100

150

-150

-100

-50

0

50

100

150

-100

-50

0

50

100

150

X

Y

Z

Page 13: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

Class Example Robot

-150

-100

-50

0

50

100

150

-150

-100

-50

0

50

100

150

-100

-50

0

50

100

150

X

Y

Z

Page 14: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

Puma 560

-150

-100

-50

0

50

100

150

-150

-100

-50

0

50

100

150

-100

-50

0

50

100

150

X

Y

Z

Page 15: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

Puma 260

-150

-100

-50

0

50

100

150

-150

-100

-50

0

50

100

150

-100

-50

0

50

100

150

X

Y

Z

Page 16: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

Limitations• I built the simulator with MATLAB student version R2009a.

– uitable does not work in 2007 and earlier

• No link data: draw just a cylinder or a box with dimensions based on d and a parameters

• No end-affecter data, made a default

• No base data, made a default

• Scale can be adjusted

• Multiple button presses during an animation usually cause errors

Page 17: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

Possible Future Work• Make more compatible with previous MATLAB

versions

• Add on an end affecter ‘trail’ as in Puma3D simulator

• Add on more parameters: range of motion for each joint. (default values for now)

• Stabilize the program for multiple button presses

Page 18: MATLAB Robot Simulator Adam Lodes University of Missouri December 6 th, 2010

Conclusion

• Lodes Robot Simulator is an excellent tool to visualize the construction and animation of any robot

• Robots were adequately modeled and animated