Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== Navigation strategy with pepper ====== ===== Running the Demo ===== run in different terminals the following commands or use "command &": <code> roscore </code> to connect Pepper to ROS (the parameter network_interface needs to be changed according to the network interface with which you connect to the robot Pepper, ie wireless or wired, to check with ifconfig): <code> cd /opt/ros/kinetic/share/naoqi_driver/launch/ roslaunch naoqi_driver.launch nao_ip:=10.77.3.19 network_interface:=wlp2s0 </code> To apply the calibration parameters of the 3D camera : source /home/user/catkin_ws/devel/setup.bash roslaunch extrinsic_calibration register_depth.launch You can check with rosrun rviz rviz : add a PointCloud2 on topic /naoqi_driver/camera/depth_registered/points and in Global Options > Fixed Frame : odom. To convert a 3D Point Cloud (from topic /naoqi_driver/camera/depth_registered/points) into a 2D laser scan : cd /opt/ros/kinetic/share/pointcloud_to_laserscan/launch roslaunch sample_node.launch You can check with rosrun rviz rviz : add a LaserScan on topic /camera/scan and in Global Options > Fixed Frame : odom. To start navigation (ie packages AMCL for localisation and move_base for planification) : cd /home/user/catkin_ws/src/pepper_plymouth_ros/launch/ source /opt/ros/kinetic/setup.bash roslaunch nav.launch Then, run the user interface (to give goal points) in another terminal: cd /home/user/Bureau/khalil\ serrakh/Khalil\ SERRAKH/Logiciels/peppermajordome/scripts/ python navigation.py Pepper shows on its screen a map of the apartment and asks "ou veux-tu que j'aille?". The locations defined are : la cuisine, le salon, la salle à manger, l'entrée de la maison, reviens à ta place. These locations can be changed in file navigation.py in function init ===== Install ===== - Install [[:ros|ros kinetic]]. The details can be read here : http://wiki.ros.org/kinetic/Installation/Ubuntu. You will have created a catkin workspace CATKIN_WS (for instance ~/catkin_ws) <code> sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116 sudo apt-get install ros-kinetic-desktop-full </code> - For the map. Run:<code> sudo apt-get install ros-kinetic-octomap sudo apt-get install ros-kinetic-map-server </code> - For the localisation. Run:<code> sudo apt-get install ros-kinetic-amcl sudo apt-get install ros-kinetic-humanoid-localization </code> In order to perform an extrinsic calibration of RGB and Depth cameras of Pepper robot, you can use either our https://github.com/ros-naoqi/extrinsic_calibration package or follow the ROS tutorial (http://wiki.ros.org/openni_launch/Tutorials/ExtrinsicCalibration). <code> roslaunch extrinsic_calibration register_depth.launch </code> - Install ROS packages for NAO with the instructions from http://wiki.ros.org/nao_robot, https://github.com/ros-naoqi/nao_robot, http://wiki.ros.org/nao/Tutorials/Installation - download from [[https://developer.softbankrobotics.com/us-en/downloads/nao-v3|aldebaran]] the Python SDK the compressed file pynaoqi-python2.7-2.5.5.5-linux64 and install according to the instructions http://doc.aldebaran.com/2-5/dev/python/install_guide.html. In details : - Set the environnement variable PYTHONPATH to /path/to/python-sdk/lib/python2.7/site-packages by doing for example: <code> export PYTHONPATH=${PYTHONPATH}:/home/user/NaoPepper/pynaoqi-python2.7-2.5.5.5-linux64/lib/python2.7/site-packages </code> - check the installation with python <code> import naoqi</code> If no error message is written, the library is imported. Else read http://doc.aldebaran.com/2-5/dev/python/tips-and-tricks.html#python-sdk-troubleshooting. - ROS packages for the Nao robot <code> sudo apt-get install ros-kinetic-move-base-msgs ros-kinetic-octomap ros-kinectic-octomap-msgs ros-kinetic-humanoid-msgs ros-kinetic-humanoid-nav-msgs ros-kinetic-camera-info-manager ros-kinetic-camera-info-manager-py sudo apt-get install ros-kinetic-nao-robot </code> - For Pepper, refer to http://wiki.ros.org/pepper NOTE ''sudo apt-get install ros-driver-base'' did not work. Package [[http://wiki.ros.org/driver_base|driver-base]] is deprecated and is not compatible with ros kinetic * How to check the connection with pepper? <code>ping pepper.local ping 10.77.3.19 </code> ====== Humain Robot interaction ====== run x3d server : cd /home/user/Bureau/khalil serrakh/Khalil SERRAKH/Test/Dialogue Homme Machine/Serveur IP clВ XXD java -jar deltadore.xxd.ipgateway.jar 54321 /dev/ttyUSB0 to display local images on the touch screen, change in the program serveurhttp.py the HOST variable to input your IP address : cd /home/user/Bureau/khalil\ serrakh/Khalil\ SERRAKH/Logiciels/peppermajordome/scripts/ python serveurhttp.py and open a browser and go directly to http://your_ip_address:9999 to open the web streaming on the tablet, run in different terminals the following commands or use "command &" roscore cd /opt/ros/kinetic/share/naoqi_driver/launch/ roslaunch naoqi_driver.launch nao_ip:=10.77.3.19 network_interface:=wlp2s0 rosrun web_video_server web_video_server Make sure you use the right dialogue.txt and modele_interaction.py, then run in terminal: cd /home/user/Bureau/khalil\ serrakh/Khalil\ SERRAKH/Logiciels/peppermajordome/scripts/ python modele_interaction.py The robot Pepper waits for us to say "Bonjour" or tries to detect a person next to him at a distance < 1m. Then the robot guides the person on the possible interactions. ====== Control robot by using keyboard ====== Generic keyboard teleop for twist robots. ===== Installing ===== <code> sudo apt-get install ros-kinetic-teleop-twist-keyboard </code> ===== Running ===== <code> rosrun teleop_twist_keyboard teleop_twist_keyboard.py </code> ===== Controls ===== See the on-screen instructions: <code> Reading from the keyboard and Publishing to Twist! --------------------------- Moving around: u i o j k l m , . q/z : increase/decrease max speeds by 10% w/x : increase/decrease only linear speed by 10% e/c : increase/decrease only angular speed by 10% anything else : stop CTRL-C to quit </code> ====== Octomap ====== General information about OctoMap is available at http://octomap.github.io and in the publication "OctoMap: An Efficient Probabilistic 3D Mapping Framework Based on Octrees" by A. Hornung, K. M. Wurm, M. Bennewitz, C. Stachniss, and W. Burgard (Autonomous Robots Journal, 2013). ===== Installing ===== <code> sudo apt-get install ros-kinetic-octomap </code> ===== Running ===== To create the static map. Run : to connect Pepper to ROS (the parameter network_interface needs to be changed according to the network interface with which you connect to the robot Pepper, ie wireless or wired, to check with ifconfig): <code> cd /opt/ros/kinetic/share/naoqi_driver/launch/ roslaunch naoqi_driver.launch nao_ip:=10.77.3.19 network_interface:=wlp2s0 </code> To apply the calibration parameters of the 3D camera : <code> source /home/user/catkin_ws/devel/setup.bash roslaunch extrinsic_calibration register_depth.launch </code> start Octomap <code> roslaunch octomap_server octomap_mapping.launch </code> Moving the robot <code> rosrun teleop_twist_keyboard teleop_twist_keyboard.py </code> To save the map, run: <code> rosrun octomap_server octomap_saver -f /home/user/Bureau/my_map_octomap.bt </code> before **stopping Octomap**. {{tag>pepper ros tutorial xaal}} user/kserrakh.txt Last modified: 2026/10/22 23:03by 127.0.0.1