Jump to content

LAVA 1.0 Content

Members
  • Posts

    2,739
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by LAVA 1.0 Content

  1. N.,

    I'm not sure if it will make a difference, but can you try the following command line command to setup the USB memory.

    Please remove as many other USB devices as possible from your system before running this, especially any that may contain memory or act as a drive (external harddrive, digital camera, iPod, etc.). Keyboard and mouse should be okay.

    C:\Program Files\National Instruments\RT Images\Utilities\PXI_Disk\8.5.1\usbformat.exe usb

    Update the drive letter and version number for your installation.

  2. QUOTE (sahara agrasen @ Oct 18 2008, 06:23 PM)

    can anyone please let me know the importance of pulse width and onboard memory options. in what kind of application required this two points. or it is useless?

    Depends on your needs.

    If you are interested in trigger signal in the form of a short pulse than the pulse width is important.

    If you want to read during long times DIOs the onboard memory is important.

    However 64 MB onboard memory is a lot.

    Consider 10 kHz, 32 channel, this means 320 kB per second, resulting in 2000 seconds of memory.

    Do the math and see if it is worthful, any memory available over 1 second should be enough. End users expect every 100 msecs updates.

    Ton

  3. QUOTE (Aristos Queue @ Oct 16 2008, 10:55 PM)

    I can see the point, but as a keyboard junky (come on Darren) this is strange behaviour.

    It's not about the focus but about the value in the string, it is not available for programming.

    QUOTE (mbrowne @ Oct 17 2008, 03:20 PM)

    An other workaround is to manually set the focus of the string to false before you read the terminal...

    (and set the string focus back afterwards if you want) see picture...

    This will cause the correct updated value to be read and the value change event to be fired
    AFTER
    the menu event.

    Thanks, I assume that setting the 'keyfocus'=True for any other control will take focus away and will trigger the event.

    Ton

  4. QUOTE (Aaron L @ Oct 17 2008, 11:08 AM)

    Hello,

    I need to have my EXE open when a user double-clicks the application, but I don't want the actual compiled VI to begin execution when opened. The user needs to enter several parameters prior to execution, like entering system serial numbers and such. Then, the user can hit the Run button and the program can run normally. This is only an issue on initially opening the application. Once the application is open, has run, and terminates normally, the user can change the parameters and run the application with Run again without issue.

    Is there a parameter I can set somewhere that will open the application but not run it? I don't know the right search term to figure out how to ask the question to find this parameter.

    Thanks!

    Aaron,

    I think the preferred method to solve this problem is that you edit your application to add a Run or Start button as part of the application. In other words the LV application does run immediately and waits for you to enter the parameters. Then when you are ready to execute, you press the new button on your UI which starts the main operation of your application. Once it completes the first operation, it goes back to the Wait state, waits for the new parameters, and you press the new Run button again. The actual LV application does not stop between these operations.

  5. QUOTE (MasonJar @ Oct 16 2008, 08:49 PM)

    I've been pulling my hair out on this one!! Questions....is there a way to manually set the gain on the PCI-6071E?? Amd why can't I get the actual readings to match the stability of the Calibrations??

    NI's documents and paperwork seem to say that the "E" series boards are "software selectable" on gain using the NI=DAQmx but one part reads it happens automatically. I haven't been able to find any gain adjustments and it doesn't seem as though the board is adjusting auto.

    Anybody run into this? All help greatly appreciated and thanks in advance!!

    Setting your min and max values as near as possible to each other will instruct the card to use the best gain.

    To verify this, read the AI.DevScalingValues property (AI,General Properties, Advanced, Scaling Values), these should change during different gains.

    Also try to get your task in MAX running, this should help a lot!

    Ton

  6. OK, I have a hard one, could be either 'expected result' or 'bug'.

    Run the accompanying VI, follow instructions (load the accompanied RTM as well).

    The following thing happened today:

    I was editing a string

    Hit a menu shortcut

    This triggered a popup with info from the string.

    However the info from the string was old.

    Selecting a menu item with a keyboard-shortcut doesn't remove the focus from the string object resulting in a 'value change event' or a terminal update.

    So what happens. I instruct my user to always use the keyboad (mouses suck), so they edit the string, hit the menu shortcut et voila I have old data.

    I know only one workaround: 'Update value while typing', but that one is very hard to filter to see what really happened.

    Anyone has an idea?

    Ton

  7. QUOTE (Vladimir Drzik @ Oct 13 2008, 11:00 AM)

    Hi

    In one of our projects, I am using a hierarchy of LVLIBs to ensure correct namespacing of each VI. That also means that the whole project is included in a single top-level LVLIB. For SCC, I am using MS SourceSafe with the locking check-out/modify/check-in model. So far, only a single developer worked on the project at once, so he could check out the whole project when doing changes. However, there is a big problem when multiple developers try to work on the project. Every time a new VI is created, at least the top-level LVLIB gets modified. This LVLIB can be checked out by one user only, which leads to endless conflicts.

    Is there any good solution how to use namespacing via LVLIBs together with SCC?

    Vladimir

    An LVLIB is a cohorent piece of code together with the subVIs, so treat them like one.

    If you add a new VI simply do a fast check-in/out of the lvlib, this shouldn't take long.

    Ton

  8. QUOTE (Val Brown @ Oct 13 2008, 04:28 AM)

    OK, I think this will do it. I've attached the LLB that contains a top level "A web browser for NCP run.vi" which has the involved ActiveX Object (viz WebBrowser2).

    The strange thing is that it happens as soon as the VI is openend. Even before running, so the pop-up originates from the ActiveX box.

    Maybe you can tweak something there?

    Ton

  9. QUOTE (Jo-Jo @ Oct 10 2008, 04:25 PM)

    I'm sure I'm not the only one that has run up against this. Does anyone know of a way to keep references alive after closing, or just stopping, the top level VI of the hierarchy that opened them? I'm trying to implement a more distributed architecture (not really distributed in the networking sense, everything is on one PC), in which the different application instances must know what the other instances are doing. In particular when a panel closes, it needs to check to see if any others are open in order to determine what to write to an XML file I am using. I know I can just reacquire new references whenever I dynamically open a new top-level VI, but I feel this is sloppy, and resource intensive. I feel a much better way of doing business is to acquire all the references I need when I initialize the application, and then keep them alive in a global, or something else that allows communication between threads, and close them when I'm finished with them. Unfortunately LabVIEW doesn't like this sort of architecture, and I can't find a way to stop the garbage collection.

    Anybody have a work around, or do I just have to keep acquiring new references to resources?

    ~Jo-Jo

    In the launched VI's, open a ref to its FP and keep it open as long as it runs. That will keep LV from cleaning up the VI.

    Ben

  10. QUOTE (maybe @ Oct 10 2008, 04:01 PM)

    Hello,

    I have a problem about the CWgraph3D Control, wondering if anyone has idea how to solve my problem.

    So I have 3 points in space, and I am using the CWPlot3D->Plot3DMesh and give the x, y and z vector to have my surface /plane plotted. I am using a XY-Projection. and my 3 points are:

    P1 : 0 0 1

    P2 : 0 1 0

    P3 : 0 0 0

    And thus my x vector is <0 0 0>, y vector is < 0 1 0 >, z vector is <1 0 0>

    And for the XY-Projection, I wil have three points which are:

    P1' : 0 0

    P2' : 0 1

    P3' : 0 0

    As you see, two points apperas to be overlaped each other, and I suppose to see a "line" (if the thickness of the plane is not 0) in the XY projection. Instead, in my plot I see nothing there. I tried to chanage the plot style to surface and line and nothing is shown. I assume it is because the plane is defined as 0 thickness. But I really want to show it as a line (so I want to increase the thickness), what can I do?

    Thanks.

    Sorry but you lost me if it is not a simple as setting the line width for your plot.

    Please post an example VI with the data saved as a default so someone can help out without having to code from step one.

    Ben

  11. QUOTE (torekp @ Oct 10 2008, 09:09 AM)

    The first time I read that quote from Arthur Conan Doyle about memory being like an attic it was in "VMS Internals and Data Structures version 4" (hmmm... chapter 14? Memory management)

    Predicting memory requirements is rough. What is easier is to charaterize the code requirements by testing it with different file sizes. But you already know this I'm sure.

    I did notice something when working with LV 8.6 over the last couple of days. A clone of template VI running top-level can return that error (memory full) but the rest of the VI's can keep running (provided they aren't looking for memory at the same time). So.... you could use a template to "test" if you can read the file. If the template survives, its safe to rea the file.

    I am very interested in what others have to say about predicting memory usage.

    Ben

  12. [OT]

    QUOTE (crelf @ Oct 9 2008, 06:11 PM)

    ...

    But you forgot to collect the underpants...

    I'm impressed! A one word reference to South Park and you picked-up on it. Wow. And now that you brought up South Park (a totally bizarre program) and we were mentioning Aristos, I heard that Tim Burton is doing a version of "Alice In Wonderland". provided it isn't a musical, that sounds promising.

    Ben

  13. QUOTE (cheekychops @ Oct 9 2008, 06:02 PM)

    I major in Computer systems. I have followed programming in Java, C++, have also done concurrent programming in C. I have used Labview before to create waveforms and work with them, also used the Ni Elvis to acquire data. I must admit I dont have a great knowledge in Electronics, hence I am not sure what type of project I can manage.

    How much I/O do you need/want in your project? You could do without any I/O and write a program/application that only involves software. I guess this may be acceptable for a Computer Systems major.

    You could think about a distributed networked application with pieces running on different computers. Think along the lines of networked multiplayer game.

  14. QUOTE (Daklu @ Oct 9 2008, 01:33 PM)

    ...

    ... is there anything you don't have your fingers in?)

    ...

    [set TongueInCheekMode = True]

    Stephan is part of a big plot by NI.

    After realizing that they can't keep people from saying bad things about LV they came up with the grnad scheme.

    1) Have a a heavy weight (I am talking gray matter mass not body mass) developer start answering toght in-depth questions on LAVA.

    2) Keep the posts coming until the heavy weight creates a sense of indebtedness in the LAVA contributors.

    3) Make it known that the heavy weight is stting behind every aspect of LV so the LAVA community is hesitant to say anything that may offend their special mentor.

    4) Profit

    [set TongueInCheekMode = False]

    Thanks Stephan!

    We on LAVA can honestly say that we "sit at the feet" of some of the greatest developers the world has ever known!

    Ben

  15. QUOTE (cheekychops @ Oct 9 2008, 10:56 AM)

    Hi,

    I wonder if you guys can please help me with some project ideas for my final year project, I am suppose to come up with a project title in LabView, I have intermediate knowledge in LabView(arrays, charts and graphs, structures, acquiring data using DAQ and also have access to USB interface).

    Any ideas would be really appreciated.

    Thanks.

    You need to give us a little more information about the project requirements/guidelines, what type of program/major are you in, where you are located, what access you have to specific I/O hardware, possible budget to purchase additional, HW, etc.

    My suggestion is that you build a sprinkler system controller with remote web interface.

  16. QUOTE (Pollux @ Oct 8 2008, 04:45 AM)

    ...edit:

    I have another question, and I'm not opening a separate thread for it:

    Is it bad to use Event Structure to do an event-driven application (for example an application where the user does different actions by pushing buttons)? I find it very easy to use but I haven't seen any example written that way.

    Is there any other way to do this type of application?

    I see nothing bad with event driven architrectures. I use them for almost all of my GUI's and with user events i have extended their use to more than just the GUI.

    The "old way" used polling which almost shapes out the same but puts additional load on the CPU to do the polling and introduces a delay if you throttle the polling.

    Ben

×
×
  • Create New...

Important Information

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