mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik µC in Sicherheitsanwendung, z.B. Zweihandbedienung


Autor: Andreas W. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Morgen

Im Moment werden für die Zweihandbedienungen Relaisschaltungen 
verwendet. Die Begründung ist, egal was passiert Mechanik wird nicht 
ausgelöst wenn nicht beide Knöpfe zur gleichen Zeit gedrückt werden 
(einen dauerhaft blockieren geht auch nicht).
Die Schaltung ist nicht sonderlich aufwendig und sie ist wirklich sehr 
zuverlässig. Doch würde ich jetzt gerne mehr Funktionen wie einfach nur 
zwei Knöpfe realisieren (z.B. Reingreifschutz oder auch nur eine kleine 
Steuerung). Doch dann steigt der Aufwand der Schaltung gleich Stark an.

Nicht wundern, die Geräte sind Einzellanfertigungen und haben meist sehr 
verschiedene Anforderungen.

Ein Kolege meinte jetzt, sowas darf man nicht mit µC machen, da gibt es 
Gestzliche vorgaben. Auf nachfrage von mir konnte er mir keine Gesetze 
nennen.
Für einfache Steuerungen halte ich es für möglich auch Bugfreie Software 
zu schreiben. Um das sicherzustellen kann man auch alle Randbedingungen 
durchtesten. Es sind ja nur ca. 8 I/Os, die meistens nicht zur selben 
Zeit schalten können (Endanschläge). Und das Verhalten von Strom aus ist 
eh in beiden Fällen gleich.

Spricht also was Grundsätzlich gegen einen µC?

Autor: tt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du bekommst sowas auch vom Tüv abgenommen wenn du Mikrocontroller 
verwendest.
Du brauchst dann aber ein redundantes System mit 2 Controllern und 
zusätzlichem externen Watchdog der auch die komplette Hardware 
abschalten kann. Das ganze wird dann schon sehr aufwändig.  Such dir 
einfach die passenden Normen raus oder/und ruf mal beim Tüv an.

Autor: Schnuddel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das mit den 2 Controllern, nur darf man da natürlich nicht 2 mal den 
gleichen draufsetzen, um Bugs des Herstellers ausschließen zu können. 
Der eine z.B ein Atmel und der zweite ein MSP430 oder so.

Autor: markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Des Weiteren kann es sein, das die SW von zwei verschiedenen 
Programmierern / Entwicklern geschrieben werden muss.

So war die Vorgabe für unser Steuersystem an unseren Maschinen.
Da gibt es einmal einen Betriebsweg und einmal einen Sicherheitsweg.
Die Protokolle mussten "zwei" verschiedene Entwickler erstellen.

Autor: Pieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moin moin,

2 verschiedene MCs sind nicht notwendig!
Es können gleiche Typen verwendet werden, nur müssen die Programme 
unterschiedlich arbeiten, Hochsprachen sind also dafür nicht geeignet.

Beruflich baue ich eine "Blutwaschanlage" mit der Menschen behandelt 
werden.
Jede Pumpe hat einen eigenen MC der mit externem Watchdog und 
Zeitüberwachung gesteuert wird. Das Gesamtsystem wird mit einem 
Master-Slave-Gespann aus 2x i386 gesteuert. Diese sind in Assembler 
programmiert.

Solche Geräte sollte man, schon zur eigenen Sicherheit, durch den TÜV 
abnehmen lassen.

MfG
Pieter

Autor: SILI (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Schnuddel:

Deine Aussage gilt nicht allgemein. Je nach Anwendung (Luftfahrt, 
Berbau, Pressensteuerung etc.) gibt es sehr unterschiedliche 
Anforderungen.

@ Andreas W.:

Vielleicht gibt es schon fertige Sicherheitssteuerungen, die für Deinen 
Bereich zugelassen sind. Mit etwas Glück reicht eine easy-Safety aus. 
Das sicherheitsgerichtete Steuerrelais entspricht der Kategorie 4 nach 
EN 954-1, PL e nach EN ISO 13849-1, SIL CL 3 nach EN IEC 62061 sowie SIL 
3 nach EN IEC 61508.

Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Pieter:

>Es können gleiche Typen verwendet werden, nur müssen die
>Programme unterschiedlich arbeiten, Hochsprachen sind also
>dafür nicht geeignet.

Reicht es nicht 2 unterschiedliche Ansätze zu verwenden?
Sonst könnte man ja genauso argumentieren das man auch
in Assembler bei gleicher Aufgabe sehr ähnliche Programme
erstellt.

@all:

Gibts mehr Beispiele wie so etwas in der Praxis realisiert wird?

Jens

Autor: Andreas W. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
2 Programmiere ist in diesen Fall wirklich überflüssig, da die Funktion 
des Programmes in allen fällen getestet werden kann. Dieses ist noch 
SEHR einfach. Durch einen kompletten Test kann ich also Softwarebugs 
ausschließen.

Ein Beispiel für die Funktion. Zweihandbedienung drücken, gedrückt 
halten. Presse ist unten hält 1s und öffnet wieder.
So ein Beispiel kann ich zu 100% die Funktion testen.

Nur Hardwarefehler, was ist wenn einer in der Nähe einen kleinen EMP 
auslöst (irgendeine Machine anschaltet)? oder ein myon fliegt durch den 
Controller. sowas halt.

Das easySafty klingt interesant, nur ist es etwas groß. Das behalte ich 
im hinterkopf.

Autor: Steffen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielleicht solltest du versuchen, herauszufinden, welche gesetzlichen 
Forderungen in deiner Branche denn nun wirklich gelten. Diese solltest 
du dir dann besorgen (vielleicht gibt es auch Sekundärliteratur mit 
Beispielen) und entsprechend dieser Vorgaben entwickeln. Nicht einfach 
auf Kollegen "hören" oder sogar in einem Forum eine "vertrauensvolle" 
Antwort einfach so umsetzten.

Steffen.

Autor: noname (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hier kannst du einige Informationen zum Thema finden. Der Download ist 
aber kostenpflichtig.

http://www.bgia-handbuchdigital.de/sg/03/_sid/KFYY...

Autor: Eike B. (eikor)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auch in der Sicherheitstechnik kann man Controller einsetzen - nur muss 
man sich da eventuell auf viel Papierkram einlassen.

Man kann sogar zwei gleiche Cobntroller mit dem gleichen Programm 
verwednen wenn man nachweist dass alle möglichen Fehler (d.h. Hard- und 
Software) bemerkt werden und immer zur sicheren Seite führen.

Die dazu gehörigen Normen sind z.B. die DIN EN 50129 für die Software, 
für Hardware (und die Verknüpfung von Relaiskontakten ist in diesem 
Falle Hardware) ist vermutlich in Abhängigkeit vom Einsatzgebiet 
festgelegt.

Der Austausch sollte eine Sache des Herstellers sein, da der sich um die 
Einhaltung der Normen und die Klassifizierung der 
Sicherheitsanforderungen kümmert.

Mein Ratschlag - Relais sind einfach, robust und wenn das Teil noch tut 
einfach so lassen ...

Autor: markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich gebe Eike B. recht.

Die Normen sind das wichtigste, TÜV-Abnahme und gut ist.
Je nach Branche ist das anderst, unsere Maschinen müssen innerhalb von 
4grad Motorwelle stehen bleiben und das sind Maschinen uA mit >100 
Tonnen.

Und ich würde es auch einfach so lassen ;)

Ich kenne das noch vom SPS programmieren, das eine Verrieglung Hard- wie 
auch Software Seitig gewährleistet werden musste.

Autor: Einer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Andreas
Mal soeben Bugfreie Software zu schreiben.
Selbst wenn dein Code richtig ist was ist mit der ganzen Kette bis in 
den Flash des uC Windows Compiler Programmer und am wer sagt das der uC 
Bugfrei ist.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eike B. wrote:

> Mein Ratschlag - Relais sind einfach, robust und wenn das Teil noch tut
> einfach so lassen ...

Aber nicht jedes Relais ist geeignet, es gibt dafür spezielle 
zwangsgeführte Relais, die entweder nicht verkleben oder wenn sie es 
doch tun, dann wird auch der Rückmeldekontakt nicht betätigt.

Reedrelais sind z.B. völlig ungeeignet (zu geringe Rückstellkraft).


Peter

Autor: Eike B. (eikor)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Einer
Mal soeben Bugfreie Software zu schreiben.
Selbst wenn dein Code richtig ist was ist mit der ganzen Kette bis in
den Flash des uC Windows Compiler Programmer und am wer sagt das der uC
Bugfrei ist.

Genau da liegt das Problem. Fehlerarme Software erfordert entsprechende 
Maßnahmen wie eine zweite Person, die kontrolliert dass alles ok ist und 
eine dritte Person, die nachsieht ob die Überprüfung auch vollständig 
war... In der Norm gibt ein ein großes Kapitel mit Dokumenten die 
erstellt werden müssen und mit Strukturen, wie das ganze überwacht wird.

Die ganze Kette von fehlerfreiem Controller und Programmierung kommt 
noch dazu, wobei die Programmierung in C natürlich noch einen 
validierten (also erwiesenermaßen fehlerfreien) Compiler erfordert. Also 
viel Papier und Mechanismen um zwei Schalter abzufragen. Das Erstellen 
des Programms ist bei sicherheitsrelevanter Software nur ein winziger 
Bruchteil der Arbeit, etwa 80% sind Dokumentation und Nachweise (oder 
auch noch mehr)

Autor: oszi40 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Selbst wenn Dein Programm 1000% richtig ist, kann immer noch EMV mächtig 
zur Verwirrung der Schaltungsfunktionen beitragen.
Mein kuriosester Fall war ein Fahrdraht der Straßenbahn in der Nähe des 
betroffenen Büros.

Autor: EFA (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich arbeite in der Luftfahrtindustrie. Die relevanten Standarts sind bei 
uns u.A. RTCA DO-178B und RTCA DO-254B.

Auch bei uns können direkt direkt Menschenleben in Gefahr sein, wenn 
etwas schiefgeht.


Trotzdem ist folgendes möglich:

- Mehrere redundante Prozessoren des gleichen Typs. Mir keine Flight 
Control Computer bekannt, bei dem das anders wäre.

- Auf allen Prozessoren läuft die gleiche Software.

- Natürlich lassen sich Hochsprachen wie C oder ADA verwenden. Eine 
Programmierung in Assembler wäre aufgrund der Komplexität sowieso nicht 
mehr sinnvoll möglich.

Gefordert wird in der Regel eine bestimmte maximale 
Ausfallwahrscheinlichkeit des Gesamtsystems. Man geht davon aus, dass 
Software eine Ausfallwahrscheinlichkeit von 0 hat. Dies stellt man 
sicher, indem gängige und anerkannte Standarts bei der Entwicklung 
Anwendung finden. In der Luftfahrt machen Nachweisführung und 
Dokumentation auch bis zu 90% der Kosten aus.

Man kann nicht generell sagen, dass 3 Entwickler nötig sind oder 
Independance beim Coding gerfordert ist.

Alle Standarts und Normen haben jedoch eins gemeinsam: Es ist ein genau 
definierter und dokumentierter Entwicklungsprozess notwendig, bei dem 
das Gesamtsystem in mehreren Schritten detailliert/verfeinert wird, 
wobei zu den Produken jeder Ebene mindestens eine 
Spezifikation/Requirements, Desingn und die entsprechenden V&V-Nachweise 
gehören.

Autor: oszi40 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was nützen z.B. 3 Computer bei falschen Daten? Was stimmt dann?
z.B. NOTLANDUNG QF72 http://www.aero.de/news.php?varnewsid=7388

Man kann nicht immer alle Fälle des Lebens vorher simulieren. Einfache 
Sachen wie einen Hammerstiel oder ein Relais sind jedoch leichter zu 
prüfen.

Autor: Andreas W. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke.
Der Tipp mit der DIN ist richtig gut. Solch einen Hinweis habe ich 
gebraucht.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.