Skip to content

youtalk/youfork

Repository files navigation

youfork: Fully ROS 2 Homemade Mobile Manipulator

CircleCI

youfork is a mobile manipulator for home tidy-up. The movie below shows a little first try of the home tidy-up by teleoperation.

youfork: Fully ROS 2 Homemade Mobile Manipulator

Slides from ROS Japan UG #37 (in Japanese)

All components are driven by ROS 2 Eloquent and Ubuntu 18.04 on the Jetson Xavier. youfork has a lot of devices inside:

  • NVIDIA Jetson Xavier
  • ROBOTIS Open Manipulator X
  • iRobot Roomba 643
  • Intel RealSense D435i
  • SlamTec RPLidar A1M8
  • 25,000mAh Battery
  • PS4 controller for teleoperation

youfork packages is beeing checked to build on CircleCI with ROS 2 Eloquent and Foxy. However the Jetson Xavier on youfork is currently running only on Ubuntu 18.04, so that I've checked to work youfork properly only on ROS 2 Eloquent and Ubuntu 18.04.

Install dependencies

Firstly install librealsense2 package because it cannot be installed by rosdep then check out repositories by vcs import and run rosdep install.

mkdir ~/youfork && cd ~/youfork
git clone git@github.com:youtalk/youfork.git src
sudo apt update
sudo apt install -y software-properties-common
sudo apt-key adv --keyserver keys.gnupg.net --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE
sudo add-apt-repository "deb http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo bionic main" -u
sudo apt update
sudo apt install --no-install-recommends python3-vcstool librealsense2-dev
source /opt/ros/$ROS_DISTRO/setup.bash
cd ~/youfork/src
vcs import < youfork.repos
cd ~/youfork
rosdep install --from-paths . --ignore-src -y

Build

cd ~/youfork
source /opt/ros/$ROS_DISTRO/setup.bash
colcon build

Launch nodes

Bring up devices

. ~/youfork/install/setup.bash
ros2 launch ros2 launch youfork_bringup bringup.launch.xml use_create:=true use_open_manipulator:=true use_rplidar:=true use_realsense:=true

Activate the Roomba lifecycle

source /opt/ros/$ROS_DISTRO/setup.bash
ros2 lifecycle set /ca_driver configure
ros2 lifecycle set /ca_driver activate

Visualize youfork by RViz2

. ~/youfork/install/setup.bash
rviz2 -d ~/youfork/src/youfork_description/config/youfork.rviz

Teleoperate by PS4 controller

Firstly install ds4drv and run the following command to connect with the wireless PS4 controller.

sudo ds4drv

Then launch the teleop related nodes.

. ~/youfork/install/setup.bash
ros2 launch youfork_teleop teleop.launch.xml