https://dorna.ai/

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"}'
FieldValueMeaning
"id": nullnullNo unique ID is assigned yet.
"connection": 00Not connected (should be 1 if connected).
"port": nullnullNo USB port detected for the robot.
"fv": nullnullFirmware version is not retrieved.
"config": "/home/ubuntu/dorna/dorna/config.yaml"Path to the configuration file.
"state": nullnullNo 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

git clone git@github.com:rakutentech/dorna_arm_ros.git

CAD to URDF Conversion

picture 0

  • Export Unnamed-robot v4 to .DAE

picture 1

  • 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