TM ROS Driver
Robot Operating System (ROS) is an open-source robotics middleware suite, which includes abundant libraries, drivers and tools, intended to help build robot applications more efficiently.
To support ROS, Techman Robot presents the TM ROS Driver for developers to build ROS-based applications with TM Robot by motion control and data acquisition (status, images from EIH camera, etc.). TM ROS Driver also comes with a stack with sample codes, a GUI tool for debugging and resources (URDF) for running simulations with the famous ROS tools – Gazebo and MoveIt.
TM ROS Driver consists of 3 major parts: Topic Publisher, Service Server and Action Server.
Topic publisher connects with TMflow through Ethernet slave and collect data from the robot (such as robot status, joint status, tool pose, etc.) so that customer ‘s ros node can subscribe the topic and get that information.
Service Server is purposed for motion control with a sort of tm_msg. After the driver connects with a Listen Node within the TMflow Project, customer ‘s ros node can interact with the Listen Node and result in robot motions.
Action Server acts as an action interface which translates trajectories generated by MoveIt and drives robot motion.
In addition, Techman Robot provides different versions of TM ROS Driver for various versions of ROS1 & ROS 2.
• An action interface on /follow_joint_trajectory for seamless integration with MoveIt
• publish feedback state on /feedback_states
The Feedback State includes robot position, error code, and io status, etc. (see tm_msgs/msg/FeedbackState.msg)
• publish joint states on /joint_states
• publish tool pose on /tool_pose
• /tm_driver/send_script (see tm_msgs/srv/SendScript.srv) :
send robot script (TM Robot Expression) to Listen node
• /tm_driver/set_event (see tm_msgs/srv/SetEvent.srv) :
send “Stop”, “Pause” or “Resume” command to Listen node
• /tm_driver/set_io (see tm_msgs/srv/SetIO.srv) :
send digital or analog output value to Listen node
• _/tm_driver/set_position (see tm_msgs/srv/SetPosition.srv) :
send motion command to Listen node, the motion type include PTP, LINE, CIRC ans PLINE, the position value is joint angle(J) or tool pose(T), for more detail, see the manual Expression Editor and Listen Node.
TM ROS Driver Version