Ultra hoch verfügbaren (fault tolerant) CAN-BUS // Wie lange lebt digitale Elektronik?

Gast #3990351
Lesenswert?

Hallo Leute,

ich mache gerade ein Konzept für eine ultra hoch verfügbaren, Fehler 
toleranten CAN-Bus.

Hierzu brauche ich auch Redundanzen.

Klar ist, das ich mind. zwei parallele Busse benötige. Datenblätter wie 
z.B. die des SN65HVD267 zeigen eine einfache Art eines Redundanten 
Busses, bei dem einfach zwei Transceiver auf zwei unterschiedlichen 
Bussen hängen und deren Signale einfach "Verundet" an einen Kontroller 
laufen.
http://www.ti.com/lit/ds/symlink/sn65hvd267.pdf Seite 22
Die Lösung scheint zwar einfach, aber was passiert, wenn ein Transceiver 
jetzt dauerhaft (z.B. durch Schädigung) falsche Signale liefert oder ein 
Bus dauerhaft unterbrochen ist? -> Diese Lösung lässt also keine Fehler 
zu, funktioniert aber auch danach ggf. nicht mehr.

Ich will aber eine Lösung, bei der Fehler aufgespürt werden und trotzdem 
eine Kommunikation möglich wäre.

Dazu müste ich also den Redundanten Bus zweifach ausführen, oder?

Auch ganz interessant ist z.B. dieses Paper: 
http://klabs.org/mapld04/abstracts/woodroffe_a.pdf
Da wird eine Art "Muxer" zwischen zwei Busse in der Grafik gezeigt, der 
scheinbar ggf. im Fehlerfall umschalten kann. Hat jemand zu solchen 
Methoden eine ausführlicheren hinweis für mich?

Gibt es eigentlich schon (Peripherie-) Kontroller die CAN-FD 
verarbeiten? Ich habe zwar schon viele Transceiver gesehen, die das 
beherrschen, auch ein paar FPGA Implementationen, aber noch keinen 
kaufbaren Chip.


Andere Frage:

Ist es eigentlich mit unserer digitalen Elektronik möglich, diese über 
Jahrzehnte betriebsbereit (also laufen lassen, nicht lagern) zu halten, 
wenn man für eine konstant "gute" Bedingung sorgt?
Atmel sagt z.B. über den ATmega88, das sein Speicher bei 25°C seinen 
Inhalt 100Jahre halten könnte. Beziehen sich solche Werte auf 
"gelagerte" Komponente oder welche, die im 24/7 Einsatz sind?
Z.B. die 8051 stammen aus dem Anfang der 80'er, hat jemand ein Gerät 
damals Entwickelt, das bis heute ununterbrochen läuft?
#3990356
Lesenswert?

Rafal schrieb:

> http://www.ti.com/lit/ds/symlink/sn65hvd267.pdf Seite 22
> Die Lösung scheint zwar einfach, aber was passiert, wenn ein Transceiver
> jetzt dauerhaft (z.B. durch Schädigung) falsche Signale liefert oder ein
> Bus dauerhaft unterbrochen ist? -> Diese Lösung lässt also keine Fehler
> zu, funktioniert aber auch danach ggf. nicht mehr.

Wie so oft:
Du schickst die Daten über zwei Kanäle und vergleichst.
Wenn gleich, dann OK.
Wenn unterschiedlich, dann Fehler --> goto SAFESTATE.

das ganze kannst du natürlich beliebig aufbohren:
3 Kanäle
4 Kanäle
etc.
#3990374
Lesenswert?

Rafal schrieb:
> Ja, das weiß ich doch schon - hab ich vielleicht falsch angedeutet!
>
> Aber ich will selbst im Fehlerfall Daten übertragen können!

Na dann halt:
3 Kanäle:
alle OK --> prima
2 OK, 1 kaputt --> Fehler, dennoch Übertragung auf den 2 guten Kanälen
1 OK, 2 kaputt -->Fehler, goto SAFESTATE

Irgendwann hat sichs halt ausgefehlert. Wenn alle drei Kanäle kaputt 
sind, dann geht eben eine Datenübertragung nicht mehr. Punkt.
Gast #3990375
Lesenswert?

Also wenn nur der BUS redundant sein soll, nimm einen µC mit dual CAN, 
dann zwei Transceiver und vergleiche es. Wenn du noch mehr Redundanz 
brauchst, nimm zwei Baugruppen, die identisch sind und bei einem Fehler 
der andere einspringt. Also nimm dein CAN-Board 2x mit jeweils einem 
(oder auch zwei) Bus.

So läuft das sehr zuverlässig u.a. in Kraftwerken. (Mit SPS) 100% 
Ausfallsicherheit wirst du nie bekommen, aber so fällt eine Baugruppe 
aus und du kannst sie problemlos tauschen.
Gast #3998612
Lesenswert?

Detlef Kunz schrieb:
> Was passiert, wenn der FPGA ausfällt?

Also es gibt ZWEI µCs (jeweils eins mit hoffentlich fault-tolerant CAN) 
und ein FPGA.
Der FPGA hat mit Absicht kein Interface! Die µCs könnten aber Ihren 
"CAN-Buffer" dem FPGA zur Verfügung stellen.

Alle "Programmierbaren" laufen auf Zeit Redundanz (also machen alles 
mindestens zwei mal nacheinander).

Sollte ein µC oder der FPGA ausfallen, ist das zwar kritisch für die 
zukünftige Ausfallsicherheit - es kann aber die ihm zugeteilte Aufgabe 
erfüllen. -> Es geht halt im Übertragenem Sinne sie "Kontrollleuchte" an 
:-)
Gast #3998625
Lesenswert?

Rafal schrieb:
> Vielleicht eine Dumme Frage,
>
> aber was haltet ihr von einem TMR-CAN-Voter, wie im Anhang gezeigt?
> Ob Sowas klappen würde?

Ob der einzelne & mit seinem zusätzlichen Propagation-Delay stört..?
Die gesamte Logikschaltung könnte auch das Propagation-Delay im CAN 
stören, wenn ich so an das ACK am ende denke.. müssten halt schnelle 
Gatter sein..

Aber Mbit CAN willst du in deiner Anwendung wohl eh nicht?


Ich frage mich auch, ob du nicht vielleicht erkennen können willst, ob 
sich ein Fehler ankündigt? Mit der Vergatterung kriegst du ja nix mehr 
mit..
Gast #3998663
Lesenswert?

Major Krampas schrieb:
> Der Ausfall der Anlage muß aber unbedingt an 2 Stellen gemeldet werden,
> falls einer der Beobachter eingeschlafen sein sollte...

Da will man man ein seriöses Konzept und dann das...

Aja, es gibt das komplette System noch ein zweites mal als "Backup".
Als Cold-Spare.
Auf dieses wird umgeschaltet, wenn:
- mind. ein "Programierbarer" der drei in einem System Ausfällt
- ein System neu gestartet/gebootet wird -> Behebt manchmal schon Fehler
- Diagnose eines Systems
- Übertemperatur eines Systems / Abkühlzeit
- das System länger als 300msec nicht mehr geantwortet hat.

Das komplette System verkraftet "Ausfallzeit" von max 800msec


dunno.. schrieb:
> Aber Mbit CAN willst du in deiner Anwendung wohl eh nicht?

Richtig!

250k Busfrequenz

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