Archiv verlassen und diese Seite im Standarddesign anzeigen : Boardcomputer
kurzwelle
23.04.2008, 12:29
Hallo!
Ich möchte mir für mein Auto einen eigenen Boardcomputer bastel.
Meines wissens Drehzalh und Geschwindigkeit ein Rechtecksignal. Wie kann ich das am besten umwandeln, z.b in Impulse pro Sekunde?
mfg
Andree-HB
23.04.2008, 13:17
...Drehzahlmesser wurden hier schon mehrfach durchgekaut, Geschwindigkeitsmesser ist dann in Verbindung mit Reifenumfang und ggfls. Getriebeübersetzung ein Resultat.
Bitte die Suchfunktion nutzen !
https://www.roboternetz.de/phpBB2/search.php
kurzwelle
23.04.2008, 15:20
Das ist mir schon klar.....mir geht es nur um die digitale Verarbeitung. Diese Rechtecksignale möchte ich in einen Zahlenwert Umwandeln. Dass man diesen noch mit einem Faktor multiplizieren muss, weiß ich schon, das ist ja nicht das Problem.
mfg
Lemonsquash
23.04.2008, 15:33
Stichwort: ADC (Analog-Digital-Converter)
Und dieses Stichwort in Kombination mit der Information von Andree-HB wird dich zu den gewünschten Informationen führen.
Weiterhin sei dir gesagt: Mit dem von mir eben genannten Stichwort wirst du auch im RN-Wiki sowie bei Google und Wikipedia fündig...
Mfg.
Lemon
kurzwelle
23.04.2008, 16:59
Aber was bringt mir bei einem Rechteck an ADC???
Entweder liegen 12 Volt oder 0 Volt an
die 12V solltest du voher mit nem Spannungsteiler runterschrauben auf max. 5V.
Umwandeln: per dauernder Portabfrage und etwas Rechnen oder
per interrupt und etwas rechnen.
wenn du dann noch die Bordspannung überwachen willst, kannste die auch noch einfach mit nem Spannungsteiler an nen ADC hängen.
Was Lemonsquash mit ADC will, peil ich grad auch nicht.
kurzwelle
23.04.2008, 20:02
Ja, das mit dem Spannungsteiler wird wohl nötig sein.
Ich muss irgendwie diese Rechteck-Impule (pro Sekunde??) zählen - an dem scheitere ich momentan
mfg
Am einfachsten fragst du dauernd nen beliebigen Pin ab.
interrupt, LCD, Ein/ausgänge konfigurieren
timer laden
Do
Pinzustand einlesen
if Pinzustand voher = Pinzustand jetzt
// nixtun
else
Zähler = Zähler +1
Pinzustand voher = Pinzustand jetzt // da der Jetzt-Zustand im nächsten Durchlauf der alte ist
end if
loop
interruptroutine:
UmdrehungenproZeiteinheit = (Zähler/2) / Zeit // "/2" da voher sowohl auf- als auch absteigende Flanken gezählt wurden
// weiterrechnen
Ausgabe am LCD
Zähler = 0 // zurücksetzen, damit gleich neu mit zählen angefangen werden kann
Timer neu laden
end interruptroutine
so schematisch mal angedeutet
EDIT: ops, hab vergessen zu sagen, was das fürn interrupt ist: ein vom MC ausgehender Interrupt, der von nem Timerüberlauf ausgelöst wird.
hab den Code noch n klein wenig angepasst!
kurzwelle
23.04.2008, 21:18
Danke, genau das das habe ich gemeint!
mfg
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.