This repo contains the files required to interact with Capra's Ovis 6DOF arm.
- ros-industrial/robotiq which use
robotiq_2f_140_gripper_visualization
- clubcapra/jog_control
- kinova-ros
In your workspace clone the git repository of the robotiq, kinova-ros and jogcontrol packages at the same level as the ovis package, so in the src
folder. You can simply git clone
the repository without issue.
For the kinova-ros repository make sure you have the melodic-devel
branch select. When cloning you can use this command to make sure that you have the right branch checked out:
git clone https://github.com/Kinovarobotics/kinova-ros.git -b melodic-devel
Like so :
src/
jog_control/
kinova-ros/
ovis/
robotiq/
To be able to communicate with the arm you first need to install the Kinova JACO SDK.
You can find the SDK in the Club Capra Teams files in the Logiciel channel under the name Kinova Windows & Linux SDK (The link requires you to be inside ClubCapra's Teams)
For Linux, the SDK is said to only support Ubuntu 16.04, but it also work on Ubuntu 18.04. This might become an issue if we decide to move to a newer version of Ubuntu/ROS.
To install the SDK please follow these steps :
- Copy the
Kinova_sdk1.5.1.zip
from the Logiciel channel inside the folderKinova Windows & Linux SDK
. - Unzip it how ever you want.
unzip Kinova_sdk1.5.1.zip -d Kinova_sdk1.5.1
- Change directory to
Kinova_sdk1.5.1/Ubuntu/16_04/64\ bits
cd Kinova_sdk1.5.1/Ubuntu/16_04/64\ bits
- Change the execution permission on the
installSDK64.sh
scriptchmod +x installSDK64.sh
- Then execute the script with
sudo
sudo ./installSDK64.sh
- Enter your password
- Leave the setting by default and install the SDK
To verify that the installation was successful you can simply connect to the arm with a USB cable and turn on the power switch on the Kinova controller. Then launch the DevelopmentCenter
.
- Navigate to the location of the SDK installation and then into the
GUI
folder.- By default its going to be
/opt/JACO-SDK
cd /opt/JACO-SDK/GUI
- By default its going to be
- Then launch the
DevelopmentCenter
executable../DevelopmentCenter
- WARNING, make sure you use the
DevelopmentCenter
and not theDevelopmentCenter.sh
, since it was not tested.
- You will be presented with this window :
- Make sure that the Ovis name is written at the top and that you have selected the
USB Enable
. This will make sure that the connection work properly. - If you're having issue with this part, please check the Troubleshooting the SDK section.
- Make sure that the Ovis name is written at the top and that you have selected the
- Once inside the DevelopmentCenter window, select the
Virtual Joystick
under the TOOLS section. - Now try and more the 3rd actuator by pressing the
+
sign - Then the arm must of moved!
There's more information to come on this part.
For now, the step are as follow :
- Launch the kinova-ros with Ovis bringup launch file
roslaunch ovis_bringup kinova_driver.launch
- Then run the kinova-demo to make the arm move
- This will more the 3rd actuator by 5 degree
rosrun kinova_demo joints_action_client.py -v -r c2s6s000 degree -- 0 0 5 0 0 0
- If you're having issue connecting to the arm with the
DevelopmentCenter
or withkinova-ros
, it might be because of two issue- First, it might be because the USB autosuspend is enable
- Please follow this link for disabling it : https://askubuntu.com/questions/1140925/how-can-i-disable-usb-autosuspend-on-ubuntu-18-04/1161074#1161074
- Second, it might be that you need to launch the DevelopmentCenter with root right. This can be fix in two method
- Simply launch the
DevelopmentCenter
withsudo
- Change the udev that was install with the SDK. This method is prefered since it is permenant
- Inside your
/etc/udev
folder you'll find the file :10-kinova-arm.rules
- Edit the file with sudo and change the
MODE:="666"
toMODE:="777"
- This will allow anyone to have access to the arm
- TODO in the future it would be better to have the user added into a group instead of changing the permission in the udev.
- Inside your
- Simply launch the
- First, it might be because the USB autosuspend is enable
roslaunch ovis_gazebo gazebo.launch
roslaunch ovis_moveit_config ovis_gazebo_demo.launch
roslaunch ovis_jog_launch ovis.launch