Skip to content

Commit

Permalink
Added updated pic for architecture in README
Browse files Browse the repository at this point in the history
  • Loading branch information
Condorr001 authored Jan 12, 2024
1 parent 530c453 commit 1ce9a73
Showing 1 changed file with 11 additions and 8 deletions.
19 changes: 11 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Table of contents
- [Creators](#creators)
- [ARP: Assignment 1](#arp--assignment-1)
- [ARP: Assignment 2](#arp--assignment-2)
* [How to run](#how-to-run)
+ [Building dependencies](#building-dependencies)
+ [Command to run the program](#command-to-run-the-program)
Expand All @@ -23,7 +23,7 @@ Valentina Condorelli - S4945679

Group name: ConTo

# ARP: Assignment 1
# ARP: Assignment 2
## How to run
### Building dependencies
To build this project the following dependencies are needed:
Expand All @@ -38,14 +38,16 @@ Simply execute the run.sh script in the main folder by typing in the shell:

## How does it work
### Architecture
![architecture-image-placeholder](docs/Schema_assignment1_ARP.png?raw=true)
![architecture-image-placeholder](docs/Schema_assignment2_ARP.png?raw=true)
### Active components
The active components of this project are:
- Server
- Map
- Drone
- Input
- Watchdog (WD)
- Target
- Obstacles
#### Server
The main role of the **server** process is to read from the shared memory areas in
order to periodically update the log file with the drone info. For this purpose, the server is responsible for initializing the semaphores to access the shared memory areas. Moreover, by means of a *fork()*, it spawns the **map** process.
Expand Down Expand Up @@ -112,15 +114,16 @@ is applying through the input.

The keys available for the user are:
```
+-+-+---+---+
| q | w | e |
+---+---+---+
| a | s | d |
+-+-+---+---+ +---+
| q | w | e | | p |
+---+---+---+ +---+
| a | s | d | --->
+---+---+---+
| z | x | c |
+-+-+---+---+
```
The eight external keys can be used to move the drone by adding a force in the respective direction (top, top-right, right and so on). On the other hand, the S key in used to instantly zero all the forces, in order to see the inertia on the drone. The space key dose the same thing as the s key.
The eight external keys can be used to move the drone by adding a force in the respective direction (top, top-right, right and so on). On the other hand, the 's' key in used to instantly zero all the forces, in order to see the inertia on the drone. The space key does the same thing as the s key. Lastly, the 'p' key can be used to safely close the program.
Please note that, for the keys to work, you should select the Input window when it appears.

The primitives used by the input are:
- Kill(): used to send a signal to the WD to tell that it's alive
Expand Down

0 comments on commit 1ce9a73

Please sign in to comment.