Jump to content

dblk22vball

Members
  • Posts

    120
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by dblk22vball

  1. I was wondering if I could get some opinions on what you thought of starting and stopping NI Daq Tasks.

    I am currently starting the program, I go to an Initialize state where I use the Start Task vi to feed the tasks into a shift register. Then when I want to read (after person presses the Start button), I go to the read state, unbundle the task, use the read vi, and the bundle it back up. So basically the task is open all the time. When I close the program, I stop the tasks, clear the task and exit.

    I am seeing the computer slow down a little over time, we are running 300+ tests per day. I have checked under Task Manager, and I am not memory leaking or running the CPU at anything above 5% when it is running.

    Would it be better to start the task when I want to read and then when the test is aborted, passes or fails, stop and clear the tasks and then repeat for each test?

    But I dont want there to be a "long" pause when the user presses the start button, as I will get complaints from the operators that "I am ruining their life my taking money out of their pocket waiting for the stupid test machine" (think I have heard that before??:P).

    Thanks.

  2. When I try to read back the dat file, I can read the first 133 lines with no problems, and then it errors out saying:

    Error 116: Possible reason(s):

    LabVIEW: Unflatten or byte stream read operation failed due to corrupt, unexpected, or truncated data.

    If I was not using the correct control, it would give me a class conflict error

  3. I am having an issue where a dat file seems to have been corrupted and so I cannot read all of the data. If you look at the dat file, you can see that all of the data is in there, it just seems that somewhere along the way, something happened and the native LabVIEW dat reader errors out on me.

    I can use the Read Spreadsheet file to get all of the lines, but they are not in a format that is usable for me, and there is a square character between each entry (my data is a cluster of 10 elements for each entry).

    If I change the indicator on the output of the Read Spreadsheet.vi, I can see that the "data" that is in between my data is \s\s\s\##, where the ## is the number of characters that will be following it, aka 2.423 is 05.

    Here is a sample line from the file: Fixture\s1\s\s\s\12\s12:10:50\s10/29/10\s\s\s\041437\s\s\s\07S90-284\s\s\s\052.863\s\s\s\s\s\s\s\04Fail\s\s\s)Flow\sRate\sout\sof\sRange\s\sPressure\sin\sRange\s\s\s\s\s\s\s\s\14Retest\sNot\sRequested\s\s\s\0428.6\s\s\s\0460.8\s\s\s

    I can use the Search and replace vi to get rid of the spaces (\s) with what ever I want, but the \## I cannot get rid of it for the life of me. I dont care how long each field is, I just want the text.

    Please help with my mental block, thanks.

  4. Ok, so I was looking to get started in the dangerous world of scripting, so I downloaded the latest version from the NI labs post.

    Installed it, went to open the examples via example finder, and I get an error that pops up "Example finder requires LV 2009 or later run-time engine to operate." Err, I have the full development installed and I can still edit/change all of my vi's.

    I downloaded the LV2009 SP1 runtime, and tried to install it, but it says everything is uptodate and will not install anything, or give me the option to.

    Any ideas??

  5. I am trying to emulate the function of a checkbox that you would find in most installers and other applications.

    With the checkbox that comes with labview, you have to check the checkbox to get it to "check". But in most other applications, if you click the label of that checkbox or the checkbox itself, it will check the box.

    I have not found a setting that lets you change this natively in labview.

    Should I put a hidden control under the label and have it check the box or is there another way to handle it?

    Thanks

  6. I have an application where I have to disable/enable a couple of buttons, update a status String indicator as well as a couple of other indicators/controls.

    What I am currently doing is creating a cluster of references to each indicator and control, unbundling the reference that I need, and then using a property or invoke node to update the item accordingly. But this can get to be pretty block diagram intensive (large area) if you want to do this for a large number of items.

    I was thinking that it would be easier to just pass around a "This vi" reference, and then use the SetControlValue. This would lessen the number of references that I would have in my cluster.

    So I thought maybe I could have an array of the control names on my front panel, and then just update them as needed (only at the start and stop of the program, not a continuous update). But since I would be doing different things (enable/disable, text, colors), you cant really use a For loop (that I can see) to easily step through and update the controls.

    So my question is, how you the labview gurus update a large number of controls with different properties at one time? Do you just use the "brute force" of a node for each control in a long string, or is there a way to go through them all easily with a loop?

    post-3394-126453530272_thumb.jpg

  7. Thank you all for the responses.

    I was going to go with a producer consumer style program, but got hung up on how to pause the timer. When I got to coding the single loop state machine and got the Functional global timer going (first time I had done that part), I realized how I could handle that instance, but I was too far into it to start coding from the beginning.

    That would have been my preferred method (I use that it most of my applications), since it would let me do the event structure and some more of the disable/enable items mentioned above.

    Mark - Yes I do have dual monitors and the block diagram was saved on the second monitor. I will try to remember that.

  8. I am going to take the CLD in a month or so, so I figured I would work on some of the exams and post it up here for your advice.

    I started with the Car Wash exam, and will do the other ones as well.

    It came out a little simpler than I have planned.

    I feel that there is some way to make the diagram even cleaner. I still had some time left, so I probably could have thought of something.

    Let me know what you think:thumbup1:

    It is saved in LV2009.

    Car Wash.zip

  9. I was running my program in 8.6.1. Since I had to make some changes to the program (minor adjustments) I figured I would switch it over to 2009.

    Now it is taking 2 minutes to load the exe and some of the Xcontrol updates are not working as they did in 8.61. My load time in 8.6.1 was under 15 seconds. The odd thing is that it takes the same amount of time each time to load, so I am thinking there is some timeout that is expiring. But I cannot find where there is a timeout in my code.

    By taking 2 min to load, I mean once you click on the icon, you can see the "icon window" pop-up in the Windows bar at the bottom of the screen, but the program is not visible, then after 2 minutes, it will appear as it should.

    I did a uninstall of all NI software of the deployment machine, and then installed LV9.0.1 runtime and daqmx software.

    I ran the NI spy software and there was nothing happening until the 2 min mark, and then it recorded my start DAQ tasks, which I have in my initialize sequence.

    I also went through and disabled all of my initialize states, sent it straight to a wait state, and it took the same load time.

    If you run the exe on the development computer, it will load up in the normal 15 second time frame.

    Any thoughts on what could be causing it?

  10. What are you using to display the data in your Xcontrol, a graph? If so, there are property nodes that you can change the scale to whatever you want it to appear as.

    You will probably have to do the conversion of mm to in yourself to display it correctly, but you can use the property node to edit the scale.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.