sl-jetson
c3d36e9943
social-bot integration tests / Lint (flake8 + pep257) (push) Failing after 8s
social-bot integration tests / Core integration tests (mock sensors, no GPU) (push) Has been skipped
social-bot integration tests / Lint (flake8 + pep257) (pull_request) Failing after 8s
social-bot integration tests / Core integration tests (mock sensors, no GPU) (pull_request) Has been skipped
social-bot integration tests / Latency profiling (GPU, Orin) (push) Has been cancelled
social-bot integration tests / Latency profiling (GPU, Orin) (pull_request) Has been cancelled
feat(social): face-tracking head servo controller — Issue #279
...
Adds face_track_servo_node to saltybot_social:
- Subscribes /social/faces/detected (FaceDetectionArray)
- Picks closest face by largest bbox area (proximity proxy)
- Computes pan/tilt error from bbox centre vs image centre using
configurable FOV (fov_h_deg=60°, fov_v_deg=45°)
- Independent PID controllers for pan and tilt (velocity/incremental
output with anti-windup); servo position integrates velocity*dt
- Clamps commands to ±pan_limit_deg / ±tilt_limit_deg
- Returns to centre at return_rate_deg_s when face lost >lost_timeout_s
- Dead zone suppresses jitter for small errors
- Publishes Float32 on /saltybot/head_pan and /saltybot/head_tilt
- 81/81 tests passing
Closes #279
2026-03-02 17:38:02 -05:00
..
2026-03-02 12:22:58 -05:00
2026-03-02 09:38:46 -05:00
2026-03-02 11:07:35 -05:00
2026-03-02 11:07:35 -05:00
2026-03-02 12:48:16 -05:00
2026-03-02 09:27:06 -05:00
2026-03-02 14:19:27 -05:00
2026-03-02 08:38:24 -05:00
2026-02-28 22:59:13 -05:00
2026-03-01 00:42:18 -05:00
2026-03-02 12:01:00 -05:00
2026-03-02 12:11:37 -05:00
2026-02-28 22:57:58 -05:00
2026-03-02 10:19:22 -05:00
2026-03-02 10:19:22 -05:00
2026-03-02 10:44:32 -05:00
2026-03-02 10:44:32 -05:00
2026-03-02 10:39:37 -05:00
2026-03-02 10:39:37 -05:00
2026-03-02 09:36:17 -05:00
2026-03-02 09:36:17 -05:00
2026-03-01 00:48:03 -05:00
2026-03-02 09:17:54 -05:00
2026-03-02 08:38:49 -05:00
2026-03-02 11:57:17 -05:00
2026-03-02 10:36:21 -05:00
2026-03-02 11:17:19 -05:00
2026-03-02 11:50:13 -05:00
2026-03-01 00:52:54 -05:00
2026-03-02 08:41:40 -05:00
2026-03-02 12:12:57 -05:00
2026-03-02 11:39:21 -05:00
2026-03-02 11:39:21 -05:00
2026-03-02 11:47:05 -05:00
2026-03-01 01:07:06 -05:00
2026-03-02 09:03:28 -05:00
2026-03-02 09:59:53 -05:00
2026-03-02 12:12:57 -05:00
2026-03-01 01:15:13 -05:00
2026-03-01 01:15:13 -05:00
2026-03-02 17:38:02 -05:00
2026-03-01 23:32:26 -05:00
2026-03-02 12:05:24 -05:00
2026-03-02 12:05:24 -05:00
2026-03-01 23:15:00 -05:00
2026-03-01 23:56:05 -05:00
2026-03-02 08:50:22 -05:00
2026-03-01 23:59:10 -05:00
2026-03-01 01:06:50 -05:00
2026-03-02 11:14:10 -05:00
2026-02-28 23:19:23 -05:00
2026-03-02 09:14:37 -05:00
2026-03-02 10:04:36 -05:00
2026-03-02 10:04:36 -05:00
2026-03-02 11:21:18 -05:00
2026-03-01 23:25:08 -05:00
2026-03-01 23:25:08 -05:00
2026-03-02 10:15:32 -05:00
2026-03-02 17:29:03 -05:00