Initial import of ORISYS arm workstation
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
# config/
|
||||
|
||||
| 文件 | git | 说明 |
|
||||
|------|-----|------|
|
||||
| `site.example.yaml` | 提交 | 模板。克隆后复制为 `site.yaml` |
|
||||
| `site.yaml` | 不提交 | 本机 SN、IP、相机、锁高、权重路径 |
|
||||
| `fastdds_visual_servo.xml` | 提交 | 可选 DDS;默认 `site.yaml` 里 `fastdds_profile: ""` |
|
||||
|
||||
改跟踪 / 手眼 / 相机:**只改 `site.yaml`**。字段说明见 [docs/SITE_CONFIG.md](../docs/SITE_CONFIG.md)。
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 354 KiB |
@@ -0,0 +1,84 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
visual-servo 硬实时路径用的 FastDDS 配置(Ubuntu 22.04 / Humble 默认 RMW)。
|
||||
|
||||
用法:
|
||||
export FASTRTPS_DEFAULT_PROFILES_FILE=~/ros2/config/fastdds_visual_servo.xml
|
||||
export RMW_IMPLEMENTATION=rmw_fastrtps_cpp
|
||||
|
||||
目标:
|
||||
- 低延迟的控制话题优先使用 UDP 单播
|
||||
- 缩短发现 / 参与者租约,避免后加入的节点把 100 Hz 卡住
|
||||
- 保持较浅的历史队列,让订阅者永远不必去追积压的旧数据
|
||||
-->
|
||||
<profiles xmlns="http://www.eprosima.com/XMLSchemas/fastRTPS_Profiles">
|
||||
<transport_descriptors>
|
||||
<transport_descriptor>
|
||||
<transport_id>udp_transport</transport_id>
|
||||
<type>UDPv4</type>
|
||||
<!-- 避免繁重的感知与伺服之间因共享内存积压而卡顿 -->
|
||||
<maxMessageSize>65500</maxMessageSize>
|
||||
</transport_descriptor>
|
||||
</transport_descriptors>
|
||||
|
||||
<participant profile_name="visual_servo_participant" is_default_profile="true">
|
||||
<rtps>
|
||||
<userTransports>
|
||||
<transport_id>udp_transport</transport_id>
|
||||
</userTransports>
|
||||
<useBuiltinTransports>false</useBuiltinTransports>
|
||||
<builtin>
|
||||
<discovery_config>
|
||||
<!-- 加快发现;缩短租约,让已经死掉的节点尽快被剔除 -->
|
||||
<leaseDuration>
|
||||
<sec>10</sec>
|
||||
<nanosec>0</nanosec>
|
||||
</leaseDuration>
|
||||
<leaseAnnouncement>
|
||||
<sec>3</sec>
|
||||
<nanosec>0</nanosec>
|
||||
</leaseAnnouncement>
|
||||
<initialAnnouncements>
|
||||
<count>5</count>
|
||||
<period>
|
||||
<sec>0</sec>
|
||||
<nanosec>100000000</nanosec>
|
||||
</period>
|
||||
</initialAnnouncements>
|
||||
</discovery_config>
|
||||
</builtin>
|
||||
</rtps>
|
||||
</participant>
|
||||
|
||||
<!-- 感知图像话题:BEST_EFFORT + KEEP_LAST(丢弃旧帧) -->
|
||||
<data_reader profile_name="sensor_best_effort">
|
||||
<qos>
|
||||
<reliability>
|
||||
<kind>BEST_EFFORT</kind>
|
||||
</reliability>
|
||||
<history>
|
||||
<kind>KEEP_LAST</kind>
|
||||
<depth>5</depth>
|
||||
</history>
|
||||
<durability>
|
||||
<kind>VOLATILE</kind>
|
||||
</durability>
|
||||
</qos>
|
||||
</data_reader>
|
||||
|
||||
<!-- /visual_servo/cmd_vel:永远只保留最新的 Twist -->
|
||||
<data_writer profile_name="cmd_vel_latest">
|
||||
<qos>
|
||||
<reliability>
|
||||
<kind>RELIABLE</kind>
|
||||
</reliability>
|
||||
<history>
|
||||
<kind>KEEP_LAST</kind>
|
||||
<depth>1</depth>
|
||||
</history>
|
||||
<durability>
|
||||
<kind>VOLATILE</kind>
|
||||
</durability>
|
||||
</qos>
|
||||
</data_writer>
|
||||
</profiles>
|
||||
@@ -0,0 +1,120 @@
|
||||
# 左臂 89 当前生效的参数。从旧仓库 config/site.yaml 抽出,去掉注释。
|
||||
# 节点代码还在读旧的 site.yaml,这一份还没接上。
|
||||
|
||||
robot:
|
||||
sn: "Rizon4-063989"
|
||||
ip: "192.168.2.101"
|
||||
pc_ip: "192.168.2.50"
|
||||
iface: "enp4s0"
|
||||
tool_name: "tool10120938"
|
||||
tcp_xyz_m: [-0.0005, 0.0067, 0.2245]
|
||||
tcp_qwxyz: [1.0, 0.0, 0.0, 0.0]
|
||||
workpiece_surface_z_m: 0.022
|
||||
handeye_file: "handeye/results/89_eye_in_hand.yaml"
|
||||
ft_wrench_topic: "/Rizon4_063989/external_wrench_in_tcp"
|
||||
|
||||
camera:
|
||||
wrist_name: "d405_left"
|
||||
wrist_serial: "352122274408"
|
||||
wrist_ae_limit_us: 4000
|
||||
wrist_emitter: false
|
||||
overhead_width: 848
|
||||
overhead_height: 480
|
||||
overhead_fps: 15
|
||||
overhead_ae_limit_us: 8000
|
||||
|
||||
yolo:
|
||||
weights: "models/yolo/gongjian0929.onnx"
|
||||
backend: "onnx"
|
||||
conf: 0.10
|
||||
iou: 0.45
|
||||
imgsz: 640
|
||||
device: "0"
|
||||
half_precision: true
|
||||
min_conf: 0.12
|
||||
reacquire_conf: 0.55
|
||||
vision_hz: 30.0
|
||||
feature_mode: "keypoint"
|
||||
keypoint_index: 0
|
||||
keypoint_min_conf: 0.30
|
||||
keypoint_border_px: 6
|
||||
track_max_step_m: 0.04
|
||||
reacquire_far_px: 120
|
||||
reacquire_confirm_frames: 3
|
||||
jump_px: 400.0
|
||||
jump_z_m: 0.10
|
||||
z_ref_m: 0.22
|
||||
min_depth_m: 0.04
|
||||
max_depth_m: 0.55
|
||||
feature_min_range_m: 0.14
|
||||
meas_blend: 0.85
|
||||
camera_frame: "d405_color_optical_frame"
|
||||
|
||||
servo:
|
||||
control_hz: 100.0
|
||||
ee_z_m: 0.320
|
||||
hole_hover_z_m: 0.320
|
||||
min_ee_z_m: 0.20
|
||||
safe_z_m: 0.45
|
||||
z_min_m: 0.22
|
||||
xy_track: "hover"
|
||||
ee_vertical_down: true
|
||||
kp_xy: 4.20
|
||||
kd_xy: 0.20
|
||||
kp_z: 0.80
|
||||
kd_z: 0.35
|
||||
deadzone_m: 0.003
|
||||
v_max_xy: 0.45
|
||||
v_max_z: 0.04
|
||||
slow_far_m: 0.05
|
||||
v_slow_xy: 0.08
|
||||
a_max: 3.00
|
||||
workspace_xyz_min: [0.08, -0.55, 0.18]
|
||||
workspace_xyz_max: [0.85, 0.55, 0.65]
|
||||
wrist_align_sec: 0.5
|
||||
d435_handback_sec: 0.5
|
||||
jump_confirm_frames: 3
|
||||
traj_topic: "rizon_arm_controller/joint_trajectory"
|
||||
point_topic: "visual_servo/filtered_point"
|
||||
|
||||
hole:
|
||||
backend: "two_stage"
|
||||
conf: 0.25
|
||||
iou: 0.7
|
||||
imgsz: 640
|
||||
target_hole: "k1"
|
||||
align_tol_m: 0.00025
|
||||
align_max_iters: 12
|
||||
final_gap_mm: 2.0
|
||||
observe_gap_mm: 15.0
|
||||
hough_param2: 26
|
||||
hough_min_radius: 6
|
||||
hough_max_radius: 30
|
||||
expected_holes: 2
|
||||
|
||||
perception:
|
||||
source: "yolo"
|
||||
track_camera: "wrist"
|
||||
wrist_handoff_conf: 0.5
|
||||
overhead_min_depth_m: 0.25
|
||||
overhead_max_depth_m: 1.80
|
||||
overhead_oneshot_conf: 0.5
|
||||
overhead_cooldown_s: 1.5
|
||||
|
||||
gripper:
|
||||
port: "/dev/ttyUSB0"
|
||||
baud: 115200
|
||||
slave_id: 1
|
||||
stroke_mm: 20.0
|
||||
force_pct: 20
|
||||
speed_pct: 50
|
||||
auto_init: false
|
||||
|
||||
tactile:
|
||||
model: "dd03"
|
||||
left_video: "/dev/v4l/by-path/pci-0000:00:14.0-usb-0:3.4.1:1.0-video-index0"
|
||||
right_video: "/dev/v4l/by-path/pci-0000:00:14.0-usb-0:3.4.2:1.0-video-index0"
|
||||
baseline_seconds: 2.0
|
||||
filter_alpha: 0.25
|
||||
target_fps: 30.0
|
||||
publish_hz: 20.0
|
||||
File diff suppressed because it is too large
Load Diff
+1146
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user