Arrowana / merlin_robot

0 stars 0 forks source link

start merlin with ./start_merlin

TODO: setup fake localisation http://wiki.ros.org/fake_localization FIRST NAVIGATION FIRST FRONT END

DOC: take a differential gazebo_ros interface https://github.com/ros-simulation/gazebo_ros_pkgs/blob/indigo-devel/gazebo_plugins/include/gazebo_plugins/gazebo_ros_diff_drive.h

add teleop capabilities in the launch file

TIPS: For development launch an empty gazebo then kill/relaunch the spawn of the model only (avoid the slow GUI loading). Use the nogz argument in merlin.launch teleops from keyboard http://wiki.ros.org/teleop_twist_keyboard

roslaunch gazebo_ros empty_world.launch roslaunch merlin.launch nogz:=true

USEFUL COMMANDS: roslaunch rosbridge_server rosbridge_websocket.launch

rostopic pub -r 10 merlin/base_controller/cmd_vel geometry_msgs/Twist '[0.5, 0, 0]' '[0,0,0.4]'

//Set the position via inital_pose (safe) rostopic pub merlin/inital_pose geometry_msgs/Pose2D '{x: 0, y:0, theta: 0}'

//Set the position of the robot in simulation, be careful this will offset odometry rosservice call gazebo/set_model_state '{model_state: {model_name: "merlin", pose: {position: {x: 2, y: 3}}}}'

path_store.py is a proof of concept node to read/write path to a rosbag //get existing paths rosservice call get_paths "{}"

//Save manually a path rosservice call /save_path "path: name: 'first' poses:

rosservice call /save_path "path: name: 'second' poses:

rosservice call /save_path "path: name: 'third' poses:

rostopic pub merlin/path merlin_msgs/Path2D " name: 'second' poses:

rosservice call start_path merlin_msgs/StartPath ' robot_name: "merlin" path_name: "first"'