Dorna ROS
https://github.com/rakutentech/dorna_arm_ros/tree/master/dorna_ros
Requirements
Python: 3.5+ Ubuntu: 18.04 RoS: Melodic
docker pull tiryoh/ros-melodic-desktop
- Run the ROS Melodic container
docker run --rm -it --net=host --privileged \
-v /dev:/dev \
-v $(pwd):/ws \
tiryoh/ros-melodic-desktop bash
- install pip
sudo apt update
sudo apt install python3-pip -y
pip3 --version #verify
- Clone Dorna API
cd
git clone https://github.com/dorna-robotics/dorna
cd dorna
sudo python3 setup.py install
- fix error
pip3 install --upgrade pip setuptools wheel
pip3 install numpy==1.19.5 # Compatible with Python 3.6
- Test install
python3
from dorna import Dorna
robot = Dorna()
robot.connect()
Progressing...
'{"id": null, "connection": 0, "port": null, "fv": null, "config": "/home/ubuntu/dorna/dorna/config.yaml", "state": null, "version": "1.4.2"}'
Field | Value | Meaning |
---|---|---|
"id": null | null | No unique ID is assigned yet. |
"connection": 0 | 0 | Not connected (should be 1 if connected). |
"port": null | null | No USB port detected for the robot. |
"fv": null | null | Firmware version is not retrieved. |
"config": "/home/ubuntu/dorna/dorna/config.yaml" | Path to the configuration file. | |
"state": null | null | No state reported yet. |
"version": "1.4.2" | "1.4.2" | The Dorna API version. |
Dorna ROS Installation
https://github.com/rakutentech/dorna_arm_ros/tree/master/dorna_ros#dorna-ros-installation
- clone repo
cd ~/catkin_ws/src
git clone https://github.com/rakutentech/dorna_arm_ros.git
pip3 install catkin_pkg
pip3 install rospkg
cd ~/catkin_ws
rosdep install --from-paths src --ignore-src --rosdistro $ROS_DISTRO -y
catkin_make
- Clone dorna_arm_ros
git clone git@github.com:rakutentech/dorna_arm_ros.git
CAD to URDF Conversion
- Open
Dorna_TA.step
in FreeCAD
- Export Unnamed-robot v4 to
.DAE
- Create
robot_arm.urdf
<?xml version="1.0"?>
<robot name="robot_v4">
<link name="base_link">
<visual>
<geometry>
<mesh filename="package://my_robot_description/meshes/Unnamed-robot_v4.dae" scale="0.001 0.001 0.001"/>
</geometry>
</visual>
<collision>
<geometry>
<mesh filename="package://my_robot_description/meshes/Unnamed-robot_v4.dae" scale="0.001 0.001 0.001"/>
</geometry>
</collision>
<inertial>
<mass value="10.0"/>
<origin xyz="0 0 0"/>
<inertia ixx="0.1" ixy="0.0" ixz="0.0" iyy="0.1" iyz="0.0" izz="0.1"/>
</inertial>
</link>
</robot>
- Check for errors
check_urdf robot_arm.urdf