Hallo,
ich habe ein seltsames Problem.
Ich will mit einem Atmega644p-20pu die Drehzahl eines Motorrades messen.
Ich benutze dazu den Capture Mode von einem Portpin (nicht icp).
Zuhause auf dem Tisch funktioniert es mit einem Frequenzgenerator aus
der Soundkarte.
Am Zweirad habe ich die Leitung vom Steuergerät zum Tacho abgegriffen.
Dort liegt ein Rechtecksignal an. Sobald ich diese Leitung mit dem
Portpin verbinde, hängt sich der µC auf. Habe die Spannung auf dieser
Leitung gemessen - es lagen ca 6.4 v an. Also habe ich einen
Spannungsteiler vorgeschaltet, so dass nun ca 3.2v anliegen.
Trotzdem bleibt der µC stehen, sobald die Leitung dran ist.
Masse ist mit dem Fahrzeug verbunden.
Hat jemand eine Idee?
Danke!
Also bei meinem kürzlich gebauten Drehzahlmesser habe ich das Zündsignal
nicht direkt an den AVR gelegt. Da sind ja ganz schlimm Störungen drauf
und so. Hast du ein Scope zur Hand? Wenn ja wirst du sehen, was ich
meine. Also nimm einen Optokoppler und schalte noch eine Z-Diode davor.
Bei mir funktioniert das super so.
Nebenbei: ich weiß nicht, ab der CTC-Mode dafür soo geeignet ist. Das
mag sicher funktionieren, aber ich hab bei mir immer die Zeit zwischen
zwei Impulsen gemessen und gut.
Aber versuchs schaltungstechnisch mal mit nem Optokoppler und ner
Z-Diode...
MfG,
Joachim
Hallo Joachim,
danke für deine Antwort.
Ich greife ja nicht direkt an der Zündspule, sondern an einem Ausgang
vom Steuergerät. Laut meiner Info kommt da schon ein aufbereitetes
Rechtecksignal raus, das wird nur noch zum Tacho für die Anzeige
geleitet.
Ich kann mir einfach keinen Reim draus machen, warum es sich aufhängt.
Einen Scope habe ich leider nicht :(
Gruß
Alex
Ja, das mit dem Abgriff des Signals meine ich auch so. Das "Zündsignal"
ist für mich das, was aus dem Steuergerät rauskommt :) .
Das war bei mir auch nen Rechteck-Signal (was anderes macht ja auch
nicht viel Sinn ;) ... ). Mein Signal hatte auch einen "normalen" Pegel
von ca. 0 - 14,5 V. Da war aber auch noch ein böser Nadelimpuls von rund
70V drauf. Das könnte dir der AVR übel nehmen, auch mit Spannungsteiler.
Ich würd es erstmal mit meinem Vorschlag von oben probieren. Den
Vorwiderstand für die LED des Optokopplers kannst du auf zwei
Widerstände aufteilen, wobei der eine dann auch als Strombegrenzung für
die Z-Diode dient. Wie gesagt, bei mir gehts. Mal davon abgesehen
solltest du so eine Beschaltung als "Must-Have" bei so einem Projekt
ansehen!!
Auch die Schaltung des AVRs sollte solide sein, mit Blockkondensatoren,
stabiler Spannung und so...
MfG,
Joachim
Hallo Joachim,
ich bin in der Hinsicht eher ein Anfänger, könntest du mir eine grobe
Skizze machen, wie ich das mit dem Optokoppler beschalten müsste?
Vielen Dank!
Hi!
Bevor du jetzt groß was bastelst schalte einfach mal in Serie einen 50K
Widerstand zwischen Steuergerät Ausgang und PortPin. Den Spannungsteiler
kannst du dann weglassen.
gruss Axel
Hmmm, also fühl dich jetzt nicht angemacht oder so, aber das sind
Grundlagen. Und um die zu lernen sollte der Interessierte eigentlich
selbst zuständig sein.
Aber soviel: das Ohmsche Gesetz ist bekannt. In einem Optokoppler ist
einfach eine LED drin. die Braucht einen Vorwiderstand (auch bekannt).
Mit dem zulässigen Strom, der im Datenblatt angegeben ist, kannst du den
Vorwiderstand berechnen.
Nun die Z-Diode: wie du funktioniert kannst du nachlesen. Im Groben
begrenzt sie bei "normalem" Gebrauch erstmal die Spannung. Aber damit
die nicht abraucht braucht die auch nen Vorwiderstand (steht auch
überall). Diese Z-Diode benutze ich, um die LED im Optokoppler zu
schützen. Das hat mit dem AVR erstmal noch nix zu zun. Und am "Ausgang"
des Optokopplers hängt dann der Controller. Der kann dann da auch direkt
angeklemmt werden (mit Pullup oder so...)
Ich mach mal ne grobe Skizze, aber lies auch ruhig n bissl selbst nach
;)...
MfG
Joachim: Vielen Dank.
Axel: Aber der Spannungsteiler ist zwingend notwendig, glaube ich. Auf
der Leitung sind ja über 6v drauf, das ist doch zu viel für den Portpin,
oder?
So, die Skizze...
@Axel:
stimmt natürlich grundsätzliche. Allerdings sind die 20-100 mA, die der
Optokoppler ausmachen würde, nicht sooo wild, wenn man bedenkt, was an
Leistung aus dem "Steuergerät" rauskommen muß, um die Zündspulen zu
treiben... ;)
Hi Joachim,
ich glaube du verstehst es immernoch falshc. Ich greife nicht die
Leitung vom Steuergerät zu den Zündspulen ab, sondern die reine
Drehzahl-Leitung. Die geht nur zum Cockpitinstrument :)
@Freq:
jo, da hab ich dich auch falsch verstanden :) . Aber egal, ich schätze
eichfach mal, daß das Signal ähnlich ist. Ich greife bei mir das Signal
ab, was aus dem Steuergerät kommt, weil mein Auto keinen Drehzahlmesser
hat, und ich daher auch kein "Drehzahlsignal"-Kabel finden konnte.
Aber wie gesagt, der Spannungsteiler allein wird dir nicht viel helfen.
Versuchs mit der Methode von Axel oder von mir
Versorgung ist ok. Meine Schaltung sieht in dem Bereich wesentlich
sparsamer aus. Die oben angegebene Versorgungsschaltung ist natürlich
"high-class". Aber wenn man 3 Augen zudrückt geht es auch mit 2, 3
Teilen weniger (reusper)...
Denk noch an die Blockkondensatoren an deinen ICs. Und dann überdenk
deine Signaleinkopplung. Wenn es danach läuft oder immer noch nicht
läuft sag nochmal bescheid...
Mach einen Serienwiderstand mit > 10 K in deine Signalleitung und einen
sehr kleinen C nach GND ==> das gibt zusammen einen Tiefpass Filter.
Dimensioniere den Tiefpass so, das die höchste Nutzfrequenz die du sehen
willst noch mit min 60 % Pegel durchkommt. Grenzfrquenz also etwas
oberhalb deiner höchsten Nutzfrequenz.
Danach kannst du noch einen Spannungsteiler schalten, falls notwendig.
Dieser sollte aber Werte von > 10 K haben.
Du willst ja keine Heizung.
Wie klein sollte der C dabei sein? 100nF ?
Ich habe gerade etwas Zweifel, dass der Widerstand in Serie was bringt -
denn ich hatte ja den Spannungteiler dran, da war auch ein 22k in Serie
und nach dem Abgriff noch ein 22k gegen Masse.
das ganze könnte aussehen wie im Anhang.
Besser ging es gerade nicht, hab kein brauchbares Programm auf diesem
Rechner.
Die Werte müsstest du selbst ausrechnen. Es gibt im WWW genug Programme
um solche Sachen zu berechnen.
So Fehler gefunden.
Ich hatte einen LCD auf dem Pin konfiguriert. Komischerweise machte es
zuhause mit dem Frequenzgenerator aus der Soundkarte nichts aus, am
Motorrad aber schon.
Mit dem Frequenzteiler klappt nun alles!
Danke!
hey,
ich möchte so ziemlich die gleich schaltung in meinem auto betrieben.
ist es vllt. möglich, dass du mir deinen quellcode zu verfügung stellst?
ich würde mir diesen dann auf einen c-controll mega32 umschreiben.
danke und grüße