jsk_apc is a stack of ROS packages for Amazon Picking Challenge mainly developed by JSK lab.
The documentation is available at here.
Competition | Documentation |
---|---|
APC2015 | See jsk_2015_05_baxter_apc. |
APC2016 | See jsk_2016_01_baxter_apc. |
ARC2017 | See jsk_arc2017_baxter. |
Paper | Documentation | Paper DOI URL |
---|---|---|
K. Wada et al, ICRA, 2019 | See demos/instance_occlsegm. | 10.1109/ICRA.2019.8793783 |
K. Wada et al, IROS, 2018 | See demos/instance_occlsegm. | 10.1109/IROS.2018.8593690 |
K. Wada et al, AR, 2017 | See jsk_2015_05_baxter_apc. | 10.1080/01691864.2016.1269672 |
S .Hasegawa et al, RA-L, 2020 | See demos/baxter_paper_filing. | 10.1109/LRA.2020.3010440 |
S .Hasegawa et al, ICRA, 2019 | See demos/grasp_fusion. | 10.1109/ICRA.2019.8793710 |
S. Hasegawa et al, JRM, 2019 | See demos/baxtergv6_apc2016. | 10.20965/jrm.2019.p0289 |
S. Hasegawa et al, IROS, 2018 | See demos/grasp_prediction_arc2017. | 10.1109/IROS.2018.8593398 |
S. Hasegawa et al, IROS, 2017 | See jsk_2016_01_baxter_apc. | 10.1109/IROS.2017.8202288 |
S. Kitagawa et al, AR, 2020 | See demos/selective_dualarm_grasping. | 10.1080/01691864.2020.1783352 |
S. Kitagawa et al, IROS, 2018 | See demos/selective_dualarm_grasping. | 10.1109/IROS.2018.8593752 |
S. Kitagawa et al, IAS, 2018 | See demos/selecive_dualarm_stowing. | 10.1007/978-3-030-01370-7_34 |
- Install the ROS. Instructions for ROS indigo on Ubuntu 14.04.
- Setup your ROS environment.
- Build catkin workspace for jsk_apc:
$ mkdir -p ~/ros/ws_jsk_apc/src && cd ~/ros/ws_jsk_apc/src
$ wstool init . https://raw.githubusercontent.com/start-jsk/jsk_apc/master/fc.rosinstall.${ROS_DISTRO}
$ cd ..
$ rosdep install -y -r --from-paths .
$ sudo apt-get install python-catkin-tools ros-indigo-jsk-tools
$ catkin build
$ source devel/setup.bash
133.11.216.224 baxter 011310P0014.local
$ rossetmaster baxter
$ rossetip
$ # we recommend below setup (see http://jsk-docs.readthedocs.org/en/latest/jsk_common/doc/jsk_tools/cltools/setup_env_for_ros.html)
$ echo """
rossetip
rosdefault
""" >> ~/.bashrc
$ rossetdefault baxter # set ROS_MASTER_URI as http://baxter:11311
-
To distinguish left DXHUB from right one, follow the instruction here.
-
Create udev rules:
$ rosrun jsk_arc2017_baxter create_udev_rules
so that Arduinos can appear on /dev/arduino*
and DXHUBs can appear on /dev/l_dxhub
and /dev/r_dxhub
Create udev rules:
$ rosrun jsk_arc2017_common create_udev_rules
so that scales can appear on /dev/scale*
Write below in ~/.ssh/config
:
Host baxter
HostName baxter.jsk.imi.i.u-tokyo.ac.jp
User ruser # password: rethink
Inside UP Board...
- Install ros-kinetic-ros-base and setup environment.
- Build catkin workspace for jsk_apc:
$ source /opt/ros/kinetic/setup.bash
$ mkdir -p ~/ros/kinetic/src && cd ~/ros/kinetic/src
$ wstool init . https://raw.githubusercontent.com/start-jsk/jsk_apc/master/upboard.rosinstall
$ wstool merge -t . https://raw.githubusercontent.com/start-jsk/jsk_apc/master/upboard.rosinstall.kinetic
$ wstool update
$ sudo apt install python-pip
$ rosdep install -y -r --from-paths . --ignore-src
$ sudo apt install python-catkin-tools
$ cd .. && catkin build
$ echo 'source $HOME/ros/kinetic/devel/setup.bash' >> ~/.bashrc
$ echo "rossetip" >> ~/.bashrc
$ echo "rossetmaster baxter" >> ~/.bashrc
$ source ~/.bashrc
- Create udev rules:
# baxter-c2
$ rosrun jsk_arc2017_baxter create_udev_rules
# baxter-c3
$ rosrun jsk_arc2017_common create_udev_rules
- Create
~/env-loader.sh
:
#!/bin/bash
. $HOME/ros/kinetic/devel/setup.bash
export ROSCONSOLE_FORMAT='[${severity}] [${time}]: [${node}] [${function}] ${message}'
rossetip
rossetmaster baxter
exec "$@"
and chmod +x ~/env-loader.sh
- Setup time synchronization
sudo apt install ntp
# Set the same configuration as other PCs
sudo vi /etc/ntp.conf
From main PC...
ssh -oHostKeyAlgorithms='ssh-rsa' baxter@<UP Board Host Name>.jsk.imi.i.u-tokyo.ac.jp
- Add main PC's ssh public key to
~/.ssh/authorized_keys
on UP Board.
@article{wada2017pick,
title={Pick-and-verify: verification-based highly reliable picking system for various target objects in clutter},
author={Wada, Kentaro and Sugiura, Makoto and Yanokura, Iori and Inagaki, Yuto and Okada, Kei and Inaba, Masayuki},
journal={Advanced Robotics},
volume={31},
number={6},
pages={311--321},
year={2017},
publisher={Taylor \& Francis}
}