My Thesis Defense ( format)

Download Report

Transcript My Thesis Defense ( format)

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 data plotting 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 real time 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, pseudo inverse 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 user developed 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 user developed 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

  

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