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 

Steuerung HBM QuantumX MX878 zu langsam



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!

22.09.2014, 16:31 (Dieser Beitrag wurde zuletzt bearbeitet: 01.10.2014 20:33 von jg.)
Beitrag #1

Kurt.Döner Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Sep 2014

LabVIEW 2013 SP 1
2014
DE



Steuerung HBM QuantumX MX878 zu langsam
Hallo liebe Forumsgemeinde,

als Einleitung:
Ich bin relativ frisch in der Materie und habe schon etwas im Forum quer gelesen, um Anregungen zu finden, wie man ein vernünftiges Programm aufbaut.
Als Anwendung habe ich für meine Bachelor-Thesis (Fachrichtung Maschinenbau) einen Prüfstand aufgebaut, der zyklisch rein schwellend eine Bolzen-Gelenkverbindung belastet. Ohne jetzt näher darauf einzugehen, muss dennoch erwähnt werden, dass am langen Ende eine Kraft mit einem HBM C2 Kraftaufnehmer gemessen wird, dessen Signal geht in ein QuantumX MX840A. Isochron dazu läuft ein QuantumX MX878, um ein 4/2-Wegeventil anzusteuern.
In dem VI (und diversen SubVIs...) wird die gemessene Kraft mit einer einstellbaren Ober- und Untergrenze verglichen, das ganze läuft dann im Prinzip im Zweipunkt-Regler-Betrieb.
Mein PC kommuniziert über Ethernet und einem Switch mit den Messverstärkern. Ich habe dafür die von HBM mitgelieferten Beispiel-VIs QX_GetAllMeasVals.vi zum Messen und QX_ConfigAnalogOutChannel.vi. verwendet - und natürlich diverse andere zum Verbindungsaufbau etc.
Ehrlich gesagt weiß ich gerade nicht, was ich jetzt alles beschreiben soll, ohne mit sinnlosen Infos alles zu überfluten. Wenn was essenzielles fehlt, bitte einfach kurz ein Stichwort nennen ;-).
Ich hänge alle VIs natürlich an.

Nun aber zu meinem eigentlichen Problem. Die Dauer für eine Schleife innerhalb des VIs beträgt mindestens 12ms. Hinzu kommt, dass das Programm mindestens 3 Schleifenumläufe braucht, um eine gewünschte Reaktion zu zeigen. Ich habe das einmal an Hand dieses nachfolgenden Bildes zu verdeutlichen versucht. Im oberen Teil der gemessene Kraftverlauf, die horizontalen Linien zeigen die angestrebten Hysteresegrenzen. Im unteren Teil ist einmal die gemessene Ventilposition (grau) und, was hier das eigenartigste ist, die Variabel, die im Programm die Ventilposition steuern soll. Und eben diese bleibt mehrere Schleifendurchläufe auf ihrem "alten" Wert stehen, obwohl sie schon längst umspringen sollte. Auf der x-Achse ist die Zeit in ms aufgetragen.
   
Wie kann das sein?

Zu der Schleifendauer: sicherlich gibt meine Programmstruktur Raum für Optimierung ;-). Ich habe schon viel geändert (ich habe mit 30ms angefangen...), meine fehlende Erfahrung ist da sicherlich ein Problem. Hier im Forum habe ich die goldene Regel gelesen a la "passt dein Programm nicht auf den Bildschirm, ist es zu groß". Daran muss ich definitiv noch immens arbeiten! Das würde sicherlich einiges an Übersichtlichkeit mit sich bringen... Dass das bisher noch nicht passiert ist, dafür entschuldige ich mich bei allen, die sich das anschauen... Sad
Zum Anderen habe ich leider keine Ahnung, was genau ich entfernen sollte, was also Perfomance-Einbußen mit sich bringt, und was ruhig drin bleiben kann. Beispielsweise habe ich eben einmal im "obersten" VI alles entfernt, was nicht unbedingt notwendig ist - ohne erkennbaren Mehrwert.
Fällt euch vielleicht auf einen Blick etwas auf, was möglichst zu unterlassen wäre, wenn man schnell arbeitende Programme haben möchte?
Letztendlich, damit mein Programm für meine Anwendung brauchbar ist, bräuchte ich eine Schleifendauer von ~1ms.
Ich habe einmal Spaßes halber ein kleines Programm geschrieben, was einfach nur eine Schleife hat, worin bis 30.000.000 gezählt wird. Das dauert etwa 1ms...
Großen Einfluss auf die Schleifendauer, das habe ich bereits ausgeklügelt, ist die Messrate der Messverstärker. Gibt es andere Aspekte, die euch pauschal auffallen?

Über eine Antwort würde ich mich sehr freuen! Ich bemühe mich, so viele Infos nachzuliefern, sofern gewünscht!

Edit jg: VI-Anhang auf Wunsch der M.K.D. gelöscht.

Viele Grüße
Matthias

LV2013 SP1 Studentenversion
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
30
Antwort schreiben 


Nachrichten in diesem Thema
Steuerung HBM QuantumX MX878 zu langsam - Kurt.Döner - 22.09.2014 16:31

Gehe zu: