====== Dynamixel Motors: ROS Interface ====== --------------------------------------------- This section refers you to instructions for installing the ROS Dynamixel motor stack as well as associated tutorials to operate the motors on ROS. **Prerequisite:** This assumes: - instructions in [[dynamixel:hardware | hardware setup ]] have been completed. - you are operating on a Ubuntu release with an appropriate distribution of ROS already installed ===== Install Dynamixel Motor Stack ===== We will clone a repository forked from Anton Rebgun's [[ https://github.com/arebgun/dynamixel_motor | dynamixel_motor ]] repository. The final version of ROS supported by this motor controller stack was ROS 1 kinetic (Python 2.7). Our lab-maintained fork of this repository has been updated to support ROS1 melodic and beyond (Python 3); ROS2 is **not supported**. If you haven't yet created a catkin workspace, open a terminal and run the following: $ source /opt/ros/%ROS_DISTRO%/setup.bash $ mkdir -p ~/catkin_ws/src $ cd ~/catkin_ws/ $ catkin build where '''%ROS_DISTRO%''' should be replaced with the ROS distribution installed on your system (e.g. melodic, noetic). The following is derived from instructions found on the ROS.org page for the [[ http://wiki.ros.org/dynamixel_motor?distro=kinetic | Dynamixel motor stack ]]. It will clone the forked and lab-maintained repository into your catkin workspace: [[ https://github.com/ivaROS/ivaDynamixel | https://github.com/ivaROS/ivaDynamixel ]]. It presumes your catkin workspace is located per the instructions above: cd ~/catkin_ws/src git clone https://github.com/ivaROS/ivaDynamixel.git ===== ROS Dynamixel Motor Tutorial ===== Follow this [[ http://wiki.ros.org/dynamixel_controllers/Tutorials | tutorial ]] for the ROS Dynamixel motor stack. It will guide you through useful tools to communicate with connected motors. A walk-through is additionally provided to configure a pan-tilt motor arrangement and program a ROS node to operate it. --------- ;#; [[dynamixel:sw_prelim | Previous: Matlab ]] -- [[dynamixel:main | Main (Dynamixel) ]] ;#;