Ardumower software design: Unterschied zwischen den Versionen
Aus www.wiki.ardumower.de
(→Finite state machine) |
(→Finite state machine) |
||
| Zeile 6: | Zeile 6: | ||
State diagram (Note: The drawing has been created using [https://drive.draw.io/?url=https%3A%2F%2Fraw.githubusercontent.com%2FArdumower%2Fardumower%2Fmaster%2Fswdesign%2FArdumower_Statemachine.xml draw.io]) | State diagram (Note: The drawing has been created using [https://drive.draw.io/?url=https%3A%2F%2Fraw.githubusercontent.com%2FArdumower%2Fardumower%2Fmaster%2Fswdesign%2FArdumower_Statemachine.xml draw.io]) | ||
| − | [[File: Ardumower_states.png | | + | [[File: Ardumower_states.png | 800px]] |
Implemented updates: | Implemented updates: | ||
Version vom 3. Juni 2016, 10:13 Uhr
This page describes some internals of the Ardumower software architecture.
Finite state machine
Main component of the software is a so called 'finite state machine', that means there exists a set of states ("OFF", "FORWARD", "ROLL", etc.) that the robot can be in. Depending on events (sensor is triggering etc.), the robot will enter a new state.
State diagram (Note: The drawing has been created using draw.io)
Implemented updates:
- If obstacle during reverse => roll
- If obstacle during roll => forward