Jump to content

Tim_S

Members
  • Posts

    873
  • Joined

  • Last visited

  • Days Won

    17

Posts posted by Tim_S

  1. Just glancing at the screenshot...

    When the VI runs it ask for the file path (1). How could I make it so that people have to browse for it whenever they want before beginning the acquisition.

    You can use the File Dialog VI.

    If I use multiple channels, lets say 2, are they both going to be displayed on the measurement (5) ? How can the values on the graph be cleared once the acquisition ends and data is saved to a file?

    All channels collected will show on the graph. The values can be cleared using a local variable or a property node.

    Is (6) a proper way to store data for further writing to (9) ? Else, what should I change?

    This will concatenate the two arrays, but only the current value. You would need to use a shift register to store that concatenation and then add to it on each loop. A better way may be to open the file to save and then keep writing to it during the acquisition (and may be the only way to do this in a long term DAQ).

    Where should I put the start button (7) so that it starts the acquisition process?

    Before you configure the DAQ, or at least before the DAQ start.

    I currently have three ways (8) to trigger the stop (number of cycles, threshold or manual). None take errors in the loop in consideration. How could I add that?

    Yes.

    Is my usage of local variable correct in the while loop stop condition and in (3)?

    No as the data flow has the stop set after the while loop has terminated and is not in a loop itself.

    • Like 1
  2. I don't know what to do about the first one, but the second one I do know about. You loaded a VI dynamically and tried to Run it, but the VI is broken. That's pretty much the sum total of the problem. What more information would you want to see?

    The situation where I've run into this error message is when I try and load plugins from an executable. Typically it's a missing/misplaced DLL, but determining which can be a major pain. Switching to source code doesn't help as the plugin source isn't broken since everything is found where it's expected to be. The why the VI is broken would be of value to me.

    I've also been able to "fix" some DLL builds by turning on debugging and not had the time to go back and determine why.

    Tim

  3. Any and all guidance is greatly appreciated.

    The VI properties has a Window Size category which allows you to check "Scale all objects on front panel as the window resizes" and "Maintain proportions of window for different monitor resolutions". The down side to this is fonts do not rescale, tables and multi-column listboxes do not rescale the columns, and things will look strange if you switch between "standard" and "widescreen" monitors.

    I believe monitor 0 is the active monitor and 1 is the first monitor... this may be why you get incorrect launches 1 of 6 times.

    Tim

  4. The client has been reluctant to upgrade from 5 and 7.1 because they want to squeeze everything out of what they have and are afraid of the effort and risks of upgrading.

    One issue we've had is the device drivers only support some versions of LabVIEW. This might not be an issue between 5 and 7.1, but should be checked.

    Tim

  5. Does anyone have any experience to share?

    I don't have anything with LV 5 (it's been, what, 12 or 13 years since I've seen LV 5...), but my experience with LV 8.0 was a performance degradation with more than 2 processors. I expect you won't have an issue with multiple processors and that the application will split between the two.

    Tim

  6. I'm trying to make sure that I'm not out in left field. I've got a SR# with NI Tech support and would like a second opinion while he looks at it.

    I've narrowed down to the code in the attached VI causing problems for me. The VI will cause LabVIEW to, at best, stop responding (including window updates), or, at worst, go away. By go away I mean it vanished from Task Manager with no message as to why. I didn't see a known issue with LV 2010 SP1 (which is what I'm using) on this. I get proper behavior if I put in a i32 constant or an array of i32s, so it's something about having an array of clusters of the elements I'm using.

    Switching the boolean to include array size resolves the issue in that I get an error, which would be the behavior I expect.

    Thanks,

    Tim

    Untitled 1.vi

  7. I have an application where I have to call a third party dll to do some calculations. Sometimes these calculation can take a long time and I would like to be able to provide the user with a stop button so they can abort the calculation.

    The options I can think of require you to be able to modify the DLL.

    1. The DLL could pop-up a progress window with a cancel button.

    2. The data is sent to the DLL to calculate and the function call returns immediately. The DLL processes the data in the background and performs a callback when the calculation is finished. Another function call could be used to abort the calculation.

    Tim

  8. Hi,

    I vcould not find any Ni-Serial but there is an option to install NI-Serial 3.6.0. But if check it it is asking me for the device driver CD. Is it hat we want to install..? But I have already installed all the drivers on my laptop right..?

    It's trying to get the installer for the serial driver to include in the installer you are building and has nothing to do with the driver being installed on your build PC. It's going to use the serial driver installer as your laptop may not have the files needed for the specific machine you are going to install your application on.

    Tim

  9. It did create an installer about 127 MB file. When I install it, the installer is to create a folder called VISA in program files folder. But there is no folder at all.

    unsure.gif what is this problem.

    Under the category "Additional Installers", toward the bottom, is NI-Serial. Is NI-Serial checked? This will include the serial drivers with your installation kit. You would have to manually install the serial drivers otherwise.

    Tim

  10. Now I am able to create installer files. But Serial VISA resource 'refresh' is not working.frusty.gif

    The application is for reading/writing modbus registers thru' COM Port. Our people use usb-serial converter- so we don't know the virtual COM port number.

    Did you install the serial drivers with your application? They can be included in the installation, but won't install by default.

    Tim

  11. we could indeed move some part of the procssing into the non-realtime side, but the heaviest part must remain in real-time, and we want to move some of the non-realtime into the real-time side. That last one is the main poblem: we really want it to be real-time in our future system, since it's causing problems now, but it's pretty compicated and in C++ so porting it would cause seruous headaches ;P Should we move it into a dll, we would probably use debugging functionality. Apart from that, we are so used to Visual Studio that switching to another IDE would be another dealbreaker..

    It sounds as if you like the NI hardware, but can't invest in learning the software. The RT OS on the PXI systems is Phar Lap ETS (Phar Lap is now owned by IntervalZero). The website for ETS is located here.

  12. I would like to create something like this:

    * Ctr0-Ctr2 are driven by 100MHz timebase

    * Configure Ctr0-Ctr2 to generate a trig-start for port0.0-port0.2 after different delays

    * Output data at port0.0-port0.2 when Ctr0-Ctr2 trigs them

    * Output from port0.0-port0.2 are made up from two samples (HL) and timed by something else than the 100MHz timebase

    I believe the coding reference you are looking for exists with in the LabVIEW examples. The whole solution will not be there, but pieces will be.

    I think what you've listed is possible, though I'm not entirely clear on what you're doing. You can route signals internally to generate trigger signals, however this is a 1-to-1 mapping. You would have to OR the signals together externally and route the result back in to do what you describe.

    Tim

  13. Major problem: the software is not. Seems RT is only possible using NI's proprietary software. Our current codebase is the result of about 5 years of work by two people, in rather advanced C++. Converting everything into C or Labview to make it run on PXI is just impossible given the time we have (and are willing) to spend on the rather boring conversion job. I was hoping it would be possible to run Windows CE on a PXI controller but apparently that's not an option.

    Can you convert the existing code to a DLL? There is a KnowledgeBase article here that discusses it.

    Can you split the system into real-time and not real-time "post processing"? It sounds as if you can since you are considering a SBC/embedded PC option.

    Tim

  14. When you work in a regulated environment, updating SW from 8.6 to 8.6.1 is considered a pretty major change requiring all sorts of revalidation.

    Even when you don't work in a regulated environment it can be a major thing. The equipment we sell warranties for 1-2 and operates for, typically, 5 years before being retooled. Keeping all the versions (and drivers!) we've used handy just in case some customer's equipment is down can eat a lot of space.

    Tim

  15. Does anybody know how to solve this?

    Ilike my LV applications to check if it has been modified when it starts andupdate it if needed.

    You can turn off the UAC and that should allow you to write, but then you're running without the UAC. There is a meathod to request enhanced permissions (not sure if that's the actual name for it) which allows you to temporarily modify the registry, files in Program Files, etc. I'm not sure what's involved, but that's where I got to when I decided it would be easier (and save some of what little sanity I have) to put a flag in the code to switch where values were stored based on XP or Win7.

    Tim

  16. As my budget is fixed with in Indian rupees 1.5 lack can you suggest a camera for this budget.

    No, I can't. There's a lot of questions you need to research answers to and you've not even gotten to the lense or the lighting. The lighting will (not can, but will) make-or-break the application. You can, as I said, go to NI's website as a starting point. I would recommend talking to your local representative about your specific application.

    Tim

  17. Thanks for any ideas or help with this…

    I'll have to look at the code sugested when I get a moment, however it seems like this is a network in the software similar to UDP, RS-422 or RS-485 in that everyone has to receive the message, determine if it's addressed to them and act accordingly. Alternatively there could be code acting similar to an Ethernet switch in the middle, which would look at the destination of the address and determine a direction to send it.

    Tim

  18. Hi,

    Still the problem is not solved. I have used the setting what you suggested. Please help me in another way.

    The Write is generating the timeout error, so have you checked that the device you are talking to is receiving the message? This could be as simple as it's not plugged in or turned on.

    Tim

×
×
  • Create New...

Important Information

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