Hallo Foraner,
kurz zu den Umständen: 3 LEDs sollen Status Heizzentrale signalisieren:
grün=OK, orange=Pellets nachfüllen, rot=Störung. Wenn beide Leitungen
eingeschaltet, dann nur rot. Dafür sollten 2 Adern plus Minus reichen,
dachte ich mir...
Schaltung0 ist erster Entwurf mit Relais - nie realisiert, gleich zu:
Schaltung1 übergegangen. Funktioniert perfekt. Das neue Signal braucht
aber gemeinsamen Minus, also habe ich
Schaltung2 aufgebaut. Die beiden 1N4007 (zur Entkopplung) und der 1M
habe ich nachträglich zugefügt, weil ich schon auf dem Basteltisch
Probleme hatte. Auch so war der rote Teil (ganz rechts) extrem
empfindlich auf Berührungen. Durch den 1M gings dann - aber draussen
leuchten nun die rote LED auch wenn nur die Orange leuchten soll.
Gibt's eine Standardschaltung für diese Aufgabe, oder was kann ich
verbessern?
Gruss Chregu
Das wird ein Signal mit 3 DIY-LED-Lampen, nix mit Duo-LED, sonst ja!
Und die rote LED muss AND verknüpft werden. Die beiden Anderen Y=A^-B
bzw. Y=-A^B.
Also ich bin schon offen für kreative Vorschläge, aber die 3 LED-Lampen
sind gegeben!
Gruss Chregu
Hallo Christian.
Ich habe mal ein Paar Fragen.
Christian M. schrieb:> Schaltung1 übergegangen. Funktioniert perfekt. Das neue Signal braucht> aber gemeinsamen Minus, also habe ich
Was stört dich daran, dass gemeinsame Minus hast du doch auch bei
Schaltung 2?
Eventuell hätte ich noch Widerstände nach Minus an der Basis eingefügt,
damit diese sicher abschalten.
> Schaltung2 aufgebaut. Die beiden 1N4007 (zur Entkopplung) und der 1M> habe ich nachträglich zugefügt, weil ich schon auf dem Basteltisch> Probleme hatte. Auch so war der rote Teil (ganz rechts) extrem> empfindlich auf Berührungen. Durch den 1M gings dann - aber draussen> leuchten nun die rote LED auch wenn nur die Orange leuchten soll.
Ich empfinde die NPN-Schaltungen als schöner/besser.
> Gibt's eine Standardschaltung für diese Aufgabe, oder was kann ich> verbessern?
Schaltung 1 sieht für mich erst einmal OK und logisch aus. Was ich mich
nur gefragt hatte ist, ob die Basiswiderstände soweit stimmen.
Du könntest Schaltung 1 auch noch reduzieren.
Indem der Transistor einfach die LED kurzschließt.
Und noch eine andere Frage.
Die beiden Leitungen haben immer ein plus oder minus Potential oder gibt
es nur Plus oder Offen?
Hi,
mach mal eine Wahrheitstabelle:
Signal A
Signal B
GN = grün OK
OR = orange (Nachlegen)
RT = rot (Störung)
A B GN OR RT
0 0 aus aus aus
1 0 an aus aus
0 1 aus an aus
1 1 aus?aus?an
Irgendwie ist deine Relaisschaltung verwirrend bezüglich rot
https://www.mikrocontroller.net/attachment/660298/Schaltung0.png
Deswegen diese Frage
Gruß
Christian M. schrieb:> Dafür sollten 2 Adern plus Minus reichen, dachte ich mir...> ...> Gibt's eine Standardschaltung für diese Aufgabe, oder was kann ich> verbessern?
Warum mehr als 2 Adern? Eine Duo-LED mit rot-grün antiparallel benötigt
eine 2-adrige Leitung.
Rot - erste Ader '+', die andere '0'
Grün - erste Ader '0', die andere '+'
gelb - abwechselnd "rot"/"grün" mit Umschaltfrequenz 100 Hz.
Als "Treiber" kann je nach LED-Strom schon ein 74HC00 oder ein
µC-Ausgang reichen. Als Oszillator reicht irgendetwas (NE555, ...).
Ob der Zusatzaufwand mit dem Oszillator lohnen würde, hängt davon ab, ob
bereits ein Kabel vorhanden ist (was für eins) oder sowieso neu gelegt
werden soll.
Rainer W. schrieb:> Als "Treiber" kann je nach LED-Strom schon ein 74HC00 oder ein> µC-Ausgang reichen.
Dafür gibt es keine Versorgungsspannung. Die Datenleitungen sollen auch
gleichzeitig die LEDs versorgen.
John-eric K. schrieb:> oder gibt es nur Plus oder Offen?
Im Zweifel kann man an den 3 Basen noch einen 100k Pulldown Widerstand
schalten. Dann funktioniert die Schaltung immer zuverlässig.
Parallel zu den 100k Widerständen kann man noch 470nF Kondensatoren
schalten, um eingfangenes 50 Hz Netzbrummen auf den langen Leitungen zu
eliminieren.
Wenn die Steuerleitungen im ausgeschalteten Zustand auf Masse gelegt
werden, kannst du die LED's mit Vorwiderstand direkt zwischen beide
Steuerleitungen hängen. Die grüne LED sorum, und die orange LED
andersrum.
Dann brauchst du nur für die rote LED ein AND-Gatter.
Danke für die vielen Vorschläge! Bin grad net zu Hause, kann erst am
Nachmittag wieder ran.
Wollte keine Salamitaktik veranstalten, aber das Problem wird verschärft
durch den Umstand, dass ein nicht auf 12V geschalteter Ausgang offen
ist, das heisst, es können Leckströme durch die Dioden in die Basis des
jeweiligen anderen Transistors fliessen. Daher werde ich mal den
Vorschlag mit dem 10k ausprobieren.
Gruss Chregu
Hier mal der Link: https://de.wikipedia.org/wiki/1-aus-n-Decoder
Die Schaltungen oben gehen an jeder Logig vorbei.
Es gibt in der C-Mos Reihe ein paar 1ausN Gatter. Es sollte aber auch
EIN HEF400 reichen. Dieser hat 2 Nand, und ein en Inverter unter der
Haube.
Etwas mit Dioden stricken, und an der Kante von Logig-Pegel zu nähen,
ist doch Gogolores. Dafür gibt es die Standard-Gatter. Oder man nimmt
ein Gal, und brennt da die benötigte Logig rein.
Christian M. schrieb:> Dafür sollten 2 Adern plus Minus reichen, dachte ich mir...
Dafür reichen 2 Adern, ohne Masse, und eben eine Duo-LED.
Christian M. schrieb:> Das wird ein Signal mit 3 DIY-LED-Lampen, nix mit Duo-LED,
Tja, selber schuld wer erst die Lampen kauft und dann über das Problem
nachdenkt. Nächstes Mal besser andersrum.
Wenn die 12V Leitungen belastbar genug sind gehen natürlich 2 Relais,
die musst du nun wohl extra dazukaufen.
Mit Halbleitern geht es auch, ein UND Gatter, fur 12V, kräftig genug für
den LED Strom, parasitär gespeist
Ich würde einfach zwei Kleinsignalrelais nehmen, hat man für gewöhnlich
doch in der Bastelkiste...Sofern das mit dem Strom passt. Läuft damit
bei mir an der Heizung seit Jahren ohne Ausfall...
Christian M. schrieb:> Wollte keine Salamitaktik veranstalten
Aber du macht gerade genau das in diesem Moment. Hättest du wirklich
gelesen was geschrieben wurde, wäre dir nicht entgangen dass weitere
Fragen offen sind...
Michael B. schrieb:> Mit Halbleitern geht es auch, ein UND Gatter, für 12V, kräftig genug für> den LED Strom, parasitär gespeist
Aber wären da im Fall A=1 und B=1 alle drei LED an?
Gruß
Michael B. schrieb:> Tja, selber schuld wer erst die Lampen kauft und dann über das Problem> nachdenkt. Nächstes Mal besser andersrum.
Es gibt Leute die möchten eine Ampel, weil man damit einfach eine
deutliche differenzierte Darstellung der Zustände hat, als mit einer
Popel DUO Led... Nicht umsonst gibt es Maschinenampeln - nutze ich
privat tatsächlich auch.
Michael B. schrieb:> Nein.
Na dann! Ach so ja, weil der Ausgang auf High ist und LED1 und 2 Masse
brauchen...verstehe - Ich würde mir die Logik und/oder die Transistoren
an der Stelle aber sparen - ist aber ja Geschmacksachse...
Michael B. schrieb:> Christian M. schrieb:>> Dafür sollten 2 Adern plus Minus reichen, dachte ich mir...> Dafür reichen 2 Adern, ohne Masse
Zeig das mal, wenn die Pegel auf den beiden Leitungen wie beschrieben
nur aktiv = 12V und inaktiv = offen sind. Wenn also der inaktive Zustand
keinen Strom aufnehmen kann.
R. L. schrieb:> die Schaltung ist für 2 Ausgänge und +.
Die funktioniert aber auch nur dann, wenn der inaktive Zustand ein
"richtiger", belastbarer Low-Pegel ist.
Thorsten S. schrieb:> Ich würde einfach zwei Kleinsignalrelais nehmen, hat man für gewöhnlich> doch in der Bastelkiste...Sofern das mit dem Strom passt. Läuft damit> bei mir an der Heizung seit Jahren ohne Ausfall...
Erschient mir auch recht einfach. Das ist die Logik von Peda, nur
elektromechanisch:
An das Signal für eine Duo-LED, also (plus | minus | 100Hz), kann man
auch 3 LEDs dran hängen. Man braucht auch nur 2 Leitungen. Wenn man
2.4kHz statt 100Hz erzeugt, kann man damit auch einen Buzzer betreiben.
Hier kann man sich auch aussuchen, ob der bei gelb oder rot Krach
schlagen soll.
Peter D. schrieb:> Hier noch ein Vorschlag mit MOSFETs.
Jetzt müssen nur noch antiparallele Dioden zwischen Gate und Source
geschaltet werden, damit die Reverse Spannung von den MOSFETs nicht
überschritten wird. Damit es keinen Kurzschluss gibt, müssen dann auch
wieder Gate Vorwiderstände eingesetzt werden und dann kann man auch
gleich PNP-Transistoren nehmen. Die machen die Schaltung etwas
unempfindlicher.
Du hast drei Leitungen.
Anstatt hier tausend komische Schaltungen mit allerlei
Ausgleichsmaßnahmen aufzubauen, mach's doch einfach modern. Natürlich
ist das nichts für Puristen, löst aber direkt alle Probleme:
Nimm einen Microcontroller. Zwei der Leitungen dienen zur
Spannungsversorgung, ggf. noch über einen kleinen (Schalt-)regler, die
dritte Leitung ist für die Kommunikation z.B. per langsamem UART. Auf
der Gegenseite muss ein entsprechender Microcontroller programmiert
werden, der die Statusmeldungen in entsprechende Nachrichten umsetzt,
das sollte aber kein Problem sein.
Der Microcontroller in der Ampel kann dann bequem drei Transistoren
ansteuern, die die LEDs schalten.
Diese Lösung ist offensichtlich die beste Lösung: Die Bauteile mögen
sehr komplex sein, aber sie sind kostengünstig verfügbar. Durch die
Programmierung lässt sich die Funktion beliebig anpassen. Es gibt keine
Probleme mit Leckströmen oder anderem Kram. Die Anzahl der Bauteile und
damit auch die Komplexität der Schaltung sind gering. Natürlich lässt
sich das auch alles diskret aufbauen, aber MCUs sind kostengünstig und
deren Programmierung ist wirklich schnell gemacht. Warum also ein
Dutzend Schaltungen entwickeln, wenn's mit einer schnellen
MCU-Programmierung viel besser geht?
F. schrieb:> Du hast drei Leitungen.> Nimm einen Microcontroller. Zwei der Leitungen dienen zur> Spannungsversorgung, ggf. noch über einen kleinen (Schalt-)regler, die> dritte Leitung ist für die Kommunikation z.B. per langsamem UART.
Hmm, in der Überschrift lese ich 2 Leitungen.
Wo nimmst Du die dritte her?
Harald W. schrieb:> Wo nimmst Du die dritte her?
Aus dem ersten posting:
Christian M. schrieb:> 2 Adern plus Minus
mit "Minus" ist GND gemeint. Also insgesamt drei Adern/Leiter, wie auch
in den mitgelieferten Bildern ersichtlich.
Harald W. schrieb:> Hmm, in der Überschrift lese ich 2 Leitungen.
Gemeint sind offensichtlich Steuerleitungen.
> Wo nimmst Du die dritte her?
1) Aus dem Bild
2) Aus den Schaltplänen
3) Aus den Beiträgen
Mit Fensterdiskriminator kannst Du das über die Spannungspegel sogar mit
weniger Adern realisieren.
Voraussetzung: Jedem Zustand wird ein Spannungspegel zugeordnet.
Aber bleiben wir einmal beim Lösungsansatz oben.
Was ist denn genau mit "Störung" gemeint.
Woher beziehst Du die einzelnen Signal-Spannungen?
ciao
gustav
Karl B. schrieb:> Mit Fensterdiskriminator kannst Du das über die Spannungspegel sogar mit> weniger Adern realisieren.
Die Minimierung der Anzahl der Leitungen ist hier absolut kein Thema.
F. schrieb:> Gemeint sind offensichtlich Steuerleitungen.
Es ist halt alles etwas unvollständig und verwirrend...ja, es sind
eigentlich drei Leitungen - genau, mit "Minus" ist GND gemeint. Der
Einstieg hier samt Überschrift ist leider etwas verwirrend
gewählt/formuliert.
F. schrieb:> 2) Aus den Schaltplänen
Ja, sieht man dort ja eindeutig...
Lothar M. schrieb:> Zeig das mal
Es wird auf SENDERSEITE das passende Signal aufbereitet, dann 2 Adern
zur LED. Je nach dem Duo-LED mit Wechselspannung ansteuern, oder
unterschiedliche Spannungshöhe.
Dennis S. schrieb:> Es ist halt alles etwas unvollständig und verwirrend
Ja, sorry!
F. schrieb:> Harald W. schrieb:>> Hmm, in der Überschrift lese ich 2 Leitungen.>> Gemeint sind offensichtlich Steuerleitungen.
Genau!
Karl B. schrieb:> Woher beziehst Du die einzelnen Signal-Spannungen?
Kommen von der SPS, Relais. Sind dann offen oder geschlossen.
Wenn orange Spannung hat, scheint der grüne Eingang seeehr Empfindlich
zu sein. Ist ja auch kein Wunder, sind doch hier zwei Transistor
hintereinandergeschaltet - beide in ca. 5facher Sättigung. Mit 47k beim
NPN bzw. 15k beim PNP zwischen B-E hat sich das Problem entschärft.
John-eric K. schrieb:> Ich empfinde die NPN-Schaltungen als schöner/besser.
Allgemein? Die PNPs haben auch ihre Berechtigung!
Gruss Chregu
Enrico E. schrieb:> Jetzt müssen nur noch antiparallele Dioden zwischen Gate und Source> geschaltet werden, damit die Reverse Spannung von den MOSFETs nicht> überschritten wird.
Bestimmt nicht, bei nur 0,7V sperren die FETs für immer.
Erlaubte +/-20V sollten bei +12V ja bequem reichen.
In stark gestörter Umgebung kann man aber 2 Transzorbs (SMBJ12A) zu R4,
R5 parallel schalten.
Christian M. schrieb:> Kommen von der SPS, Relais. Sind dann offen oder geschlossen.
Was heißt das. Liegt da eine Spannung an oder nicht.
Nur durch geöffnete oder geschlossene Kontakte kannst Du nichts
schalten.
Da muss irgendwo noch eine Spannungsquelle vorhanden sein.
Tu mir und anderen einen Gefallen und zeichne ein vollständiges
Schaltbild.
Mit Quelle und Senke. Wo fließt was.
ciao
gustav
Peter D. schrieb:> Erlaubte +/-20V sollten bei +12V ja bequem reichen.
Das stimmt natürlich. Trotzdem lasse ich die Transistorlösung noch nicht
fallen.
Christian M. schrieb:> Nächste Version...
Wenn man sowieso drei Transistoren benötigt, dann braucht man nicht
unbedingt noch einen extra BCD Decoder mit eigener Versorgungsspannung
einzusetzen.
R9 parallel zur roten LED ist deshalb nötig, weil sonst 12V durch die
orangene Leitung über R3 und D1 eine positive Spannung auf die grüne
Leitung übertragen wird und die rote LED dadurch leicht glimmen könnte.
F. schrieb:> mach's doch einfach modern.> Nimm einen Microcontroller
So ein Unsinn, wie kommst du überhaupt auf so eine generelle Aussage:
"Modern=MiKroncontroller"? Ist ja wie "hell = blau".
Karl B. schrieb:> Und wo liegt das eigentliche Problem?> Stellung Störung erkennen und an nur eine LED ausgeben?
Wenn man liest was angefragt ist, sieht man recht schnell, dass es drei
Signallampen sind und nicht eine. Demnach liegt das Problem
augenscheinlich wohl bei dir zwischen den Ohren, würde ich sagen.
Es ist zudem als Fragensteller sehr anstrengend wenn Leute ständig mit
offensichtlich komplett eigenen anderen Lösungen unterschwellig um die
Ecke kommen, die ganz offensichtlich überhaupt nicht gewünscht sind, so
nach dem Motto: Ich suche ein Auto: "... nimm doch ein Fahrrad"...
Enrico E. schrieb:> noch einen extra BCD Decoder mit eigener Versorgungsspannung> einzusetzen.Christian M. schrieb:> Nächste Version...
Schnall ich auch nicht mehr, was das nun soll - jetzt noch eine
"Version" einer bereits in anderer Form hier kommentierten und
korrigierten Schaltung einzubringen...
Anscheinend geht es nicht nur darum mit dem bereits aufgebauten ans Ziel
zu kommen... aber wohin die Reise hier nun damit noch gehen soll, kann
ich auch nicht nachvollziehen.
Viel schöner wäre nun eine Rückmeldung ob die gefixte Schaltung seinen
Dienst verrichtet und alles so läuft wie gewünscht...
Gruß
Enrico E. schrieb:> R9 parallel zur roten LED ist deshalb nötig, weil sonst 12V durch die> orangene Leitung über R3 und D1 eine positive Spannung auf die grüne> Leitung übertragen wird und die rote LED dadurch leicht glimmen könnte.
Aber auch über R5 und die BE-Diode von T3.
Eine UND-Verknüpfung mit BJTs ist daher recht knifflig zu
dimensionieren.
Daher nehme ich für Logik lieber FETs, weil die keinen Basisstrom
durchreichen und das Signal nicht belasten.
Peter D. schrieb:> Eine UND-Verknüpfung mit BJTs ist daher recht knifflig zu> dimensionieren.
Der TO soll mal ein Logik-Diagramm machen.
Was ändert sich am Eingang.
So wie ich das sehe, sind nur zwei Relais dafür zuständig.
Aber TO will in einer "Logikschaltung" drei LEDs verschiedene Zustände
zuordnen.
Unter anderem dem Zustand Störung.
Und das klappt offenbar nicht richtig.
Peter D. schrieb:> Eine UND-Verknüpfung mit BJTs ist daher recht knifflig zu> dimensionieren.
Dafür gibt es auch eine Seite:
https://sophisticatedcircuits.wordpress.com/2014/06/08/7-segment-anzeigelogik/
ciao
gustav
Thorsten S. schrieb:> F. schrieb:>> mach's doch einfach modern.>> Nimm einen Microcontroller>> So ein Unsinn, wie kommst du überhaupt auf so eine generelle Aussage:> "Modern=MiKroncontroller"? Ist ja wie "hell = blau".
Natürlich ist es kein Unsinn.
Ein Microcontroller ist die moderne Lösung, weil sie zeitgenössische
Technologien optimal nutzt und daher schnelles Erreichen des Ziels,
Einfachheit der Schaltung, Flexibilität und Kosteneffizienz kombiniert.
Natürlich lässt sich das Problem auch mit einem TTL-Grab oder diskret
aufgebauter Diode-Transistor-Logik lösen, aber offensichtlich gibt's da
Probleme, weil es nicht auf Anhieb funktioniert.
Mit einem Microcontroller ist die Auswahl der Transistoren weitgehend
unkritisch. Es genügt ein sehr einfacher Microcontroller, der auch
wirklich wenig kostet. Die modernen ATTinys wären z.B. geeignet und
lassen sich auch ohne aufwendige Programmierhardware programmieren,
natürlich geht's auch noch kostengünstiger, wenn man die Hardware
bereits hat.
Die Schaltung ist extrem einfach, die lässt sich einfach ohne große
Überlegung aufbauen, es sind ja nur drei Transistoren, die von einem
Microcontroller angesteuert werden.
Die benötigte Software ist unkritisch und sehr einfach. Die ist sogar so
einfach, dass davon auszugehen ist, dass ChatGPT sie im ersten Anlauf
aus einem einigermaßen verständlich formulierten Prompt generieren kann,
wenn man sich da die Programmierung nicht zutraut.
Kurzum: Mit der modernen Microcontroller-Lösung muss ich weder antike
TTL-Gräber aufbauen noch vorsintflutlich Wahrheitstabellen minimieren,
umformen und sie dann in DTL umsetzen. Kann man natürlich machen, ist
eine nette Übung, um zu verstehen, was so passiert, aber modern ist das
nicht. Modern ist eine softwarebasierte Lösung. Die wäre nach einer
Stunde Arbeit übrigens auch fertig und würde zuerlässig funktionieren.
Thorsten S. schrieb:> Viel schöner wäre nun eine Rückmeldung ob die gefixte Schaltung seinen> Dienst verrichtet und alles so läuft wie gewünscht...
Wenn wir hier schon Sprachpolizei spielen wollen und "Microcontroller"
ankreiden: IHREN Dienst.
F. schrieb:> vorsintflutlich Wahrheitstabellen minimieren,
Na ja, beim Programmieren werde ich auch nicht so gänzlich um die
boolsche Algebra herumkommen. Muss das "Problem" erst einmal richtig
verstehen, um es dann in passende "if", "then", "else" -Befehle
umzusetzen. Nur die Sache ist dann peripheriemäßig sehr einfach:
eingangsseitig zwei Ports (die besagten Relais) evtl. mit allen
Schikanen zur Pegelanpassung und/oder Potenzialabtrennung etc. pp.
Ausgangsseitig drei Ports zur Ansteuerung der einzelnen LEDs.
Evtl. nur noch Transistoren als Pegelwandler oder Stromverstärker.
Die Architektur der µPs erlaubt mehr. Also Statusregister, Speicherbit,
Half-carrybit. Das sind nur ganz kleine Beispiele aus der "Trickkiste".
ciao
gustav
Hallo,
Karl B. schrieb:> Die Architektur der µPs erlaubt mehr. Also Statusregister, Speicherbit,> Half-carrybit.
Bei Verwendung einer Hochsprache hast du mit all dem nichts zu tun.
rhf
Karl B. schrieb:> Der TO soll mal ein Logik-Diagramm machen.
Das Logik-Diagramm (Funktionstabelle) kann man schon fast selbst machen,
nur mit dem Unterschied, dass die Eingänge bei Lowsignal offen sind.
Man kann sogar eine richtige Aufgabenstellung daraus formulieren:
Gegeben: Funktionstabelle
Gesucht:
1. KV-Diagramm
2. Minimierte schaltalgebraische Formel
3. Minimierte Schaltung
man könnte sich noch die niedrige Flussspannung der roten LED zunutze
machen und die beiden anderen LEDs damit zu ausgehen "zwingen". Nur als
Anstz.
Ich würde da jezt an der bestehenden Schaltung nichts mehr änern. Evtl.
noch einen 100R in die Leitung und einen 1µF jweils gegen GND. UNd das
ganze eben so niederohmig ausführen, wie geradeso vertretbar. Wenn dort
10Meter offene Leitung dranhängen, würde ich da schon drüber nachdenken.
Ansonsten ist doch alles fertig. Einmal "grün", einmal "orange" und wenn
beide an sind "rot", während die beiden wieder verlöschen.
Es gibt hier weder 12V~, noch ne Duo-LED und schon garkein SPI-Bus. Der
nächste kommt sonst mit "WS2812" oder "APA102" um die Ecke.
Günter L. schrieb:> So können sogar 4 LED-Signale über zwei Leitungen> übertragen werden.
Durch antiparallel geschaltete LEDs entfallen sogar noch die
Schutzdioden.
Aber Christian wollte ja, dass alle LEDs mit ihrer Kathode an GND
geschaltet werden.
Karl B. schrieb:> F. schrieb:>> vorsintflutlich Wahrheitstabellen minimieren,>> Na ja, beim Programmieren werde ich auch nicht so gänzlich um die> boolsche Algebra herumkommen. Muss das "Problem" erst einmal richtig> verstehen, um es dann in passende "if", "then", "else" -Befehle> umzusetzen. Nur die Sache ist dann peripheriemäßig sehr einfach:> eingangsseitig zwei Ports (die besagten Relais) evtl. mit allen> Schikanen zur Pegelanpassung und/oder Potenzialabtrennung etc. pp.> Ausgangsseitig drei Ports zur Ansteuerung der einzelnen LEDs.> Evtl. nur noch Transistoren als Pegelwandler oder Stromverstärker.>> Die Architektur der µPs erlaubt mehr. Also Statusregister, Speicherbit,> Half-carrybit. Das sind nur ganz kleine Beispiele aus der "Trickkiste".
Ich habe das gelernt, ich kann sogar Wahrheitstabellen minimieren und in
NAND-Logik überführen. Alles kein Problem. Aber Software ist extrem
schnell geschrieben und gerade so einfache Software ist überhaupt kein
Problem.
Das kann man sogar machen, wenn man sehr wenig Ahnung hat und sein
Problem einfach gut beschreiben kann.
Beispiel gefällig?
1
schreibe arduino-code. ich brauche code für zwei microcontroller, einen "sender" und einen "empfänger". der sender hat zwei digitale eingänge und gibt eine nachricht über uart aus, die den zustand dieser eingänge beschreibt. am empfänger sind 3 leds angeschlossen, led_rot, led_gelb, led_gruen. der empfänger empfängt die nachricht vom sender und steuert die leds an: wenn kein eingang gesetzt ist, sind alle led aus. wenn eingang 1 gesetzt ist, leuchtet nur die gelbe led. wenn eingang 2 gesetzt ist, leuchtet nur die grüne led. wenn beide eingänge gesetzt sind, leuchtet nur die rote led. füge eine konstante im code ein, die mir erlaubt, die led-ansteuerungslogik zu invertieren. die zykluszeit soll 5 sekunden sein.
das gibt man in das LLM der Wahl ein und erhält dann passenden Code,
z.B.
Sender:
1
const int eingang1 = 2;
2
const int eingang2 = 3;
3
void setup() {
4
Serial.begin(9600);
5
pinMode(eingang1, INPUT);
6
pinMode(eingang2, INPUT);
7
}
8
9
void loop() {
10
bool zustand1 = digitalRead(eingang1);
11
bool zustand2 = digitalRead(eingang2);
12
Serial.print(zustand1);
13
Serial.print(",");
14
Serial.println(zustand2);
15
delay(5000); // 5 Sekunden Zykluszeit
16
}
Empfänger:
1
const int led_rot = 2;
2
const int led_gelb = 3;
3
const int led_gruen = 4;
4
const bool invertiereLogik = false; // Auf true setzen, um die LED-Logik zu invertieren
5
6
void setup() {
7
Serial.begin(9600);
8
pinMode(led_rot, OUTPUT);
9
pinMode(led_gelb, OUTPUT);
10
pinMode(led_gruen, OUTPUT);
11
digitalWrite(led_rot, invertiereLogik ? HIGH : LOW);
12
digitalWrite(led_gelb, invertiereLogik ? HIGH : LOW);
13
digitalWrite(led_gruen, invertiereLogik ? HIGH : LOW);
digitalWrite(led_gelb, invertiereLogik ? HIGH : LOW);
42
digitalWrite(led_gruen, invertiereLogik ? HIGH : LOW);
43
}
44
}
Ist das der beste Code der Welt? Nö. Funktioniert er? Ja.
Natürlich ist er schrecklich ineffizient, sinnvollerweise würde man die
Eingänge zu einem Symbol zusammenfassen und müsste dann auf
Empfängerseite kein gruseliges String-Handling mehr machen. Aber egal,
geschenkt. Es ist ein Einzelstück, das Ding hängt an einer zuverlässigen
Stromversorgung, da ist ein wenig Ineffizienz verzeihlich. Natürlich
kann das mit dem nächsten Prompt korrigiert werden, wenn es einen so
stört.
Dafür habe ich jetzt keine zwei Minuten gebraucht, um mir die Anfrage zu
überlegen, jetzt könnte ich meine beiden Schaltungen mit dem Sender- und
Empfänger-Microcontroller aufbauen nebst Eingangs- und
Ausgangsbeschaltung, die programmieren und hätte innerhalb weniger
Stunden inklusive Test und Montage mein Problem gelöst.
Das ist die moderne Lösung. So "einfache" Programme können LLMs sehr gut
generieren, bei komplizierteren Dingen funktioniert das natürlich nicht
mehr. Natürlich kann man das auch selber programmieren, wenn man das
kann, aber diese Hürde besteht für sehr einfache Software (und das ist
einfache Software) mittlerweile einfach nicht mehr.
Schaden kann's natürlich nicht, das Problem auch mit 6 NAND-Gattern
lösen zu können, aber ich glaube, hier wird die Geschwindigkeit und
Flexibilität von Softwarelösungen völlig unterschätzt. Eine
Softwarelösung macht die Hardware üblicherweise sehr einfach.
F. schrieb:> erhält dann passenden Code
KEINE Aufgabe für eine uc!
Enrico E. schrieb:> Durch antiparallel geschaltete LEDs
So mache ich die Signalisierung hier im Haus auch, genauso. Als
Versorgung einfach 8V AC aus dem Klingeltrafor - fertig - läuft seit
knapp neun Jahren ohne Ausfall.
Karl B. schrieb:> Der TO soll mal ein Logik-Diagramm machen.
Danach Wurde ja schon ganz zu beginn gefragt...
Beitrag "Re: 3 LEDs an 2 Leitungen"
Dennis S. schrieb:>> erhält dann passenden Code>> KEINE Aufgabe für eine uc!
Warum nicht?
Es ist schnell aufgebaut, schnell umgesetzt, anpassbar, erweiterbar (die
rote LED kann z.B. auch nach einem Tag andauernder Störung zu blinken
anfangen), kostengünstig, unproblematisch, usw.
Klar ist, dass man es auch anders lösen kann. Nach einer kurzen
Recherche kosten die benötigten ICs mit NAND-Gattern um die 80 Cent,
dazu noch ein paar Dioden für die Spannungsversorgung. Da ist die
Microcontroller-Lösung natürlich darüber, hauptsächlich wegen der
benötigten Spannungsversorgung, wenngleich nicht extrem darüber, wenn
man sich nicht allzu dumm anstellt.
>> Enrico E. schrieb:>> Durch antiparallel geschaltete LEDs>> So mache ich die Signalisierung hier im Haus auch, genauso. Als> Versorgung einfach 8V AC aus dem Klingeltrafor - fertig - läuft seit> knapp neun Jahren ohne Ausfall.
Im Gegensatz zu einer wie von mir vorgeschlagenen Microcontroller-Lösung
lässt sich ein 8V-AC-Klingeltrafo nebst entsprechender Ansteuerung nicht
einfach so unproblematisch an das bestehende System anflanschen, deine
Lösung ist also nicht zielführend.
F. schrieb:> Warum nicht?
Weil man das alles dafür nicht braucht. Aber ja, man kann auch über
Italien nach Dänemark fahren, keine Frage.
F. schrieb:> Im Gegensatz zu einer wie von mir vorgeschlagenen Microcontroller-Lösung
mit K! siehe auch Namen dieser Site!
Du vergeleichst Äpfel mit Birnen.
Ich habe an der Stelle keinen Lösungsvorschlag gemacht, sondern ein
komplett anders aufgebauten Ansatz untermauert...
Dennis S. schrieb:> F. schrieb:>> Warum nicht?>> Weil man das alles dafür nicht braucht. Aber ja, man kann auch über> Italien nach Dänemark fahren, keine Frage.
Die Antwort ist kurios. Ein Microcontroller ist verfügbar, kostengünstig
und flexibel. Viele der Funktionen verbleiben natürlich in dieser
Anwendung ungenutzt, allerdings ist das keine Schande.
Bei der Lösung mit 6 NAND-Gattern bleiben auch zwei Stück übrig. Ist
halt so, in den ICs sind immer 4 Stück drin.
Die Zuleitung zu den LEDs hat sicher auch einen deutlich höheren
Leiterquerschnitt als unbedingt notwendig, alles Verschwendung!
Die Microcontroller-Lösung ist extrem schnell entwickelt, wenn man sich
auch nur minimalst auskennt, viel schneller als die anderen Lösungen.
Sie ist relativ zuverlässig und ohne großen Test einfach direkt in der
endgültigen Konfiguration aufbaubar, weil moderne Microcontroller
weitgehend unproblematisch in der Beschaltung sind. Daher ist eine
Lösung mit MCU eine gute Lösung, da sie mit moderaten Kosten und wenig
Entwicklungsaufwand auskommt.
> F. schrieb:>> Im Gegensatz zu einer wie von mir vorgeschlagenen Microcontroller-Lösung>> mit K! siehe auch Namen dieser Site!
Mikrokontroller? Die Seite darf sich gern schreiben, wie sie will.
Microcontroller als englisches Wort schreibt sich mit zwei c.
> Du verg*e*leichst Äpfel mit Birnen.
Nö.
> Ich habe an der Stelle keinen Lösungsvorschlag gemacht, sondern ein> komplett anders aufgebauten Ansatz untermauert...
Ich schreib hier ja auch nicht, wie ich irgendwas irgendwie gelöst habe,
sondern nur Dinge, die dem initialen Problem angemessen sind. Diese
intellektuelle Mindestleistung kann man eigentlich auch von anderen
Leuten erwarten, warum schreibst du also eine Lösung für ein anderes
Problem, die sich nicht übertragen lässt und auch nichts zur Lösung des
hiesigen Problems beiträgt, in diesen Thread?
F. schrieb:> Modern ist eine softwarebasierte Lösung.
Ja, aber dafür muss man erst einmal programmieren können. Hier eine
klassische TTL-basierte Lösung.
F. schrieb:> Bei der Lösung mit 6 NAND-Gattern bleiben auch zwei Stück übrig. Ist> halt so, in den ICs sind immer 4 Stück drin.
Es geht exakt mit 2x CD4093 (8 Gatter) auf.
Das nützt aber alles nichts, weil die Versorgungsspannung nicht mit
übertragen wird und selbst wenn die Schaltung im Heizungskeller ist und
nur die Signalleitungen ins Wohnzimmer gelegt werden, dann benötigt man
trotzdem vier Leitungen drei für die LEDs und eine GND-Leitung.
Ich werfe mal meine Schaltung hier rein.
Ich denke, dass die von den Logig-Pegeln her 'sauber' ist.
Die Ausgang-Treiber könnte man je anpassen. Ein Beispiel mit einem NPN
habe ich mal dazu. Wobei, wenn der TO einen Signalturm verwendet, müsste
man 'High-Side' Switching machen, da hier eine gemeinsame Masse ist. Das
ist aber auch nicht das Problem.
Funktionieren tut mein Teil.
Thomas S. schrieb:> müsste> man 'High-Side' Switching machen, da hier eine gemeinsame Masse ist. Das> ist aber auch nicht das Problem.
Doch genau das war mein ursprüngliches Problem!
Für die vielen Ideen die zusammengekommen sind, danke ich vielmals!
Als TO habe ich in diesem Thread gemerkt, dass es doch nicht so einfach
ist, ALLE wichtigen Angaben zu liefern. Ich wollte wirklich keine
Salamitaktik veranstalten, mich nervt das ja selber bei Anderen! Aber
man ist so drinn im Projekt, alles scheint klar zu sein.
In diesem Fall hätte ich aber wirklich keine anderen Vorschläge
gebraucht, sondern wirklich nur das Ursprungsproblem gelöst. Aber hier
drehen Einige durch, wenn ich jetzt noch sage: ja, ich hätte ein drittes
Relais und ein vieradriges Kabel nehmen können, und ja, ich habe die
Lampen die schlussendlich reinkommen selber entworfen mit RGB-LEDs und
Common-Minus gewählt, dass es universell ist, und ja, ich habe einen
12V-I2C-Bus an den ich noch einen PCF8574A hätte anschliessen können
(oder einen uC, gell F.).
Gruss Chregu
Christian M. schrieb:> Mit 47k beim NPN bzw. 15k beim PNP zwischen B-E hat sich das Problem> entschärft.
Mit zwei 10k Widerständen nimmt die Empfindlichkeit noch weiter ab, ohne
dass die Funktion beeinträchtigt wird.
Christian M. schrieb:> In diesem Fall hätte ich aber wirklich keine anderen Vorschläge> gebraucht, sondern wirklich nur das Ursprungsproblem gelöst.
Bedeutet das, dass deine Schaltung nach der Überarbeitung jetzt so
aussieht (47k und 15k)?
Enrico E. schrieb:> Bedeutet das, dass deine Schaltung nach der Überarbeitung jetzt so> aussieht (47k und 15k)?
Genau. Und läuft jetzt so im Feld.
Gruss Chregu
F. schrieb:> Nö.
Da diskutiert man sich ja einen Wolf mit dir, dazu ist mir die Zeit zu
schade.
Christian M. schrieb:> Ich wollte wirklich keine> Salamitaktik veranstalten
Aber während du das schreibst, machst du das ja immer noch. Bis jetzt
gab es glaube ich keine Angaben dazu wie belastbar die 12V Steuersignale
sind (aber Rückfragen dazu), was diese LEDs genau für einen Strom
aufnehmen usw...
Du hast auch nicht nachgelegt und weitere klare Infos gegeben, ob und
was genau drum herum ist - selbst jetzt immer noch nicht.
Christian M. schrieb:> In diesem Fall hätte ich aber wirklich keine anderen Vorschläge> gebraucht, sondern wirklich nur das Ursprungsproblem gelöst
Du hast ja selbst zwischendurch immer noch mehr Varianten
eingeworfen...da zu erwarten dass andere das nicht machen, ist doch
...!?
Michael B. schrieb:> Die erst mal eine Betriebsspannung bekommen müsste.https://www.mikrocontroller.net/attachment/660435/20250207_154245.jpg
Ist halt nur eine "logische" Lösung, die meisten vergessen dabei dass
das Zeug auch noch dauerhaft bestromt werden möchte...genau wie auch
"Mister MiCrocontroller"...
Ebenso wie auch den Umgang mit offenen Gattereingängen, wenn es 12V oder
eben offen und nicht zu GND ist...
Das ganze hat leider nur sehr wenig mit einer wirklichen "Lösung" zu
tun...aber hier redet man sich ja den Mund fusselig... :-)
Dennis S. schrieb:> keine Angaben dazu wie belastbar die 12V Steuersignale> sind (aber Rückfragen dazu)
Nein.
Dennis S. schrieb:> was diese LEDs genau für einen Strom> aufnehmen
Nein.
Dennis S. schrieb:> usw...
Nein.
Dennis S. schrieb:> Du hast auch nicht nachgelegt und weitere klare Infos gegeben, ob und> was genau drum herum ist
Nein.
Gruss Chregu
Hallo!
Warum können nicht ganz einfach die zwei Relais über Spannungsteiler
eine Steuerspannung (-strom) bereitstellen und für die Anzeige sowas wie
den LM3914?
Da könnten sogar 10 verschiedene Zustände mit ganz wenig Hardwareaufwand
angezeigt werden!
Route_66 H. schrieb:> und für die Anzeige sowas wie den LM3914?
Der kommt ohne Versorgungsspannung aus oder wie meinst du wird es
leuchten ?
Zudem taugt er nicht für LED mit gemeinsamer Kathode.
Ist ja auch keine Ampel, ich schrieb immer "Signal"! ;-) Nach schweizer
Vorbild: https://de.m.wikipedia.org/wiki/Signalsystem_L
Obwohl ich die Wikipedia inzwischen meide wegen Zensur und Propaganda.
Gruss Chregu