Author: Cedric Le Bono

Pepper

IMT Atlantique’s Pepper status. This readme covers the packages and code and that was installed and produced either for the Robocup@Home 2023 competition or experiment with ROS2.

Gentoo

On both pepper a gentoo OS was added on top of the existing OS in order to bypass the lack of root access and more easily install packages.

The gentoo OS is active by default and can be deactivated with:

$ exit

It can be activated again with:

$ /tmp/gentoo/startprefix

With the gentoo OS deactivated the robots’ behaviour is the same as Pepper’s default behaviour. While it is activated, Pepper has access to ROS1, python3.10 and several utility libraries like OpenCV.

Code

ROS2

  • Pepper with the IP address 10.77.3.15 has ROS2 installed. The DDS installed is FastRTPS (Cyclone DDS doesn’t work on 32 bits environment.). Asio, The source code can be found here

If necessary, it can be reinstalled on Pepper with the following commands:

#Download and start the docker (~20 minutes)
docker run -it neaum/pepper_os_ros2_humble_32b:latest
 
#In another terminal
docker scp DOCKER_SESSION_ID:/tmp/pepper_os.tar.lzma . 
scp pepper_os.tar.lzma nao@PEPPER_IP

#Connect to Pepper and untar the archive
cd ~/ && tar --lzma -xvf ./pepper_os.tar.lzma
#Remove the archive.
rm ./pepper_os.tar.lzma
  • DOCKER_ID being the unique identifier of the docker session (nao@DOCKER_SESSION_ID)
  • PEPPER_IP being the IP address of the Pepper.
ssh nao@PEPPER_IP
#Start ROS2 humble (a function was added in the .bash_profile so it should be the default behaviour)
source ~/ros2_humble/install/setup.sh
#Source the packages with the naoqi_drivers
source ~/catkin_ros2/install/setup.sh 
ros2 launch naoqi_driver naoqi_driver.launch.py nao_ip:=PEPPER_IP network_interface:=wlan0
  • PEPPER_IP being the IP address of the Pepper.
  • network_interface:=wlan0 is only if the Pepper is connected to the network using wifi. If it is connected to the network via ethernet, use network_interface:=eth0 instead.

The correct behaviour should look like this: alt text

The topics can be viewed with:

ros2 topic list

 alt text

At last, the camera topics can be viewed using rviz:

#From another on the same network as peppper
export ROS_MASTER_URI=http://PEPPER_IP:11311
rviz2 rviz

 alt text

Robocup@Home

  • Pepper with the IP address 10.77.3.16 has a code similar to the one used in the Robocup@Home SSPL 2023. It uses ROS1 and has several packages to perform some tasks during the competition. A docker was made with the ROS1 and a gentoo OS that can be installed on Pepper.

Note this doesn’t correspond to the final version used in the competition. That code is on the Pepper’s at the CERV and the latest version of the code hasn’t been turned into an archive yet.

If necessary, it can be reinstalled on Pepper with the following commands:

cd path_to_pepper_os_archive
scp pepper_os_11.0.4.tar.lzma nao@PEPPER_IP

#Connect to Pepper and untar the archive
cd ~/ && tar --lzma -xvf ./pepper_os_11.0.4.tar.lzma
#Remove the archive.
rm ./pepper_os_11.0.4.tar.lzma
  • PEPPER_IP being the IP address of the Pepper.

The code can be started with:

roslaunch manager_pepper robobreizh_manager.launch receptionist:=true #Start the recepptionist scenario

Alternatively, the scenario can be started using the tablet. This will start the receptionist scenario without the navigation aspect. The navigation aspect requires mapping the environment and labelling where is each room and the initial position of the robot. For more details on how to do so, ask Maelic as I didn’t touch this part of the code :)

  • robotcupathome2023.txt
  • Last modified: 2023/10/11 11:51
  • by clohr