Optische Abstandsmessung mit Atmega8 - wie programmieren ?
Hallo zusammen!
Ich bin in der Technikerschule gerade mit noch 3 Anderen in eine Gruppenarbeit eingebunden:
Optische Abstandsmessung mit dem Atmega8.
Ziel dieses Projektes ist es in ein Modellauto (klein & rot :-b ) den Sonsor, ein LCD-Display sowie die Stromversorgung etc einzubauen.
Auf dem Display soll immer der aktuelle Abstand von Heck des Autos bis zur Wand o.Ä. angezeigt werden.
Wir haben folgenden Sonsor zur Verfügung: http://www.conrad.de/goto.php?artikel=185364
Natürlich ist der nicht ideal, weil die Spannungsveränderung nicht linear ist, aber von den Ultraschallsensoren hat keiner (auch nicht die Lehrer) Ahnung 8-[
Bascom und Programmierung mit Mikrokontrollern ist für mich noch neu, aber ich habe schon einige ganz kleine Programme geschrieben und gebrannt.
Hardware ist auch vorhanden (myAVR - mySmartUSB mit rowalt-Testumgebung).
Habt Ihr einen Tipp für mich, wie ich diese Abfrage des Spannungswertes über den AD-Wandler des AT8 im Display dargestellt bekomme ?
Macht es Sinn mit If/Else-Befehlen zu arbeiten um dann alle "5cm" eine Veränderung zu sehen, oder geht es auch mit stetiger Abfrage ?
Vielen vielen Dank für jede Hilfe!! O:)
Re: Eine Tabelle erstellen
Zitat:
Zitat von Mitch64
... Je genauer und feiner du die Tabelle machst, desto genauer mißt das Teil.
Aber gewisse Mess-Ungenauigkeiten ... bleiben ... Messfehler, Ablesefehler des Spannungs-Entfernungs-Diagramms, Toleranzen des Bauteils usw. ...
Na ja, so kann man sich geschickt aus der Affäre ziehen. Das schlichte " usw." ist der Knackpunkt - der eben nicht erklärt wurde. Je nach der Steigung der Sensorkurve U=U(x) steht für das gleiche dU ein z.T. dramatisch unterschiedliches dx. ALSO ist die Berechnung nicht wegen Messungenauigkeiten fehlerhaft, sondern wegen dieses Kurvenverlaufes zusammen mit der maximal 10bittigen Auflösung des ADC. Das mag polemisch klingen, ist aber eine wesentliche Eigenschaft des Systems. Und bevor DEIN Controller eine solche Tabelle auswertet hat und vielleicht noch interpolieren muss, ist meiner mit der Berechnung schon längst fertig, weil er so rechnet, wie ich das oben erwähnt habe. Ganz deutlich: das Ergebnis konvergiert NICHT mit der Feinheit der Tabelle.
Zitat:
Zitat von Mitch64
... Aber im Datenblatt ist eine Kurve abgebildet mit den Spannungswerten und den dazugehörigen Entfernungen ...
Stimmt - und fährst Du mit den Testbedingungen nach denen das Datenblatt entstanden ist? Das glaub ich jedenfalls nicht. Ich habe meine Kalibrierung in meinem System unter Laufbedingungen gemacht - und kann im interessierenden Bereich mit rund 1 mm Genauigkeit messen.
Zitat:
Zitat von Mitch64
... Ablesefehler des Spannungs-Entfernungs-Diagramms ...
Hihihi - Ablesefehler. Wie oben gesagt.