Jump to content

viSci

Members
  • Posts

    456
  • Joined

  • Last visited

  • Days Won

    17

Posts posted by viSci

  1. I was wondering why this architecture is not based on Shared Variables. It seems (with the DSC) it is possible to programmatically create and read Network Shared variables of any type.

    More and more it seems that the DSC is being melded into LV itself, so why not just absorb it completely and not have to reinvent the wheel here. The CIE component makes alot of sense but again it would be better if NI would just build this functionality into LVRT/FPGA to be able to read cRIO I/O directly in LVRT. Also was wondering why the CVT does not use Variant attributes to store tags, it seems like it would be faster than indexing through an array.

  2. QUOTE (rolfk @ Apr 15 2008, 12:24 AM)

    Windows CE or Windows Mobile as it is named nowadays really is not a realtime OS at all. It is rather designed to bring the Windows desktop experience to small and resource restricted devices than to do anything in realtime. And the LabVIEW module to create applications for PDA devices certainly doesn't make many attempts to squezze extra performance out of the whole thing. In my experience LabVIEW PDA is best used to create simple GUIs for control and/or supervision of RT applications or such elsewhere, such as on a cRIO target or similar.

    Rolf Kalbermatter

    Well, you may be correct but here is a report that makes it seem like Windows CE has more capability than that.

    www.qnx.com/download/download/8124/QNX_Neutrino_v61_vs_VXAE_and_WinCE.pdf -

  3. Greetings,

    I am interested in getting some performance benchmarks on LV running under Windows CE. I would think that, in theory, it

    should be possible to achieve real time performance in the league of LVRT which runs under the VXworks OS. I went looking

    in the LVPDA 8.5 help for details on the implementation of the timed loop but could not find anything except some mention that

    while loops execute with cooperative multitasking with a 50ms timeslice. I hope that is not the upper end of performance!

    Mike Sachs

    viScience

  4. Have you tried Buffered Network Shared Variables? I have used them in applications were multiple clients communicate with a single server. Also you can look at the error

    out of the Shared Variable node to see if there are any messages pending. NI has put alot of enginnering into the performance of Network Shared Variables so they should be up to the task you have in mind.

    Mike Sachs

    Intelligent Systems

  5. I had a working LV8.2.1 application using IEEE1394 low level vi's until I loaded an unlicensed copy of the IMAQ Acq. Software drivers v8.5. I have tried to back out and uninstall the v8.5 drivers and reinstall the 1394 drivers but all my vi's are now broken as shown in the attachment. I checked to see that the 1394 low level.llb vi's match the imaq1394.dll and they do match and are from the same installation. I called NI and they are still scratching their heads. Any thoughts....

    post-162-1205376916.png?width=400

  6. I have sucessfully used network buffered shared variables for transfering complex and high speed data from a cRIO or cVision system to a PC. One of the really nice

    things is that you can setup arbitrary shared variable data types and you can specify client and/or server buffering. I believe shared variables

    are the future in distributed system design. Also LV8.5 has a totally rewritten network protocol for shared variables that has greatly improved performance over previous versions of LabVIEW, which, by the way, had very respectable performance. Forgot to mention that you can specify the buffer size when creating the shared variables in your project and in operation they function very much like a queue. You can also poll the error out of a shared variable to determine if there is any data in the buffer to read or if there was an overflow condition.

    Mike Sachs

    Intelligent Systems

  7. I understand that an RT application is headless (i.e. does not have a front panel) for that reason it makes sense to check when a client connection is made and then enable writing to any front panel indicators. What is mysterious to me is that if you do update a some indicator values before any remote connection is made, then that indicator may 'stall'. In other words subsequent updates, even if forced via property value nodes or local variables does not visually update on the remote panel. Could anyone offer a theory to explain this? I have observed this in LV 8.2.1

    Thanks,

    Mike Sachs

    Intelligent Systems

  8. Thanks to everyone who has tried to help. Here is the version of a batch file that finally worked:

    cd c:\Program Files\Ecg Stairstep

    regsvr32.exe """c:\program files\ecg stairstep\anigif.ocx"""

    "c:\program files\ecg stairstep\vrmixr\setup.exe"

    Lessons learned:

    The cd command does not have any effect when this batch file is called from

    the installer. The following snippet does not work even though anigif.ocx is located at c:\Program Files\Ecg Stairstep -

    cd c:\Program Files\Ecg Stairstep

    regsvr32.exe anigif.ocx

    The complete absolute path always needs to be provided. The use of triple quotes is required to create a literal path string that contains quotes.

    The last line will not work without quotes since there are spaces in the pathname.

    Maybe Vista Powershell will finally extricate us from DOS hell.

  9. I am trying to run a batch file called register.bat after the installation is complete. It gets installed in the program files directory with all the other installation files.

    The installer seems to be invoking this batch file but none of the intended actions go off. If I go to the installation directory and launch the batch file manually it goes off without a hitch. I have tried calling it from the run window and it also works fine. BTW, the batch file calls a VBscript which runs a regsrv32 and it also runs another setup.exe

    Here is the register.bat file contents:

    register.vbs

    Here is the register.vbs file contents:

    option explicit

    dim ws

    set ws = CreateObject("WScript.Shell")

    ws.exec "C:\Program Files\ECG Stairstep\vrmixr\setup.exe"

    ws.run "regsvr32.exe anigif.ocx"

    set ws = nothing

    Thanks,

    Mike Sachs

    Intelligent Systems

  10. I have found that network shared variables also make it very easy to connect your PC GUI with your cRIO app. This route gives you tighter control over cpu and network bandwidth. Shared variables can also be customized to be any LV data type or custom control.

    Mike Sachs

    Intelligent Systems

  11. I think this question was asked awhile ago but I am checking to see if anyone has yet to find an efficient way of appending image frames to an existing avi file. I am currently using the NI Vision tools but would be willing to switch for this one feature.

    Thanks,

  12. For a couple of months, in my spare time, I have been thinking about how to create this visualization. I first tried animated GIF's, but you cannot really control them.

    I tried converting the GIF frames to a picture ring and that worked but it seemed like there should be an easier and better way. I finally realized that you could

    do this by modifying a 3 needle meter control.

    I was wondering if there is any technical reason why LV could not offer more control of a animated GIF image. Like frame rate control and frame direction.

    Test it out by running the vi continously and watching the pump rotor follow the control dial. In my application this will be driven by reading the actual servo motor position.

    Servo to Rotor Position.vi

  13. I am using the ACBR and have noticed that if the UI thread of the parent vi is held up (like with a ring control showing its menu items)then the ABCR will not complete. I presume this is the result of the Set Control Value Method. Is there a way to decouple the threads to avoid this problem.

    Thanks,

    Mike Sachs

  14. Hi Nipon,

    Thanks for the nice mp3 player, good example of clean LV coding style.

    BTW, pohm cow jai pasa thai nit noy kup.

    P.S. Carabao is a great group, I saw them 2 years ago at a outdoor restaurant courtyard in Chang Mai.

  15. QUOTE(Aristos Queue @ May 2 2007, 08:28 PM)

    Open up the "classic notifier" VIs... you'll find that internally they use the new notifiers. No plans to update any existing callers, nor to depricate the older VIs. We took them out of the palettes but they continue to ship with versions of LV.

    Ok AQ, thanks for pointing that out. As an aside to this topic I was wondering why the new queues and notifiers do not have an option to return the original reference, thus greatly simplifying things like the msgqueue libraries which internally have to keep track of which previous refnum's have been generated.

×
×
  • Create New...

Important Information

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