18.08.2009, 07:33
Beitrag #1
|
MichaDu
Unregistered
|
Komplexer unübersichtlicher Code
Hallo,
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!
|
|
|
18.08.2009, 07:46
(Dieser Beitrag wurde zuletzt bearbeitet: 18.08.2009 07:47 von cabua.)
Beitrag #2
|
cabua
LVF-Gelegenheitsschreiber
Beiträge: 57
Registriert seit: Aug 2009
8.6
2006
DE
44
Deutschland
|
Komplexer unübersichtlicher Code
Auf dass ich mich lächerliche mache, aufgrund meines absolut nicht professionellem Wissen in LV:
Meine Lösung wäre eine State-Maschine/Zustandsautomat.
Nachdem ich dieses Konzept verwendet habe, habe ich richtig gut aussehenden Code hinbekommen.
|
|
|
18.08.2009, 07:58
Beitrag #3
|
chrissyPu
LVF-Stammgast
Beiträge: 467
Registriert seit: Jun 2006
2014 PDS
2006
DE_EN
64283
Deutschland
|
Komplexer unübersichtlicher Code
Hi,
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...
Grüße,
ch
|
|
|
18.08.2009, 08:41
Beitrag #4
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
Komplexer unübersichtlicher Code
' schrieb:Hallo,
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!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
18.08.2009, 12:12
Beitrag #5
|
MichaDu
Unregistered
|
Komplexer unübersichtlicher Code
@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
|
|
|
18.08.2009, 21:15
Beitrag #6
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
Komplexer unübersichtlicher Code
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!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
| |