The MotoMan plugin is used to interface MOTOMAN robots via a serial
communication line using the MOTOMAN library MotoCom32.
The MotoCom
library requires a hardware key attached to the computers parallel port to
operate, see the MOTOMAN installation guide for further
information regarding the MotoCom installation.
The MotoMan interface is an ActiveX with a simple GUI containing an
event log. The event log displays errors, warnings and three levels of
info-messages.
The interface
exports different methods and events to interact with the robot. Plugin name : TORDIVEL AS MotoMan Interface Control
Basic understanding of the plugin protocol The MotoMan plugin is very strong tied to the program running in the
robot. The robot is the master and the plugin is not able to
communicate with the robot unless the robot instructions is either SAVEV
or LOADV, instructions to exchange register variables with a host
computer.
Both the SAVEV and the LOADV has a timeout period, if there is
no response from the host computer within a few seconds (configurable),
the robot program fails and stops with an error code. The plugin commands
will also fail if there is no response from
the robot within a period. To synchronize the host application and the
robot, the MotoMan plugin is to set up to monitor or poll SAVEV instructions
every N ms. When the SAVEV instruction is detected the plugin fires a Trigger event to the application.
The plugin requires a byte variable on this trigger. The OnTrigger
event includes the byte value of the register variable. The byte can be used as a value transfer. If
more information needs to be transfered additional SAVEV commands can be
issued. The must be paired with the corresponding plugin Getxxx commands. The following
commands are available : GetByte, GetDouble, GetReal and GetInt. The
host application can send data to the robot using Setxxx commands. The
commands must be paired in the robot with LoadV commands. The following
commands are available: SetReal, SetByte, SetDouble, SetInt and
SetPosition. The typical data sent are status and position in a robot
vision application. Scorpion - Plugin - Robot communination sequence The standard sequence in a
robot communication with Motoman plugin.
- Scorpion activates Trigger
- Robot is in position for image capture
- Robot issue - SET B014 1 'set register B014 to 1 to signal robot in position
SAVEV B014 'notify Scorpion robot in position
- Plugin detects Trigger - issued SAVEV
instruction
- Plugin issues an Trigger event
- OnTrigger contains a CameraTrigger command to
trigger image capture
- Scorpion capture image
- Scorpion Send Status to Robot - SetByte(status)
- Robot reads status - LOADV B015
- Scorpion sends Position to robot - SetPosition('....')
- Robot Reads Position - LOADV P001
- Robot Picks Object
- Scorpion activates Trigger
|