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)
Download and Install Server: Obtain the HuBotVerse server code (HuBotVerse_aws) and follow the installation instructions.
Activate Environment: Run conda activate HuBotVerse_servers in your terminal.
2. Starting the HuBotVerse Server
Refer to Step 4 in the First Time Installation section for consistent instructions.
Configure IP Settings: Adjust the IP configuration based on your network requirements.
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:
Install Haptic Device Driver: Download from 3D Systems Support. Extract, move libraries, and set permissions as follows:
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
Ensure the driver runs without errors.
Install OpenHaptics: Follow the instructions in the readme file after downloading from the same 3D Systems Support link. Reboot your computer.
Install ros_geomagic Package: Clone the package and copy it to your ROS workspace:
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:
Start Geomagic Touch: Plug in the device and launch the control interface.
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.
Start Kinova Client:
roslaunch kortex_driver kortex_driver.launch
python3 HuBotVerse_scripts/client_gen3.py
6. Additional Notes
Automated Script: A shell script is provided for quick startup. Modify server_start.sh to reflect your environment settings, particularly if using a Conda environment.
Ports and Streaming: By default, Django operates on port 8000 and the TCP server on port 9000