Hallo,
die Signalverarbeitung bei mir läuft nach dem weit verbreiteten EVA (Eingabe - Verarbeitung - Ausgabe) Prinzip ab. Ich teste also nicht der Reihe nach den ersten Eingang, verarbeite das Signal, teste den zweiten Eingang, verarbeite das Signal, teste den dritten Eingang usw., sondern ich lese zunächst alle Eingänge ein (bei mir derzeit etwa 15). Die Zustände der Eingänge muss ich natürlich irgendwo zwischenspeichern, also im RAM des Controllers. Diesen Schritt nennt man in der Steuerungstechnik "Prozessabbild der Eingänge". Jetzt kommt die eigentliche Rechenarbeit, aus den eingelesenen Werten müssen neue Sollwerte (z. B. Geschwindigkeit, Richtung usw.) bestimmt werden. Alle neuen Werte werden nicht direkt ausgegeben sondern wieder im RAM gespeichert. Dies ist die "Verarbeitung". Wenn alles neu berechnet ist kommt die "Ausgabe", in der Steuerungstechnik nennt man das "Prozessabbild der Ausgänge". Hierzu werden die neuen Sollwerte aus dem RAM geholt und ausgegeben (z. B. den Geschwindigkeitssollwert an den PWM-Generator, irgendwelche Schltbefehle an normale Ausgänge, usw.).

Der Vorteil des ganzen ist recht einfach erklärt: Wenn die Eingän direkt abgefragt und neue Werte sofort ausgegeben werden könnten sich innerhalb der Laufzeit des Rechenprogramms die Eingangszustände ändern. Dies kann bei gewissen Konstellationen ein Chaos verursachen. Außerdem müssen die neuen Sollwerte "gleichzeitig" ausgegeben werden. Berechnet man erst den Sollwert für den linken Motor, gibt diesen aus, berechent dann den Wert für den rechten Motor, gibt diesen aus fährt man eine Kurve obwohl man doch nur beschleunigen wollte (wenn das Programm langsam genug ist). In modernen Maschinensteuerungen wird das gleiche Verfahren angewandt denn dort kann ein Zyklus (Programmlaufzeit) durchaus bis zu 100ms betragen. In dieser Zeit kann sich viel ändern.
Übrigens, ich programmiere nur in Assembler und kenne mich in Hochsprachen leider nicht aus. Ich kann also leider keine Codebeispiele hier einstellen.

Zur Entfernungsmessung: Ich bestimme nicht den Abstand zur Schleife, noch nichtmal ob sich der Sensor genau darüber befindet. Ich bestimme nur Innerhalb / Außerhalb bzw. über einen 555 (Monoflop) in kürze ob die Schleife funktioniert. Es kommt auch nicht auf einen Zentimeter an. Ich werde wahrscheinlich gelegentlich die Schleife einmal komplett abfahren um die Ränder zu mähen (Christian macht das nebenbei mit wenn er die Ladestation anfährt).

Gruß,
Michael

PS: "unter Niveau" ist hier garnichts, man ist schließlich nicht überall Experte