31.07.2012, 11:15
Hallo zusammen,
ich habe folgendes Problem:
Mein Kollege hat mit dem NI Vision Builder ein Bildverarbeitungsprogramm erstellt, welches mit Hilfe einer Kamera die Position eines rechteckigen Objektes auf einer begrenzten Fläche detektiert (also 2-dimensional). Das Objekt hat ein genau definiertes Muster, welches als Bezugspunkt gilt. Anhand dessen werden x-Position, y-Position und der Drehwinkel in der xy-Ebene bestimmt und in globale Variablen geschrieben. Soweit so gut.
Ich habe derweil mit LabView2011 ein VI erstellt, dass auf diese 3 globalen Variablen zugreift und einen Roboter exakt auf diese Position mit dem entsprechenden Winkel steuert. Das funktioniert auch alles ohne Probleme in egal welcher Position des Objektes.
Da das aber etwas unschön ist, zwei Programme parallel laufen zu lassen bzw. zwei verschiedene Programmfenster geöffnet sind, wollten wir das Programm aus dem Vision Builder nach LabView exportieren und in mein VI integrieren. Dazu gibt es ja die Funktion "Migrate Inspection to LabView", die man auswählen kann und automatisch ein ganzes Netz von VIs erstellt wird. Das Kamerabild haben wir auch ziemlich fix auf mein VI bekommen, allerdings haben wir nun ein großes Problem mit den Variablen: Beim Starten des Programms fährt der Roboter immer eine bestimmte Position an, egal wo das Objekt liegt, d.h. die Bildverarbeitung speichert die Werte nun nicht mehr in die globalen Variablen, auf die unser VI zugreift. Irdgendwo ist das ja auch logisch, weil globale Variablen nicht mehr notwendig sind, da wir ja alles lokal nach LabView exportiert haben. Auf welche Variablen nun zugegriffen wird, ist ja im Endeffekt egal und kann schnell angepasst werden, nur tappen wir komplett im Dunkeln wo und in welchen Variablen die drei Werte nun abgespeichert werden nach dem Exportieren. Wir haben jegliche VIs, die beim Export erstellt wurden, durchsucht und einfach nicht gefunden, wo unsere Variablen reingepackt wurden.
Ich weiß, dass es sich recht kompliziert anhört und habe deswegen versucht, das Problem so simpel wie möglich zu erläutern. Weiß auch nicht, inwieweit das Sinn macht die ganzen erstellten VIs des Exports hochzuladen, da es ungemein viele sind. Vielleicht ist ja jemand dabei, der sich mit dem Vision Builder auskennt und weiß, was mit globalen Variablen passiert, wenn man sie nach LabView exportiert.
Schonmal vielen Dank! Bin gerne bereit bei Unklarheiten das ein oder andere noch zu erläutern.
ich habe folgendes Problem:
Mein Kollege hat mit dem NI Vision Builder ein Bildverarbeitungsprogramm erstellt, welches mit Hilfe einer Kamera die Position eines rechteckigen Objektes auf einer begrenzten Fläche detektiert (also 2-dimensional). Das Objekt hat ein genau definiertes Muster, welches als Bezugspunkt gilt. Anhand dessen werden x-Position, y-Position und der Drehwinkel in der xy-Ebene bestimmt und in globale Variablen geschrieben. Soweit so gut.
Ich habe derweil mit LabView2011 ein VI erstellt, dass auf diese 3 globalen Variablen zugreift und einen Roboter exakt auf diese Position mit dem entsprechenden Winkel steuert. Das funktioniert auch alles ohne Probleme in egal welcher Position des Objektes.
Da das aber etwas unschön ist, zwei Programme parallel laufen zu lassen bzw. zwei verschiedene Programmfenster geöffnet sind, wollten wir das Programm aus dem Vision Builder nach LabView exportieren und in mein VI integrieren. Dazu gibt es ja die Funktion "Migrate Inspection to LabView", die man auswählen kann und automatisch ein ganzes Netz von VIs erstellt wird. Das Kamerabild haben wir auch ziemlich fix auf mein VI bekommen, allerdings haben wir nun ein großes Problem mit den Variablen: Beim Starten des Programms fährt der Roboter immer eine bestimmte Position an, egal wo das Objekt liegt, d.h. die Bildverarbeitung speichert die Werte nun nicht mehr in die globalen Variablen, auf die unser VI zugreift. Irdgendwo ist das ja auch logisch, weil globale Variablen nicht mehr notwendig sind, da wir ja alles lokal nach LabView exportiert haben. Auf welche Variablen nun zugegriffen wird, ist ja im Endeffekt egal und kann schnell angepasst werden, nur tappen wir komplett im Dunkeln wo und in welchen Variablen die drei Werte nun abgespeichert werden nach dem Exportieren. Wir haben jegliche VIs, die beim Export erstellt wurden, durchsucht und einfach nicht gefunden, wo unsere Variablen reingepackt wurden.
Ich weiß, dass es sich recht kompliziert anhört und habe deswegen versucht, das Problem so simpel wie möglich zu erläutern. Weiß auch nicht, inwieweit das Sinn macht die ganzen erstellten VIs des Exports hochzuladen, da es ungemein viele sind. Vielleicht ist ja jemand dabei, der sich mit dem Vision Builder auskennt und weiß, was mit globalen Variablen passiert, wenn man sie nach LabView exportiert.
Schonmal vielen Dank! Bin gerne bereit bei Unklarheiten das ein oder andere noch zu erläutern.