So ist es auch, er fährt dann einfach ohne GPS Unterstützung weiter. Ein einfügen eines Timeouts in der I2C Bus Library lässt es zu dass im Betrieb einzelne Slaves ausfallen können ohne das der ganze Bus blockiert. Ein großer Teil der Software besteht aus Routinen die es trotz eines Fehlerfalles wie Räder drehen durch, Roboter steht an Hindernis an ohne das Bumper auslöst, I2C Slaves können nicht erreicht werden, usw, ein weiterfahren möglich machen oder ein schwerer Fehler erkannt wird der geordnetes Abschalten erfordert.Für mich ist dann der zweite µC für richtiges Fahren überflüssig.
Aber beim LiIon Akku hätte ich gerne eine Einzelzellenüberwachung, vor allem wenn er selbstständig und ohne Aufsicht aufladen soll, ein eventuell defekter Laderegler wäre damit kein Risiko mehr. Und in Hinblick auf die Lebensdauer ist eine Überwachung auf Tiefentladung einzelner Zellen auch sinnvoll. Hier ist der erste µC das Backup für den zweiten, im Moment fährt der Roboter als nur mit dem Backup.
LG!
Lesezeichen