This is the Robotics Project (VIBOT 3rd semester, Heriot-Watt University) done by Paola Ardon([email protected]) Kaisar Kushibar([email protected]), and Songyou Peng ([email protected]).
The demonstration of SLAM + Object recognition with Pepper robot can be found here.
First of all, start ROS and connect the host computer with Pepper:
$ roscore
$ roslaunch pepper_bringup pepper_full_py.launch nao_ip:="ROBOT_IP" roscore_ip:="HOST_IP"
Run JoyPepper with Autonomous life ON. This will allow to control the robot using the joystick, but Pepper behaves like a kid (if she gets distracted, she just stops listening you)
$ rosrun joy joy_node
$ rosrun joy_pepper joypepper.py
If you want to control Pepper with Joystick with Autonomous life OFF, add this line before:
$ roslaunch pepper_dcm_bringup pepper_bringup.launch robot_ip:="10.42.0.76" network_interface:=wlan0
-
Base control:
- left arrow keys
- <- turn left, -> right
- ^ move forward, v move backward
- left arrow keys
-
Head control:
- right buttons
-
Sleep & WakeUp:
- R1 & R2 buttons
Run ORB SLAM 2 - Monocular
$ rosrun ORB_SLAM2 Mono /Path/To/ORB_SLAM2/Vocabulary/ORBvoc.bin /Path/To/ORB_SLAM2/Examples/Monocular/TUM1.yaml
RUN ORB SLAM - RGB-D
$ rosrun ORB_SLAM2 RGBD /Path/To/ORB_SLAM2/Vocabulary/ORBvoc.bin /Path/To/ORB_SLAM2/Examples/RGB-D/pepperCameraSettings.yaml false (create a new map) / true (use a saved map)
Run object recognition
$ rosrun pepper_recog recog.py
We want to thank
- Raul Mur-Artal for his awesome ORB SLAM2
- Bence Magyar for his advice of using Joystick teleop
- José María Sola Durán for his object recognition code framework