07.03.2009, 14:54
Beitrag #1
|
mighty Maetthy
LVF-Neueinsteiger
Beiträge: 3
Registriert seit: Mar 2009
8.2
2008
de
70178
Deutschland
|
FPGA VI auf cRIO stoppen, wenn Verbindung zum PC verloren geht
Hallo,
ich bin ein ziemlicher Neuling in LabVIEW 8.2 und habe eine Frage zur FPGA Programmierung zu der ich im Forum und über google nichts finden konnte.
Ich habe ein Programm erstellt, mit welchem ich über ein FPGA VI, welches auf einem cRIO läft, verschiedene Ventile ansteuere. Was für mich wichtig wäre, ist eine Möglichkeit aus Sicherheitsgründen alle Ventile zu schließen, falls die Verbindung zwischen Frontpanel-VI auf dem PC und dem cRIO verloren geht (PC stürzt ab, etc.). Es würde wohl reichen, das VI auf dem cRIO zu stoppen, da ja dann die an den analogen I/Os ausgegebenen Spannungen Null werden?!?
Wie könnte man eine solche Funktion realisieren? Für Hilfe und Tips wäre ich sehr dankbar!
Viele Grüße
Maetthy
|
|
|
07.03.2009, 16:12
Beitrag #2
|
thomas.sandrisser
LVF-SeniorMod
Beiträge: 1.298
Registriert seit: Sep 2005
xxxx
2005
EN
78759
United States
|
FPGA VI auf cRIO stoppen, wenn Verbindung zum PC verloren geht
Die werte am FPGA werden nicht zurueck gesetzt, wenn du das FPGA VI einfach stoppst.
Was du machen koenntest ist, dass du ein lifebit all XXms toggelst.
Am cRIO checkst du das bit und sollte eine bestimmte guardtime nicht eingehalten werden, laeufst den nothalt am FPGA, der alle outputs in einen von dir definierten zustand versetzt.
|
|
|
07.03.2009, 16:48
Beitrag #3
|
mighty Maetthy
LVF-Neueinsteiger
Beiträge: 3
Registriert seit: Mar 2009
8.2
2008
de
70178
Deutschland
|
FPGA VI auf cRIO stoppen, wenn Verbindung zum PC verloren geht
' schrieb:Was du machen koenntest ist, dass du ein lifebit all XXms toggelst.
Am cRIO checkst du das bit...
Danke Thomas, das scheint mir eine gute Lösung zu sein. Hast mir - da ich wirklich ein blutiger Anfänger bin - vielleicht noch einen kurzen Tip, wie man das ganz konkret realisiert?
Danke!
Maetthy
|
|
|
08.03.2009, 22:08
Beitrag #4
|
thomas.sandrisser
LVF-SeniorMod
Beiträge: 1.298
Registriert seit: Sep 2005
xxxx
2005
EN
78759
United States
|
FPGA VI auf cRIO stoppen, wenn Verbindung zum PC verloren geht
Ich nehme an, dass du, nachdem du PC schreibst nur ein Host VI und ein FPGA VI hast und direkt vom PC das bitfile deployest.
Was du machen kannst ist folgendes (einfachste der einfachen loesungen):
Am FPGA laesst du eine separate schleife laufen, die ein front panel (FP) boolean element auf wertaenderung ueberprueft.
Wenn die wertaenderung innerhalb einer bestimmten Zeit (timeout), nicht auftritt, dann kannst du mittels eines flags (ueber lokale variable, notifier, etc.) der haupt schleife im FPGA einen error signalisieren und dementsprechend in den notbetrieb gehen.
Nachdem das andere VI am Host laeuft musst du mit der schleifenzeit hier ein wenig spielen.
Grundsaetzlich solltest du das lebensbit in eine hoeher priore Schleife (timed loop) laufen lassen. Nachdem der determinismus am PC nicht vorhanden ist, musst du mit den loop werten ein wenig spielen. Als anfangswert kannst du die zeit vom timeout am FPGA durch 2 teilen und das result als timerwert am host VI nehmen.
In der schleife laesst das bit immer toggeln (entsprechend der logik am FPGA, welche ein toggelndes bit erwartet). Wenn das Host VI aussetzt oder die Verbindung verloren geht, bekommt das in dem Fall der FPGA mit und kann entsprechend deiner logik darauf reagieren.
Es gibt auch noch andere moeglichkeiten die weniger codearbeit fuer dich bedeuten, aber weitaus mehr text von meiner seite :-)
|
|
|
08.03.2009, 22:50
Beitrag #5
|
chrissyPu
LVF-Stammgast
Beiträge: 467
Registriert seit: Jun 2006
2014 PDS
2006
DE_EN
64283
Deutschland
|
FPGA VI auf cRIO stoppen, wenn Verbindung zum PC verloren geht
Wäre das nicht eine Standard-Aufgabe für ein IRQ? FPGA wirft eins, wenn das nicht nach x mx gelöscht ist, dann stoppt das FPGA. Meine, dass lässt sich auf dem FPGA per Eigenschaftskonten abfragen...
Die andere Möglcihkeit aus dem Hause NI würde mcih aber auch interessieren...
ch
|
|
|
10.03.2009, 01:04
Beitrag #7
|
mighty Maetthy
LVF-Neueinsteiger
Beiträge: 3
Registriert seit: Mar 2009
8.2
2008
de
70178
Deutschland
|
FPGA VI auf cRIO stoppen, wenn Verbindung zum PC verloren geht
Ich danke euch allen für eure Antworten!
Da sind wirklich gute und nachvollziehbare Lösungen für mich dabei, werde mich nun an die Umsetzung machen.
Grüße
Maetthy
|
|
|
| |