feat: add head control and joint data decoder
This commit is contained in:
@@ -84,8 +84,8 @@ max_duration_seconds = 1800.0
|
||||
|
||||
# Explicit data whitelist; never replace this with `-a` on the live robot.
|
||||
# RGB is recorded through image_transport JPEG and 16UC1 depth through its
|
||||
# lossless compressedDepth PNG transport. Both RGB-D cameras are optional:
|
||||
# rosbag discovers and records either one whenever its service is running.
|
||||
# lossless compressedDepth PNG transport. Only the head RGB-D camera is in the
|
||||
# whitelist. It is optional and is discovered whenever its service is running.
|
||||
# /robot_state is the authoritative measured robot state.
|
||||
topics = [
|
||||
"/robot_state",
|
||||
@@ -102,6 +102,7 @@ topics = [
|
||||
"/hric/robot/cmd_vel",
|
||||
"/hric/robot/cmd_vel_status",
|
||||
"/hric/robot/rl_state",
|
||||
"/head/cmd",
|
||||
"/imu_data",
|
||||
"/power/board/key_status",
|
||||
"/power/board/status",
|
||||
@@ -112,12 +113,6 @@ topics = [
|
||||
"/ob_camera_head/depth/image_raw/compressedDepth",
|
||||
"/ob_camera_head/depth/camera_info",
|
||||
"/ob_camera_head/depth/metadata",
|
||||
"/ob_camera_waist/color/image_raw/compressed",
|
||||
"/ob_camera_waist/color/camera_info",
|
||||
"/ob_camera_waist/color/metadata",
|
||||
"/ob_camera_waist/depth/image_raw/compressedDepth",
|
||||
"/ob_camera_waist/depth/camera_info",
|
||||
"/ob_camera_waist/depth/metadata",
|
||||
"/tf_static",
|
||||
"/tg3/data_collection/control",
|
||||
"/tg3/data_collection/status",
|
||||
@@ -157,20 +152,6 @@ topics = [
|
||||
"/ob_camera_head/color/image_raw/compressed" = 20.0
|
||||
"/ob_camera_head/depth/image_raw/compressedDepth" = 20.0
|
||||
|
||||
[data_collection.optional_topic_groups.waist_rgbd]
|
||||
topics = [
|
||||
"/ob_camera_waist/color/image_raw/compressed",
|
||||
"/ob_camera_waist/color/camera_info",
|
||||
"/ob_camera_waist/color/metadata",
|
||||
"/ob_camera_waist/depth/image_raw/compressedDepth",
|
||||
"/ob_camera_waist/depth/camera_info",
|
||||
"/ob_camera_waist/depth/metadata",
|
||||
]
|
||||
|
||||
[data_collection.optional_topic_groups.waist_rgbd.minimum_topic_rates_hz]
|
||||
"/ob_camera_waist/color/image_raw/compressed" = 20.0
|
||||
"/ob_camera_waist/depth/image_raw/compressedDepth" = 20.0
|
||||
|
||||
[locomotion]
|
||||
# Once Z+C has armed teleoperation and both sticks have been observed neutral,
|
||||
# left-stick vertical directly controls translation and right-stick horizontal
|
||||
@@ -196,6 +177,39 @@ forward_axis_sign = 1.0
|
||||
yaw_axis_sign = -1.0
|
||||
zero_burst_frames = 10
|
||||
|
||||
[head]
|
||||
# Camera-pitch mode: after Z+C arms teleoperation and the right-stick vertical
|
||||
# axis has been observed neutral once, hold left Z while pushing the right stick
|
||||
# up/down. While Z is held, right-stick yaw is suppressed so camera adjustment
|
||||
# cannot accidentally turn the robot. No R3 is used.
|
||||
enabled = true
|
||||
command_topic = "/head/cmd"
|
||||
state_topic = "/robot_state"
|
||||
pitch_motor_id = 2
|
||||
frame_id = "head"
|
||||
mode = 0
|
||||
label = 151
|
||||
max_current_a = 1.0
|
||||
command_speed_rad_s = 0.2
|
||||
|
||||
# Documented mechanical range is -15..+58 deg. Keep the commissioned visual
|
||||
# working range at -10..+50 deg and always start from fresh measured feedback.
|
||||
min_pitch_rad = -0.1745329252
|
||||
max_pitch_rad = 0.872664626
|
||||
max_pitch_speed_rad_s = 0.2
|
||||
max_pitch_accel_rad_s2 = 0.5
|
||||
pitch_axis_sign = -1.0
|
||||
joystick_deadzone = 0.1
|
||||
max_integration_dt_s = 0.1
|
||||
input_timeout_s = 0.3
|
||||
feedback_timeout_s = 0.25
|
||||
|
||||
# Existing vendor nodes advertise /head/cmd publishers. They are allowed when
|
||||
# idle, but any actual foreign message leases head control for this interval;
|
||||
# our bridge resumes only after quiet plus another neutral-stick observation.
|
||||
foreign_command_quiet_s = 1.0
|
||||
self_command_window_s = 0.25
|
||||
|
||||
[hands]
|
||||
# TianGong 3.0 on this robot uses BrainCo Revo2 hands. Commands are published
|
||||
# only while the same physical 3-second teleoperation latch is armed.
|
||||
|
||||
Reference in New Issue
Block a user