Ardumower software design
Aus www.wiki.ardumower.de
Version vom 22. November 2015, 21:50 Uhr von Pierlau38 (Diskussion | Beiträge) (→Finite state machine)
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
C++ classes/interfaces