Skip to content

Latest commit

 

History

History
97 lines (85 loc) · 2.85 KB

README.md

File metadata and controls

97 lines (85 loc) · 2.85 KB

zeroerr-arm

This is a repo for the Zeroerr 6DOF Robotic Manipulator

Docker Deployment

Linux

installing Nvidia Container Toolkit

docker engine setup

sudo xhost+
echo $DISPLAY

Configure the production repository:

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
  && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
    sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
    sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

Update the packages list from the repository:

sudo apt-get update

Install the NVIDIA Container Toolkit packages:

sudo apt-get install -y nvidia-container-toolkit

Configure the container runtime by using the nvidia-ctk command:

sudo nvidia-ctk runtime configure --runtime=docker

Restart the Docker daemon:

sudo systemctl restart docker

Building Images

To build docker image:

sudo docker compose -f compose.ubuntu.yaml build

Running Images

To run docker image:

xhost +
sudo docker compose -f compose.ubuntu.yaml up -d
sudo docker compose -f compose.ubuntu.yaml exec monkey-zeroerr bash

Running demo

to run the arm, follow the command below:

ros2 launch zeroerr_moveit_config demo.launch.py

Connecting to Robotic Manipulator

setup SocketCAN interface

run the command line in terminal (PC) not in docker enviroment

sudo ip link set can0 up type can bitrate 1000000
sudo ip link set can0 txqueuelen 1000
sudo ip link set up can0
candump can0 

Adjusting Hardware Interface

There is a total of 2 Hardware interfaces to choose from:

  • Dummy Hardware Interface ✨
  • Actual Hardware Interface ✨

to Adjust Hardware Interface Selection, head down to the address: zeroerr-arm/zeroerr_moveit_config//config/zeroerr_robot.ros2_control.xacro then select between line: 9 / 10

Screenshot from 2024-04-03 18-34-20

Running Moveit

ensure to run zeroerr_control_python zeroerr_interface first, then only run the next line, this ensures that the robot arm doesnt return to homepoint

ros2 run zeroerr_control_python zeroerr_interface
ros2 launch zeroerr_moveit_config demo.launch.py

Running ZEDCAM

ros2 launch zed_wrapper zed_camera.launch.py camera_model:=zed2i publish_tf:=false publish_urdf:=false
ros2 run ffb_detection ffb_detection
ros2 topic echo /ffb_coordinates