|
| 1 | +<?xml version="1.0" encoding="utf-8" ?> |
| 2 | +<launch> |
| 3 | + <arg name="sim" default="false" description="true: Use simulation time" /> |
| 4 | + <arg name="max_image_frequency" default="1.0" description="Max frequency [hz] for recording images" /> |
| 5 | + <arg name="max_pointcloud_frequency" default="1.0" description="Max frequency [hz] for recording pointclouds" /> |
| 6 | + |
| 7 | + <node name="record_rosbag_drop_images" pkg="topic_tools" exec="throttle" |
| 8 | + args="messages /camera/image_proc $(var max_image_frequency) /camera/image_to_record" /> |
| 9 | + <node name="record_rosbag_drop_pointclouds" pkg="topic_tools" exec="throttle" |
| 10 | + args="messages /line_mask_relative_pc $(var max_pointcloud_frequency) /line_mask_relative_pc_to_record" /> |
| 11 | + |
| 12 | + <!-- The command is a bit complicated, because we want to have a unique filename |
| 13 | + and the date command would normally include a newline at the end. --> |
| 14 | + <!-- We also set include-hidden-topics twice, because otherwise, the else case would produce some unprintable character that breaks the command. --> |
| 15 | + <executable cmd="ros2 bag record \ |
| 16 | + -o $(env HOME)/rosbags/ID_$(env ROBOCUP_ROBOT_ID $(env ROBOT_NAME unknown_robot))_$(command 'bash -c "date +%s |tr -d \\"\\n\\""') \ |
| 17 | + --node-name ros2_bag_record \ |
| 18 | + --include-hidden-topics \ |
| 19 | + --include-unpublished-topics \ |
| 20 | + --polling-interval 1000 \ |
| 21 | + $(eval '\'--use_sim_time\' if \'$(var sim)\'==\'true\' else \'--include-hidden-topics\'') \ |
| 22 | + /animation \ |
| 23 | + /audio/audio_info \ |
| 24 | + /audio/audio \ |
| 25 | + /ball_obstacle_active \ |
| 26 | + /ball_position_relative_filtered \ |
| 27 | + /ball_relative_filtered \ |
| 28 | + /ball_relative_movement \ |
| 29 | + /balls_relative \ |
| 30 | + /camera/camera_info \ |
| 31 | + /camera/image_to_record \ |
| 32 | + /clock \ |
| 33 | + /cmd_vel \ |
| 34 | + /cop_l \ |
| 35 | + /cop_r \ |
| 36 | + /core/power_switch_status \ |
| 37 | + /debug_markers \ |
| 38 | + /debug/approach_point \ |
| 39 | + /debug/ball_twist \ |
| 40 | + /debug/dsd/body_behavior \ |
| 41 | + /debug/dsd/hcm \ |
| 42 | + /debug/dsd/head_behavior \ |
| 43 | + /debug/dsd/localization \ |
| 44 | + /debug/used_ball \ |
| 45 | + /debug/which_ball_is_used \ |
| 46 | + /diagnostics \ |
| 47 | + /diagnostics_agg \ |
| 48 | + /DynamixelController/command \ |
| 49 | + /field_boundary_relative \ |
| 50 | + /game_controller_connected \ |
| 51 | + /gamestate \ |
| 52 | + /goal_pose \ |
| 53 | + /head_mode \ |
| 54 | + /imu_head/data \ |
| 55 | + /imu/data_raw \ |
| 56 | + /joint_states \ |
| 57 | + /line_mask_relative_pc_to_record \ |
| 58 | + /motion_odometry \ |
| 59 | + /move_base/current_goal \ |
| 60 | + /obstacles_relative \ |
| 61 | + /pose_with_covariance \ |
| 62 | + /robot_state \ |
| 63 | + /robots_relative \ |
| 64 | + /robots_relative_filtered \ |
| 65 | + /rosout \ |
| 66 | + /server_time_clock \ |
| 67 | + /speak \ |
| 68 | + /strategy \ |
| 69 | + /system_workload \ |
| 70 | + /team_data \ |
| 71 | + /tf \ |
| 72 | + /tf_static \ |
| 73 | + /time_to_ball" output="screen" /> |
| 74 | +</launch> |
0 commit comments