Forum: PC Hard- und Software Softwareüberwachung mit Watchdog? Wie? Was beachten, usw?


von Thomas H. (Gast)


Lesenswert?

Hallo zusammen,

ich bin am Entwickeln eines Prüfstandes für meine Bachelorarbeit. Für 
die Steuerung des Prüfstandes setzen wir das Programm "LabView" ein. Da 
mit dem Programm über eine Messkarte mehrere Druckluftventile (bis zu 
16bar --> große Energie) angesteuert werden, muss neben der 
Funktionalität auch die Sicherheit bzw. die Sicherheitsrichtlinen 
gewährleistet sein.

Da ich eher vom Maschinenbau bzw. von der Mechatronik komme, habe ich 
noch nicht soviele Erfahrungen mit der Programmierung. Die eigentliche 
Funktion des Programmes kann ich schon programmieren, aber ich verstehe 
nicht, was für Sicherheitsmechanismen/systeme es bei der 
Programmierung/Informatik gibt.
Die Mechanik und Elektrik wurde konstruktiv so ausgelegt, dass bei 
Systemausfällen das Gesamtsystem in einen sicheren Zustand geht 
(-->FMEA).

Nun die Frage: Was für Sicherheitsaspekte/-richtlinen gibt es 
diesbezüglich in der Informatik? Was für Szenarien müssen hier 
berücksichtigt werden? Netzausfall, DeadLock, Überspannung, usw.???
Wie kann die Sicherheit gewährleistet werden? Mit einem Watchdog?

Ich hoffe ihr könnt mir ein bischen helfen.

Vielen Dank.

Thomas

von Uhu U. (uhu)


Lesenswert?

Thomas H. schrieb:
> Nun die Frage: Was für Sicherheitsaspekte/-richtlinen gibt es
> diesbezüglich in der Informatik?

Die Informatik ist nur ein Hilfsmittel, eigene Sicherheitsrichtlinien 
gibts da nicht. Du mußt dein Programm entsprechend den 
Sicherheitsrichtlinien deiner Anwendung auslegen.

Der Watchdog soll verhindern, daß sich das Programm irgendwo verläuft / 
hängenbleibt / verselbständigt. Er erzeugt einen Interrupt, oder setzt 
den Prozessor zurück. Du mußt dann selbst dafür sorgen, daß die 
Fehlersituation erkannt wird und die Gesamtanlage in einen sicheren 
Zustand kommt.

von Programmierer (Gast)


Lesenswert?

Uhu Uhuhu schrieb:
> Die Informatik ist nur ein Hilfsmittel, eigene Sicherheitsrichtlinien
>
> gibts da nicht.

Falsch!
Zur Sicherheit von Software gibt es die DIN EN 61508-3 "Funktionale 
Sicherheit sicherheitsbezogener 
elektrischer/elektronischer/programmierbarer elektronischer Systeme - 
Teil 3: Anforderungen an Software" auch als internationale Norm (IEC).

von oszi40 (Gast)


Lesenswert?

Thomas H. schrieb:
> Mit einem Watchdog?

Ein SW-Wachhund funktioniert nur so lange schööön, wie er lebt. Wenn 
Dein Bus z.B. durch einen kleinen Zinnklumpen blockiert ist, wird er Dir 
nicht mehr helfen. Die große Kunst ist rechtzeitig diese Leichen zu 
finden bevor Schaden entsteht. Dazu ist oft zusätzliche HW nötig, die 
unabhängig funktionieren sollte.

von Uhu U. (uhu)


Lesenswert?

oszi40 schrieb:
> Ein SW-Wachhund

Das ist Hardware - sonst würde das nicht sicher funktionieren. Die 
Software muß nur regelmäßig die Toter-Mann-Taste drücken...

von Thomas H. (Gast)


Lesenswert?

Vielen Dank für die Antworten und die entsprechende Norm.

Nach jetztigem Auslegungsstand verwende ich einen "normalen" PC mit 
einer zusätzlichen Messkarte von NI.

oszi40 schrieb:
> Dazu ist oft zusätzliche HW nötig, die
> unabhängig funktionieren sollte.

Was für eine Hardware meinst du genau? Reicht ein Hardware-Watchdog zur 
Erfüllung der Norm DIN EN 61508-3 wie diese nicht aus?
http://www.quancom.de/quancom/quancom01.nsf/home_prod_deu.htm?OpenFrameSet&Frame=unten&Src=http://www.quancom.de/qprod01/deu/pb/usbwdog3.htm

Ein Hardware-Watchdog ist doch immer besser wie ein Software-Watchdog 
oder irre ich mich da?

von Uhu U. (uhu)


Lesenswert?

Thomas H. schrieb:
> Ein Hardware-Watchdog ist doch immer besser wie ein Software-Watchdog
> oder irre ich mich da?

Ein Software-Watchdog ist Unsinn.

von Reinhard Kern (Gast)


Lesenswert?

Thomas H. schrieb:
> Ein Hardware-Watchdog ist doch immer besser wie ein Software-Watchdog
> oder irre ich mich da?

Nein, das ist völlig korrekt, bloss haben die meisten PCs keinen, ausser 
teuren Spezial-Ausführungen z.B. für Steuerungen. Selbst wenn ist die 
Bootzeit für PCs ein Problem, solang ist das System ungesteuert, oder 
man muss zusätzliche (Hardware-) Massnahmen treffen.

Gruss Reinhard

von Lass Sein (Gast)


Lesenswert?

Ein PC zu Steuerung von sicherheitskritischen Maschinen .... was fuer 
eine unrealistische Idee. Wie soll ein PC das System in jedem Fall in 
einen sicheren Zustand bringen koennen wenn er nicht mal zuverlaessig 
laeuft ?

Es gibt PC's die sind derart konfiguriert, der 
Computer-Sicherheits-Beauftragte will das auch so, dass immer die neuste 
Version des Betriebssystemes laeuft. Dann kann Windows irgendwann 
unterbrechen, sich die neuen Patches und Zeug runterladen und ein paar 
Mal neu booten. Wenn dabei ein Ventil offen bleibt, das besser zu sein 
sollte...

Labview ist nur fuer bemannte Systems, wo jemand daneben steht. Da muss 
jemand hinstehen und sagen - ich hab's im Griff. Weil er eben daneben 
steht.

von oszi40 (Gast)


Lesenswert?

Thomas H. schrieb:
> Ein Hardware-Watchdog ist doch immer besser wie ein Software-Watchdog
> oder irre ich mich da?

Solange das Ding im/am selben PC ist, ist es zu 100% unzuverlässig wenn 
z.B. das PC-Netzteil Fehler hat.

von ttl (Gast)


Lesenswert?

LABVIEW und PC/Windows ist für sicherheitsrelevante Systeme völlig 
ungeeignet und würde niemals vom TüV anerkannt werden. Dein Betreuer 
scheint keinerlei Ahnung zu haben. Lies mal die Maschinenrichtlinie und 
die besagte EN61508.

von heinz (Gast)


Lesenswert?

Hallo,
Du kannst einen Drehzahlwächter als Watchdog nehmen 
(Sicherheitskategorie beachten).
Ein Ausgang vom PC schaltet einen oder 2 Schütze je nach Kategorie (in 
Reihe)
Weiter in Reihe kommt der Wächter.
Weiter in Reihe kommt deine Last.
Der Wächter wird vom PC im Takt getriggert.

Das sollte eigentlich Fail-out sein, oder sieht da jemand ein Problem?

von Reinhard Kern (Gast)


Lesenswert?

heinz schrieb:
> oder sieht da jemand ein Problem?

Das wird nicht reichen. Es beweist zunächst nur, dass der PC überhaupt 
läuft, nicht dass die Steuerungssoftware korrekt abgearbeitet wird. Der 
nächste Schritt wäre, die Befehle an den/die Wachhunde so in relevanten 
Routinen des Programms zu verteilen, dass sie ausbleiben, wenn die 
Routine nicht mehr aufgerufen wird. Letztlich bleibt das ein Kompromiss 
und es wird drauf ankommen, was der Prüfingenieur dazu meint.

Gruss Reinhard

von heinz (Gast)


Lesenswert?

Das würde schon ein Abschalten auslösen wenn die Software nicht 
ordnungsgemäss läuft. Ein Wächter kontrolliert auf Einhalten der 
Frequenz +/-

Der Watchdog wird normalerweise vom Scheduler getriggert. Wie das unter 
Windows / Labview funktoniert ??? Gibts da ein Loop der durchlaufen 
wird? Und nächste Frage wäre dann wird / kann unter Windows der Jitter 
so gross werden das der Watchdog auslöst.

Deshalb gibts ja auch RTOSe.

von Thomas H. (Gast)


Lesenswert?

Einmal mehr, Danke für die Antworten. :-) Also so wie ich sehe, lässt es 
sich nicht so einfach, wenn überhaupt mit LabView realisieren.

ttl schrieb:
> LABVIEW und PC/Windows ist für sicherheitsrelevante Systeme völlig
> ungeeignet und würde niemals vom TüV anerkannt werden.

Ja, wie wird es dann bei großen Prüfständen gemacht?
Da wird ja zum Teil auch LabView bzw. TestStand eingesetzt. Werden dort 
die Funktionen auf unterschiedliche Systeme aufgeteilt? Die 
sicherheitsrelevanten Funktionen über eine Steuerung z.B. SPS und die 
messtechnischen Aufgaben z.B. über LabView, oder wie?

heinz schrieb:
> Deshalb gibts ja auch RTOSe.
Können mit allen Echtzeitsystemen sicherheitskritische Funktionen 
überwacht und gesteuert werden? z.B. mit diesem System 
http://sine.ni.com/nips/cds/view/p/lang/de/nid/210000

Bisher war meine Erwartung oder Hoffnung immer, dass bei einem 
PC-Absturz/Netzausfall/Bootvorgang die Messkarten von NI immer auf 
logisch "Null" gehen. Die Annahme stimmt nicht oder gibt es dafür 
bestimmte "Formulierungen" bzw. Bezeichnungen auf den Datenblätter der 
Messkarte?

Für die Ansteuerung der Magnetventile hätte ich folgende Messkarte 
vorgesehen: NI9476 http://sine.ni.com/nips/cds/view/p/lang/de/nid/208824
Die eigentliche Pneumatik ist von mir so ausgelegt, dass sie im 
stromlosen Zustand sicher ist.
Für die eigentliche Programmüberwachung und vor dem Hintergrund das bei 
µC auch Watchdogs eingesetzt werden, rührte die Idee mit einem Wachtdog 
in Kombination PC/LabView (in LabView gibt es ja auch ein eigenes VI 
Names "Watchdog").

von heinz (Gast)


Lesenswert?

Also zunächst mal ist realtime sowas wie ein Glaubensktieg :)

Du hast je nach System eine garantierte Antwortzeit. Bei harter Echtzeit 
ist Sie garantiert bei weichen hast Du sie meistens. Der Übergang ist 
fliessend.


Zur Frage Absturz.

Dafür ist eben der Watchdog da. PC stürzt ab -> kein retriggern -> die 
Last wird abgeworfen.

Netzabfall -> Lastabwurf

Booten -> keine Freigabe der Last und der Warchdog.

Was Du immer machen mußt - wenn die Last abgeworfen wird darf Sie auf 
keinen Fall nach Wegfall der Störung wieder zuschalten.

Ich kenne kein (Industrie) System wo die Eingänge high gehen bevor das 
System initialisiert ist (mußt Du aber vorher abklären) Begriff kenn ich 
da auch nicht.

aus dem Datenblatt obiger Karte
Power-on output state   Channels off
sollte passen

von heinz (Gast)


Lesenswert?

hab ich jetzt erst gesehen
MTBF      1,091,425 hours at 25 °C

da fehlen die Minuten und Sekunden :)

von Georg A. (georga)


Lesenswert?

> Nein, das ist völlig korrekt, bloss haben die meisten PCs keinen,
> ausser teuren Spezial-Ausführungen z.B. für Steuerungen.

Inzwischen hat eigentlich jeder einen, ist in der Intel-Southbridge 
(bzw. IO-Hub) drin.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.