Hallo Forum,
ich möchte eine LED einschalten wenn 2 andere nicht leuchten.
Der Motor wird per Schalter S1 (1-0-1) geschaltet, je nach Drehrichtung leuchtet D1 oder D2. (dieser Teil ist schon vorhanden und funktioniert)
Meine Überlegung war mit einem CD4001 NOR Gatter eine dritte LED D3 einzuschalten wenn der Schalter S1 0Stellung hat. Da der CD4001 nur wenige mA Schalten kann habe ich gedacht dahinter einen Transistor zu schalten. Das ganze soll auf einer (bei Platzmangel auch auf mehreren) Lochraster Platine aufgebaut werden und wird insgesamt für 12 rote LEDs benötigt.
Bevor ich die Sachen bestelle habe ich noch ein paar Fragen zu meinem kleinen Projekt:
Funktioniert das so wie auf dem Plan gezeichnet?
Gäbe es eine einfachere Lösung oder einen schon passenden IC?
Ist die Schaltung verpolungssicher, bzw würde sie Schaden nehmen?
Ich denke ich bin hier an der richtigen Adresse und hoffe mich kann jemand dabei unterstüzen.
Wenn der Schalter in der 0 Stellung ist, ist der Pegel an den Eingängen des CD4001 alles andere als definiert null Volt. Der Motor hängt ja dann in der Luft. Kann also auch auf Ub floaten oder irgendwas anderes. Du musst also mit hochohmigen Widerständen für saubere null Volt sorgen.
Probier mal den Anhang. Ist noch nicht 100% durchdacht, könnte aber klappen.
Moderne LED leuchten locker bei 1-2mA. Könnte also sein, das du den Transistor nicht brauchst.
Eher in Serie, parallel leuchten die LEDs nicht mehr. Andere Idee: Die Spannungen an den Motoranschlüssen mit Dioden verknüpfen. Der Transistor schließt dann die dritte LED kurz. Widerstände nach Bedarf einfügen.
In einer Serienschaltung bekommen alle den selben Strom. Ob das wohl passt?
Das dürfte die Komponentenauswahl deutlich einschränken oder die Sache ähnlich aufwändig werden lassen, wie eine (vernünftige) Parallelschaltung.
Falls die hohe Ruhestromaufnahme doch stören sollte, könnte er für Q1 einen Darlingtontransistor einsetzen und mit dem Optokopplertransistor die Basis gegen GND kurzschließen und Q1 mit einem 100k Basiswiderstand ansteuern und direkt die LED ein und ausschalten.
Du brauchst ein XOR Gatter (was man aus den 4 Gattern des CD4001 bauen könnte oder man kauft gleich ein CD4070).
Und du musst direkt an den Motor, nicht die LED kontaktieren.
1
+15V
2
|
3
o
4
/
5
o o
6
| |
7
+---)--+-----47k--| \ LED
8
| | | |+ )--4k7--|<|-- +15V
9
+-M-+--(--+--47k--| /
10
| | | | CD4070
11
o o | |
12
\ 10k 10k
13
o | |
14
| | |
15
Masse Masse
Die beiden 47k sind als Schutz vor der Gegeninduktionsspannung des Motors eingebaut. Die LED wird direkt von +15V versorgt und wird mit 3mA hell genug sein. Damit ist kein (PNP) Transistor notwendig.
Nicht wenn man es richtig macht und je einen Optokoppler in Reihe mit
einer der LEDs schaltet
Die eine LED und die IR-LED in dem dazu in Serie geschalteten Optokoppler bekommen genau den selben Strom. Oder was wolltest du sonst in Serie schalten?
Die Mittelstellung des 1-0-1 Schalters, wo beide Signale HIGH sind
(Motor aus).
Wenn man die beiden Schalter um 180° dreht, dann benötigt man keine Nullstellung mehr. Wenn dann der Motor auf beiden Seiten mit dem gleichen Potential angesteuert wird, stoppt er sowieso.
Meine Überlegung war mit einem CD4001 NOR Gatter eine dritte LED D3
einzuschalten wenn der Schalter S1 0Stellung hat.
Das klappt, wenn man die geforderte Funktion durch die "Digitale Brille" betrachtet und nicht einfach, wie in einigen Beiträgen zum Thema geschehen, willkürlich irgendwelche Bauteile in die Schaltung einfügt (mich wundert, dass noch niemand einen Mikrokontroller vorgeschlagen hat ;-).
Am einfachsten läßt sich das Problem durch eine Wahrheitstabelle in den Griff bekommen, wobei vorausgesetzt wird, dass die Wahrheitstabelle bzw Auswerteschaltung in !jeder! Schalterstellung an den Eingängen definiertes Potential vorfindet. Im angehängten PDF ist die Vorgehensweise beschrieben.
Und wenn man jetzt noch das demorganische Theorem anwendet und R1 bis R4 einschließlich die LEDs nicht nach GND, sondern an Vcc anschließt, könnte man den CD4001 durch einen CD4093 (NAND) ersetzen. Das hat den Vorteil, dass der CD4093 ein Schmitt-Trigger ist und könnte dadurch noch problemlos RC-Glieder vorschalten, um Motorstörungen vom Gatter fernzuhalten.
Der positive Nebeneffekt wäre noch, dass alle LEDs dadurch an plus angeschlossen sind und somit bräuchte man nur noch ein 4-adriges Kabel um die 3 LEDs auf der Schalttafel zu verbinden.
Wenn der Schalter in der 0 Stellung ist, ist der Pegel an den
Eingängen des CD4001 alles andere als definiert null Volt. Der Motor
hängt ja dann in der Luft.
Heißt ich müsste "nur" Widerstände vom Motor gegen GND schalten, dann hätte ich am Motor definiert 0V und meine Schaltung würde funktionieren?
Oder ich kann wie von mehreren vorgeschlagen Optokoppler bzw einen Bidirektionalen Optokoppler zu verwenden der einen Transistor ansteuert, aber warum muss dieser die LED kurzschließen könnte man den Transistor nicht in Reihe zu der LED schalten (also so wie ich es gezeichnet habe) dann würde doch auch kein Ruhestrom fließen, oder?
@Moritz L.
Guter Punkt mit den möglichen überspannungen.
Relais: ist glaube ich einfach zu einfach:DD
Am einfachsten läßt sich das Problem durch eine Wahrheitstabelle in den
Griff bekommen, wobei vorausgesetzt wird, dass die Wahrheitstabelle bzw
Auswerteschaltung in !jeder! Schalterstellung an den Eingängen
definiertes Potential vorfindet. Im angehängten PDF ist die
Vorgehensweise beschrieben.
mfg
Du hast in deinem Schaltplan 3NOR Gatter parallel geschaltet, ich nehme an um den Transistor zu sparen, richtig?
Wo würde die LED3 GND her bekommen?
Die Wiederstände R1 und R4 sind damit der Motor definiert auf GND liegt wenn Schalter in 0 Stellung?
Und du hast 4Dioden (D1-D4) eingebaut, zum Überspannung vermeiden?
Und wenn man jetzt noch das demorganische Theorem anwendet und R1 bis R4
einschließlich die LEDs nicht nach GND, sondern an Vcc anschließt,
könnte man den CD4001 durch einen CD4093 (NAND) ersetzen. Das hat den
Vorteil, dass der CD4093 ein Schmitt-Trigger ist und könnte dadurch noch
problemlos RC-Glieder vorschalten, um Motorstörungen vom Gatter
fernzuhalten.
Würde die LED nicht bei einem NAND Gatter immer leuchten?
Damit die LED aus geht, wenn der Optokoppler an ist.
ja das habe ich schon verstanden, aber weshalb nicht in Reihe zu der LED dann würde doch kein Strom über den Transistor fließen wenn die LED nicht leuchtet
Das ergibt eine zu hohe Spannung an der dunklen LED in Sperrichtung.
Also noch zwei Dioden hinzufügen (die mehr Spannung vertragen), dann
klappt das.
Macht keinen Sinn, weil es nichts einspart. Er kann seine zwei LEDs lassen wo sie sind und den Transistor für die dritte mit zwei simplen 1N4148 oder ähnlich ansteuern.
@Moritz L.
Guter Punkt mit den möglichen überspannungen.
Relais: ist glaube ich einfach zu einfach:DD
Das wäre in der Tat die einfachste Lösung, Kleinrelais mit Öffnerkontakt.
Manfred P. schrieb:
.. ersetzen wir den bidirektionalen Optokoppler durch zwei simple
Dioden.
Wie so oft ist der Optokoppler überflüssig. Vor der Schaltlogik her wäre er hier ein Relais mit Schließer. Wenn es unbedingt kein Relais sein darf, sehe ich den Vorschlag mit zwei Dioden als sinnvollsten Weg.
Es geht natürlich auch aufwendiger, wenn bei "LED aus" nicht der Stromverbrauch höher sein soll, wie bei "LED an".
Der 22 Ohmwiderstand soll nur den Kurzschlussstrom begrenzen, wenn eine Diode durchlegieren sollte.
Der 1 Ohm-Widerstand ist hier nur für die Simu, weil hier manuell in der Simu ein Kurzschluss möglich ist. Für die O-Stellung hätte ich sonst noch zwei weitere Schalter bnötigt, wie im zweiten Bild gezeigt.
Bei jeder Drehrichtung des Motors hat einer der beiden Anschlussseiten immer eine Spannung die über Uss/2 (bei 15V als 7,5V) liegt. Das kann man sich zunutze machen für eine einfache Differenzverstärker oder Komparatorschaltung. Das setzt aber voraus, dass in der 0-Stellung beide Schalter so wie im Schaltplan bei Ottos folgenden Post ...
Anbei noch eine einfachere Lösung. Es wird hier ausgenutzt, dass im eimgeschalteten Zustand immer ein Anschluss des Motors auf Masse liegt. Aus diesem Grunde ist es möglich über Dioden abgeblockt einen kleinen Phantomstrom (hier über 47k) einzuspeisen. Wenn der Motor läuft, fallen über der Diode und den Widerstand ungefähr 1,5V ab. Wird in der Stellung 0 die Masse unterbrochen, dann fließt der Strom durch den Transistor (ZD sichert eine Schaltschwelle über 2V) und die LED leuchtet.
Der Vorteil dieser einfachen Schaltung ist, dass bei O-Stellung beider Schalter auch nicht durch generatorischen Betrieb des Motors (symbolisiert durch 50 Ohm Widerstand) die (dritte) LED zu leuchten anfängt.
Wird in der Stellung 0 der Pfad zu Vss unterbrochen, dann fließt der Strom durch den Transistor (ZD sichert eine Schaltschwelle über 2V) und die LED leuchtet.
Würde die LED nicht bei einem NAND Gatter immer leuchten?
Nicht wenn man die beiden Widerstände am Eingang gegen Vcc schaltet, anstatt gegen GND. Außerdem braucht man nicht 3 Gatter am Ausgang als Treiberstufe parallel zu schalten. Wenn man eine moderne helle LED nimmt, genügt auch ein einziges Gatter, denn er will schließlich am Ende 4 Motoren mit insgesamt 12 LEDs ansteuern, dafür benötigt er schon genau diese 4 NAND-Gatter, die in dem CD4093 bereits enthalten sind.
Aber grundsätzlich bin ich auch der Meinung, dass hier kein CMOS-Tüddelkram hingehört, sondern dass man das Problem mit Optokopplern und/oder Transistoren lösen sollte.
Aber grundsätzlich bin ich auch der Meinung, dass hier kein
CMOS-Tüddelkram hingehört, sondern dass man das Problem mit Optokopplern
und/oder Transistoren lösen sollte.
Die einfachste Lösung ist die mit einem Relais, wie schon erwähnt:
Um ein teures mechanisch anfälliges Reedrelais einzusparen, würde ich das Problem mit einem Optokoppler LTV814 entgegentreten. Dadurch ist man auch in der Versorgungsspannung etwas flexibler.