Package Summary

Tags No category tags.
Version 1.1.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jsk-ros-pkg/jsk_robot.git
VCS Type git
VCS Version master
Last Updated 2019-05-23
Dev Status DEVELOPED
Released RELEASED

Package Description

The jsk_robot_startup package

Additional Links

No additional links.

Maintainers

  • Yuki Furuta

Authors

No additional authors.

jsk_robot_startup

lifelog

see lifelog/README.md

scripts/ConstantHeightFramePublisher.py

pointcloud_to_scan_base_tf_squat.png pointcloud_to_scan_base_tf_stand.png

This script provides a constant height frame from the ground to get a imagenary laser scan for pointcloud_to_laserscan package. Biped robots need to use this constant frame to get constant laser scan for 2D SLAM package for wheeled ones like gmapping, because the pose of biped robots including height of the base link changes during a task in contrast to wheeled ones. In this frame, x, y and yaw is same as base frame of the robot body, z is constant and roll and pitch is same as the ground.

Parameters

  • ~parent_frame (String, default: "BODY")

This parameter indicates the parent frame of the constant height frame, which is expected to be a base frame of the robot body.

  • ~odom_frame (String, default: "odom")

This parameter indicates the odometry frame on the ground.

  • ~frame_name (String, default: "pointcloud_to_scan_base")

This parameter indicates the name of the constant frame.

  • ~rate (Double, default: 10.0)

This parameter indicates publish rate [Hz] of the constant frame.

  • ~height (Double, default: 1.0)

This parameter indicates initial height [m] of the constant frame.

Subscribing Topics

  • ~height (std_msgs/Float64)

This topic modifies height [m] of the constant frame.

util/initialpose_publisher.l

This script sets initial pose with relative pose from specified TF frame by publishing /initialpose.

Parameters

  • ~transform_base (String, default: "map")

TF frame of publishing topic /initialpose.

  • ~transform_frame (String, default: "eng2/7f/73B2")

Base TF frame to calcurate relative initial pose

  • ~initial_pose_x (Double, default: 0.0)

Relative pose x

  • ~initial_pose_y (Double, default: 0.0)

Relative pose y

  • ~initial_pose_yaw (Double, default: 0.0)

Relative pose yaw

Subscribing Topics

  • /amcl_pose (geometry_msgs/PoseWithcovariancestamped)
CHANGELOG

Could not convert RST to MD: No such file or directory - pandoc

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

  • launch/record_rosbag_slam_footstep.launch
      • save_dir [default: $(env HOME)/.ros/slam_rosbag]
      • save_robot_model [default: true]
      • save_openni [default: false]
      • save_multisense [default: false]
      • save_all_image [default: false]
      • camera_namespace [default: multisense]
      • other_topics [default: ]
      • other_regex_topics [default: ]
  • launch/pointcloud_to_laserscan.launch
    • original : navigation_global/move_base.xml (electric)
      • cloud_in [default: /multisense/organized_image_points2_color]
      • scan_frame [default: pointcloud_to_scan_base]
      • max_height [default: 0.5]
      • min_height [default: -0.5]
      • angle_max [default: 2.35619]
      • angle_min [default: -2.35619]
      • range_max [default: 50.0]
      • scan_height [default: 1.0]
      • scan_frame_parent [default: BODY]
      • scan_frame_odom [default: odom]
      • use_fixed_frame [default: true]
  • launch/biped_localization.launch
      • set_slam_laser_params [default: true]
      • use_particle_odom [default: true]
      • use_slam_feedback [default: false]
      • nodelet_index [default: 2]
      • stereo_namespace [default: multisense]
      • slam_laser_scan_height [default: 0.5]
      • slam_laser_max_height [default: 0.2]
      • slam_laser_min_height [default: -0.2]
      • parameter_yaml [default: $(find jsk_robot_startup)/config/default_odometry_params.yaml]
      • use_gmapping [default: true]
      • use_rtabmap [default: false]
      • imu_topic [default: /imu]
      • base_odom_topic [default: /odom]
      • base_link_frame [default: BODY]
      • stereo [default: $(arg stereo_namespace)]
      • image [default: image_rect]
      • use_robot_pose_ekf [default: false]
      • publish_viso_tf [default: false]
      • invert_viso_tf [default: true]
      • use_rviz [default: false]
      • use_stereo_odometry [default: false]
      • use_rtabmap [default: true]
      • odom_topic [default: /biped_odom_particle]
      • base_frame_id [default: $(arg base_link_frame)]
      • odom_frame_id [default: biped_odom_particle]
      • map_frame_id [default: map]
      • publish_tf [default: true]
      • left_image [default: /multisense_local/left/image_rect]
      • right_image [default: /multisense_local/right/image_rect]
      • left_camera_info [default: /multisense_local/left/camera_info]
      • right_camera_info [default: /multisense_local/right/camera_info]
  • launch/particle_odometry.launch
      • use_slam_feedback [default: false]
      • use_odometry_iir_filter [default: false]
      • parameter_yaml [default: $(find jsk_robot_startup)/config/default_odometry_params.yaml]
      • map_topic [default: /map]
      • imu_topic [default: /imu]
      • base_odom_topic [default: /odom]
      • base_link_frame [default: BODY]
  • launch/rtabmap.launch
      • use_rviz [default: false]
      • use_stereo_odometry [default: true]
      • use_rtabmap [default: true]
      • odom_topic [default: /odom]
      • base_frame_id [default: BODY]
      • odom_frame_id [default: odom_init]
      • map_frame_id [default: map]
      • publish_tf [default: true]
      • left_image [default: /multisense_local/left/image_rect]
      • right_image [default: /multisense_local/right/image_rect]
      • left_camera_info [default: /multisense_local/left/camera_info]
      • right_camera_info [default: /multisense_local/right/camera_info]
  • launch/record_rosbag_slam.launch
      • save_dir [default: $(env HOME)/.ros/slam_rosbag]
      • save_robot_model [default: true]
      • save_openni [default: false]
      • save_multisense [default: false]
      • save_all_image [default: false]
      • camera_namespace [default: multisense]
      • other_topics [default: ]
      • other_regex_topics [default: ]
  • launch/multisense_local.launch
      • ip_address [default: ]
      • mtu [default: 1500]
      • imu_topic [default: /imu]
      • SELF_FILTER_PARAM [default: ]
      • ODOMETRY_PARAM [default: $(find jsk_robot_startup)/config/default_odometry_params.yaml]
      • RUN_DRIVER [default: true]
      • USE_RESIZE [default: true]
      • HEIGHTMAP_FILTER_Z [default: 1.3]
      • USE_HEIGHTMAP [default: true]
      • USE_BIPED_LOCALIZATION [default: true]
      • BASE_LINK_FRAME [default: BODY]
      • BASE_ODOM_TOPIC [default: /odom]
      • use_particle_odom [default: true]
      • parameter_yaml [default: $(arg ODOMETRY_PARAM)]
      • STATIC_FRAME [default: odom]
      • STAND_FRAME [default: odom_init]
  • launch/gmapping.launch
    • original : navigation_global/move_base.xml (electric)
      • scan_frame_parent [default: BODY]
      • scan_frame [default: pointcloud_to_scan_base]
      • map_frame [default: map]
      • odom_frame [default: odom]
      • cloud_in [default: /multisense/organized_image_points2_color]
      • scan_height [default: 1.0]
      • max_height [default: 0.5]
      • min_height [default: -0.5]
      • angle_max [default: 2.35619]
      • angle_min [default: -2.35619]
      • range_max [default: 30.0]
      • use_fixed_frame [default: true]
      • particles [default: 30]
      • iterations [default: 5]
      • lsigma [default: 0.075]
      • temporal_update [default: -1.0]
      • map_update_interval [default: 5.0]
      • minimum_score [default: 0.0]
      • delta [default: 0.025]
      • srr [default: 0.025]
      • srt [default: 0.05]
      • str [default: 0.025]
      • stt [default: 0.05]
  • launch/slam_laser_nodelets.launch
      • nodelet_index [default: 2]
      • laser_input [default: /multisense/cloud_self_filtered]
      • assemble_base_frame [default: map]
  • launch/odometry_integration.launch
      • stereo [default: multisense]
      • image [default: image_rect]
      • use_robot_pose_ekf [default: false]
      • publish_viso_tf [default: true]
      • invert_viso_tf [default: true]
  • launch/slam_octomap.launch
      • input_cloud [default: /robot_center_pointcloud_bbox_clipped/output]
  • launch/viso.launch
      • stereo [default: multisense]
      • image [default: image_rect]
      • odom_frame_id [default: viso_odom]
      • base_link_frame_id [default: BODY]
      • sensor_frame_id [default: left_camera_optical_frame]
      • output_odom_topic [default: viso_odom]
      • publish_viso_tf [default: false]
      • invert_viso_tf [default: false]
      • use_robot_pose_ekf [default: true]
      • odom_used [default: true]
      • odom_data [default: /odom]
      • imu_used [default: false]
      • imu_data [default: /imu]
  • lifelog/mongodb.launch
      • db_path [default: /var/lib/robot/mongodb_store]
      • port [default: 62345]
      • repl_set_mode [default: false]
      • use_daemon [default: false]
      • db_name [default: jsk_robot_lifelog]
      • machine [default: localhost]
      • replicate [default: true]
      • replicator_dump_path [default: /tmp/replicator_dumps]
      • replicator_param_path [default: $(find jsk_robot_startup)/lifelog/mongodb_replication_params.yaml]
      • test_mode [default: false]
  • lifelog/tweet.launch
      • robot_name [default: PR2]
      • worktime_enable [default: true]
      • uptime_enable [default: true]
      • tablet_enable [default: true]
      • warning_enable [default: true]
      • motor_subscribe [default: true]
      • odom_subscribe [default: true]
      • joint_state_subscribe [default: true]
      • position_diff_threshold [default: 0.05]
      • remap_motor_state [default: /pr2_ethercat/motors_halted]
      • remap_odom_state [default: /base_odometry/odometer]
      • remap_joint_states [default: /joint_states]
      • remap_diagnostics [default: /diagnostics]
      • image_topics [default: /kinect_head/rgb/image_rect_color /wide_stereo/left/image_rect_color]
      • machine [default: localhost]
      • output [default: screen]
      • account_info [default: /var/lib/robot/twitter_account_pr2jsk.yaml]
  • lifelog/sample_image_logger.launch
      • logging_rate [default: 1.0]
      • launch_manager [default: false]
      • image [default: /camera/rgb/image_rect_color]
      • manager [default: image_logger_nodelet_manager]
      • manager [default: /camera/camera_nodelet_manager]
      • launch_mongodb [default: true]
  • lifelog/app_manager.launch
      • applist — dirpath where *.installed file is located
      • launch_websocket [default: true] — launch rosbridge_websocket if true
      • websocket_port [default: 9090] — port number for rosbridge_websocket server
      • launch_roswww [default: true] — launch roswww server if true
      • roswww_port [default: 8000] — port number for roswww server
      • remote [default: false] — set true with valid 'machine' argument
      • machine [default: localhost]
  • lifelog/mongodb_local.launch
  • lifelog/common_logger.launch
      • save_rgb [default: true]
      • save_depth [default: true]
      • save_tf [default: true]
      • save_joint_states [default: true]
      • save_speech [default: true]
      • save_smach [default: true]
      • save_base_trajectory [default: false]
      • save_object_detection [default: false]
      • save_action [default: false]
      • save_app [default: true]
      • camera_ns [default: kinect_head]
      • rgb_ns [default: rgb]
      • rgb_suffix [default: /compressed]
      • depth_ns [default: depth_registered]
      • depth_suffix [default: /compressedDepth]
      • camera_info_topic [default: camera_info]
      • rgb_topic [default: image_rect_color]
      • depth_topic [default: image_rect]
      • joint_states_topic [default: joint_states]
      • base_frame_id [default: base_link]
      • map_frame_id [default: eng2]
      • sensor_frame_id [default: head_mount_kinect_rgb_optical_frame]
      • localhost [default: true]
      • machine
      • launch_manager [default: true]
      • manager
      • approximate_sync [default: true]
      • enable_monitor [default: false]
      • log_rate [default: 1.0]
      • respawn [default: false]
      • vital_check [default: true]
      • vital_rate [default: 0.1]

Messages

No message files found.

Services

No service files found

Plugins

Recent questions tagged jsk_robot_startup at answers.ros.org

Package Summary

Tags No category tags.
Version 1.1.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jsk-ros-pkg/jsk_robot.git
VCS Type git
VCS Version master
Last Updated 2019-05-23
Dev Status DEVELOPED
Released RELEASED

Package Description

The jsk_robot_startup package

Additional Links

No additional links.

Maintainers

  • Yuki Furuta

Authors

No additional authors.

jsk_robot_startup

lifelog

see lifelog/README.md

scripts/ConstantHeightFramePublisher.py

pointcloud_to_scan_base_tf_squat.png pointcloud_to_scan_base_tf_stand.png

This script provides a constant height frame from the ground to get a imagenary laser scan for pointcloud_to_laserscan package. Biped robots need to use this constant frame to get constant laser scan for 2D SLAM package for wheeled ones like gmapping, because the pose of biped robots including height of the base link changes during a task in contrast to wheeled ones. In this frame, x, y and yaw is same as base frame of the robot body, z is constant and roll and pitch is same as the ground.

Parameters

  • ~parent_frame (String, default: "BODY")

This parameter indicates the parent frame of the constant height frame, which is expected to be a base frame of the robot body.

  • ~odom_frame (String, default: "odom")

This parameter indicates the odometry frame on the ground.

  • ~frame_name (String, default: "pointcloud_to_scan_base")

This parameter indicates the name of the constant frame.

  • ~rate (Double, default: 10.0)

This parameter indicates publish rate [Hz] of the constant frame.

  • ~height (Double, default: 1.0)

This parameter indicates initial height [m] of the constant frame.

Subscribing Topics

  • ~height (std_msgs/Float64)

This topic modifies height [m] of the constant frame.

util/initialpose_publisher.l

This script sets initial pose with relative pose from specified TF frame by publishing /initialpose.

Parameters

  • ~transform_base (String, default: "map")

TF frame of publishing topic /initialpose.

  • ~transform_frame (String, default: "eng2/7f/73B2")

Base TF frame to calcurate relative initial pose

  • ~initial_pose_x (Double, default: 0.0)

Relative pose x

  • ~initial_pose_y (Double, default: 0.0)

Relative pose y

  • ~initial_pose_yaw (Double, default: 0.0)

Relative pose yaw

Subscribing Topics

  • /amcl_pose (geometry_msgs/PoseWithcovariancestamped)
CHANGELOG

Could not convert RST to MD: No such file or directory - pandoc

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

  • launch/record_rosbag_slam_footstep.launch
      • save_dir [default: $(env HOME)/.ros/slam_rosbag]
      • save_robot_model [default: true]
      • save_openni [default: false]
      • save_multisense [default: false]
      • save_all_image [default: false]
      • camera_namespace [default: multisense]
      • other_topics [default: ]
      • other_regex_topics [default: ]
  • launch/pointcloud_to_laserscan.launch
    • original : navigation_global/move_base.xml (electric)
      • cloud_in [default: /multisense/organized_image_points2_color]
      • scan_frame [default: pointcloud_to_scan_base]
      • max_height [default: 0.5]
      • min_height [default: -0.5]
      • angle_max [default: 2.35619]
      • angle_min [default: -2.35619]
      • range_max [default: 50.0]
      • scan_height [default: 1.0]
      • scan_frame_parent [default: BODY]
      • scan_frame_odom [default: odom]
      • use_fixed_frame [default: true]
  • launch/biped_localization.launch
      • set_slam_laser_params [default: true]
      • use_particle_odom [default: true]
      • use_slam_feedback [default: false]
      • nodelet_index [default: 2]
      • stereo_namespace [default: multisense]
      • slam_laser_scan_height [default: 0.5]
      • slam_laser_max_height [default: 0.2]
      • slam_laser_min_height [default: -0.2]
      • parameter_yaml [default: $(find jsk_robot_startup)/config/default_odometry_params.yaml]
      • use_gmapping [default: true]
      • use_rtabmap [default: false]
      • imu_topic [default: /imu]
      • base_odom_topic [default: /odom]
      • base_link_frame [default: BODY]
      • stereo [default: $(arg stereo_namespace)]
      • image [default: image_rect]
      • use_robot_pose_ekf [default: false]
      • publish_viso_tf [default: false]
      • invert_viso_tf [default: true]
      • use_rviz [default: false]
      • use_stereo_odometry [default: false]
      • use_rtabmap [default: true]
      • odom_topic [default: /biped_odom_particle]
      • base_frame_id [default: $(arg base_link_frame)]
      • odom_frame_id [default: biped_odom_particle]
      • map_frame_id [default: map]
      • publish_tf [default: true]
      • left_image [default: /multisense_local/left/image_rect]
      • right_image [default: /multisense_local/right/image_rect]
      • left_camera_info [default: /multisense_local/left/camera_info]
      • right_camera_info [default: /multisense_local/right/camera_info]
  • launch/particle_odometry.launch
      • use_slam_feedback [default: false]
      • use_odometry_iir_filter [default: false]
      • parameter_yaml [default: $(find jsk_robot_startup)/config/default_odometry_params.yaml]
      • map_topic [default: /map]
      • imu_topic [default: /imu]
      • base_odom_topic [default: /odom]
      • base_link_frame [default: BODY]
  • launch/rtabmap.launch
      • use_rviz [default: false]
      • use_stereo_odometry [default: true]
      • use_rtabmap [default: true]
      • odom_topic [default: /odom]
      • base_frame_id [default: BODY]
      • odom_frame_id [default: odom_init]
      • map_frame_id [default: map]
      • publish_tf [default: true]
      • left_image [default: /multisense_local/left/image_rect]
      • right_image [default: /multisense_local/right/image_rect]
      • left_camera_info [default: /multisense_local/left/camera_info]
      • right_camera_info [default: /multisense_local/right/camera_info]
  • launch/record_rosbag_slam.launch
      • save_dir [default: $(env HOME)/.ros/slam_rosbag]
      • save_robot_model [default: true]
      • save_openni [default: false]
      • save_multisense [default: false]
      • save_all_image [default: false]
      • camera_namespace [default: multisense]
      • other_topics [default: ]
      • other_regex_topics [default: ]
  • launch/multisense_local.launch
      • ip_address [default: ]
      • mtu [default: 1500]
      • imu_topic [default: /imu]
      • SELF_FILTER_PARAM [default: ]
      • ODOMETRY_PARAM [default: $(find jsk_robot_startup)/config/default_odometry_params.yaml]
      • RUN_DRIVER [default: true]
      • USE_RESIZE [default: true]
      • HEIGHTMAP_FILTER_Z [default: 1.3]
      • USE_HEIGHTMAP [default: true]
      • USE_BIPED_LOCALIZATION [default: true]
      • BASE_LINK_FRAME [default: BODY]
      • BASE_ODOM_TOPIC [default: /odom]
      • use_particle_odom [default: true]
      • parameter_yaml [default: $(arg ODOMETRY_PARAM)]
      • STATIC_FRAME [default: odom]
      • STAND_FRAME [default: odom_init]
  • launch/gmapping.launch
    • original : navigation_global/move_base.xml (electric)
      • scan_frame_parent [default: BODY]
      • scan_frame [default: pointcloud_to_scan_base]
      • map_frame [default: map]
      • odom_frame [default: odom]
      • cloud_in [default: /multisense/organized_image_points2_color]
      • scan_height [default: 1.0]
      • max_height [default: 0.5]
      • min_height [default: -0.5]
      • angle_max [default: 2.35619]
      • angle_min [default: -2.35619]
      • range_max [default: 30.0]
      • use_fixed_frame [default: true]
      • particles [default: 30]
      • iterations [default: 5]
      • lsigma [default: 0.075]
      • temporal_update [default: -1.0]
      • map_update_interval [default: 5.0]
      • minimum_score [default: 0.0]
      • delta [default: 0.025]
      • srr [default: 0.025]
      • srt [default: 0.05]
      • str [default: 0.025]
      • stt [default: 0.05]
  • launch/slam_laser_nodelets.launch
      • nodelet_index [default: 2]
      • laser_input [default: /multisense/cloud_self_filtered]
      • assemble_base_frame [default: map]
  • launch/odometry_integration.launch
      • stereo [default: multisense]
      • image [default: image_rect]
      • use_robot_pose_ekf [default: false]
      • publish_viso_tf [default: true]
      • invert_viso_tf [default: true]
  • launch/slam_octomap.launch
      • input_cloud [default: /robot_center_pointcloud_bbox_clipped/output]
  • launch/viso.launch
      • stereo [default: multisense]
      • image [default: image_rect]
      • odom_frame_id [default: viso_odom]
      • base_link_frame_id [default: BODY]
      • sensor_frame_id [default: left_camera_optical_frame]
      • output_odom_topic [default: viso_odom]
      • publish_viso_tf [default: false]
      • invert_viso_tf [default: false]
      • use_robot_pose_ekf [default: true]
      • odom_used [default: true]
      • odom_data [default: /odom]
      • imu_used [default: false]
      • imu_data [default: /imu]
  • lifelog/mongodb.launch
      • db_path [default: /var/lib/robot/mongodb_store]
      • port [default: 62345]
      • repl_set_mode [default: false]
      • use_daemon [default: false]
      • db_name [default: jsk_robot_lifelog]
      • machine [default: localhost]
      • replicate [default: true]
      • replicator_dump_path [default: /tmp/replicator_dumps]
      • replicator_param_path [default: $(find jsk_robot_startup)/lifelog/mongodb_replication_params.yaml]
      • test_mode [default: false]
  • lifelog/tweet.launch
      • robot_name [default: PR2]
      • worktime_enable [default: true]
      • uptime_enable [default: true]
      • tablet_enable [default: true]
      • warning_enable [default: true]
      • motor_subscribe [default: true]
      • odom_subscribe [default: true]
      • joint_state_subscribe [default: true]
      • position_diff_threshold [default: 0.05]
      • remap_motor_state [default: /pr2_ethercat/motors_halted]
      • remap_odom_state [default: /base_odometry/odometer]
      • remap_joint_states [default: /joint_states]
      • remap_diagnostics [default: /diagnostics]
      • image_topics [default: /kinect_head/rgb/image_rect_color /wide_stereo/left/image_rect_color]
      • machine [default: localhost]
      • output [default: screen]
      • account_info [default: /var/lib/robot/twitter_account_pr2jsk.yaml]
  • lifelog/sample_image_logger.launch
      • logging_rate [default: 1.0]
      • launch_manager [default: false]
      • image [default: /camera/rgb/image_rect_color]
      • manager [default: image_logger_nodelet_manager]
      • manager [default: /camera/camera_nodelet_manager]
      • launch_mongodb [default: true]
  • lifelog/app_manager.launch
      • applist — dirpath where *.installed file is located
      • launch_websocket [default: true] — launch rosbridge_websocket if true
      • websocket_port [default: 9090] — port number for rosbridge_websocket server
      • launch_roswww [default: true] — launch roswww server if true
      • roswww_port [default: 8000] — port number for roswww server
      • remote [default: false] — set true with valid 'machine' argument
      • machine [default: localhost]
  • lifelog/mongodb_local.launch
  • lifelog/common_logger.launch
      • save_rgb [default: true]
      • save_depth [default: true]
      • save_tf [default: true]
      • save_joint_states [default: true]
      • save_speech [default: true]
      • save_smach [default: true]
      • save_base_trajectory [default: false]
      • save_object_detection [default: false]
      • save_action [default: false]
      • save_app [default: true]
      • camera_ns [default: kinect_head]
      • rgb_ns [default: rgb]
      • rgb_suffix [default: /compressed]
      • depth_ns [default: depth_registered]
      • depth_suffix [default: /compressedDepth]
      • camera_info_topic [default: camera_info]
      • rgb_topic [default: image_rect_color]
      • depth_topic [default: image_rect]
      • joint_states_topic [default: joint_states]
      • base_frame_id [default: base_link]
      • map_frame_id [default: eng2]
      • sensor_frame_id [default: head_mount_kinect_rgb_optical_frame]
      • localhost [default: true]
      • machine
      • launch_manager [default: true]
      • manager
      • approximate_sync [default: true]
      • enable_monitor [default: false]
      • log_rate [default: 1.0]
      • respawn [default: false]
      • vital_check [default: true]
      • vital_rate [default: 0.1]

Messages

No message files found.

Services

No service files found

Plugins

Recent questions tagged jsk_robot_startup at answers.ros.org