<<PackageHeader(pepper_dcm_bringup)>> <<TOC(4)>> = DCM Bringup for Pepper robot = The package contains launch and configuration files required to bring the robot's DCM Driver up and start the robot controllers. The package allows to control a robot from ROS, while communicating with Naoqi. You can control the robot either by calling DCM commands or ALMotion (by default). == Installation == * install dependencies {{{ sudo apt-get install ros-indigo-pepper-robot ros-indigo-pepper-meshes }}} * go to a workspace/src * clone [[pepper_control]] * clone [[naoqi_dcm_driver]] * clone [[pepper_dcm_bringup]] * optionally, clone [[pepper_moveit_config]] * compile all packages with {{{ catkin_make }}} == How to use it == === Trajectory control === * start the DCM bringup providing the IP of your robot {{{ roslaunch pepper_dcm_bringup pepper_bringup.launch robot_ip:=<ROBOT_IP> }}} * start Naoqi Driver (to get the odom frame) proving your robot's IP {{{ roslaunch naoqi_driver naoqi_driver.launch nao_ip:=<ROBOT_IP> }}} ==== Control via MoveIt ==== * start MoveIt! to control the robot via GUI {{{ roslaunch pepper_moveit_config moveit_planner.launch }}} * check "Allow approximate IK solutions" * control a planning_group via an interactive marker ==== Control via Actionlib ==== * you can send a trajectory to the desired controller (actionlib) {{{ rosrun actionlib axclient.py <name of the goal topic of the action server> }}} example: {{{ rosrun actionlib axclient.py /pepper_dcm/LeftArm_controller/follow_joint_trajectory/goal }}} To choose the controllers you want to load, modify pepper_control/launch/pepper_control_trajectory.launch. The list of implemented controllers, you can find in pepper_control/config/pepper_trajectory_control.yaml. You can start and stop the ros-controllers using the rqt plugin ControllerManager. === Position control === To command joints positions via ROS: * start the DCM bringup proving your robot's IP (be aware that the package will stop Autonomous Life on your robot): {{{ roslaunch pepper_dcm_bringup pepper_dcm_bringup_position.launch robot_ip:=<ROBOT_IP> }}} * send a position to the desired controller, for example {{{ rostopic pub /pepper_dcm/HeadYaw_position_controller/command std_msgs/Float64 "data: 1" }}} ## AUTOGENERATED DON'T DELETE ## CategoryPackage