Use of boolean property node in LabView 6i

I am running LabView 6i version 6.0.2.
I am using a reference to a front panel boolean control to stop the execution of a state machine in a subVI.  The subVI has a property node linked to this reference.  This property node shows that it is "Bool", but when I set the property node's element to "value", the value is not a boolean type.  I can't figure out how to set the boolean property node's element so that I can read the state of the boolean control.  How should I configure this?  

The data type of the value property is a variant.  It is possible to convert a variant to a boolean, but you probably don't want to do that.
The reason is that you have the mechanical action of the boolean set to "latch ...", and that means that the value property isn't very useful.
Change the mechanical action to "switch ...", then the value property will be a boolean.
Note that this means that you will probably have to reset the boolean programatically after the user clicks on it.

Similar Messages

  • Use of multiple property nodes for GUI manipulation

    I have a LabVIEW 6.0.2 application where I'm using 14 different property nodes in the main loop. All of these have to do with GUI - hiding buttons when "X" isn't pressed, disabling and greying out controls if <0, popping one button on top of another depending on the mode of operation, etc, etc. While this works fine, the program is getting slow. I've noticed that using the old 2-D buttons works faster - things update faster and redraw quicker. However, more to the point, I once read that if you have to use a lot of Property Nodes like this, that you should bundle them into a sub-vi, thus replacing what would be Property Nodes with references. How does that make it faster?
    Richard

    Not sure if bundling them into a sub-vi by itself would make it faster. The nodes in the sub-vi would still have to access the user interface thread, and that's where the slow down comes from.
    When I use any property node, I put it in a case structure and only write to it when needed. You just need to be able to detect when the value being written is changed from last loop iteration. It's useless to constantly rewrite the same value (doesn't have to be the "value" property) to the node.
    Bundle them into a sub-vi and put the change detector, case structure and nodes in the sub-vi, this should help speed things up a bit. Assuming of course that the nodes are the slowdown. It may also help clean up the diagram a bit.
    Ed
    Ed Dickens - Certified LabVIEW Architect - DISTek Integration, Inc. - NI Certified Alliance Partner
    Using the Abort button to stop your VI is like using a tree to stop your car. It works, but there may be consequences.

  • Using LV Class Property Nodes in In-place Element structure causes the code to halt

    I have some code written in LV RT 2010 that uses property nodes from a LVOOP class that I created.  I am using access the property node from inside an in-place element structure.  When the code reaches the property node, LabVIEW stops running.  (as if the abort button was pressed).  I verified this behaviour using highlight execution.  When I remove the in-place structure code runs fine.
    Is this is know bug in LabVIEW?  Is there a CAR to resolve this created for a future release?

    Bob,
    I tried to reproduce the behavior you're seeing by recreating the Trigger and Trigger List classes, but I have not been able to reproduce it.  Please take a look at my version of the project in the attached zip file.  Take a look at Test.vi, and feel free to modify and repost it to show me how to make the problem occur.  I would like to file a CAR to make sure we get the problem fixed, but I will need to be able to reliably reproduce it first.
    On a similar note, you can get much better performance out of the Process Triggers VI by preallocating the list array, instead of using build array in a loop.  Take a look at Process Triggers2.vi in my project.  You can run Benchmark.vi to see the performance difference between the two different approaches.
    Chris M
    Attachments:
    triggerlist test.zip ‏165 KB

  • Any alternate solution to using Waveform Chart Property Nodes 'ActPlot', 'Plot.Visible' for mulit-plot color problem on PDA?

    Hello,
        On a waveform chart, 4 signals need to be plotted based on the status of 4 boolean inputs. Eg. if the first boolean input is true, the first signal needs
    to be visible on the waveform chart; if the first boolean input is false, the first signal should not be visible on the waveform chart and so on. This can be
    done on LabVIEW desktop using the Waveform Chart Property Nodes 'ActPlot', 'Plot.Visible' - a sample VI "BundleSignals_Select_Desktop.vi" is attached for
    reference.
        But on PDA, since the Waveform Chart Property Nodes 'ActPlot', 'Plot.Visible' are not supported, some other method has to be used. I have done the
    selection/de-selection of these signals using 'Insert', 'Delete' array functions as shown in the attached VIs "BundleSignals_PDA.zip" which works, but the
    problem is that the colour of these signals do not work as desired when the selection/de-selection of these signals is done - It is required that the first
    signal should always appear in White color, the second signal should always appear in Red color, the third always in Green color & the fourth always in Blue
    color.
        I hope i have made myself clear of the problem. Has anyone faced this problem before & is there a solution?
    Note: Version of LabVIEW that we are using: LabVIEW 8.5 Professional Development System for Windows Vista/XP/2000 and LabVIEW 8.5 PDA Module for Windows
    Mobile.
    Thanks & Regards,
    Subhashini
    Attachments:
    BundleSignals_Select_Desktop1.vi ‏25 KB
    BundleSignals_PDA.zip ‏26 KB

    Unfortunately the only alternative to using property nodes is to set the properties manually on the development environement. The limited size of memory does limit us in terms of features for the module.
    Mehak D.

  • Can event structures be used w/o property nodes?

    I want to know if there can be programming done using event structures but without using property nodes. My prgm has buttons and should be selected exclusively

    Property Nodes really have nothing to do with Event Structures.
    Property Nodes either Read from or Write to the various properties of the linked control/indicator. Event Structures react to an action from a control/indicator.
    Drop an event structure and a single boolean button inside of it, configure the structure to the Value Change event for the button and hit run. The program will run, but the structure will stop the program until you click the button to run the event case, no property nodes required.
    If this is not what you are referring to, provide a few more details and we'll se what we can do.
    Ed
    Ed Dickens - Certified LabVIEW Architect - DISTek Integration, Inc. - NI Certified Alliance Partner
    Using the Abort button to stop your VI is like using a tree to stop your car. It works, but there may be consequences.

  • Use of grouped property nodes

    HI,
    I'd like to know if there is a way to use a  property node like  " value "  for a group of controls without doing right click /property node /value on each control.
    Thanks
    Olivier

    There is little reason to have many direct value property nodes in any given diagram. (I am just mention this because you explicitly mention "value"). A local variable has the same functionality but is more efficient. (of course, often you can use a wire or shift register for even cleaner code).
    (see e.g. http://forums.ni.com/ni/board/message?board.id=170&message.id=153611#M153611)
    There is also the shared variable, if you run one of the newer LabVIEW versions.
    I am afraid that you use all these value property nodes as a poor man's substitute of "variables", breaking all dataflow in the process. Can you explain why you need so many???
    (btw: another way to copy a property node would be to ctrl+right-drag an existing property node, then right-click it and "link to...(select another control)". This is not faster in your case, but is quite useful if you want to duplicate a property node that has many properties defined.)
    LabVIEW Champion . Do more with less code and in less time .

  • Is it possible to add text when using flashing button property node?

    I am trying to get a text button that displays TEST to show "running"
    when it flashes.  I am using a property node for flashing. 
    At present it cycles between TEST and default color which is set in
    flashing clolor options.

    hi there,
    use the "Strings[4]" property of the button. right click on the property node and see online doc for more information about the meanings of the 4 elements of strings[4].
    Best regards
    chris
    CL(A)Dly bending G-Force with LabVIEW
    famous last words: "oh my god, it is full of stars!"

  • Why knob need to use property node to change its value

    Refer boiler vi in CLD exam sample question. 
    In the vi the knob vlaue is changed with a property node, it is not wired directly to a constant. The comment in the vi is something like "writing using property node because of the latch action of the booleans in the cluster"...
    Huh? How do the booleans influence the knob even though they are in a same cluster? What principle is this called? I need to google this up,  I didn't read it in.
    my Labview books. 
    Attachments:
    Boiler Main LV86.zip ‏61 KB

    That comment doesn't make any sense.
    There are two main reasons I can think of why you want to use a Value property node.
    1.  You want to control the order of execution by using the error wire.
    2.  You want to use a property node on multiple controls by feeding it references to different controls.
    Neither of these appear to apply in the screenshot you show.
    However, looking deeper, it looks like you can set the value of a specific item in the cluster by way of the property node.  Check out the Link to section of its shortcut menu.  I don't think you can use a local variable to set a given element of the cluster.  Now you could change the value of the entire cluster.  Read the cluster, bundle the new value for that one element, write to a local variable of the cluster.  But you won't be allowed to do that because of the latched booleans that are a part of the cluster.  Hover over the context help of that property node and read the description there as well.

  • How to use Property nodes?

    Hi everyone,
                           I am a beginner of LabVIEW. So I want to know about Property Node in detail. Please Please someone help me know the function of each property node......
    Thank You in Advance,
    Solved!
    Go to Solution.

    Achuthaperumal wrote:
    I am a beginner of LabVIEW. So I want to know about Property Node in detail.
    Property node allows you to programmatically read/write that particular property of associated object. For example, say you have a String Control, and you want to modify its 'Display Style'... for that you need to create and use that particular property node (of the String control).
    Check the attached example.
    I am not allergic to Kudos, in fact I love Kudos.
     Make your LabVIEW experience more CONVENIENT.
    Attachments:
    Example - Using Property Node [LV 2009].vi ‏11 KB

  • Unable to use correctly the value property node in a re-entrant VI

    Hi everybody,
    I am using labview 6.1 and developing an application which call a reentrant SubVI. However when I use the Value Property Node (which I need : the use of local terminal isn't possible in my final application) in the re-entrant SubVI, i get the initial value of the control, not the current value !?
    Is there anybody to explain me why and how to solve this problem ?
    I have attached 3 VIs for a better explanation.
    Thanks.
    Attachments:
    Master.vi ‏9 KB
    Slave.vi ‏23 KB
    globales.vi ‏7 KB

    You just need to create a local variable instead of a property node to read the value of the control that was passed in. Popup on the control and select Create >> Local Variable. Or just wire the control to where you need it. Data flow is still working; Feroz just explained an idosyncracy of how property nodes work in reentrant VIs.
    BTW - I don't mean to turn this into a sales opportunity, but you might want to check out the VI Analyzer Toolkit. It reports the following for a reentrant VI that uses property nodes:
    "You are using an implicit property node in this reentrant VI. This can result in unexpected block diagram behavior, as a reentrant VI will occupy multiple data spaces but will maintain only a single front panel. You should consid
    er either making this VI non-reentrant, or eliminating the use of implicit property nodes."
    I'm not sure how many people would know what the message means, but they would be forewarned and hopefully check into it further (e.g. test with this specifically in mind).
    I filed a bug report to have this investigated further and at least documented better.
    Roy

  • What are the alternatives to updating indicators using property nodes?

    Hello,
    I'm building a VI which needs to update several controls/indicators at multiple points throughout its execution. It also needs to be able to accept new values from the controls at any given time.
    The problem with this is that all of these controls and indicators are on the front panel of another VI which is calling my VI. The current version of my program updates all of these controls and indicators using references and property nodes (each indicator/control that needs to be used has its own reference control on my VI, and these references are then sent into property nodes), which naturally makes it slow.
    At the moment I'm considering rebuilding my VI in such a way that the main one is able to retrieve the data without using references, but this will be not only very time-consuming but also difficult and possibly even impossible without my code turning into a massive disorganized pile (especially since the lab computer is slow enough, and the main VI large enough, that pressing the 'clean/reorganize block diagram' button causes a crash).
    Any alternatives to this? Queues?
    Solved!
    Go to Solution.

    This (my Event nugget) is the best general solution I came up so far.
    Felix
    www.aescusoft.de
    My latest community nugget on producer/consumer design
    My current blog: A journey through uml

  • When i change the value of a combo box using a property node it displays the value not the item label

    I am using a combo box as a select list for text serial commands.  I have items like "engineering", "GUI", and "Scan" for the commands "MDE", "MDN", and MDS respectively which i have input as the corresponding value in the combo box.  so for example the label "engineering" has the value "MDE" in the combo box items list.  when the Vi starts it needs to read the current value MDE, MDN, or MDS and then i want it to display on the front panel the item text corresponding to that command value.
    To do this i have tried to read the serial command, ie MDS and then wire that to a "value" property of a property node of the combo-box, but instead of displaying the corresponding item label, "Scan", it displays the value "MDS" on the front panel instead.  i want the front panel to use the label text when choosing and displaying but the block diagram to use the serial commands.  Can this be done with a combo box?  I'm trying to use a combo box so i can keep it all text and avoid having to build a case statement to convert enums or rings from a numerical value to the text command.
    The correct text value is wired to the value property and it does exist in the combo-box.  I have unchecked "values match items" and selected to not allow undefined values.

    Don't use the value property node.  Use the Text.Text property node.  When creating the property node, select Text, then in the next pop-up box, select Text.
    - tbob
    Inventor of the WORM Global

  • How to use matlab program in formula node in labview?

    hi,
    i've got one equation of voltage regulation. so i did create program for that in matlab.and want to use it in formula node in labview.but i don't know how to do that.can someone please help me for that?
    regards
    bhavin

    If you have already written Matlab code it is easier to import it straight into a Mathscript node. If you use a Formula node you need to translate m- syntax to c-syntax which may take longer. Note that the Mathscript node
    may not support all the functions you used in Matlab so you may need to replace them with native LabVIEW functions. If you want to add inputs/outputs in your program you can just right-click on the border of the node to do that.
    These structures can be on the block diagram under Programming>> Structures.
    KostasB
    NI UK Applications Engineering
    Message Edited by KostasB on 05-28-2008 08:39 AM
    Attachments:
    mathscript-form node1.PNG ‏8 KB

  • Use blinking property node with a pipe indicator from Automation Symbols toolkit

    Can I use a blinking property node with a pipe indicator/pump from the Automation Symbols toolkit? How?

    The blink works just fine for me.
    Ben
    See attached
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction
    Attachments:
    blink.vi ‏19 KB

  • Cannot upload data to serial device using x-on, x-off in Labview but works OK in Hyperterminal

    Hello,
    I'm trying to write a Labview 7.1 App that will upload a motorola .S28 file to a custom designed piece of hardware. The serial port on the hardware device requires the serial port settings be set to 9600, 8,N,1, none, for general operation and my Labview app is able to send and receive information from the hardware using the NI VISA 4.00 serial read and write routines, so I know that there are no fundamental communications errors.  The general communications also work when I set the com port to 9600, 8,N,1, x-on, x-off.
    The problem I'm experiencing is that I can upload calibration files (which require x-on, x-off flow control) in Hyperterminal by:
    1. configuring the Hyperterminal session for 9600, 8,N,1, x-on, x-off
    2. selecting "Transfer--> Send Text File... when my device prompts me to upload the file.
    This works 100% of the time in Hyperterminal, but I cannot accomplish the same upload in my Labview app.
    The very first thing my LV app does is to pop up a dialog box to the user prompting him/her to select the desired com port (Visa Resource Name), Baud rate, Data bits, Parity, Stop bits, Flow Control, and allows the user to enable/disable the termination char and to set the termination char (always enabled and set to default 0xA).  The flow control is set to x-on, x-off. This is accomplished using the VISA Configure Serial Port vi. 
    I have tried using both the VISA Write From File vi and also reading the file to a text variable then using the VISA (serial) Write vi but neither work. The VISA Write From File vi  return count correctly identifies the number of bytes in the file but the hardware never returns it's transfer complete status message (remember this works 100% of the time in Hyperterminal).  Does anyone out there have any advice as to how I can make this work?
    Thanks,
    Ian

    This is going to be a two-part solution, meaning you will need to change the way you read your file and the way you transmit the data.
    First, when you read from your file, set the Read VI to read in Line Mode. When you do this, the output of the read will be an array of strings rather than a single string. It will basically read the file until it hits the CR/LF combination, but should strip the terminating characters from each line.
    Second, in order to replace the carriage return which was stripped, you can configure VISA to transmit a termination character after each write is performed. In addition to setting the termination character to CR on the Configure Serial Port VI, you will want to use a VISA Property Node to set the Serial::End Mode For Writes properter to use the termination character.
    Now, you can simply use a For loop to index through your string array, transmitting each line. You will have eliminated all your manual parsing of the file, which should simplify your application and increase performance. I have included a picture of how this could be done in LabVIEW 8.x. The file I/O interface looks different than it did in 7.1, but the same functionality exists.
    -Jason S.
    Message Edited by JasonS on 09-26-2007 08:49 AM
    Attachments:
    sendfile.jpg ‏23 KB

Maybe you are looking for

  • Purchased Itunes card..Have balance on my itunes account but trying to use the balance for an APP game...how do i transfer the funds ?

    I had a itunes card purchased for me...I redeemed it on my iphone in the Itunes APP...shows it was redeemed succesfully.Want to use the balance for an APP game i have....SImpsons Tapped out...hoe do i transfer it to it . it keeps using my credit card

  • Phone will not sync with iTunes (5 and 6)

    I posted this about a month ago and didn't get any help. Maybe a second time around will do the trick. Below is the original question. I don't want to keep restoring my phone to factory settings in order to sync music, so any other insight would be h

  • MP460 scanner reset to printer

    My MP460 printer is now recognized as "scanner" by my Mac (System 10.6.8) after I recently scanned some documents and now when i want to print, my Mac  doesn't recognize the printer, only a scanner device, and returns a message "Printer offline" and

  • Loop with dynamic where clause

    hi,     In a program we need to use a loop into an internal table with a where condition is decided on run time. "Select" from database table is using dynamic where clause and it is working fine. For the loop part does any one have any idea on this?

  • Problem to get authorization for digital edition

    I have downloaded Digital Edition. Either it would give an connection error but internet is connected or it will show that have to wait to get authorization for this computer and it happen that I waited a whole day but nothing. What must I do please?