Check out our XNodes Code Repository Files and visit our LabVIEW Wiki XNodes Portal
Tags |
(This content has not been tagged yet)
|
![]() |
Oct 22 2007, 07:43 PM
Post
#1
|
|||
|
Drawing Tool - LVOOP example application Premium Member ![]() Posts: 1168 Joined: 29-January 06 From: Helsinki Member No.: 4014 Using LabVIEW Since:2004 LV:8.5.1 ,8.2.1 ,7.1.1
My Blog
|
I've a vision of new certainly interesting LabVIEW functionality I'd like to write an implementation. The best implementation of this new functionality would require a smartly functioning custom structure similar to timed sequence in a sense that there needs to be multiple consequetive diagram parts in the new structure with XNode style inputs and outputs in each of them. However unlike timed sequence, the functionality of this new diagram would not resemble sequence at all.
Now the question is that I need all the possible ideas that you guys may have how this could be implemented. I'm somewhat familiar with simple XNodes that can act as smart subVIs with scriptable content, terminals and visual appearance. However I've no idea how could I implement a structure that could contain multiple segments of code inside it, scriptable inputs and outputs at each segment. In addition I'd need to be able to control if/when the segments are actually executed. Sounds like a challenge. That makes it an interesting task... Cheers, Tomi --------------------
|
||
|
|
|||
| Ad |
Oct 22 2007, 07:43 PM
Post
#
|
||
|
|
|
||
|
|
|||
Oct 22 2007, 07:48 PM
Post
#2
|
|||
![]() 2 more posts to go! Member Posts: 8 Joined: 25-October 04 Member No.: 895 Using LabVIEW Since:1995 LV:8.2.1 ,8.20 ,8.0.1
|
I've a vision of new certainly interesting LabVIEW functionality I'd like to write an implementation. The best implementation of this new functionality would require a smartly functioning custom structure similar to timed sequence in a sense that there needs to be multiple consequetive diagram parts in the new structure with XNode style inputs and outputs in each of them. However unlike timed sequence, the functionality of this new diagram would not resemble sequence at all.Now the question is that I need all the possible ideas that you guys may have how this could be implemented. I'm somewhat familiar with simple XNodes that can act as smart subVIs with scriptable content, terminals and visual appearance. However I've no idea how could I implement a structure that could contain multiple segments of code inside it, scriptable inputs and outputs at each segment. In addition I'd need to be able to control if/when the segments are actually executed.Sounds like a challenge. That makes it an interesting task... you can yous a simple template vi...the template vi contains a labview custom custom code..and you can use it in new xnode with paste and replace...method..
|
||
|
|
|||
Oct 24 2007, 08:22 AM
Post
#3
|
|||
|
<customize this text> Premium Member ![]() Posts: 1001 Joined: 9-April 04 From: Rotterdam Member No.: 349 Using LabVIEW Since:1992 LV:8.5.1 ,8.2.1 ,7.1.1
|
I've a vision of new certainly interesting LabVIEW functionality I'd like to write an implementation. The best implementation of this new functionality would require a smartly functioning custom structure similar to timed sequence in a sense that there needs to be multiple consequetive diagram parts in the new structure with XNode style inputs and outputs in each of them. However unlike timed sequence, the functionality of this new diagram would not resemble sequence at all. Now the question is that I need all the possible ideas that you guys may have how this could be implemented. I'm somewhat familiar with simple XNodes that can act as smart subVIs with scriptable content, terminals and visual appearance. However I've no idea how could I implement a structure that could contain multiple segments of code inside it, scriptable inputs and outputs at each segment. In addition I'd need to be able to control if/when the segments are actually executed. Sounds like a challenge. That makes it an interesting task... Cheers, Tomi Apart from the already mentioned templates I don't think there is any way to have an Xnode work as a structure. They can be resizing nodes but that is about it. And if I was you I would try to patent it, before you publish it. Otherwise NI will do it Rolf Kalbermatter
|
||
|
|
|||
Oct 24 2007, 10:48 AM
Post
#4
|
|||
|
Drawing Tool - LVOOP example application Premium Member ![]() Posts: 1168 Joined: 29-January 06 From: Helsinki Member No.: 4014 Using LabVIEW Since:2004 LV:8.5.1 ,8.2.1 ,7.1.1
My Blog
|
And if I was you I would try to patent it, before you publish it. Otherwise NI will do it Sure --------------------
|
||
|
|
|||
Oct 24 2007, 04:07 PM
Post
#5
|
|||
![]() Extremely Active JKI ![]() Posts: 612 Joined: 19-June 03 From: Bay Area, CA (USA) Member No.: 121 Using LabVIEW Since:1998 LV:8.5.1 ,8.6 ,8.2.1
My Blog
|
Well this have to be possible with the existing XNode stuff since I am pretty sure the timed loop (or timed sequence) is an XNode.
Figuring out how to do what you describe though, is probably not going to be easy. PJM --------------------
|
||
|
|
|||
Oct 24 2007, 08:13 PM
Post
#6
|
|||
|
<customize this text> Premium Member ![]() Posts: 1001 Joined: 9-April 04 From: Rotterdam Member No.: 349 Using LabVIEW Since:1992 LV:8.5.1 ,8.2.1 ,7.1.1
|
Well this have to be possible with the existing XNode stuff since I am pretty sure the timed loop (or timed sequence) is an XNode. Figuring out how to do what you describe though, is probably not going to be easy. PJM Which VI/Xnode file would you suggest to look at as starting point for that? Rolf Kalbermatter
|
||
|
|
|||
Oct 24 2007, 08:41 PM
Post
#7
|
|||
![]() Extremely Active JKI ![]() Posts: 612 Joined: 19-June 03 From: Bay Area, CA (USA) Member No.: 121 Using LabVIEW Since:1998 LV:8.5.1 ,8.6 ,8.2.1
My Blog
|
Which VI/Xnode file would you suggest to look at as starting point for that? Rolf Kalbermatter As per the wiki page: XNodes, this is where the timed loop XNode code is located (vi.lib\Platform\TimedLoop\XDataNode\XDataNode.xnode). There is a lot of stuff in that folder (password protected of course). PJM --------------------
|
||
|
|
|||
Oct 24 2007, 09:04 PM
Post
#8
|
|||
|
Very Active NI ![]() Posts: 213 Joined: 14-March 06 From: Austin, TX Member No.: 4441 Using LabVIEW Since:1999 LV:8.6 ,8.5 ,8.0
|
As per the wiki page: XNodes, this is where the timed loop XNode code is located (vi.lib\Platform\TimedLoop\XDataNode\XDataNode.xnode). There is a lot of stuff in that folder (password protected of course). The XDataNode is the "ear" that sticks off the side of the Timed Loop. The Timed Loop itself is a native LabVIEW structure. I'm fairly certain that there currently exists no way to create a G-based structure. -D
|
||
|
|
|||
Oct 24 2007, 09:38 PM
Post
#9
|
|||
|
Drawing Tool - LVOOP example application Premium Member ![]() Posts: 1168 Joined: 29-January 06 From: Helsinki Member No.: 4014 Using LabVIEW Since:2004 LV:8.5.1 ,8.2.1 ,7.1.1
My Blog
|
Well this have to be possible with the existing XNode stuff since I am pretty sure the timed loop (or timed sequence) is an XNode. Timed sequence and timed loop both consits of separate parts. To the left of loop or sequence there is a XDataNode.xnode called Configuration Node. This XNode simply collects inputs and writes then to an indicator called Timing. In addition the Configuration Node makes two external calls two two different shared libraries (DLLs). Nothing else occurs at runtime within Configuration Node. The Timing indicator of Configuration Node is connected to a hidden node at top left of timed loop inner structure called Timed Loop Left DCO. At the top right corner of the timed loop structure there is another hidden node called Timed Loop Right DCO. The Timed Loop Right DCO is connected to the Output Node (see below). The nature of these two DCOs is not known to me. Anyone with more information? My guess is that these are build-in nodes that take care of synchronization. The The timed loop and timed sequence themselves are not XNodes. These two structures are most propably internal structures that are implemented outside LabVIEW scripting. Actually it may be that the DCOs take care of synchronization and the timed structures don't really differ much from their asynchronous counterparts. Inside the timed loop there are two additional instances of XDataNode called Left Data Node and Right Data Node. These are the nodes you can wire timing information from and to. Both these two XDataNodes only read from a control or write information to an indicator called Timing. These two instances don't seem to be connected anywhere, although they have a Timing structure control and indicator on their front panels. One more instance of XDataNode is on the right of the loop, which is called Output Node. This is connected to the Timed Loop Right DCO as stated above. All these three XDataNodes only read from a control or write information to an indicator called Timing. These Timing controls and indicators of XDataNodes are accessed by LabVIEW somehow. To conclude timed structures consist of multiple instances of same XNode that initializes the external timing system and passes data to and from the timing system. However the actual syncrhonization of the loop is done outside LabVIEW written code. There is a external method that --------------------
|
||
|
|
|||
Oct 24 2007, 09:39 PM
Post
#10
|
|||
![]() Extremely Active JKI ![]() Posts: 612 Joined: 19-June 03 From: Bay Area, CA (USA) Member No.: 121 Using LabVIEW Since:1998 LV:8.5.1 ,8.6 ,8.2.1
My Blog
|
The XDataNode is the "ear" that sticks off the side of the Timed Loop. The Timed Loop itself is a native LabVIEW structure. I'm fairly certain that there currently exists no way to create a G-based structure. -D Ah, that's too bad Well may be combining the use of VI inlining + XNode + XData Node something might be possible. Have the code in a subVI, have the XNode display an image of the code instead of the SubVI icon, then attached ear(s) to control execution (if possible/needed). When the user want to edit the XNode code, inline the subVI/Xnode... This are stream of consciousness ideas... might not lead to anything. PJM --------------------
|
||
|
|
|||
![]() ![]() |
| Time is now: 22nd November 2008 - 08:07 AM |