Title: Multiple Robot Simulation MRS system
1Multiple Robot Simulation (MRS) system
- Robotics Laboratory
- Lab routine presentation
- Sylvia Cheong
- March 07, 2002
2Outline
- Brief introduction
- Previous work on IRIS project
- Current project status on IRIS project
- New robot models and enhancement of MRS
- Future work
3Introduction
- MRS is a 3D graphical robotic simulation tool,
written in C. - Using MRS to simulate robot kinematic behaviour
- Unix version rendering using Open Inventor on
the IRIX 6.5 platform - PC version rendering using OpenGL on the Win32
platform
4Introduction (contd)
- MRS features listed
- Forward and inverse kinematics
- Workcell planning
- Trajectory planning
- Grasping
- Remote control
- Collision detection
5Previous Work
- An external remote controller was implemented,
called as nettest - Written in C
- Using TCP/IP protocol and Workcell Control
Protocol (WCP) - Remote control to change base position and
orientation of the robots and/or objects
6Current Project Status
- The final integration of IRIS Flexible
Fixtureless Assembly (FFA) workcell - A more well-defined Common Object Request Broker
Architecture (CORBA) interface - supports a full functional client-server
communication between the FFA supervisor and MRS
system - allows various platform type of clients to
interact with MRS system
7MRS Remote Control Interface
- Use Case
- The Remote Control (RC) System acts as a bridge
between FFA Supervisor and the MRS system. - For example, information is sent from FFA
Supervisor to MRS for simulation and
visualization, so that the user may monitor the
Robot(s) behaviour in MRS virtual workcell
8MRS Remote Control Interface
9MRS Remote Control Interface
- CORBA and CorbaScript versions
- CORBA ORBacus (version 4.0)
- Naming service
- Concurrency model single-thread model
- Server side, by default set to reactive model
- Client side, by default set to blocking model
- Creating thread, using JTCThread if necessary
- is a Java-like Threads for C
- CorbaScript (version 1.3.3)
10MRS Remote Control Interface
- Both server and client are written in C
- Requires good understanding of C and CORBA
- RC provides service for remote controlling the
workcell elements in MRS - Changing robot joint angles
11MRS Remote Control Interface
- OMG IDL descriptions extracted from the Interface
Repository and are made directly available to
scripts - no OMG IDL stub or skeleton needs to be generated
- a much more user-friendly interface for the user
- retrieving usefully data from the server side for
information update and error checking
12MRS Remote Control Interface
- Server side
- More interface functions
- Fundamental communication interfaces
- Used to have 4 interface functions only
setipName ( ), selectWorkcellid ( ), selectMode (
) and setVar ( ) - More interfaces have been added to current design
for updating workcell element information and
error checking from the client side including
getBaseMode ( ), getBaseVar ( ), getTrajTime ( )
getTrajectoryDelay ( ) and other get function
interfaces - Controlling delay time and trajectory iterations
- Numerical calculation functions support for the
client, e.g., inverse kinematics
13MRS Remote Control Interface
- FFA workcell consists of 3 FanucS400 robots
- Using JTCThread to provide the thread features
- plan trajectory for 3 robot workcell elements
simultaneously - send starting and ending values for 3 robots
- server takes care of the threading work, to spawn
and send appropriate data to MRS - using JTCThread, rather than receiving 3 thread
requests from 3 different clients - Eliminate the delaying execution of client
request
14MRS Remote Control Interface
- Client side
- CorbaScript eliminates re-compilation to add new
processes - no ffa_Client.exe executable file is generated
- CorbaScript provides a dynamic binding to OMG IDL
descriptions - The client CorbaScript Interpreter interprets the
client script to set and get the workcell element
data from the server
15MRS Remote Control Interface Implementation
16MRS Remote Control Interface Implementation
- Interface Definition Language (IDL) both server
and client share the same idl file - Constructor/destructor only used by the server
itself - Connection sets up the connection between FFA
server and MRS system
17MRS Remote Control Interface Implementation
- Calculation presents the adaptor functions for
pre-processing input data from the client, sent
to MRS - Data export used for data transferring
- All the data, including joint variables of the
workcell element (robot) and the Cartesian
(base/end-effector) frame of the robot is
required to invoke these functions
18MRS Remote Control Interface Setup
- MRS server
- Start MRS by double clicking on the MRS icon, and
load the FFA workcell - Naming server
- Interface repository server
- FFA RC server
- FFA RC client
19MRS Remote Control Interface
- Finalized the IRIS FFA workcell
- Verified robotics simulation and planned
trajectories for FFA workcell - Export trajectory data to CorbaScript data format
- Improved graphical interface (3-button mouse
control) - Documented the software
20MRS robot models
MRS robot models from left to right, back row
Puma 760 and FanucS400 Front row CRSF3, Puma 560
and Redisetro (Red1).
21MRS robot models
22Future works IRIS FFA and MRS
- MRS User manual
- MRS RC Interface User manual