数据通道与读取方式
读取 Exo 遥测、状态、双臂、手柄与可选 IMU 数据。
当前版本 · 1.0.0
数据通道与读取方式
两个只读通道
device.telemetry()返回ReadChannel[ExoTelemetry]。device.status()返回ReadChannel[ExoStatus]。
telemetry = device.telemetry()
latest = telemetry.latest() # Sample[ExoTelemetry] | None
subscription = telemetry.subscribe(print)
sample = await telemetry.next()latest() 在第一帧到达前返回 None;subscribe() 的回调在 SDK 运行线程执行,应保持短小;next() 适合 asyncio 流程。
遥测载荷
ExoTelemetry.payload 包含:
left_arm、right_arm:各 8 个encoder_counts和 8 个弧度制joint_positions_rad。left_handset、right_handset:摇杆轴、扳机原始值和按键位掩码。torso_imu、extra_imu:可空的加速度、角速度和 XYZW 四元数。
先读取 device.get_device_info().capabilities,再决定是否展示 IMU 或手柄数据。状态通道提供连接、新鲜度和有限错误摘要。