Software Main Architecture
- For this project, the Sensors API need to be implemented.
- All the sensors communicate over GPIO pins.
- For the speed control of the motors a PWM Signal is necessary.
- Therefore, from the Zephyr OS, is "only" needed the GPIO and the PWM abstraction Service.
The Application layer has a behavior implementation file. This file provides to the Main application the following routines: find_node(x), follow_line(), and turn_right().
For now the Main application can only take one delivery service at once, and the Robot need to be placed back to the start point manually.
This make the main app really easy to implement, then it always start at y==0, x==0. Hence, the algorithm result very simple: Find Y, turn_right, find X.
- Example of find_node(2,2);