Author: Jacob Taylor Cassady (jtcass01@louisville.edu) - Undergraduate Research Assistant
University of Louisville J.B. Speed School of Engineering
Next Generation Systems Robotics Lab
Python API for Denso RC8 with a RC8-native server written in PacScript. NGS is interested in removing Labview from the control loop and interfacing with the RC8 directly to ensure well defined instruction sets.
- Python 3.4 enum module backported for use in Python 2.7
- fake-useragent for emulating web browser
- requests for communicating with Ethernet IP
-
Turn on the RC8 Controller.
-
On the RC8 controller, under settings, set the robot's executable token to TP and the robot's control mode to 'Auto'.
-
Start the program named 'common.pcs'.
-
Turn the motor of the robot on.
-
Open a new commandline
-
Navigate to directory: denso_rc8_api/src/ngs_ros/
-
Delete the directories 'build' and 'devel'. (Only required the first time)
-
Run the following commands:
source /opt/ros/[YOUR_ROS_DISTRO]/setup.bash
catkin_make
source ./devel/setup.bash
roscore
This server parses and forwards commands to the RC8 PacScript Server.
-
Open a new commandline
-
Navigate to directory: denso_rc8_api/src/ngs_ros/
-
Run the following commands:
source ./devel/setup.bash
rosrun ngs_denso_rc8_api rc8_api_server.py
-
Open a new commandline
-
Navigate to directory: denso_rc8_api/src/ngs_ros/
-
Run the following commands:
source ./devel/setup.bash
rosrun ngs_denso_rc8_api api_communication_channel.py
-
Open a new commandline
-
Navigate to directory: denso_rc8_api/src/ngs_ros/
-
Run the following commands:
source ./devel/setup.bash
rosrun ngs_denso_rc8_api robot.py
-
Open a new commandline
-
Navigate to directory: denso_rc8_api/src/ngs_ros/
-
Run the following commands:
source ./devel/setup.bash
rosrun ngs_denso_rc8_api controller.py
3.3.1.1 : Move Command
To move the robot to the designated coordinates.
Syntax: Move motion interpolation,target position
- Position Example
Move L, P( 600, 50, 400, 180, 0, 180, -1 )
- Joint Example
Move P, J(10, 20, 30, 40, 50, 60, 70, 80)
3.3.1.2 : Draw Command
To move from the current position to a relative position.
Syntax: Move motion interpolation,target position
- Example
Draw L, V( 50, 10, 50 )