> For the complete documentation index, see [llms.txt](https://carec.gitbook.io/carec-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://carec.gitbook.io/carec-docs/documentation/simulation/sensors-noise-and-fault-injection.md).

# Sensors, Noise, and Fault Injection

Perfect sensors hide failures. CAREC uses nominal, degraded, and failed profiles so algorithms are tested against realistic uncertainty.

| Sensor            | Nominal outputs                   | Degradation examples                          | Failure examples            |
| ----------------- | --------------------------------- | --------------------------------------------- | --------------------------- |
| RGB camera        | Image and camera info             | Blur, exposure shift, latency, dropped frames | Frozen stream, disconnect   |
| Depth camera      | Depth image or point cloud        | Range noise, holes, reflective surfaces       | All-zero, stale timestamp   |
| LiDAR             | Laser scan or point cloud         | Gaussian noise, missing returns, occlusion    | No messages, fixed scan     |
| IMU               | Angular velocity and acceleration | Bias, drift, vibration                        | Saturation, frozen values   |
| Encoders          | Joint state / odometry input      | Quantization, slip, delay                     | One wheel stuck, jump       |
| Proximity sensors | Short-range obstacle distance     | Crosstalk, blind region                       | False clear, false occupied |

## Fault-injection contract

Each injected fault needs an ID, target topic or component, activation condition, duration, deterministic seed, observability signal, expected safety response, recovery rule, and log annotation.

Faults should be injected outside the production node whenever possible. This preserves the code under test and makes the test harness reusable.

{% hint style="danger" %}
A safety test must never accept missing or stale data as proof that space is clear. Loss of required perception must cause the documented degraded or no-motion behavior.
{% endhint %}

## Sensor fidelity progression

1. Interface-correct synthetic data for early integration.
2. Physics-based sensor models with noise and latency.
3. Recorded real-world data replay.
4. Calibrated models derived from bench measurements.
5. Hardware-in-the-loop for timing and driver behavior.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://carec.gitbook.io/carec-docs/documentation/simulation/sensors-noise-and-fault-injection.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
