INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

PI Motor



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

18.08.2008, 11:51
Beitrag #12

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
PI Motor
' schrieb:Generell: wenn Fragen zur LabVIEW-Ansteuerung von Komponenten von PI (Physikinstrumente) auftreten, könnt Ihr mich auch gerne direkt per PN kontaktieren, da ich aus Zeitmangel recht selten nach entsprechenden Postings suche.

Da will ich doch gleich mal die Gelegenheit nutzen...

Wie schon gesagt, arbeiten wir hier an nem Prüfstand mit der C-843 und einem XYZ-Achsensystem (M-531.PD, M531.PD, M-531.DDP). Im Handbuch steht, das man das "C843_Configuration_Setup.vi" beim Start der eigenen Applikation aufrufen soll. Schön...wenn ich das mache, muss ich aber bei jedem Programm-Neustart meine Achsen referenzieren, da diese Information dann verloren geht...

Gut, hab ich mir gedacht, mach ich eine einmaliges "Auto-Setup" beim Neustart des Rechners. Dazu hab ich mir ne kleine Applikation geschrieben, die mir eine Dummy-Datei über den Aufruf im Autostart von der HD löscht. In meiner eigentlichen Applikation frage ich dann das Vorhandensein dieser Datei ab. Nach einem Neustart des PC ist die Datei weg, also soll ein Setup der Achsen durchgeführt werden. Bei diesem Setup sorge ich dafür, dass die Datei erzeugt wird. Wird meine Applikation geschlossen/beendet und später noch mal gestartet (ohne PC-Neustart) ist die Datei vom vorherigen Setup noch vorhanden und ein weiterer Setup ist nicht nötig, damit geht mir auch die Referenzierung nicht flöten.

Leider ist es nun aber so, dass das nur in Entwicklungsumgebung funktioniert! Wenn ich eine Exe aus meiner Appliktion mache, sagt mir eine beliebige Funktion aus der GCS-Bibliothek "Fehler 100 Commanded axes not connected 123".

Ich bin folgendermaßen vorgegangen:

1. PC gestartet
2. Im Autostart eine Batchdatei aufgerufen, diese löscht erst die leere Dummy-Datei "config.pi" von der Festplatte und startet danach meine Applikation "Pruefstand.exe"
3. Innerhalb der Pruefstand.exe wird geprüft, ob "config.pi" vorhanden ist. Wenn nicht, wird ein Auto setup durchgeführt inkl. Erzeugung von "config.pi", und danach eine Referenzierung der Achsen
4. Alles läuft prima...
5. Irgendwann beende ich Pruefstand.exe, fahre aber weder nen PC runter noch schalte ich die Spannungsversorgung der Achsen aus
6. Neustart von Pruefstand.exe...die Datei "config.pi" ist noch vorhanden (da nicht über Batch-Datei gelöscht)...folglich wird der Setup nicht durchgeführt und - wichtig -ich muss deshalb auch nicht neu referenzieren (was "ewig" dauert und die Achsen natürlich von der vorhergehenden Position wegfahren)
7. Beim ersten Aufruf einer beliebigen Funktion (z.B. "move relative" MVR) kommt dann aber besagte Fehlermeldung...

Wenn ich die ganze Geschichte aber in der LV-Entwicklungsumgebung mache, dann funktioniert es.

1. siehe oben
2. Start von "Pruefstand.vi"
3. s. o.
4. s. o.
5. Beenden von "Pruefstand.vi", aber nicht von LabVIEW.exe, PC bleibt an, Spannung bleibt an
6. Neustart von "Pruefstand.vi", Setup wird nicht durchgeführt und eine Referenzierung ist nicht nötig
7. Aufruf von MVR...alles läuft prima!

Ich habe den Verdacht, das der Controller auf der C-843 irgend ein Handle zur aufrufenden Applikation erzeugt und dies nur für diese spezifische Instanz der Applikation gültig ist und dann auch nur "Befehle" aus dieser Instanz (mit der auch der Setup durchgeführt wurde) als "gültig" erkannt werden. Wird eine neue Instanz geöffnet, hat er keinen Bock mehr. Darum funktionierts wohl auch in der Entwicklungsumgebung, weil die LabVIEW-Instanz ja die gleiche ist (LV wurde ja nicht beendet, sondern nur mein VI).

Ist das so? Kannn man das irgendwie umgehen? Es ist nämlich wirklich EXTREMPccrash lästig, wenn man jedes mal neu referenzieren muss...Ich hab jetzt mal vor dem Beenden meiner Applikation eine nochmalige Abfrage eingebaut, ob wirklich beendet werden soll, damit der User wenigstens noch ne kleine Warnung hat, bevor er zwangsläufig beim Neustart wieder referenzieren muss...

Gruß
Achim

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Nachrichten in diesem Thema
PI Motor - kruz_007 - 19.03.2008, 10:56
PI Motor - VDB - 19.03.2008, 11:05
PI Motor - Achim - 19.03.2008, 11:34
PI Motor - kruz_007 - 19.03.2008, 14:47
PI Motor - Lucki - 19.03.2008, 16:07
PI Motor - Achim - 19.03.2008, 16:08
PI Motor - Achim - 19.03.2008, 16:15
PI Motor - Gabs - 18.08.2008, 10:38
PI Motor - Y-P - 18.08.2008, 11:11
PI Motor - Achim - 18.08.2008, 11:14
PI Motor - Y-P - 18.08.2008, 11:34
PI Motor - Achim - 18.08.2008 11:51
PI Motor - Achim - 18.08.2008, 11:55
PI Motor - Gabs - 19.08.2008, 11:03

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Servo-Motor mit Labview ansteuern über Arduino fakeshow 9 18.276 08.02.2017 13:19
Letzter Beitrag: fakeshow
  Motor ausschalten beim Anschlag lola2014 3 6.212 03.06.2014 11:09
Letzter Beitrag: Kasi
  Lego Servo Motor ansteuern ohne NXT FloKun 3 12.202 01.09.2010 08:47
Letzter Beitrag: Y-P

Gehe zu: