From e3e43f563f7a168225851a7258b9075822625fe4 Mon Sep 17 00:00:00 2001 From: Jackack Date: Thu, 15 Aug 2024 00:24:05 -0700 Subject: [PATCH] added docs directory, ros diagram --- docs/architecture/node_interactions.md | 62 +++++++++++++++++++++++ docs/work_standard/rostopic_convention.md | 0 2 files changed, 62 insertions(+) create mode 100644 docs/architecture/node_interactions.md create mode 100644 docs/work_standard/rostopic_convention.md diff --git a/docs/architecture/node_interactions.md b/docs/architecture/node_interactions.md new file mode 100644 index 00000000..a85408e4 --- /dev/null +++ b/docs/architecture/node_interactions.md @@ -0,0 +1,62 @@ +# ROS Node Interaction Document +## Scope +The purpose of this file is to descirbe the architecture of the RD25 stack from a ROS node level. This document should be updated whenever any ROS topics are added, removed or modified. + +## Viewing On VSCode +Install `bierner.markdown-mermaid` from the extension marketplace to render the charts in VSCode markdown preview. + +## List of topics +| Topic Name | Type | is custom message | +| ---------- | ----------------------- | ------------------ | +| ego/state | BuggyState | yes | +| other_buggy/state | BuggyState | yes | +| ego/trajectory | BuggyTrajectory | yes | + +## ROS Nodes Graph +Auton Loop [Sequence Diagram](https://en.wikipedia.org/wiki/Sequence_diagram#:~:text=A%20sequence%20diagram%20shows%2C%20as,order%20in%20which%20they%20occur.) + +```mermaid +sequenceDiagram +A->>B: "some/topic" +``` + +means A publishes a message of `some/topic` and B receives the message. + +```mermaid +sequenceDiagram + participant I as Ego State Estimator Node + participant P as Planner Node + participant C as Controller Node + participant S as Firmware Comms Node + + box Grey HBK 3DM-GQ7 INS + participant I + end + + box Purple Auton Core + participant P + participant C + end + + box Blue Communication with Sensors, Actuators and Other Buggy + participant S + end + + loop 100hz + I->>P: "ego/state" + I->>C: "ego/state" + end + + loop 10hz + S->>P: "other_buggy/state" + end + + loop 10hz + P->>C: "ego/trajectory" + end + + loop 100hz + C->>S: "ego/steering_cmd" + end +``` + diff --git a/docs/work_standard/rostopic_convention.md b/docs/work_standard/rostopic_convention.md new file mode 100644 index 00000000..e69de29b