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!
ich programmiere gerade eine RT-Applikation, die mehrere parallele Loops enthält. Da diese mittlerweile recht groß geworden sind, ist mein Blockbild sehr unübersichtlich geworden und ich muss ständig hin und her scrollen.
Gibt es in LV eine Art "Programmierebenen" oder "Sheets", die ich quasi übereinanderlegen kann, ähnlich wie bei den Stapel- Sequenzen? Die Loops sind nur über lokale Variablen voneinander abhängig, so dass ich hier keinerlei Verdrahtungen habe.
Die Zusammenfassung in SubVIs wäre auch möglich, aber ich habe einige innere Loops, in denen ich dynamisch Werte lese und schreibe, d.h. ich müsste mit Referenzen arbeiten. Funktioniert das auch später bei RT-Applikationen, bei denen das Frontpanel über den integrierten Webserver in einem Browserfenster angezeigt wird?
Vielen Dank!
Anzeige
18.08.2009, 07:46 (Dieser Beitrag wurde zuletzt bearbeitet: 18.08.2009 07:47 von cabua.)
ich muss ehrlich sagen, dass ich sowohl Fan von State-Machines bin, aber auch auf meinen RT-Targets keinen wirklich übersichtlichen Code schreibe. Das Problem an State-Machines ist halt, dass sie verschiedene Zustände haben, aber nicht notwendigerweise Sachen parallel abarbeiten, bzw. für die Problemstellung eigentlich nicht so wirklich sinnvoll sind. Es geht halt hauptsächlich darum, verschiedene Programmteile in definierte Abfolge, ggf. mit Sprüngen zwischendrin, zu bringen, keine parallele Abarbeitung zu gewährleisten...
Da ich auch von Programmierebenen etc. nichts weiß, kenn ich auch nur die Sub-VI-Lösung für die Übersichtlichkeit...
ich programmiere gerade eine RT-Applikation, die mehrere parallele Loops enthält. Da diese mittlerweile recht groß geworden sind, ist mein Blockbild sehr unübersichtlich geworden und ich muss ständig hin und her scrollen.
Gibt es in LV eine Art "Programmierebenen" oder "Sheets", die ich quasi übereinanderlegen kann, ähnlich wie bei den Stapel- Sequenzen? Die Loops sind nur über lokale Variablen voneinander abhängig, so dass ich hier keinerlei Verdrahtungen habe.
SubVIs!!!!
' schrieb:Die Zusammenfassung in SubVIs wäre auch möglich, aber ich habe einige innere Loops, in denen ich dynamisch Werte lese und schreibe, d.h. ich müsste mit Referenzen arbeiten. Funktioniert das auch später bei RT-Applikationen, bei denen das Frontpanel über den integrierten Webserver in einem Browserfenster angezeigt wird?
Ja, wobei das Performance kostet.
Denk mal über eine Lösung mit FGV's statt lokalen Variablen nach.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
@Jens
Ich werde deine Vorschläge ausprobieren, auch wenn mein VI dann eine größere Baustelle wird. FGVs hattest du mir auch schon mal in einem anderen Thread nahegelegt :-) Langfristig ist das aber wohl die bessere Lösung.
Ich hätte diesbezüglich noch eine Frage für mein jetziges RT-VI:
kann ich das Frontpanel nach dem Umbau auf RT-VI<->Host-VI über TCP/IP-Sockets so belassen? Ich brauche es zwar dann nicht mehr, aber ich finde es trotzdem etwas übersichtlicher. Oder kostet es unnütze Resourcen und Performance? Ich hörte, dass das Frontpanel beim Kompilieren nicht mit übertragen wird: link
Solange das FP nicht in einem WebServer-Fenster angezeigt wird, kostet das meines Wissens nach bei RT-Exe keine Performance, auch bei komplizierten Frontpanels. Also lass das ruhig so. Vielleicht musst du auch mal was debuggen, da bist du wieder froh, wenn du Infos im FP hast.
Bloß eine RT-Exe dauernd per Web-Interface steuern, da macht man IMHO was falsch, dann brauche ich keine Exe auf einem RT-Target.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!