Moin zusammen, ich hätte da mal ein kleines Problem und würde gern mal eure Meinung dazu hören. Ich hab grad ein Projekt bei dem ich per Lattice M4A5 CPLD adressiere und zwar werden darüber Ventile geschaltet. Problem ist, das auf keinen Fall da irgendwas schief laufen darf. Ventil zur falschen Zeit auf und ich hab Probleme. Ich hab mir nun überlegt, die Adressierung auf 2 M4A5 zu machen und das Schalten läuft nur, wenn beide das gleiche ausgeben. Die Frage ist halt nur, ob es da nicht eine bessere Lösung für gibt. Oder auch, ob es dabei evtl. Timingprobleme geben könnte. Was meint ihr dazu? Danke für eure Hilfe
:
Verschoben durch User
Du meinst also ein zweites möglichst unabhängiges System. Bei Übereinstimmung beider Systeme wird der Schaltvorgang erst ausgeführt ... Prinzipiell eine gute Überlegung aber die Erfahrung zeigt, dass die Wahrscheinlichkeit für einen Ausfall eines ICs (generell) im Rahmen seiner vom Hersteller angegebenen Lebensdauer absolut vernachlässigbar ist. Nahezu alle Fehler rühren von Bugs aus der Software, Fehler in den mechanischen Systemen und Spannungs/- Stromversorgungsproblemen. Das Problem ist, dass das alles Fehler sind die immmer beide CPLDs betreffen. Es wesentlich wichtiger, Systeme redundant auszulegen und eine gute Fehlererkennung zu planen die im Notfall Sicherheitsabschaltungen, etc vornehmen. Ich würde eher auf mechanische / hardwaretechnische Blockaden setzten denn 2 mal einne CPLD einzusetzen der den gleichen Fehler hat wie sein Gegenüber. Wann ich soetwas anwenden würde, ist wenn ich 2 unabhängige Programmierer hätte und beide mit der gleichen Aufgabe betraue. Die Wahrscheinlichkeit, dass beide den gleichen Fehler einbauen ist rel. gering. Entstehende Probleme sind fehlenden Synchronisation und Probleme beim Vergleich (wer vergleicht, wie zuverlässig ist die Kommunikation zwischen den beiden CPLD ? ...). Ich möchte behaupten, dass die Warscheinlichkeit für einen Ausfall der seriellen Kommunikation um einige dutzend Zehnerpotzenzen höher ist als die eines CPLD-Fehlers. (ich weiß, dass die serielle Kommunikation hier nicht angebracht ist - nur Anschauungsbeispiel). Limitierender Faktor bei der Zuverlässigkeit ist so gut wie immer der Mensch ...
Moin zusammen Lehrmann Michael schrieb: > Du meinst also ein zweites möglichst unabhängiges System. Bei > Übereinstimmung beider Systeme wird der Schaltvorgang erst ausgeführt das trifft den Nagel auf den Kopf, so hatte ich mir das überlegt. Ich dachte mir schon, das der Ausfall der ICs nicht so wahrschenlich ist, aber ich muß halt alles absichern. Ich wollte eigentlich die Fehlererkennung per Spoftware lösen, weil ich nicht wirklich eine gute Idee hatte die per Hardware abzuhandeln. An was denkst du denn wenn du von "mechanische / hardwaretechnische Blockaden" sprichts? Die Idee mit dem zweiten Programmierer ist interessant, aber leider nicht umsetzbar. Im Team trau ich mich nur alleine an Software ran. Die anderen Fallen bei Software lieber gleich nahezu ins Koma, schieben bei Ideenmangel aber gerne alles auf die Software ;-) Ich muß ja den Ausfall der Hardware und Bugs in der Software abfangen, denn die Ventile dürfen auf keinen Fall gleichzeitig Schalten und Sie dürfen erst Schalten, wenn ich per Software verschiedene Dinge abgehandelt habe und das Signal an das eine, zu schaltene, gebe. Wie sichere ich das den Hardwaremässig ab? Zumal ich auch noch Softwaremässig erfahren muß welches Ventil Probleme macht. Nochmals Danke für die Hilfe
vlaad schrieb: > Ich muß ja den Ausfall der Hardware und Bugs in der Software abfangen, > denn die Ventile dürfen auf keinen Fall gleichzeitig Schalten und Sie > dürfen erst Schalten, wenn ich per Software verschiedene Dinge > abgehandelt habe und das Signal an das eine, zu schaltene, gebe. Wie > sichere ich das den Hardwaremässig ab? Zumal ich auch noch > Softwaremässig erfahren muß welches Ventil Probleme macht. Also das "gleichzeitige Schalten" wird in der Regel über Hardware verriegelt. Solltest du vom CPLD über Treiberstufen auf mechanische Schalter gehen (Relais oder Schütze), dann werden von diesen Öffnerkontakte in die Spulenkreise mit eingeschliffen. Somit wird verhindert, dass das zweite Relais/Schütz überhaput Spannung an seine Spule bekommen kann, wenn das erste Relais/Schütz aktiviert ist. Schau dir mal zum Verständnis "Stern/Dreieck-Umschaltungen" für Dreiphasen-Motoren an. Da wird es auch so gemacht, um Kurzschlüsse zwischen den Phasen zu vermeiden. Gruß, Thomas
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.