15.11.2010, 16:43
Hallo zusammen,
ich bin absolute LabView Anfängerin und nun an meinem ersten Projekt dran.
Leider ist das richtige Programm völlig überladen, riesig und chaotisch, so dass ich euch nun den Teil, zu dem ich eine Frage habe, in einem Beispiel VI zusammengestellt habe.
Wer sich das andere Antun will, kann mir Bescheid geben, ich hab euch aber gewarnt, dass es absolut schrecklich und unübersichtlich und monströs riesig ist
(hab das Ding halt schon riesig von einem Studenten übernommen und ohne LabView Erfahrung immer mehr dazugepackt - und im Moment habe ich wichtiger zu tun, als den Code aufzuräumen....*schäm*)
Das Problem ist folgendes:
- die Visualisierung bei 1 Mhz braucht so viel Zeit, dass der Timed-Loop nicht mehr rechtzeitig fertig wird und somit der Regler nicht immer richtig arbeiten kann.
- in den ersten 20 Sekunden arbeitet das Programm gut, danach braucht es länger. Das tritt viel weniger auf, wenn die Visualisierung deaktiviert ist. Was mache ich ungeschickt?
- Nach längerem Laufenlassen des Programms gibt es LabViewMemory is full Meldungen. Woran könnte das liegen? (vermutlich nicht Visualisationsbedingt)
Versucht habe ich bereits folgendes:
- Wechsel von den eingebauten Grafikpanels zum Picture (Resultat: sehr grosse Zeitersparnis, aber immer noch nicht immer genug).
Wie man meine Lösung rechen effizienter gestalten?
- einen Zweiten Loop für diese nicht Zeit krischische Anwendung. Hab ich aber nicht hin bekommen, da der Hauptloop schon mit dem Regeln/Belohnungschecks, ect. die Zeit fast schon ganz aufbraucht, kommt das Programm nie in den niedrig priorisierten, zweiten Loop.
meine Idee: Earliest Deadline First Scheduling. aber wie macht man das in LabView??? Was kann man sonst noch machen?
Liebe Grüsse und schon mal vielen Dank fürs Weiterhelfen
Lina
zu den Anhängen:
- plot_beispiel ist das für euch erstellte Beispiel-VI (ich benutze LabView 2009)
- structure zeigt die Struktur des ganzen Programms
- frontpanel-ichtiges ist ein print-Screen des richtigen Frontpanels, damit ihr ungefähr seht, was geplottet werden soll
- full_memory ist die erwähnte Full-memory-Fehlermeldung (vermutlich eine plotunabhänige Baustelle)
ich bin absolute LabView Anfängerin und nun an meinem ersten Projekt dran.
Leider ist das richtige Programm völlig überladen, riesig und chaotisch, so dass ich euch nun den Teil, zu dem ich eine Frage habe, in einem Beispiel VI zusammengestellt habe.
Wer sich das andere Antun will, kann mir Bescheid geben, ich hab euch aber gewarnt, dass es absolut schrecklich und unübersichtlich und monströs riesig ist
(hab das Ding halt schon riesig von einem Studenten übernommen und ohne LabView Erfahrung immer mehr dazugepackt - und im Moment habe ich wichtiger zu tun, als den Code aufzuräumen....*schäm*)
Das Problem ist folgendes:
- die Visualisierung bei 1 Mhz braucht so viel Zeit, dass der Timed-Loop nicht mehr rechtzeitig fertig wird und somit der Regler nicht immer richtig arbeiten kann.
- in den ersten 20 Sekunden arbeitet das Programm gut, danach braucht es länger. Das tritt viel weniger auf, wenn die Visualisierung deaktiviert ist. Was mache ich ungeschickt?
- Nach längerem Laufenlassen des Programms gibt es LabViewMemory is full Meldungen. Woran könnte das liegen? (vermutlich nicht Visualisationsbedingt)
Versucht habe ich bereits folgendes:
- Wechsel von den eingebauten Grafikpanels zum Picture (Resultat: sehr grosse Zeitersparnis, aber immer noch nicht immer genug).
Wie man meine Lösung rechen effizienter gestalten?
- einen Zweiten Loop für diese nicht Zeit krischische Anwendung. Hab ich aber nicht hin bekommen, da der Hauptloop schon mit dem Regeln/Belohnungschecks, ect. die Zeit fast schon ganz aufbraucht, kommt das Programm nie in den niedrig priorisierten, zweiten Loop.
meine Idee: Earliest Deadline First Scheduling. aber wie macht man das in LabView??? Was kann man sonst noch machen?
Liebe Grüsse und schon mal vielen Dank fürs Weiterhelfen
Lina
zu den Anhängen:
- plot_beispiel ist das für euch erstellte Beispiel-VI (ich benutze LabView 2009)
- structure zeigt die Struktur des ganzen Programms
- frontpanel-ichtiges ist ein print-Screen des richtigen Frontpanels, damit ihr ungefähr seht, was geplottet werden soll
- full_memory ist die erwähnte Full-memory-Fehlermeldung (vermutlich eine plotunabhänige Baustelle)