Ardumower software design: Unterschied zwischen den Versionen

Aus www.wiki.ardumower.de
Wechseln zu: Navigation, Suche
K (Änderungen von Pierlau38 (Diskussion) wurden auf die letzte Version von Alexanderg zurückgesetzt)
(→‎C++ classes/interfaces)
Zeile 13: Zeile 13:
 
*If obstacle during reverse => roll
 
*If obstacle during reverse => roll
 
*If obstacle during roll => forward
 
*If obstacle during roll => forward
−
 
−
=C++ classes/interfaces=
 
−
<gallery>
 
−
  File: interfaces.png
 
−
</gallery>
 
−
 
  
 
=Further links=
 
=Further links=

Version vom 30. Mai 2016, 09:35 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

Further links