docummentation cleanup
This commit is contained in:
parent
d4d1993a25
commit
2c05c08f24
|
|
@ -1,11 +1,10 @@
|
||||||
# Fire Gimbal Control (Staeffelsberg)
|
# Fire Gimbal Control
|
||||||
|
|
||||||
Real-time control software for an automated **fire-watch gimbal**. A C++17 program runs on a tower-mounted
|
Real-time control software for an automated **fire-watch gimbal**. A C++17 program runs on a tower-mounted
|
||||||
PC, rotates a pan gimbal carrying up to four industrial cameras, captures a 360° panorama for wildfire
|
PC, rotates a pan gimbal carrying up to four industrial cameras, captures a 360° panorama for wildfire
|
||||||
detection, compresses each frame to JPEG XL, and reports to a ground station over MQTT.
|
detection, compresses each frame to JPEG XL, and reports to a ground station over MQTT.
|
||||||
|
|
||||||
This is the deployment for the **Staeffelsberg** fire-watch tower (FWT). The same codebase serves all towers;
|
A single codebase serves all fire-watch towers (FWT); the tower identity comes from `config.ini`.
|
||||||
the tower identity comes from `config.ini`.
|
|
||||||
|
|
||||||
The code is organized around an **SDK-independent core** (`fgc_core`: config, logging, capture scheduler,
|
The code is organized around an **SDK-independent core** (`fgc_core`: config, logging, capture scheduler,
|
||||||
parsers) and **swappable I/O implementations** behind three interfaces — motor controller, control channel,
|
parsers) and **swappable I/O implementations** behind three interfaces — motor controller, control channel,
|
||||||
|
|
|
||||||
|
|
@ -80,7 +80,7 @@ Set at least:
|
||||||
|
|
||||||
```ini
|
```ini
|
||||||
[General]
|
[General]
|
||||||
tower_name = Staeffelsberg ; this tower's name (drives all MQTT topics)
|
tower_name = ExampleTower ; this tower's name (drives all MQTT topics)
|
||||||
image_interval = 3
|
image_interval = 3
|
||||||
|
|
||||||
[Network]
|
[Network]
|
||||||
|
|
@ -173,7 +173,7 @@ Confirm end to end:
|
||||||
- Images accumulating under the configured `[Paths] output_dir` (default
|
- Images accumulating under the configured `[Paths] output_dir` (default
|
||||||
`~ggs/.local/share/fire_gimbal_control/images/RGB/`).
|
`~ggs/.local/share/fire_gimbal_control/images/RGB/`).
|
||||||
- CamEvents on the broker:
|
- CamEvents on the broker:
|
||||||
`mosquitto_sub -h <broker> -t 'GGS/FWT/Staeffelsberg/#' -v`.
|
`mosquitto_sub -h <broker> -t 'GGS/FWT/<tower>/#' -v`.
|
||||||
|
|
||||||
## 9. Update / redeploy
|
## 9. Update / redeploy
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -58,7 +58,7 @@ When a ControlCode message arrives, the program echoes the current code back on
|
||||||
Built by `MqttControlChannel::publishCamEvent` from a `CamEvent`:
|
Built by `MqttControlChannel::publishCamEvent` from a `CamEvent`:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{ "fwt":"Staeffelsberg", "cam":"RGB", "hdg":1373, "pit":300, "time":1719312345678 }
|
{ "fwt":"ExampleTower", "cam":"RGB", "hdg":1373, "pit":300, "time":1719312345678 }
|
||||||
```
|
```
|
||||||
|
|
||||||
| Field | Type | Meaning |
|
| Field | Type | Meaning |
|
||||||
|
|
@ -87,7 +87,7 @@ publish: GGS/FWT/<tower>/StatusCode (echoed control code)
|
||||||
Point `zkms_server_ip` at a local broker and exercise the topics with Mosquitto:
|
Point `zkms_server_ip` at a local broker and exercise the topics with Mosquitto:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
mosquitto_sub -t 'GGS/FWT/Staeffelsberg/#' -v # watch everything for the tower
|
mosquitto_sub -t 'GGS/FWT/ExampleTower/#' -v # watch everything for the tower
|
||||||
mosquitto_pub -t 'GGS/FWT/Staeffelsberg/ControlCode' -m '0'
|
mosquitto_pub -t 'GGS/FWT/ExampleTower/ControlCode' -m '0'
|
||||||
mosquitto_pub -t 'GGS/FWT/Staeffelsberg/target_HDG' -m '180'
|
mosquitto_pub -t 'GGS/FWT/ExampleTower/target_HDG' -m '180'
|
||||||
```
|
```
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue