Pass an array of real-time desktop PC

Hello

I recently started using LabVIEW Real time. I want to transfer an array of data from a PC to office to a PC in real time. The data transfer is time and once real PC will make further processing of the data. I'm using LabVIEW 8.2 and the corresponding version of the time real LabVIEW. I do not understand how to program the time real PC to receive all the elements of the array in the order. Below is a brief description of what I've tried so far.

At the beginning, I created a shared variable on the computer which was the data type double target. I activated "Buffering" and set the size as 10 double rooms. Enable FIFO tab real-time time real FIFO, selected several items and set the size as 10 double rooms. On the desktop, I used a loop for to transfer all the elements of the array in the shared variable. I used a 500 ms delay in the loop for debugging purposes. On the target side PC, I used a while loop, the same delay of 500ms and built a table reading the shared variable. To run the program, I ran the VI on the target PC and then the VI on the host. I could see that the painting was being filled with data from the host computer, but the first element of the array of host PC has been filled in the second element of the array on the computer target. Another problem, is that there is no way to prevent the target computer that the host PC had sent all the data and he had to stop the filling of the table. The first problem with lag of data can be attributed to the timing. But I don't know how to solve problems.

I also tried declaring the variable shared on the computer target with the double data type 'Array of '. But when the data is passed from the host PC for the target computer, I don't see the variables reflected on the target computer.

Is could someone please tell me what error I do here?

Hello

The problem has been resolved. It is LabVIEW time real 8.20 which has been altered. Therefore, did a re-installation of LabVIEW. Now I have the sample project attached (ex2.zip) in the previous post works perfectly. Thank you for your help.

Kind regards

Prashant

Tags: NI Software

Similar Questions

  • Configure a real-time desktop PC

    Hello

    I'm so hard to convert a PC target RT tring. And I have a big problem. RT target is delivered successfully in Safe Mode, I can add some softwars on it but some softwars come with an error while adding: "the password you typed is incorrect. ..." . In any case as with softewars which inistalled although I think that there are enough, I still have problem in mode: "Boot using software installed on the hard drive. In this mode although there is nothing wrong on monitor target, the target is shown disconnected in MAX.

    Either way, I use just my RT Module license, without this special deployment license that comes whit an Ethernet card. But I don't get any error message on the license.

    Can someone help me please...


  • Browse the contents of the hard disk of the target in real time

    Hello

    Is there an easy way to browse the content of the hard drive on a real-time target by using the file path control (or another type of control)?

    What I have in my application is a PC real-time desktop (running on PharLap) who has a Main.vi running on it. There are a few configuration files (for this VI) I want to be able to read and record to that would be stored on the hard drive of the target in real time. However, when the application runs and I hit the Browse button, it displays the contents of the Windows machine and not the machine in real time. Is there something I'm missing?

    Please note that I can send via FTP on the Windows computer to the target in real time and can interact with the drive of the target in real time without any problem.

    Thank you.

    Mike

    If you LV 2013 actually use WebDAV screws thus:

    http://digital.NI.com/public.nsf/allkb/4EBE45E8A816B19386257B6C0071D025

    http://zone.NI.com/reference/en-XX/help/371361K-01/lvcomm/WebDAV/

  • How to pass a variable to a sub - VI a vi in real-time?

    The main calls a Subvi where there is a loop for. is possible to pass a variable from inside the loop for handmade in real-time, this is while the for loop is still running?

    I tried with a global variable. The global itself is updated, but if I put for the most part the global variable with a wire to an indicator, the indicatore is not updated until what the sub that VI has not completely passed control to hand.

    Is it possible to do?

    If you are running in windows, see example vi

  • Convert a desktop PC to a target of VeriStand real-time

    Hello

    I have to convert a desktop PC to a target of VeriStand real-time.

    What are the PC requirements to convert the PC to a target of VeriStand real-time? They are the same as the requirements to convert a PC to a time target real LabVIEW?

    http://www.NI.com/white-paper/8239/en

    What is the procedure to install the engine time real Veristand to the RT PC? Is this the same as the procedure to install LabVIEW Real-time to a RT PC?

    http://www.NI.com/white-paper/2733/en/#toc4

    And what I have to install engine LabVIEW Real-time before installing engine VeriStand real-time?

    Last question: can I install the engine time real VeriStand on a PXI controller - 8115 Windows by creating a dual boot on my own? (PXI-8115 can be purchased with Windows or LabVIEW RT or the dual boot Windows/LabVIEW RT.)

    Thanks for your replies.

    Best regards.

    David

    (1) Yes
    2) kind of. Neither veristand engine is just an application that runs on the RT or windows. So once you follow this guide to make the target RT desktop computer you can install the NIVS motor application through MAX
    (3) Yes. Remember that the nivs engine can run on windows or RT so if the 8115 runs windows, you can run NIVS targeted toward you. If the 8115 runs RT you would need a separate windows PC and target the 8115 from that. Or you could put the hypervisor (if the 8115 supports) to simultaneously run windows and RT on the 8115 and so to run the client side NIVS windows targeting the engine on the side of the RT veristand... About a penalty of 50% of the performance

  • 10GBE Optical Desktop in real-time?

    Hello

    I was looking for possibly using card NIC a10gbe (dual-port of preference) for a project I'm working on that involves a standalone that will emit a lot of data to a desktop RT LabView FPGA. I tried to look through some of the models which would require a RT Office, but have not seen who could go 10gbe, gigabit only. Doesn't I may look on a model, or are there materials that could make 10gbe on a RT controller, etc.?

    Thanks for any help and if you know a card compatible 10gbe that would work with an office of RT, please let me know

    -weiz

    Hi weiz,.

    Here is an article from Developer area that lists the requirements for a PC in real-time: requirements for LabVIEW Real-time targets desktop PC.

    Under the support of the Ethernet Chipsets section it lists all chipsets ethernet you can use with different versions of LabVIEW RT. I checked those listed for LabVIEW 2009 and it seems that they are all Ethernet Gigabit controllers.  Unfortunately, LabVIEW RT support all models with 10gbe.

    Take care!

  • No device available in real-time on desktop PC mode

    An acquisition of data of my friends computer built in the following maps:

    PCI-6229
    PXI-6259 (via the pxi-1033 chassis)

    They are very well known and work perfectly start this computer with Windows XP.

    If I start that computer with a hard drive in real time of "Microcomputer", I don't see any two devices in MAX. I do not see the PXI-1033 chassis, but all locations are listed as empty.
    I would have assumed that at least the PCI-6229 would show up - but no.
    My desktop PC real-time system has all of the installed packages available.

    What can be the problem?

    Hello

    Hello and I hope that your well today.

    Thanks for the post!

    If you try to bit the PC in real-time under remote systems in MAX from another machine?

    What version of DAQmx did you installed on the remote PC in real time?

    Lack of devices OR-DAQmx in Measurement & Automation Explorer (MAX) under systems remotely (target real time)

    http://digital.NI.com/public.nsf/allkb/6B06A4E228CF62098625750000614B57?OpenDocument

    Deployment of DAQmx on PC in real-time

    http://digital.NI.com/public.nsf/allkb/79CB44F7E228AED88625756E00445151?OpenDocument

    Hope it starts to help,

  • Main Pass of VI VI text in real time

    I have a large application with many Subvi, each sub - vi is a VI complex where, I'm read, save, and change the values of an external microprocessor. normally each sub - vi take 1, 2, 3 or several minutes to compleate but the operator can see just the main VI. How can I view in the main VI, the text generated in any Sub - VI in real-time? because the operator needs to see the status of the test in real-time and does not wait until the subvi finished to see the result.

    Thank you

    Thank you.

    Solved

  • track real-time spectrum 3D

    Hello

    You please show me with a basic example of how can I plot a 3D graph (time-frequency-amplitude or time-frequency-power) in real time? I can use the toolikit modulation blocks to plot amplitide vs f or power vs f, but I do not know how to add time as the third axis. Considet the IQ sampling rate is 200 k and the carrier frequency is 2.4 GHz

    Thank you very much

    Don't know what kind of performance that you wait (and you can) but if you get a series of plots of A (f) you want, say, to be represented as a cascade of 3-d chart type, the 3D waterfall chart example should be a good start (accessible through the detailed help).

    You have two options in it: either pass all the data, three 2D arrays or two tables 1 d and 2D table. Here's an illustration with the latter approach:

    My dual core PC is completely overloaded with 3D display task and quickly filled his memory...

    HTH.

  • Get strange errors 'real time' in the browser console, what do mean?

    I noticed recently that since yesterday is the day prior to that, I get a strange 'real-time' error messages in my browser console log. I get them for more or less the same sites, and I have attached a screenshot of some of the most common mistakes for example. I see these errors very frequently in the browser console log.

    So I'm a little worried about what mean these errors, why I want to come and if anything, what to do about them.

    Hello

    Try Firefox Safe mode to see if the problem goes away. Firefox Safe mode is a troubleshooting mode that temporarily disables hardware acceleration, restores some settings and disables add-ons (extensions and themes).

    If Firefox is open, you can restart Firefox Safe mode in the Help menu:

    • Click the menu button

      click Help

      then select restart with disabled modules.

    If Firefox does not work, you can start Firefox in Mode safe as follows:

    • On Windows: Hold down the SHIFT key when you open the desktop Firefox or shortcut in the start menu.
    • On Mac: Hold the option key during the startup of Firefox.
    • On Linux: Exit Firefox, go to your Terminal and run firefox-safe-mode
      (you may need to specify the installation path of Firefox for example/usr/lib/firefox)

    When the Firefox Safe Mode window appears, select "start mode safe."

    If the problem is not present in Firefox Safe Mode, your problem is probably caused by an extension, theme or hardware acceleration. Please follow the steps described in the section Troubleshooting extensions, themes and problems of hardware acceleration to resolve common Firefox problems to find the cause.

    To exit safe mode of Firefox, simply close Firefox and wait a few seconds before you open Firefox for normal use again.

    When find you what is causing your problems, please let us know. This might help others with the same problem.

  • For a sequence in real-time output variable

    VS 2011, I have a sequence of real-time voltage step that sets an AO for a voltage given for awhile, and then resets the output to 0.

    Just before setting the output to 0, I want to read the response of my this stimulus of an AI System I call StepResponse. To do this, I place this in FinalValue I set as a Variable in my script. In other words, it is a parameter or a local Variable.

    Now, how can I get this out FinalValue? I don't see anything on how to "test" this variable to one of my user variable... I was able to do with the stimulus inherited in VS2010 Editor. Now, I'm stumped.

    Here is the sequence:

    and this is the profile of stimulus and settings below. I can set the fine settings via the API of LV, or run the Publisher of the Stimulus. But I can't seem to get out this FinalValue...

    THX.

    L.

    The return for a sequence (in your case FinalValue) variable is returned to the caller once the sequence has been completed as a result of this sequence. In your example, the appellant is stimulus profile that you configured. In a profile of stimulus, two relevant things will come based on the return value of variable a sequence called:

    1. The return variable value will be get recorded in the file of test result ATML for stimulus profile

    2. You can configure an assessment of output for the call to test sequence make a basic on the return variable test to determine a pass/fail result. For a numeric variable to return such as FinalValue, you can do a check of numerical limits to test whether the value is in or out of the specified limits. For a Boolean return value, you can translate either directly in a pass/fail result, or you can reverse the logic as well as False implies Pass.

    In addition, the LabVIEW API has a function, you can call once the sequence finished to programmatically retrieve the return value.

    However, in your sequence after that you store the value StepResponse in the return variable, you reset to zero before the end of the sequence. If your sequence always returns zero. I think that you do not remove this line and let FinalValue what so that you will get the StepResponse back closure instead of zero value.

  • Continuous data acquisition and real-time analysis

    Hi all

    It is a VI for the continuous acquisition of an ECG signal. As far as I understand that the analog read DAQmx VI must be placed inside a while loop so it can acquire the data permanently, I need perform filtering and analysis of the wave in real time. How I implemented the block schema means that data stays int the while loop, and AFAIK the data will be transferred on through the tunnels of data once the loop ends the execution, it clearly isn't real-time data processing.

    The only way I can think to fixing this problem is by placing another loop that covers the screw scene filtering and using some sort of registeing shift to transmit the data in the second while loop. My question is whether or not it would introduce some sort of delay, and weather or not it would be supposed to be the treatment in real time. Wouldn't be better to place all the screws (aquicition and filtering) inside a while loop? or it is a bad programming practice. Other features I need to do is back up the data I na file, but only when the user wants to do.

    Any advice would be appreciated.

    You have two options:

    • A. as you said, you can place the code inside your current while loop to perform the treatment.  If you're smart, you won't need to put one another while loop inside your existing (nested loops).  But it totally depends on the type of treatment that you do.

    • B. create a second parallel loop to perform the treatment.  This would be separate processes to ensure that the treatment is not obstacle to your purchase.  For more information, see here .

    Your choice really depends on the transformation that you plan to perform.  If it's much the processor, this could introduce delays as you said.

    I would recommend that you start at any place in the first loop and see if your DAQ buffer overruns (you can monitor the rear of the buffer during operation).  If so, you should decouple the process in separate loops.

    In what concerns or not ' it would be considered as real time processing ' is a trick question.  Most of the people on these forums say that your system is NEVER in real time because you're using a desktop PC to perform processing (note: I guess it's the code that runs on a laptop or desktop?).  It is not a deterministic systemand your data is already "old" by the time wherever he leaves your DAQ buffer.  But the answer to your question really depends on how you define "real time processing".  Many lay it will set as the treatment of 'live' data... but what is "actual data"?

  • Error-307650 during a sequence in real-time with API LV

    I created a basic real-time sequence that checks the time it takes a signal reach a certain threshold.

    On the side of the LV, I use the API to call this sequence. I make sure that all channels and settings are defined as in the examples. However I get 307650 error that says "NEITHER VeriStand: Index was out of range." Must be non-negative and less than the size of the collection.

    ' Parameter name: index.

    Any suggestion to help here? THX. Code is attached.

    There are two problems here:

    1. The Stimulus profile editor is not indicating that there is an error with this sequence, although there is a. Note that the variable InitialTime is used in an expression, but is not declared as a parameter or a local variable.

    2. you get an error at runtime because of it, but it's not terribly useful (index out of range).

    You can fix this by adding a local variable of InitialTime to your sequence. I dropped the CAR 338386 about this bug.

    Once you do this, there is something extra, you will need to set in your VI which runs the sequence so he could get the results of the sequence properly. You use correctly the value of the sequence name to read the back of the sequence Variable. You use the Session name used during the deployment of the sequence. Which does not match the name sequence.

    To get the name of the sequence, use VI to get all the names sequence on your session profile of stimulus to get the array of names for all of the top level of the session sequences, then index on the first point, given that you only use a single sequence. Example below:

  • Data in real time to table

    Hi all
    I am trying to create a spreadsheet of the 500 columns and 1000 lines.
    My program consists of real-time data streaming via the com ports (VISA), running in a continuous loop. I was hoping that someone could help me with the following:
    (1) how to convert point-by-point of data in a table format?
    (2) how to put in place the iterations and loops for the program to collect 1000 samples of data and then move to the next column (switching 500 times columns)
    (3) how can I take my array 1000 x 500 and write it to a spreadsheet?

    Most of the examples that I find to create rows and columns of the tables use random number vi, incorporated into the INSIDE of a loop for, and then auto-indexation it. However how I incorporated my data in real-time (within a while loop) in a loop for (that's why I'm unable to follow these examples).

    I'm new to LabView fairy. I would be great if someone could help me because I've tried countless ways to create my spreadsheet.

    Thank you!

    Would be easier to collect the data in a table 1 size d 500000 (= 500 x 1000). Initialize an array 1 d of this size and the correct data type and use it to initialize a shift of you register acquisition loop. With each new data point, use 'replace the subset of table' to replace the actual data based on the final iteration. When the acquisition is done, reshape the array to 500 lines. 1000 columns and write it to the file (using for example write to the spreadsheet file).

    Why do you use a while loop. Apparently, you know the number of iterations before the start of the loop, a loop FOR would be more appropriate (you can view the conditional terminal to stop earlier if necessary)...

    Be aware that it is expensive large format paintings. Unless the ihe file must be imported somewhere else, I recommend using binary files.

  • make a graph in real time of 1 DBL value at a time, using a loop for

    I have a somewhat interesting programming task where I have the following situation: (I have attached a mac version of vi Labview 2013)

    -Using a patented (pre-made and uneditable) sub - vi, who receives a value of 0 or 1 as input and reads off a single measure, whenever he receives 1 while a value of 0 is necessary to 'reset' of the vi to rehearse a new measure.

    -I would like to run this sub - vi repeatedly in a loop For each value of "measure" are sent to a curve of waveform to give a direct value (real time) for the graphic to display.

    -As it is, I have a vi file that simulates action in a loop but built in a 1 d array to get exuent values sent a waveform curve.

    -I don't know how to make a real-time graph which receives 1 value double both.

    -In addition, I want only every 2nd value sent to the loop for, but I already have several ideas on how to do it.  First of all, I am concerned about the target in real time.

    Kyle Shiel

    A graphic, not a graphic, allows you to update a point at a time. It would be inside the loop for. update the chart or not, you can use a select statement or the structure of the case.

    These are pretty basic functions in LabVIEW. Please see the free tutorials.

Maybe you are looking for