# IsaacLab Newton后端多ContactSensor同body仅末个有数据

> 原文链接：https://robotics.hellobike.com/pitfalls/2026-10-27-isaaclab-8648
> 频道：pitfalls | 更新日期：2026-10-27 | 标签：auto, github-issue, isaaclab
> 核心摘要：Newton后端同名body多传感器仅最后一个输出有效，其余为零。PR #8733修复了传感器注册覆盖导致的数据读取失效问题。

# IsaacLab Newton后端多ContactSensor同body仅末个有数据

::: v-pre
> 本文由 AI 根据公开内容整理，可能有误，请以原文为准：[[Bug Report] Newton ContactSensors with identical body and filter expressions report zero forces except the last one](https://github.com/isaac-sim/IsaacLab/issues/8648)（GitHub isaac-sim/IsaacLab #8648）

**状态**：已解决

## 问题

在IsaacLab Newton后端，当多个`ContactSensor`配置相同的body和filter表达式时，仅最后创建的传感器能报告接触力，其余传感器全程输出零值；若开启`track_air_time`则接触时间恒为零且滞空时间持续增长。该问题影响同一肢体上区分`update_period`或`history_length`的奖励与观测传感器组合，而PhysX/OVPhysX后端无此异常。

## 环境

IsaacLab (main分支), Newton后端 (newton_mjwarp), Python环境 (uv run)

## 解决办法

1. 将IsaacLab更新至包含PR #8733的最新main分支代码
2. 验证修复效果：运行回归测试#8649确认通过
3. 重新执行原复现脚本`uv run python repro.py`，确认所有同body传感器均能正确输出接触力与滞空时间数据

讨论原作者：@NeoZng 等，版权归原作者所有。
:::

## 原始参考来源 (Sources)

- [GitHub isaac-sim/IsaacLab #8648：[Bug Report] Newton ContactSensors with identical body and filter expressions report zero forces except the last one](https://github.com/isaac-sim/IsaacLab/issues/8648)