Kinova

Tutorials: Kinova Gen 3 Robotic Arm

This guide provides step-by-step instructions for setting up the HuBotVerse environment, including server installation, ROS package configuration, and connecting Kinova robotic arms and Geomagic Touch devices.

1. Installing the HuBotVerse Server

(Only required if not previously installed)

2. Starting the HuBotVerse Server

Refer to Step 4 in the First Time Installation section for consistent instructions.

3. Installing ROS Packages for KINOVA® KORTEX™ Robotic Arms

On the Kinova gen3 robot control PC, follow these steps:

Install Dependencies: 

sudo apt install python3 python3-pip

sudo python3 -m pip install conan==1.59

conan config set general.revisions_enabled=1

conan profile new default --detect > /dev/null

conan profile update settings.compiler.libcxx=libstdc++11

Clone and Build ROS Kortex Driver: 

mkdir -p catkin_workspace/src

cd catkin_workspace/src

git clone -b noetic-devel https://github.com/Kinovarobotics/ros_kortex.git

cd ../

rosdep install --from-paths src --ignore-src -y

catkin_make

source devel/setup.bash

Ensure successful build of kortex_driver. Python ROS API is available through imports like from kortex_driver.msg import *. 


4. Installing Geomagic Touch Driver and ROS Package

(Only if not installed previously)

On the Operator Side:

tar -xvzf filename

sudo cp /usr/lib/LibPhantomIOLib42.so /usr/lib

sudo chmod 777 /dev/ttyACM0

cd TouchDriver2022_04_04/bin

./Touch_Setup

./Touch_Diagnostic

git clone https://github.com/WPI-AIM/ros_geomagic.git

cd ros_geomagic

cp -r geomagic_control <path-to-ros-workspace>

cp -r geomagic_description <path-to-ros-workspace>

cd <path-to-ros-workspace>

catkin_make -DPYTHON_EXECUTABLE=/usr/bin/python3

Running ros_geomagic: Launch the control interface with

roslaunch geomagic_control geomagic_headless.launch



5. Connecting Kinova to HuBotVerse

We utilize ROS topic-based velocity control for this tutorial.

On the Operator Side:

sudo chmod 777 /dev/ttyACM0 

roslaunch geomagic_control geomagic_headless.launch

Send User Command: Start Motion Scaling Control to send commands to the HuBotVerse server. 

python3 HuBotVerse_scripts/teleop_gen3.py

On the Robot Side:

Receive commands from the HuBotVerse server and relay them to the Kinova Gen3 robot.

roslaunch kortex_driver kortex_driver.launch

python3 HuBotVerse_scripts/client_gen3.py

6. Additional Notes