Absender: Frank Menzel
Datum: Fr, 25.08.2006 20:16:27
In-reply-to:
<44EF355C.8030404@xxxxxx>
Hallo, dies ist keine Antwort auf die Frage. Aber das Wegstecken der Division durch 0 ist mir auch schon aufgefallen. Ein paar Zeilen tiefer in der sensor.c heißt es: /* Schnittpunkt berechnen */ xd=(a2-a1)/(s1-s2); yd=(s1*a2-s2*a1)/(s1-s2); Und s1-s2 ist durchaus 0, bereits zum Startzeitpunkt. Die Antwort würde mich auch interessieren. Gruß, achiem -----Ursprüngliche Nachricht----- Von: ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx [mailto:ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx] Im Auftrag von Achim Pankalla Gesendet: Freitag, 25. August 2006 19:38 An: 'Entwicklung rund um den c't-bot' Betreff: [ct-bot] Abstandsberechnung in sensor_abstand hallo, beim experimentieren mit den realen bot ist mir aufgefallen, das die abstandswerte bei größeren distanzen öfter mal auf null springen. die ursache war schnell gefunden, dies passiert immer, wenn die werte der sensoren sehr klein werden, aber noch nicht kleiner als zb SENSDISTOFFSETLEFT. dabei ist mir nun auch aufgefallen, das durchaus eine division durch null entstehen könnte. dies habe ich auch bei meinen bot mir logausgaben feststellen können. nun frage ich mich, ob jemand weiss warum der prozessor das so wegsteckt. ein reset macht das programm anscheinend nicht! wird das über die fusebits gesteuert oder wird nur ein irq ausgelöst und dann gehts weiter. wenn jemand mir eine antwort geben könnte, spare ich mir das durchsuchen von unterlagen und foren, man ist ja faul ;-) . anbei ein patch, um das springen der distanzwerte auf null und auch div durch 0 zu verhindern. viel spass allen weiterhin. mit freundlichen grüssen achim