Logiksignale nur durchlassen, falls nicht mehr als eine 1

#2385785
Lesenswert?

Hallo,

freue mich nun im Forum registriert zu haben, nach dem ich schon so viel 
Hilfe bekommen habe allein durchs Lesen.

Jedenfalls zum Thema:
Ich habe einige Steuersignale die im Endeffekt Relais steuern. Das 
wichtige ist mir die Absicherung, dass nur ein Relais zu einem Zeitpunkt 
angezogen sein darf. Es wird etwa 20 Steuersignale.

Wenn also 2 oder mehr Signale 5V sind, sollen alle Signale in 0 
gewandelt werden.

Mit Gattern wäre das ein riesen Aufwand, wie ich denke, und das nimmt 
mir doch etwas zu viel Platz ein. Meine Alternatividee wäre ein µC zu 
benutzen und das Softwaretechnisch umzusetzen.
Hat einer von euch vllt eine bessere Idee?

Beste Grüße
Robert
Persönliche Seite #2385798
Lesenswert?

Robert M. schrieb:
> Hat einer von euch vllt eine bessere Idee?

Ja. Mach das doch einfach "teil-Analog". Ist zwar ein wenig "getrickse", 
geht aber. Du brauchst nur 1 Widerstand pro Relais + eine Diode pro 
Relais + 1 Komparator + 1 Referenzspannung.
1
  ----------------------------
2
  |    |        |       |    |
3
 ---  --- alle ---      |    |   |\
4
 | |  | |  1k  | |      |    ----|+\_____ Wird high, wenn >1 Eingang high
5
 | |  | | Ohm  | |     ---   ----|-/
6
 ---  ---      ---  1k | |   |   |/
7
  |    |   ...  |  Ohm | |   |---------
8
 ---  ---      ---     ---  ---       |
9
 / \  / \      / \      |   | |      --- 1kOhm
10
 ---  ---      ---      |   | | 1k5  | |
11
  |    |        |       |   --- Ohm  | |  /\ VCC
12
  |    |        |       |    |       ---  |
13
St.1 St.2     St.n     ---  ---       |---|


Gruß
Jonathan
(Firma: Manfred) #2385802
Lesenswert?

Hi,

grundsätzlich ja eine einfache Aufgabe für einen uC
Du kannst z.B. timergesteuert alle paar mSec den Status der Eingangsport 
überwachen, dabei kannst du z.B. 8 Ports immer gemeinsam einlesen und 
einfach erkennen, ob die Zahl>0 ist.

Für die 20 Ports eignet sich am Besten ein Atmega16 aufwärts, der hat 
dann 32 Ports, von denen du am geeignetsten PortA, PortC und PortD mit 
jeweils 8 Eingängen nutzen könntest (PortB4-B7 würde ich in deinem Fall 
nur für die ISP-Programmierung verwenden).

Wichtig ist, dass du vorher einmal die JTAG-Schnittstelle abschaltest, 
sonst wirds beim PortC undurchsichtig ;-)
#2385809
Lesenswert?

Helmut Lenzen schrieb:
> Robert M. schrieb:
>> Ich habe einige Steuersignale die im Endeffekt Relais steuern. Das
>> wichtige ist mir die Absicherung, dass nur ein Relais zu einem Zeitpunkt
>> angezogen sein darf. Es wird etwa 20 Steuersignale.
>
> Ist das eine Sicherheitskritische Anwendung?
> Wenn ja darf das nur per Hardware (Kontakte) geloest werden.

Ja ganz recht. Durch Schalten zweier Relais entsteht ein Kurzschluss, 
der sich unter Umständen nicht gesund auswirken wird!

Jonathan Strobl schrieb:
> Ja. Mach das doch einfach "teil-Analog". Ist zwar ein wenig "getrickse",
> geht aber. Du brauchst nur 1 Widerstand pro Relais + eine Diode pro
> Relais + 1 Komparator + 1 Referenzspannung.

Die Idee klingt eigentlich nett. Da ich mit Komparatoren jetzt noch 
nicht gearbeitet habe, was genau empfiehlt sich für eine solche 
Anwendung? Es geht um 5V Signalpegel.
Gast #2385823
Lesenswert?

Jonathan Strobl schrieb:
> Ja. Mach das doch einfach "teil-Analog". Ist zwar ein wenig "getrickse",
> geht aber. Du brauchst nur 1 Widerstand pro Relais + eine Diode pro
> Relais + 1 Komparator + 1 Referenzspannung.


So kann mans natürlich auch machen, hab da aber noch ne andere Idee:

Die Dioden kannst du dir sparen wenn du einen Summierverstärker 
aufbaust. Jedoch musst du dann noch die Ausgangsspannung auswerten (z.B. 
Komparator).
Das ergibt: 1 Widerstand pro Signal + OPAMP mit Rückkopplungswiderstand 
+ Komparator (wieder OPAMP) mit Spannungsreferenz (2 Widerstände).

Total: 2 OPAMPs und 23 Widerstände


Danach musst du natürlich noch verhindern, dass zwei oder mehrere Relais 
gleichzeitig anziehen.
#2385874
Lesenswert?

bestucki schrieb:
> Danach musst du natürlich noch verhindern, dass zwei oder mehrere Relais
> gleichzeitig anziehen.
Meine Güte, genau darum geht's doch.

Robert M. schrieb:
> Wenn also 2 oder mehr Signale 5V sind, sollen alle Signale in 0
> gewandelt werden.
Das macht ein Mikrocontroller mit links. Ist allerdings auch ein großer 
Hardwareaufwand. Denn du benötigst 20 Eingänge und 20 Ausgänge. Als 
Ausgänge bieten sich Schiebergister, die über SPI angesteuert werden, 
an. Als Eingänge dienen die Ports des µC. Also 40-Pinner: Atmega 164, 
324 oder so. Nicht die alte Atmega16-Gurke. Ist auch eine Preisfrage. 
Die neuen sind mittlerweile wesentlich billiger.

Für die Ports nimmt man den Pin-Change-Interrupt und fragt bei jedem 
Interrupt ALLE Ports ab. Dann braucht man noch ein wenig Bitgefriggel 
und gibt dann das Ergebnis über SPI auf die Schieberegister = Ausgänge.

mfg.
#2385880
Lesenswert?

Helmut Lenzen schrieb:
> Also nix mit uC und Co. Die koennen abstuerzen und damit die
> Sicherheitsfunktion verhindern.
Blödsinn.

Helmut Lenzen schrieb:
> Dann muss das nach VDE ueber die Oeffnerkontakte der anderen Relais
> verhindern
Relaiskontakte können abbrechen, verbrennen, verbiegen etc. und die 
Sicherheitsfunktion verhindern.

mfg.
#2385890
Lesenswert?

Thomas Eckmann schrieb:
> Relaiskontakte können abbrechen, verbrennen, verbiegen etc. und die
> Sicherheitsfunktion verhindern.

Schon mal was von Sicherheitsrelais mit zwangsgefuehrten Kontakten 
gehoert?
Wenn bei einem Sicherheitsrelais / Schuetz ein Kontakt festbrennt 
duerfen die anderen nicht mehr schalten. Ausserdem ist die gute alte 
Elektromechanik immer noch um einiges Sicherer als jede Elektronik.

http://schmersal.de/cms1/opencms/html/de/service/glossary.html?id=71
Gast #2385896
Lesenswert?

Robert M. schrieb:
>> Ist das eine Sicherheitskritische Anwendung?
>> Wenn ja darf das nur per Hardware (Kontakte) geloest werden.
>
> Ja ganz recht. Durch Schalten zweier Relais entsteht ein Kurzschluss,
> der sich unter Umständen nicht gesund auswirken wird!

Wenn du eine µC-Lösung baust, dann denke daran eine Umschaltzeit mit 
einzuplanen in welcher die Relais auch Zeit zum Abfallen haben, bevor du 
ein neues einschaltest.
#2385914
Lesenswert?

Hi,

Helmut Lenzen schrieb:
> Robert M. schrieb:
>> Ja ganz recht. Durch Schalten zweier Relais entsteht ein Kurzschluss,
>> der sich unter Umständen nicht gesund auswirken wird!
>
> Dann muss das nach VDE ueber die Oeffnerkontakte der anderen Relais
> verhindern. Also nix mit uC und Co. Die koennen abstuerzen und damit die
> Sicherheitsfunktion verhindern.

HHMMM,

Ohne jetzt die VDE vorschriften Diesbezüglich jetzt noch im Detail 
auswenig zu kennen oder gar jetzt nachschlagen zu wollen müsste man sich 
jetzt einigen ob man von "Sicherheitskritisch" im Sinne der Vorschrift 
(Der Kopf des Bedieners steckt noch zwischen Formteil und Stempel... 
Wenn da was Schiefgeht explodiert die Anlage...) oder aber nur von 
"Sicherheitskritisch" im Sinne von: "Wenn da was Schiefläuft ist die 
Anlage evtl. kaputt und ich muss den Techniker rufen" Spricht.

Für ersteres muss man wirklich genau auf die Vorschriften achten, für 
letzteres nur etwas "technisch" Sinnvolles aufbauen.

Vorschlag an den TE:
Wenn das mit dem Gattergrab in Standartlogik (logischerweise) zu 
aufwendig ist:
Wieso nicht das Gattergrab in form von einer reihe verODERter NAND in 
einen einzigen PLD - z.B. einem GAL, oder wenn es richtig viele Signale 
sind auch CPLD gießen?
Kein Program, keine Taktsignale alles Hardwareverknüpfungen ohne jede 
Latenz.

Gruß
Carsten
Gast #2385934
Lesenswert?

Thomas Eckmann schrieb:
> bestucki schrieb:
>> Danach musst du natürlich noch verhindern, dass zwei oder mehrere Relais
>> gleichzeitig anziehen.
> Meine Güte, genau darum geht's doch.

Ich habe nur beschrieben wie man erkennen kann, ob mehrere Signale high 
sind. Meine Schaltung verhindert nicht, dass mehrere Relais anzeihen 
können.

Ich gehe jetzt nicht weiter darauf ein, wie man das verhindern kann, da 
eine Lösung mit einem uC um einiges besser ist, da auch die Abfallzeiten 
der Relais berücksichtigt werden können. Dies muss allgemein beim 
Umschalten berücksichtigt werden, wenn Kurzschlüsse entstehen können.


Helmut Lenzen schrieb:
> Also nix mit uC und Co. Die koennen abstuerzen und damit die
> Sicherheitsfunktion verhindern.

Wenns wirklich so wichtig ist, dann baut man ein redundantes System auf.


Leider gibt es noch keine weiteren Informationen über die Anforderungen. 
Ist es irgend ein Gebastel für Zuhause oder muss es 
professionell/kommerziell sein?
#2385941
Lesenswert?

Thomas Eckmann schrieb:
> Helmut Lenzen schrieb:
>> Also nix mit uC und Co. Die koennen abstuerzen und damit die
>> Sicherheitsfunktion verhindern.
> Blödsinn.
>
> Helmut Lenzen schrieb:
>> Dann muss das nach VDE ueber die Oeffnerkontakte der anderen Relais
>> verhindern
> Relaiskontakte können abbrechen, verbrennen, verbiegen etc. und die
> Sicherheitsfunktion verhindern.

Nicht, wenn man Sicherheitsrelais nimmt und diese richtig verschaltet.
Gruss
Harald
Gast #2385996
Lesenswert?

Während die Fähigkeiten des Controller für diese simple Aufgabe nahezu 
unbedeutend sind, kommt man aufgrund der 20 Eingänge und 20 Ausgänge 
kaum um einen Chip mit ca. 60++ Pins herum - etwas Größeres im 
SMD-Gehäuse.

Eine andere Möglichkeit wäre es, zwei kleinere Contoller zu verwenden, 
und beim ersten die 20 Eingangs-Signale anzuschließen, und beim zweiten 
die 20 Ausgangssignale. Untereinander verbunden werden beide Chips über 
eine der üblicherweise vorhandenen seriellen Schnittstellen, z.B. SPI 
oder I²C.

Vorteile dieser Lösung sind, daß bestenfalls keine Glue-Logic 
erforderlich ist, daß die Funktion flexibel programmierbar ist, und man 
mit den preiswertesten Controllern auskommt, die nur genügend Pins 
bieten müssen.

Der erste Controller generiert aus den 20 Eingangssignalen ein 
Datenpaket entsprechend der Forderung, daß gleichzeitig nur ein Signal 
Aktiv sein darf, und kann bei Verletzung dieser Regel entweder alle 
Signale im Datenpacket inaktiv schalten, oder nach Wunsch dann auch ein 
bestimmtes von mehreren Eingangssignalen priorisieren. Dieser Controller 
dient damit als frei programmierbarer Encoder.

Das Datenpacket wird seriell an den zweiten Controller gesendet, der 
dies je nach Sicherheitsanforderung erneut überprüfen kann, und daraus 
wieder 20 "einzelne" Steuersignale für die Relais dekodiert. Dabei kann 
dieser Controller auf Wunsch noch hier bereits angesprochene 
"Feinheiten" wie Schaltzeiten der Relais beachten.

Wird noch mehr Sicherheit bezüglich der Forderung "nur ein Relais zur 
gleichen Zeit zu schalten" gefordert, die bspw. auch "klebende" Kontakte 
berücksichtig, müsste zusätzlich das Signal hinter den Relais 
kontrolliert werden. Im einfachsten Fall über 20 Dioden, deren Anoden an 
den Relaiskontakten liegen, und an deren gemeinsamer Kathodenleitung ein 
Signal ansteht, wenn auch nur ein Relaiskontakt geschlossen ist. Dieses 
verUNDete Signal kann der zweite Controller auswerten, um zu erkennen, 
ob alle Relais tatsächlich ihre Kontakte geöffnet haben.

Ggf. wird es erforderlich sein, dieses verUNDete Signal galvanisch 
getrennt, bspw. über einen Optokoppler zurückzuführen. Selbst ein 
Wechselspannungssignal ist zur Rückführung geeignet, wenn die Totzeit 
während der alle Relais offen sind, länger als eine 
Wechselspannungsperiode dauert.
#2386033
Lesenswert?

Einfachste Verriegelung.
Immer das Relais das links ist gewinnt die Entscheidung. Alle Relais 
rechts davon fallen ab. Braucht nur einen weiteren Oeffner pro Relais. 
Ist zwar jetzt nicht die sichereste aller Schaltungen aber immer noch 
sicherer als alle anderen mit Halbleitern drin.

Frage mich wann der erste kommt mit einem Vorschlag der einen Quadcore 
Prozessor braucht :-)
Angehängte Dateien:
#2386049
Lesenswert?

Helmut Lenzen schrieb:
> Ist zwar jetzt nicht die sichereste aller Schaltungen aber immer noch
> sicherer als alle anderen mit Halbleitern drin.
Was hast du eigentlich gegen Halbleiter? ICs sind immer das Letzte, was 
kaputt geht.
In einem Relais-Forum wirst du natürlich ungeteilte Zustimmung ernten 
und alle werden die nächsten drei Tage noch nicken. Aber dieses Forum 
ist ein Mikrocontroller-Forum.

Deine Schaltung ist gut. Weil einfach. Also einfach gut.
Berücksichtigt aber eine Forderung nicht:
Robert M. schrieb:
> Wenn also 2 oder mehr Signale 5V sind, sollen alle Signale in 0
> gewandelt werden.

Helmut Lenzen schrieb:
> Frage mich wann der erste kommt mit einem Vorschlag der einen Quadcore
> Prozessor braucht :-)
Wenn man auch die Eingänge mit Schieberegistern einliest, reicht ein 
Tiny mit 8 Pins.

mfg.
#2386082
Lesenswert?

Thomas Eckmann schrieb:
> Was hast du eigentlich gegen Halbleiter? ICs sind immer das Letzte, was
> kaputt geht.

Ich habe nichts gegen Halbleiter im Gegenteil. Aber anscheinend hast du 
was gegen Elektromechanik. Man muss nicht alles mit Halbleitern (uC und 
Co) relaisieren.
Und ich habe im laufe meines Lebens schon mehr defekte Halbleiter 
gesehen als defekte Relais. Halbleiter gehen schon bei der kleinsten 
Ueberspannung kaputt, Relais dagegen noch lange nicht.

Thomas Eckmann schrieb:
> In einem Relais-Forum wirst du natürlich ungeteilte Zustimmung ernten
> und alle werden die nächsten drei Tage noch nicken. Aber dieses Forum
> ist ein Mikrocontroller-Forum.

Dafuer gibt es aber genug andere Themen hier die nichts mit uC zu tun 
haben.
Moderator (Firma: Titel) Persönliche Seite #2386114
Lesenswert?

Thomas Eckmann schrieb:
> Berücksichtigt aber eine Forderung nicht:
> Robert M. schrieb:
>> Wenn also 2 oder mehr Signale 5V sind, sollen alle Signale in 0
>> gewandelt werden.
Leider ist das nur eine Folgerung aus der eigentlichen Forderung, die
Robert M. schrieb:
> Das wichtige ist mir die Absicherung, dass nur ein Relais zu einem
> Zeitpunkt angezogen sein darf.
Kurz: es müssen im Fehlerfall nicht alle abfallen, sondern es darf eines 
angezogen bleiben. Und das beherrscht die Schaltung von Helmut Lenzen 
(helmi1) optimal und in schnörkelloser, brutaler Hardware. Ich würde das 
auch so machen... ;-)
#2386156
Lesenswert?

Helmut Lenzen schrieb:
> Aber anscheinend hast du was gegen Elektromechanik.
Wenn es sich vermeiden lässt, auf jeden Fall.

Helmut Lenzen schrieb:
> Und ich habe im laufe meines Lebens schon mehr defekte Halbleiter
> gesehen als defekte Relais.
Ich auch. Ist ja nicht so, daß nie etwas kaputt geht.

Helmut Lenzen schrieb:
> Halbleiter gehen schon bei der kleinsten Ueberspannung kaputt
Das ist doch nun wirklich an den Haaren herbeigezogen. Überspannungen 
haben nicht aufzutreten. Dafür hat man Sorge zu tragen. Und "kleinsten" 
möchte ich mal in Frage stellen.

mfg.
Moderator (Firma: Titel) Persönliche Seite #2386162
Lesenswert?

Thomas Eckmann schrieb:
> Überspannungen haben nicht aufzutreten.
Darf ich diesen Satz in meinen Schaltplänen verwenden? Das würde mir das 
Leben unglaublich erleichtern...  ;-)

> Und "kleinsten" möchte ich mal in Frage stellen.
Leg mal an eine 5V-Relaisspule für 200ms 24V an. Und dann mach das mit 
einem uC. Was ist der Unterschied?
Zum Hintergrund: 24V sind genauso wie 5V überaus gebräuchliche 
Spannungen.
Gast #2386163
Lesenswert?

Thomas Eckmann schrieb:
>> Ist zwar jetzt nicht die sichereste aller Schaltungen aber immer noch
>> sicherer als alle anderen mit Halbleitern drin.
> Was hast du eigentlich gegen Halbleiter? ICs sind immer das Letzte, was
> kaputt geht.
IC halten eventuell noch, leider gibt es noch mehr ringsrum. Wie lange 
halten denn Elkos die zur spannungstabilieserung eingesetzt werden? 
Relais gehen auch nach 50Jahren noch, bei billiger china elektronik 
bezweifleifle ich das.
#2386181
Lesenswert?

Lothar Miller schrieb:
> Leg mal an eine 5V-Relaisspule für 200ms 24V an. Und dann mach das mit
> einem uC.
Welcher Schwachkopf macht denn sowas? Nenn' mir mal einen Grund, warum 
ich das machen sollte. Um danach festzustellen, daß der Controller 
kaputt ist und das Relais nicht?
Und daraus schliesse ich dann, daß Relais besser sind?
Vergiss' solchen Unsinn.

Peter II schrieb:
> Relais gehen auch nach 50Jahren
qed

mfg.
#2386196
Lesenswert?

Thomas Eckmann schrieb:
> Welcher Schwachkopf macht denn sowas? Nenn' mir mal einen Grund, warum
> ich das machen sollte. Um danach festzustellen, daß der Controller
> kaputt ist und das Relais nicht?
> Und daraus schliesse ich dann, daß Relais besser sind?
> Vergiss' solchen Unsinn.

Der Elektriker der das ganze in Betrieb nimmt und 2 Draehte verklemmt.
Schon mehr als einmal vorgekommen. Und schwuppdiwupp war wieder mal eine 
Karte von einigen 100 Euro ein Fall fuer die Tonne.

Lothar Miller schrieb:
> Darf ich diesen Satz in meinen Schaltplänen verwenden? Das würde mir das
> Leben unglaublich erleichtern...  ;-)

Lothar ich hoffe du meldest kein Patent drauf an moechte ich auch in 
meinen Schaltplaenen reinschreiben duerfen ;-)

Dann koennte ich viel Bauteile sparen ...
Gast #2386213
Lesenswert?

Ich werfe jetzt doch nochmal bewährte Digitaltechnik ins Spiel, denn die 
Auswertung der 20 Relais kann einfach mit 20 EOR hintereinander 
geschehen. Mehr ist da nicht. Den Relais könnte man dann Buffer 
vorschalten, die sich per Disable von den 20 EOR auf Masse ziehen 
lassen. Bauteilkosten 2,50€, Programmieraufwand 0.

Das wäre jetzt meine Vergehensweise, ohne die Hardware genau zu kennen.
#2386214
Lesenswert?

Helmut Lenzen schrieb:
> Der Elektriker der das ganze in Betrieb nimmt und 2 Draehte verklemmt.
Gegen Dummheit ist leider noch kein Kraut gewachsen. Ausserdem gibt es 
Dioden, falls einer nicht rot und blau unterscheiden kann. Wie macht man 
das eigentlich mit einem Relais?

> Lothar ich hoffe du meldest kein Patent drauf an moechte ich auch in
> meinen Schaltplaenen reinschreiben duerfen ;-)

Helmut Lenzen schrieb:
> Lothar Miller schrieb:
>> Darf ich diesen Satz in meinen Schaltplänen verwenden? Das würde mir
>> das Leben unglaublich erleichtern...  ;-)
> Lothar ich hoffe du meldest kein Patent drauf an moechte ich auch in
> meinen Schaltplaenen reinschreiben duerfen ;-)

Also ich schreibe das in meine Spezifikationen rein.
Betriebsspannung 5V oder 230V oder wie auch immer. Wenn dann ein Trottel 
24V anlegt oder das Netzteil an einer Hochspannungsleitung betreibt, ist 
das NICHT mein Problem.
Und mögliche Überspannungen durch Blitzschläge auf der Netz- oder 
Telefonleitung sind auch kein Grund für mich Relais statt Halbleiter zu 
verwenden.

mfg.
#2386234
Lesenswert?

Thomas Eckmann schrieb:
> Wie macht man
> das eigentlich mit einem Relais?

Denn meisten Relais ist die Polaritaet egal.
Und dann gibt es noch Kunden die ueber die Spule absolut keine 
Diode/Varistor etc. haben wollen und sagen deine Schaltung muss das 
aushalten.

Thomas Eckmann schrieb:
> Und mögliche Überspannungen durch Blitzschläge auf der Netz- oder
> Telefonleitung sind auch kein Grund für mich Relais statt Halbleiter zu
> verwenden.

Och das sagt der Kunde dir schon ob das dir egal sein darf.
Persönliche Seite #2386242
Lesenswert?

Halo Thomas,

> Was hast du eigentlich gegen Halbleiter? ICs sind immer das Letzte, was
> kaputt geht.
> In einem Relais-Forum wirst du natürlich ungeteilte Zustimmung ernten
> und alle werden die nächsten drei Tage noch nicken. Aber dieses Forum
> ist ein Mikrocontroller-Forum.

Wenn man sich im Fach auskennt, weiss man, dass das keine Glaubensfrage 
ist, sondern Helmut seine ISOs, CSAs, VDEs und andere 
Sicherheitsvorschriften kennt.

Ich bin auch ein eingefleischter Mikroprozessorier und musste 
dazulernen.
Wer sicherheitsrelevante Dinge auf die Beine stellen will, der KANN das 
auch mit Halbletern oder sogar mit Software machen (Hier ist der einzige 
Punkt in dem Helmut irrt....Beispiel: Bereichsblockierungen bei 
Industrierobotersteuerungen) aber der Aufwand ist immens (Vorhalten von 
ausreichend Redundanz etc.)
Die Elektromechanik - bei entsprechender Auslegung - ist hier wirklich 
im Vorteil.

Dennoch wuerde ich in DIESEM Fall die Loesung von Jonathan benutzen!


Gruss

Michael
Gast #2386253
Lesenswert?

Helmut Lenzen schrieb:
> Und dann gibt es noch Kunden die ueber die Spule absolut keine
> Diode/Varistor etc.

"Diode, Varistor oder etc." ÜBER der Spule (an Siemens Lufthaken?) zu 
montieren, ist aber auch die denkbar grobschlächtigste Methode. Etwa auf 
den Niveau: Bauer pflügt Feld mit Handgranaten.

Helmut Lenzen schrieb:
> und sagen deine Schaltung muss das
> aushalten.

Recht so! Den dort - in die Schaltung, direkt auf der Platine gehört die 
Schutzvorrichtung hin!

;-)
#2386262
Lesenswert?

Michael Roek schrieb:
> Wer sicherheitsrelevante Dinge auf die Beine stellen will, der KANN das
> auch mit Halbletern oder sogar mit Software machen (Hier ist der einzige
> Punkt in dem Helmut irrt....Beispiel: Bereichsblockierungen bei
> Industrierobotersteuerungen) aber der Aufwand ist immens (Vorhalten von
> ausreichend Redundanz etc.)

In dem Punkt gebe ich dir Recht. Da geht es auch nicht anders zu machen.
Aber wie du schon sagst nur mit Redundanz. Das ist aber mit einer 
schnell zusammengestrikten uC Schaltung aber bei weitem nicht gegeben.


Und nicht das jemand denkt ich haette was gegen uC. Ich setzte davon 
genug ein (ARM,MSP430,AVR etc..).

Aber bei Schaltungen die sicherheitsrelevant sind b.z.w. einen 
Kurzschluss verurschen koennen hoert bei mir der Spass auf.
Selbst die einfachste Schaltung wo ein Kurzschluss passieren kann 
(Wendeschuetzschaltung) muss entweder elektrisch oder mechanisch 
gegeneinander verriegelt sein.
#2386273
Lesenswert?

Ralf N. schrieb:
> Recht so! Den dort - in die Schaltung, direkt auf der Platine gehört die
> Schutzvorrichtung hin!

Auf der Platine waren nur Relais die andere Relais schalten. Und diese 
zu schaltenden Relais waren 220V DC Relais ohne Schutzbeschaltung. Das 
heist mehrere kV Abschaltspannung am Relaiskontakt. Und dieser 
Relaiskontakt darf nicht geschuetzt werden.
#2386520
Lesenswert?

Zunächst mal Danke für die vielen Antworten!

Helmut Lenzen schrieb:
> Dann muss das nach VDE ueber die Oeffnerkontakte der anderen Relais
> verhindern. Also nix mit uC und Co. Die koennen abstuerzen und damit die
> Sicherheitsfunktion verhindern.

Durch schließen zweier Relais werden nur 2 Pins kurzgeschlossen, wodurch 
ein ungewolltes Ereignis eintritt. Dabei würde keine Explosion oder so 
eintreten!

Thomas Eckmann schrieb:
>> 74HC138 oder 238 sind besser geeignet, dann kann der MC immer nur einen
>> Ausgang aktivieren.
> Stimmt.
> Das ist dann richtig idiotensicher.

Stichwort idiotensicher gefällt mir! Kann mir jedoch mit den 138 und 238 
nicht genau die Verschaltung vorstellen.

bestucki schrieb:
> Leider gibt es noch keine weiteren Informationen über die Anforderungen.
> Ist es irgend ein Gebastel für Zuhause oder muss es
> professionell/kommerziell sein?

Das System soll professionell sein! Es handelt sich zwar um keine 
kommerzielle Anwendung, jedoch wird Sie täglich verwendet und sollte 
abgesichert sein!

Helmut Lenzen schrieb:
> Einfachste Verriegelung.
> Immer das Relais das links ist gewinnt die Entscheidung. Alle Relais
> rechts davon fallen ab. Braucht nur einen weiteren Oeffner pro Relais.
> Ist zwar jetzt nicht die sichereste aller Schaltungen aber immer noch
> sicherer als alle anderen mit Halbleitern drin.

Das war meine erste Idee. Dass die Signale nicht 0 werden bei mehrere 
High Pegeln, würde ich akzeptieren. Jedoch habe ich eine Befürchtung:
Was passiert wenn 2 Signale zum exakt gleichen Zeitpunkt ankommen? Dann 
sind, sei es eine geringe Zeit, doch zwei Relais geschlossen?

Daniel schrieb:
> Auswertung der 20 Relais kann einfach mit 20 EOR hintereinander
> geschehen. Mehr ist da nicht.
Bis die EOR's fertig mit der Analyse sind, und den Buffer auf Masse 
ziehen, sind jedoch 2 Relais an?
#2386595
Lesenswert?

Robert M. schrieb:
> Stichwort idiotensicher gefällt mir! Kann mir jedoch mit den 138 und 238
> nicht genau die Verschaltung vorstellen.

Die Eingänge A0, A1, A2 werden parallel geschaltet an 3 IO-Pins des MC.
Die Eingänge /E1, /E2, E3 werden so an 2 IO-Pins des MC geschaltet, daß 
immer nur einer der drei 74HC138 enabled ist oder garkeiner:
1
1. 74HC138: /E1 - D3, /E2 - D4, E3 - VCC
2
2. 74HC138: /E1 - D3, /E2 - GND, E3 - D4
3
3. 74HC138: /E1 - D4, /E2 - GND, E3 - D3
4

5
D3   D4
6
0    0   1. 74HC138
7
0    1   2. 74HC138
8
1    0   3. 74HC138
9
1    1   keiner     (für Totzeit zum Umschalten der Relais)


Ob 74HC138 oder 74HC238 hängt davon ab, ob der aktive Ausgang high oder 
low sein soll.


Peter
Moderator (Firma: Titel) Persönliche Seite #2386670
Lesenswert?

Thomas Eckmann schrieb:
> Also ich schreibe das in meine Spezifikationen rein.
> Betriebsspannung 5V oder 230V oder wie auch immer. Wenn dann ein Trottel
> 24V anlegt oder das Netzteil an einer Hochspannungsleitung betreibt, ist
> das NICHT mein Problem.
Du bist noch jung und stürmisch, hast aber noch nicht ausreichend viel 
erlebt...

Es mag sein, dass diese eine Schaltung dann nicht dein Problem ist, aber 
dein Problem ist, dass in der nächsten Spec die Anforderungen wesentlich 
deutlicher stehen.
> Also ich schreibe das in meine Spezifikationen rein.
Schön, wenn du deine Spec selber schreiben darfst, und wenn ausser dir 
keiner an deiner Schaltung rumbastelt. Aber mal angenommen, da kommen 
auch andere dran...

BTW: du solltest bewertende Ausdrücke wie "Trottel", "Schwachkopf", usw. 
eher aussen vor lassen.

Helmut Lenzen schrieb:
>> Darf ich diesen Satz in meinen Schaltplänen verwenden? Das würde mir das
>> Leben unglaublich erleichtern...  ;-)
> Lothar ich hoffe du meldest kein Patent drauf an moechte ich auch in
> meinen Schaltplaenen reinschreiben duerfen ;-)
Du darfst natürlich, aber leider hat sich der Nutzen dieses Satzes 
zerschlagen, weil er durch eine rigide Spec zustande kommt... :-/
#2386761
Lesenswert?

Lothar Miller schrieb:
> Du bist noch jung und stürmisch, hast aber noch nicht ausreichend viel
> erlebt...
Komm' du erstmal in mein Alter.

Lothar Miller schrieb:
> "Schwachkopf",

Thomas Eckmann schrieb:
> Welcher Schwachkopf macht denn sowas?
Das ist in diesem Zusammhang auch völlig legitim. Wenn du allerdings 
sowas machst und dir den Schuh anziehst... Von mir aus.

Thomas Eckmann schrieb:
> Wenn dann ein Trottel 24V anlegt
Auch da habe ich niemanden persönlich angesprochen. Und ja, wenn einer 
an irgendwelche blanken Klemmen 24V anlegt, ohen zu wissen, was er tut, 
ist derjenige ein Trottel. Was sonst. Vielleicht ein Depp?

Lothar Miller schrieb:
> Es mag sein, dass diese eine Schaltung dann nicht dein Problem ist, aber
> dein Problem ist, dass in der nächsten Spec die Anforderungen wesentlich
> deutlicher stehen.
Wieso soll das mein Problem sein? Wenn einer das so haben will, bekommt 
er das auch so. Wenn einer Relais haben will, versuche ich allerdings 
ihm die Dinger auszureden. Gelingt mir das nicht, kriegt er Relais. 
Beschwert er sich nachher, daß die Relais zu laut klappern...
Sind Relais vorgeschrieben oder Industriestandard, brauchen wir gar 
nicht darüber zu diskutieren.

Lothar Miller schrieb:
> und wenn ausser dir keiner an deiner Schaltung rumbastelt.
Wenn einer was davon versteht, ist das OK. Wenn er keine Ahnung hat und 
etwas kaputt macht, bekomme ich davon keine schlaflosen Nächte.

Lothar Miller schrieb:
> Du darfst natürlich, aber leider hat sich der Nutzen dieses Satzes
> zerschlagen, weil er durch eine rigide Spec zustande kommt... :-/
Interessant. Es ist also eine "rigide Spec", wenn ich bei einer 
elektronischen Baugruppe, die für 5V konzipiert ist, beschreibe, daß sie 
NUR für 5V konzipiert ist? Und ich muß mir vorhalten lassen, daß sie 
kaputt geht, wenn man da 24V, womöglich noch verpolt ranlegt?
Wenn du meinst...

Steht allerdings im Lastenheft, daß sie auch höhere Spannungen aushalten 
muß, hält sie das auch aus. Aber dann muß der Kunde das auch bezahlen.

Und wenn ich weiß, daß mein Kunde da garantiert irgendwelchen Unsinn mit 
treibt, wird sie auch das überstehen. Sofern ich mir vorstellen kann, 
was einer da so alles mit anstellen könnte. Auch wenn das nicht im 
Lastenheft steht.

mfg.
Gast #2386896
Lesenswert?

Robert M. schrieb:
>> Auswertung der 20 Relais kann einfach mit 20 EOR hintereinander
>> geschehen. Mehr ist da nicht.
> Bis die EOR's fertig mit der Analyse sind, und den Buffer auf Masse
> ziehen, sind jedoch 2 Relais an?

Und du glaubst, ein Schaltung auf Relaisbasis ist schneller als ein paar 
Logikgatter? Das Problem kannst du mit Relais doch nicht umgehen, eher 
,it den ICs abschwächen. Du benötigst, wenn diese sehr kurze Zeitspanne 
stört, ein Verzögerungsglied vor den Buffern, aber nach den EOR. 
Beispielsweise Flipflop mit Takt oder ein RC-Glied, wenn es nicht so auf 
die Flanke ankommt (ansonsten nimmste Schmitt-Triger mit Enable statt 
Buffer).
Persönliche Seite #2387188
Lesenswert?

Helmut Lenzen schrieb:
> Robert M. schrieb:
>> Ja ganz recht. Durch Schalten zweier Relais entsteht ein Kurzschluss,
>> der sich unter Umständen nicht gesund auswirken wird!
>
> Dann muss das nach VDE ueber die Oeffnerkontakte der anderen Relais
> verhindern. Also nix mit uC und Co. Die koennen abstuerzen und damit die
> Sicherheitsfunktion verhindern.

Glaubenskriege...

Man kann auch mit Elektronik sicherheitsrelevante Funktionen 
realisieren. Wäre das nicht so, würde kein Auto fahren und kein Flugzeug 
fliegen. Und auch die geforderte Robustheit lässt sich machen, kostet 
halt Platz und Geld.

Allerdings ist der Aufwand, der dafür zu treiben ist, nicht ganz ohne. 
Kurz zusammengebastelt ist das nicht. FMEA, Fehlerbaumanalyse, 
Selbsttest, Plausibilisierung der Ergebnisse, Watchdog, 
Sicherheitsabschaltung der Ausgänge sind so ein paar Stichworte.
Wenn man das alles richtig umsetzt, ist die Elektronik sicher nicht 
schlechter als die Relaislösung. Billiger aber auch nicht.

Gruß,

Max
#2387262
Lesenswert?

Man muß immer Aufwand und Nutzen abschätzen.

Wenn im Fehlerfall nur die Sicherung kommt und vielleicht das Relais 
verklebt, dann rechnet es sich einfach nicht, die Anforderungen für eine 
AKW-Steuerung erfüllen zu wollen.


Das Transistoren und ICs zuverlässiger sind, als Relais, ist keine 
Frage.
Die Zuse Relaisrechner waren zu unzuverlässig für den Serieneinsatz. Und 
die Röhrenrechner ENIAK waren auch nicht viel besser.
Erst durch Transistoren und ICs konnte die Zuverlässigkeit auf 
brauchbare Werte angehoben werden.

Die Zuverlässigkeit kommt natürlich nicht von Zauberhand. Sie muß durch 
einen Aufwand an Gehirnschmalz und Sorgfalt bei der Softwareentwicklung 
erst geschaffen werden.


Peter
#2387611
Lesenswert?

Wie sieht es denn bei der Schaltung von Helmut aus, wenn zwei Signale 
gleichzeitig den High Pegel bekommen.

Ich benutze finder Relais mit 2 Wechslern.

Ist es möglich, dass für einen kurzen Moment zwei Relais anziehen, bevor 
das "rechte" abfällt?

Genau die gleiche Frage stellt sich mir bei der 
Standard-Schützverriegelung zweier Schütze. ( Öffner des jeweils anderen 
vor Spule )

Ist das auch "idiotensicher" ?
Angehängte Dateien:
Persönliche Seite #2387647
Lesenswert?

Robert M. schrieb:
> für einen kurzen Moment zwei Relais anziehen

Ist gut möglich. Wenn zuerst ein Relais rechts anzieht und danach eins 
weiter links, hast Du eine große Chance auf einen Kurzschluss. Die 
Relais haben nämlich GROßE Schaltzeiten. Bei meiner 
Widerstands-Dioden-Komparator-Lösung kannst Du noch abschalten, bevor 
das Relais überhaupt anzieht (ist ja recht träge).


Gruß
Jonathan
#2387664
Lesenswert?

Jonathan Strobl schrieb:
> ... Bei meiner
> Widerstands-Dioden-Komparator-Lösung kannst Du noch abschalten, bevor
> das Relais überhaupt anzieht (ist ja recht träge).

Vor allem wenn die Abschaltung elektronisch erfolgt, also nicht über ein 
weiteres Relais, ist sie allemal schneller, als 2 Relais gleichzeitig 
anziehen können. Also gesamte Relaisversorgung per Komparator 
elektronisch lahmlegen und für das Restrisiko (Versagen des Komparators) 
gibt es ja noch Sicherungen.

Ich frage mich allerdings schon die ganze Zeit, warum man tatsächlich 20 
Relais gegeneinander verriegeln muss? Ein Motor hätte zwei 
Laufrichtungen, und es ist klar, das man nicht beide gleichzeitig 
einschalten kann. Aber was braucht 20?
#2387703
Lesenswert?

Klaus 2m5 schrieb:
> Aber was braucht 20?

Es handelt sich um Pins einer Anwendung die durch den Wechsler auf eine 
(gemeinsame) Leitung gezogen werden und dann von dort durch weitere 
Relais gegen Masse oder Spannung "kurzgeschlossen" werden.
Da die Pins eine gemeinsame Leitung nach dem Zuziehen haben, kann nur 
ein Relais zuschnappen, damit es zwischen den Pins keinen Kurzschluss 
gibt.

Die Komparatorschaltung leuchtet mir ein, nur wie ziehe ich die Signale 
am besten auf LOW?
Persönliche Seite #2387737
Lesenswert?

Robert M. schrieb:
> nur wie ziehe ich die Signale
> am besten auf LOW?


Es muss ja nicht LOW sein, hochohmig reicht ja auch. Das kann dann jeder 
popelige Transistor machen.

So könnte das dann aussehen:
1
                 Steuerleitung Steuerleitung
2
                      |             |
3
                      |             |
4
                    -----         -----
5
                    |\  |         |\  |
6
                    | \ |  Relais | \ |
7
                    |  \|         |  \|      ...
8
                    -----         -----
9
                      |-------------|------
10
                      /
11
High zum            |<
12
Abschalten ---------|    PNP
13
aller Relais        |\
14
                      \
15
                      |
16
                     --- GND

Simpel, oder? ;)


Gruß
Jonathan
#2387767
Lesenswert?

Ich würde eher NPN nehmen und den Transitor umdrehen - oder gleich einen 
MOSFET nehmen. Die Kollektorschaltung hat immer den Nachteil, dass die 
0,6-1V BE Spannung dem Nutzsignal fehlen. Bei 12V kein Problem aber bei 
5V schon.

Außerdem dürfen die Steuersignale nur high getrieben werden, sonst 
schalten die Relais über die vermutlich vorhandenen Schutzdioden doch 
noch.
Moderator (Firma: Titel) Persönliche Seite #2387775
Lesenswert?

Robert M. schrieb:
> nur wie ziehe ich die Signale am besten auf LOW?
Da müsste man wissen, woher die Signale kommen, und wie die 
Relaisansteuerung aussieht...
Robert M. schrieb:
>>> Ich habe einige Steuersignale die im Endeffekt Relais steuern.
Woher und mit welchem Pegel kommt das Signal und was kommt zwischem dem 
Signal und dem Relais?
Kannst du die Relais so beschalten, wie es dir lieb ist?
Was von der Schaltung ist vorgegeben?
#2387785
Lesenswert?

Lothar Miller schrieb:
> Was von der Schaltung ist vorgegeben?

Es kommen 5V Signale (direkt von Spannungsquelle) und werden über Relais 
zu oder abgeschaltet. Die sollen große Relais Schalten (10k PullDown und 
MOSFET wäre meine Idee). Die Relais an sich werden mit 12V gesteuert.
Vorgabe: Es darf maximal nur ein Relais angezogen sein, auch wenn mehr 
Signale kommen. Die Relais die die Steuersignale steuern, kann ich 
leider nicht beeinflussen und absichern, deswegen muss das hinterher 
geschehen.
Moderator (Firma: Titel) Persönliche Seite #2387801
Lesenswert?

Robert M. schrieb:
> Die Relais die die Steuersignale steuern, kann ich leider nicht
> beeinflussen und absichern, deswegen muss das hinterher
> geschehen.
Ich komme das vor lauter (Steuer-)Signalen und (großen und kleinen) 
Relais nicht mehr mit...  :-o

Kannst du da ein Bildchen (mit den Pegeln und Signalnamen) malen und 
zeigen, worauf du Zugriff hast? Und irgendwo in der Mitte muß ja die 
Sammelschiene sitzen...
#2387830
Lesenswert?

Nunja warum hab ich das nicht gleich gemacht, so sieht der Aufbau etwa 
aus.. Natürlich mit mehr Signalen. Im linken Teil hab ich Freiheit ab 
der Anwendung. Und hier muss ich dafür Sorgen, dass K1-Kn nicht 
gleichzeitig zuschnappen können. Und vor einem Wechsel am Besten zur 
Sicherheit auf 0 gehen, damit nichtmal kurzzeitig ein Kurzer reinkommt.

Von der Anwendung links kommen Relais die 5V der Spannungsquelle 
durchlassen, oder eben nicht. Deswegen eigentlich noch PullDown-10k die 
ich im Schaltbild vergessen habe.

edit:
Der kritische Fall ist in meinen Augen jetzt wenn S0 und S1 auf 5V sind, 
oder das Umschalten: S0 von 5V auf 0V und S1 von 0V auf 5V im gleichen 
Moment.
Angehängte Dateien:
Moderator (Firma: Titel) Persönliche Seite #2388437
Lesenswert?

Robert M. schrieb:
> Im linken Teil hab ich Freiheit ab der Anwendung.
Das heißt, DU machst diese "Anwendung"?
Und du hast auch Zugriff auf die 12V-Versorgung der Relais?

Dann könntest du leicht mit dem angesprochenen CPLD alle Eingänge 
abfragen und dann im Fehlerfall die 12V für die Relais abschalten. Das 
wäre eine komplett autonome Einheit. Hier der VHDL-Code dafür:
1
library IEEE;
2
use IEEE.STD_LOGIC_1164.ALL;
3

4
entity MaxOne is
5
    Port ( Relais : in  STD_LOGIC_VECTOR (19 downto 0);
6
           Fehler : out  STD_LOGIC);
7
end MaxOne;
8

9
architecture Behavioral of MaxOne is
10

11
begin
12
   process (Relais) 
13
   variable Ones : integer;          -- Zähler für die aktiven Relais
14
   begin
15
      Ones := 0;                 
16
      for i in Relais'range loop     -- alle Relais abklappern
17
         if Relais(i)='1' then
18
            Ones := Ones+1;          -- aktive Relais mitzählen
19
         end if;
20
      end loop;
21
      if Ones>1 then Fehler <= '1';  -- wenn mehr als 1 Relais aktiv: Fehler
22
      else           Fehler <= '0';
23
      end if;
24
   end process;
25
end Behavioral;

Alternativ könntest du das CPLD ganz links zwischen deine "Anwendung" 
und die Relaistreiber schalten, und nur 1 Ausgang aktiv sein lassen:
1
library IEEE;
2
use IEEE.STD_LOGIC_1164.ALL;
3

4
entity MaxOne is
5
    Port ( Anwendung : IN  std_logic_vector(19 downto 0);
6
           Relais    : OUT  std_logic_vector(19 downto 0)
7
          );
8
end MaxOne;
9

10
architecture Behavioral of MaxOne is
11

12
begin
13
   process (Anwendung) begin
14
      Relais <= (others=>'0');        -- erst mal alles ausschalten
15
      for i in Relais'range loop
16
         Relais(i) <= Anwendung(i);   -- dann Pin für Pin zuweisen
17
         if Anwendung(i)='1' then     -- nach der ersten '1' abbrechen
18
            exit;
19
         end if;
20
      end loop;
21
   end process;
22
end Behavioral;

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren