| Both sides previous revisionPrevious revisionNext revision | Previous revision | 
| dynamixel:ros [2018/09/27 17:33]  –  typos | dynamixel:ros [2024/09/23 13:37] (current)  –  typos | 
|---|
| --------------------------------------------- | --------------------------------------------- | 
|  |  | 
| This section will guide you to instructions for installing the ROS Dynamixel motor stack as well as associated tutorials to operate the motors on ROS. | 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: | **Prerequisite:** This assumes: | 
|  |  | 
| - instructions in [[dynamixel:hardware | hardware setup ]] have been completed. | - instructions in [[dynamixel:hardware | hardware setup ]] have been completed. | 
|  | - you are operating on a Ubuntu release with an appropriate distribution of ROS already installed | 
| - you are operating on a Ubuntu release with the appropriate distribution of ROS already installed |  | 
|  |  | 
| ===== Install Dynamixel Motor Stack  ===== | ===== Install Dynamixel Motor Stack  ===== | 
| The following mirrors instructions found on the ROS.org page for the [[ http://wiki.ros.org/dynamixel_motor?distro=kinetic | 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**. | 
|  |  | 
| To download and install the motor stack, open a terminal and run, | If you haven't yet created a catkin workspace, open a terminal and run the following: | 
| <code> | <code> | 
| sudo apt-get install ros-%ROS_DISTRO%-dynamixel-motor | $ source /opt/ros/%ROS_DISTRO%/setup.bash | 
|  | $ mkdir -p ~/catkin_ws/src | 
|  | $ cd ~/catkin_ws/ | 
|  | $ catkin build | 
| </code> | </code> | 
| where '''%ROS_DISTRO%''' is replaced with the relevant ROS distribution installed on the system (eg. kinetic). | where '''%ROS_DISTRO%''' should be replaced with the ROS distribution installed on your system (e.g. melodic, noetic). | 
|  |  | 
| ===== ROS Dynamixel Motor Tutorial  ===== | 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: | 
| Follow this [[ http://wiki.ros.org/dynamixel_controllers/Tutorials | tutorial ]] provided for the ROS Dynamixel motor stack. |  | 
|  |  | 
| It will guide you through useful tools to communicate with connected motors as well as establish and use interfaces to operate motors from other programs (running as ROS nodes). |  | 
|  |  | 
|  | <code> | 
|  | cd ~/catkin_ws/src | 
|  | git clone https://github.com/ivaROS/ivaDynamixel.git | 
|  | </code> | 
|  |  | 
|  | ===== 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 Interface ]] -- [[: | Main ]] | [[dynamixel:sw_prelim | Previous: Matlab ]] -- [[dynamixel:main | Main (Dynamixel) ]] | 
| ;#; | ;#; |