Skip to content

Commit d87a8e9

Browse files
committed
feat: sensors module description
1 parent c506c55 commit d87a8e9

1 file changed

Lines changed: 17 additions & 4 deletions

File tree

docs/user-guide/concepts/simulator-architecture.md

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,6 @@ It also details what users would need to do to use their own visualizer with `ro
1212

1313
## Big Picture - Sim Architecture
1414

15-
!!! danger "TODO"
16-
continue here... This page is still under construction. Check back soon!
17-
1815
### Design Philosophy
1916

2017
The design goal of the simulator is to mimic hardware as closely as possible.
@@ -162,7 +159,7 @@ This is done by configuring the parameters associated with the `time_manager` no
162159
| <span style="display: inline-block; width:150px">Parameter name</span> | Default value | Description |
163160
| --- | --- | --- |
164161
| `default_pub_rate_us` | 100.0 | Default interval the time manager will publish to the `clock` topic (in microseconds) |
165-
| `real_time_multiplier` | 1.0 | Multiplier for configuring faster or slower than real time simulations. E.g. set to 2 to run 2 times as fast as real time |
162+
| `real_time_multiplier` | 1.0 | Multiplier for configuring faster or slower than real time simulations |
166163

167164
!!! example "Pub rate example"
168165

@@ -182,8 +179,24 @@ This is done by configuring the parameters associated with the `time_manager` no
182179
### SIL Board
183180

184181
### Sensors
182+
The `sensors` module is responsible for generating simulated sensor measurements based on the current true state.
183+
These sensor measurements are published to the `/simulated_sensors/XXX` topics, where `XXX` is each sensor, i.e. `imu/data` or `baro`, etc.
184+
185+
The `sensors` node adds noise, walk, and biases to each sensor measurement to simulate the real-world data.
186+
See the code for more information on how the noise is added.
187+
188+
Note that the `sensors` node subscribes to the `forces_and_moments` topic (for the IMU measurement), the truth states, and the `status` topic.
189+
The `status` topic is used to approximate when the motors are spinning so high-frequency noise can be added to the gyros.
190+
191+
Also note that the `sensors` node could have been implemented as a separate node for each sensor.
192+
If you are adding a new sensor (e.g. camera), you could either change the `sensor` source code or create an entirely separate ROS2 node for your sensor.
185193

186194
### Forces and Moments
195+
!!! danger "TODO"
196+
continue here... This page is still under construction. Check back soon!
197+
198+
The `forces_and_moments` node
199+
187200

188201
### Dynamics
189202

0 commit comments

Comments
 (0)