Hallo,
ich habe bereits die Suchenfunktion genutzt, aber nicht passendes
gefunden... und ich hoffe ich bin hier richtig (könnte aber auch zur
Analogtechnik gehören)
kurze Beschreibung der Problematik:
Wir bekommen aus einem Correvit ein TTL-Signal (zwischen 0 und 5 V), und
die gehen in den Mikrocontroller (ADC).
Wir würden aber gerne beide Systeme (Mikrocontroller und Correvit) von
einander mittels einem Optokoppler entkoppeln (aus Sicherheitsgründen).
Dabei ist zu achten, dass die maximalen Schaltfrequenzen bei etwa 34000
hz liegen. (Der Fehler sollte unbdingt möglichst geringt sein!!!)
wir haben hier einen 6N135 Opptokopler
( http://www.fairchildsemi.com/ds/6N/6N136.pdf )
als Vcc benutzen wir 9 Volt.
Momentan ist es so. dass wenn wir Vin=0V anliegen haben, auf dem Vo = 9
Volt sind. Mit steigender Eingangspannung sinkt diese Spannung ab (also
quasi ein invertierendes Verhalten)
Hat jemand eine Lösung für unser Problem? (z.B macht es zunächst mehr
sinn mit einem Spannungsregler auf 5V Vcc zu gehen?
Wir wollen ja nur einem Signal zwischen 0 und 5 Volt exakt folgen
Alternativ auch gerne andere Lösungsvorschläge mit einem anderen
Bauteil?
vielen Dank im Vorraus!
Gruß
Andreas
Oh schön, ein Ratespiel !
Schaltplan ?
Correvit = 'irgendein Drehzahlsignal" ?
Ganz wild geraten: 0Hz gleich Rad steht, 34Khz = Max. Speed. ?????
Signal folgen, TTl, 5V, AD Eingang ?
Häh ?
Ok, Ihr wollt ein bis zu 34Khz Signal von einem mit 9V betrieben Sensor
auf die MCU übertragen.
AD Eingang versteh ich garnicht, da Ihr doch ein TTL Signal habt und das
ist 0V oder 5V und sonst nix.
Zum übertragen von Analogen Signalen sind Optokoppler nur mit fetter
Zusatzbeschaltung brauchbar. Siehe z.B. Trennverstärker + Avago
Ok, LED des Optokopplers bestromt = Ausgangstransistor leitend.
Zuviel Strom = kaputt oder langsam
Zuwenig Strom = kein Signal
Idealer Strom = Datenblatt und Graue Zellen
Rest: Copy Paste - Frequenzmessung mit Mikrocontrollern
Hi
>Wir bekommen aus einem Correvit ein TTL-Signal (zwischen 0 und 5 V), und>die gehen in den Mikrocontroller (ADC).
Wozu ein TTL-Signal mit ADC enlesen?
>Momentan ist es so. dass wenn wir Vin=0V anliegen haben, auf dem Vo = 9>Volt sind. Mit steigender Eingangspannung sinkt diese Spannung ab (also>quasi ein invertierendes Verhalten)
Ausgangsseitig Optokoppler und Widerstand tauschen.
MfG Spess
Hallo erneut, vielen Dank schon einmal für die Antworten!
"Wozu ein TTL-Signal mit ADC enlesen?" stimmt, ist unsinn was ich
geschrieben hatte...
"Ausgangsseitig Optokoppler und Widerstand tauschen."
Correvit(Ausgang) ==>(eingangswiderstand für Strombegrenzung)==>
Optokoppler ==> (Mikrocontroller Eingang)
wie und was genau tauschen? (sorry)
das eigentliche Problem ist ja nur, dass wir einen Spannungsfolger(!!!)
(: 0V=0V, 5V=5V) wollen, sodass wenn beim Mikrocontroller irgendwas
kaputt geht, der Correvit keinen Schaden abkriegt, daher entkoppelung
durch Optokoppler
Backgroundinfo:
Ein Correvit ist ein Messinstrument(z.B an einem Testauto u.a. sehr
teuer) zur Geschwindigkeitsmessung. Dieses Messinstrument hat einen
digitalen Ausgang, welches ein TTL-signal (rechteck signal) zwischen 0
und 5 V liefert. (Die Frequenz des Signals hängt von der Geschwindigkeit
ab: das ding gibt 340pulse pro Meter ab)
Diese wollen wir natürlich auch am Ausgang des Optokopplers, also auch
am Eingang des Mikrocontrollers, also:
Correvit ==> Optokoppler ==> (Mikrocontroller Eingang)
Die Weiterverarbeitungs auf dem Mikrocontroller ist schon implementiert
Aktuell mögliche Spannungsversorgung sind 9V, bzw. jetzt hab ich auch
mit einem Spannungsregler auch noch 5V zur Verfügung gestellt, welches
man als VCC für den Optokoppler verwenden könnte.
Die Messung und so ist alles schon impementiert(Frequenzmessung,
Periodendauermessung), darum gehts aber hier ja auch nicht!
Gruß
Andreas
Der Optokoppler 6N136 arbeitet nun mal invertierend, das ist halt kein
normaler mit Fototransistor am Ausgang. Wenn man versucht den nicht
invertierend zu betreiben (Lastwiderstand an GND Pin), wird er langsamer
- vielleicht reicht es aber auch noch, 34 kHz sind ja nicht so schnell.
In der Regel sollte es aber möglich sein einfach das Programm im µC so
anzupassen, dass es mit dem Invertierten Signal klar kommt. Für die
Geschwindigkeitsmessung ist das eventuell sogar nicht mal nötig - die
Frequenz ändert sich durch die Invertierung ja nicht. Als Notlösung
könnt man einen externen Inverter (z.B. 1/6 vom 74HC14, oder ggf. 1
Transistor und Widerstand) dazwischen schalten.
an-di schrieb:> Ein Correvit ist ein Messinstrument(z.B an einem Testauto u.a. sehr> teuer) zur Geschwindigkeitsmessung. Dieses Messinstrument hat einen> digitalen Ausgang, welches ein TTL-signal (rechteck signal) zwischen 0> und 5 V liefert. (Die Frequenz des Signals hängt von der Geschwindigkeit> ab: das ding gibt 340pulse pro Meter ab)
Auch du solltest dir dringend eine präzisere Sprache zulegen. Wenn das
Corre-Dingens einen Digitalausgang hat, dann ist die Spannung nicht
"zwischen 0 und 5V", sondern sie ist entweder 0V oder 5V. Und
natürlich ist das auch kein TTL-Pegel. Nicht alles, was digital und 5V
ist, ist deswegen auch gleich TTL.
Da du auf der "Correvit" Seite vermutlich keine weitere Spannungsver-
sorgung hast, die du anzapfen könntest, wirst du die LED des
Optokopplers vom Ausgang nach GND schalten müssen. Vorwiderstand so
bemessen, daß weder der Ausgangsstrom des Correvit noch der
Eingangsstrom des Optokopplers überschritten wird.
Auf der µC-Seite dann den Kollektor des Optokopplers an Vcc legen und
den Emitter zusammen mit einem Pulldown-Widerstand an einen Eingang. Der
Pulldown- Widerstand muß dabei groß genug sein daß der µC einen H-pegel
sieht wenn das Correvit ein H ausgibt (also die LED bestromt).
Andererseits macht ein großer Pulldownwiderstand die Chose langsamer,
also auch nicht zu groß wählen. Kann man auch ausrechnen, wenn man den
Strom durch die LED und das CTR des Optokopplers kennt.
XL
vielen vielen Dank für die Hilfe und für die konstruktive Kritik, ich
werde in Zukunft mehr drauf achten !
bezüglich der Thematik TTL Pegels...
steht halt im datenblatt vom correvit:
TTL1 Längsweg-digital (siehe Anhang). Also bin ich davon ausgegangen
dass es ein digitales Signal (TTL) ist.
der Correvit hat auch ne eigene Spannungsversorgung mit 12 Volt.
Ich werde nun ist mal die Lösung nehmen, in der der Optokoppler
invertierend arbeitet und werde die Implementierung ändern.
Ich bin euch sehr dankbar für (vor allem die schnelle Hilfe)!
Gruß
Andreas