My Thesis Defense ( format)

advertisement
M.S. Thesis Defense
Jason Anderson
Electrical and Computer Engineering Dept.
Clemson University
Overview

Previous Approaches for Robot Control Software

Motivation

Organization of the RTK

Barrett WAM Simulink Model

Barrett WAM Operating Modes

Puma 560 Simulink Model

Puma 560 Control and GUI Highlights

Video Clips of RTK

Installation of RTK

Conclusions
Previous Approaches to Robot Control

Robot Control Languages
– Proprietary software provided by the vendor

High-level programming languages like C
– The RCCL Programming Environment
– ARCL Robot Programming Environment

Object-Oriented Approaches
– Qmotor Robotic Toolkit (QRTK)

Other Approaches
– OpenRob
– MATROB
Motivation for the Simulink RTK

All previous approaches require a certain level of programming skill

MATLAB is well recognized as a leading computation and dataplotting engine used commonly in the research environment

SIMULINK provides a GUI that can be utilized for analysis using
simple drag and drop operations for model compilation

RTW is a software tool that processes the user-developed SIMULINK
block diagrams and generates C code that can be executed in realtime via the Real-Time Windows Target (RTWT)
Organization of the RTK
Barrett WAM RTK
Features










Calibration
Set Encoders
Zero Gravity / Teach Pendant
Joint Space Control
Cartesian Control
Position Blending
External Trajectory Control
Pseudo-Simulator
Soft Stop Damping
3D Display of WAM
Barrett WAM Simulink Model
Calibration



Move each joint of
WAM to joint
limits
Calculate “zero
encoder” position
based on joint
limit readings
Move WAM to
“zero encoder”
position
Zero Gravity / Teach Pendant
Calculate Parameters
 Move WAM to 3
configurations
 Measure average
torques needed to
maintain position
 Calculate params
based on torques
Teach Pendant
 Calculate torques
needed to resist
gravity based on joint
position
 Can “learn” position
for Learn/Blend mode
Position Control
Joint Control
Smooth trajectory
between initial and final
desired positions based
on joint space trajectory
generator
Cartesian Control
 Implementation of
nonlinear adaptive
controller to compute
torques needed to move
the end effector to
desired position
(orientation not
considered)
 Utilizes forward
kinematics, manipulator
Jacobian, pseudoinverse of Jacobian
Learn / Blend Positions
Learned Positions
Move WAM to
previously learned
positions via joint
space control
Blender
 Generated trajectory
through multiple
learned positions for
smooth motion
 Trajectory divided into
transition phase and
constant velocity
phase
External Trajectory Control



Execute userdeveloped trajectory
generator M-files
from MATLAB
command field
Desired position
values are written
directly to Simulink
model (not real-time)
and thus filter is used
to smooth motion
Joint space PD
control to compute
joint torques
Soft Stop Damping
An alternative to E-STOP to slowly bring arm to
resting position
Simulator & Display GUI
Display

Used to preview position in
joint space control
 Can follow motion of WAM in
semi- real time (limited by
MATLAB graphics update
function execution time)
Pseudo-Simulator

Nonlinear dynamic model of
WAM is unknown
 Joint position is determined
by double integration of joint
torque (a simplification of
Lagrange’s equation of
motion)
Setup GUI

Allows user to set all
system variables and
save to a configuration
file

User may load
configuration file from
previous operation

Mass Parameters must
be read from scope in
Simulink model
Puma 560 Control
Features








Calibration
Zero Gravity / Teach Pendant
Joint Space Control
Position Blending
Test Mode for research of new control
strategies
Simulator
3D Display of WAM
Tools Control (for end-effector)
Puma 560 Simulink Model
Motion Control
Calibration
Estimates position via
potentiometers and moves
Puma to nearest index pulse and
computes joint position
Joint Control
Joint space PD control to
compute torques
User can edit PD gains online
Zero Gravity
Joint positions applied to set of
equations to compute joint
torque to resist gravity
User can learn positions as in
Barrett RTK
Blender
Same function as in Barrett RTK
Test Mode
REMOVE
REMOVE
Subsystem in Simulink model is replaced with userdeveloped system for testing new control scheme
Simulator & Display
Function of Display screen is
identical to the Barrett RTK
Positions can be previewed and
motion can be viewed on 3D
model or joint plot while arm
is in motion
Simulator is driven by a
nonlinear dynamic model
being computed in real-time
in the Simulink model
q  M 1 (q)  G(q)  C (q, q )q 
Tools Control
Additional digital output
lines on the Servo-to-Go
I/O breakout can be
utilized to drive tools on
the end effector
Let’s watch a video!
Installation of Simulink RTK
Conclusions
The Simulink RTK is a collection of MATLAB m-files, MATLAB toolboxes, and
Simulink block diagrams that can be utilized in conjunction with RTW and RTWT
to control and simulate the Puma 560 or Barrett WAM from a standard PC
operating under the Windows 98 OS
The advantages of the SRTK are:
–Real-time execution
–User-friendly GUI
–Basic framework provided to allows the user the freedom of targeting the
specific application or interest
–Easy modification of the underlying Simulink block diagram
–Additional hardware can be easily be incorporated in any level of operation
Download