Skip to content

Commit 4c64d4c

Browse files
authored
Add high-level architecture diagram to docs (UBC-Thunderbots#3488)
* Added high_level_architecture.svg * Add high-level architecture diagram to docs * Small docs changes
1 parent 961e621 commit 4c64d4c

2 files changed

Lines changed: 8 additions & 2 deletions

File tree

docs/images/high_level_architecture.svg

Lines changed: 4 additions & 0 deletions
Loading

docs/software-architecture-and-design.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,9 @@
7878

7979
# Architecture Overview
8080

81-
At a high-level, our system is split into several independent processes that [communicate with each other](#inter-process-communication). Our architecture is designed in this manner to promote decoupling of different features, making our system easier to expand, maintain, and test.
81+
![High-Level Architecture Diagram](images/high_level_architecture.svg)
82+
83+
At a high-level, our system is split into several independent processes that [communicate with each other](#inter-process-communication). Our architecture is designed in this manner to promote decoupling of different features, making our software easier to expand, maintain, and test.
8284

8385
- [**Fullsystem**](#fullsystem) is the program that processes data and makes decisions for a [team](#team) of [robots](#robot). It manages [**Sensor Fusion**](#sensor-fusion), which is responsible for processing and filtering raw data, and the [**AI**](#ai) that makes gameplay decisions.
8486

@@ -550,7 +552,7 @@ Trajectories are generated by sampling intermediate *sub-destinations* around th
550552

551553
# Thunderscope
552554

553-
**Thunderscope** chiefly refers to the [GUI application](#thunderscope-gui) we use to visualize and interact with our robots and software. Some non-UI related functionality (namely, Robot Communication) is implemented as part of Thunderscope since it acts as a central point in our architecture, making it convenient for coordinating activities between different modules.
555+
**Thunderscope** refers to the [GUI application](#thunderscope-gui) we use to visualize and interact with our robots and software. Some non-UI related functionality (namely, Robot Communication) is implemented as part of Thunderscope since it acts as a central point in our architecture, making it convenient for coordinating activities between different modules.
554556

555557
[`thunderscope_main.py`](/src/software/thunderscope/thunderscope_main.py) serves as the main entry point ("launcher") for our entire system. You can run the script to start up the [Thunderscope GUI](#thunderscope-gui) and a number of other optional processes, such as a [Fullsystem](#fullsystem) for each [AI](#ai) team, the [Simulator](#simulator), and [SSL Gamecontroller](#ssl-gamecontroller).
556558

0 commit comments

Comments
 (0)