Running joystick on real time card

I'm using PCI-7041/6040E real time daq card directly running on windows (labview and the daq card installed in single computer).How can i communicate data between host and daq card? I want to use joystick while the joystick vi can't be download in RT excecution target. In this forum says it can be done if joystick vi is running on host and the joystick data is transfered to RT target, but for my condition (using one computer), Can I do this?

hello
the examples send data acquired with nidaq, but you want to send data from the joystick. see the attached simplified vis and read the documentation of the vis (right click on the vis->help). attached vis are not tested, so maybe you have to play around a bit.
Best regards
chris
CL(A)Dly bending G-Force with LabVIEW
famous last words: "oh my god, it is full of stars!"
Attachments:
Joystick_SharedMemory_7.1.zip ‏28 KB

Similar Messages

  • .vi's unable to run because of real-time Startup error

    See that attached files for the error. Whenever I try and deploy the code onto the robot the attached error comes up. Is there any fix for this or is this a new error? I have also tried a completely new C-Rio project so that it is the basic settings that FIRST gives us. This same error comes up with that one also so I am thinking it is a computer problem on my end.
    Attachments:
    Error part 1.JPG ‏30 KB
    Error part 2.JPG ‏14 KB

    It sounds like there is a start up application already on the cRIO that has different versions of these VIs as dependencies. I'd recommend turning on the NO APP setting on your cRIO. Depending on which cRIO you have this will either be a hardware switch on the cRIO or a setting you can change in Measurement and Automation Explorer. 
    Miles G.
    National Instruments
    Applications Engineer

  • Problem with DAQmx and Real Time PCI-7041/6040E.

    Problem with DAQmx and Real Time PCI-7041/6040E.
    I have a problem with the Real Time card PCI-7041/6040E, I think it is properly installed because my software run with the traditional NI-DAQ. When I try to use the new DAQmx to acquire one signal, Labview doesn't see any device for de DAQ card 6040E.
    Information, I work on Windows XP and LabView v7.0.0 (NIDAQ RT v7.0.0, NI-Serial RT v2.5.2, NI-VISA v3.0.1 and NI-Watchdog v2.0.0).
    Could Labview RT run with new DAQmx ?
    What can I do to use DAQmx with PCI-7041/6040E?
    Thanks for your help !

    Hello,
    I refer to your posts because i am using the PCI 7041/6040E card as
    well but without any success to make it work. The problem I have
    already described in the following thread:
    http://forums.ni.com/ni/board/message?board.id=170&message.id=120198
    Would be nice if you had a look on it, maybe you can help me. BTW, the
    thread starts with a problem of someone else, the difficulties I
    encountered are to be found a little bit to the bottom of the thread's
    page.
    Thank you!
    Dirk Völlger
    Darmstadt
    Message Edited by ratschnowski on 07-28-2005 07:14 AM

  • How to save data in a 4D array and make partial plots in real time?

    Hi, this is a little complex, so bear with me...
    I have a test system that tests a number of parts at the same time. The
    experiment I do consists of measuring a number of properties of the
    parts at various temperatures and voltages. I want to save all the
    measured data in a 4-dimensional array. The indices represent,
    respectively, temperature, voltage, part, property.
    The way the experiment is done, I first do a loop in temperature, then
    in voltage, then switch the part. At this point, I measure all the
    properties for that condition and part and want to add them as a 1D
    array to the 4D array.
    At the same time, I want to make a multiple plot (on an XY graph) of
    one selected property and part (using two pull-down selectors near the
    XY graph) vs. voltage. (The reason I need to use an XY graph and not a
    waveform graph, which would be easier, is that I do not have
    equidistant steps in voltage, although all the voltage values I step
    through are the same for all cases). The multiple plots are the data
    sets at different temperatures. I would like to draw connection lines
    between the points as a guide to the eye.
    I also want the plot to be updated in the innermost for loop in real
    time as the data are measured. I have a VI working using nested loops
    as described above and passing the 4D array through shift registers,
    starting with an array of the right dimensions initialized by zeroes. I
    know in advance how many times all the loops have to be executed, and I
    use the ReplaceArraySubset function to add the measured properties each
    time. I then use IndexArray with the part and property index terminals
    wired to extract the 2D array containing the data I want to plot. After
    some transformation to combine these data with an array of the voltage
    values in the form required to pass to the XYGraph control, I get my
    plot.
    The problem is: During program execution, when only partial data is
    available, all the zero elements in the array do not allow the graph to
    autoscale properly, and the lines between the points make little sense
    when they jump to zero.
    Here is how I think the problem could be solved:
    1. Start with an empty array and have the array grow gradually as the
    elements are measured. I tried to implement this using Insert Into
    Array. Unfortunately, this VI is not as flexible as the Replace Array
    Subset, and does not allow me to add a 1D array to a 4D array. One
    other option would be to use the Build Array, but I could not figure
    out if this is usable in this case.
    2. The second option would be to extract only the already measured data
    points from the 4D array and pass them to the graph
    3. Keep track of the min. and max. values (only when they are different
    from zero) and manually reset the graph Y axis scale each time.
    Option 3 is doable, but more work for me.....
    Option 2: I first tried to use Array Subset, but this always returns an
    array of the same dimensionality of the input array. It seems to be
    very difficult, but maybe not impossible, to make this work by using
    Index Array first followed by Array Subset. Option 3 seems easier.
    Ideally, I would like option 1, but I cannot figure out how to achieve
    this.
    Your help is appreciated, thanks in advance!
    germ Remove "nospam" to reply

    In article <[email protected]>,
    chutla wrote:
    > Greetings!
    >
    > You can use any of the 3D display vi's to show your "main" 3d
    > data, and then use color to represent your fourth dimension. This can
    > be accessed via the property node. You will have to set thresholds
    > for each color you use, which is quite simple using the comparison
    > functions. As far as the data is concerned, the fourth dimension will
    > be just another vector (column) in your data file.
    chutla, thanks for your post, but I don't want a 3D display of the
    data....
    > Also, check out
    > the BUFFER examples for how to separate out "running" data in real
    > time.
    Not clear to me what you mean, but will c
    heck the BUFFER examples.
    > As far as autoscaling is concerned, you might have to disable
    > it, or alternatively, you could force a couple of "dummy" points into
    > your data which represent the absolute min/max you should encounter.
    > Autoscaling should generally be regarded as a default mode, just to
    > get things rolling, it should not be relied on too heavily for serious
    > data acquisition. It's better to use well-conditioned data, or some
    > other means, such as a logarithmic scale, to allow access to all your
    > possible data points.
    I love autoscaling, that's the way it should be.
    germ Remove "nospam" to reply

  • Real-Time Module architecture

    Hi, (I use LV RT DSC 8.2.1)
    I want to learn how to use the Real-Time Module.
      I have process that is running at a Real Time compact Field Point Target.
    The process should be controlled and monitored by the Target but the triggering of the process should be available at the Host.
    I also want to view the Process progression at the Host screen.
      As far as I understand it I have several options :
    Create a RT FIFO buffer and send the process data to that buffer, and then, use 'TCP Write' to send the buffer data to the Ethernet Network, where it is available to any Host PC at the Ethernet Network to view (by using TCP Read)
    Create a Variable in the Project, and enable his RT FIFO at his properties.
    Control the process at the Target with Shared Variables and read them at the Host.
      Option 3 is the option I have been using so far, ignoring the RT property of the controllers, what are the advantages of using RT module ?
    and when should I consider using them ?
      What is the difference between 1 and 2 and what are their advantages ?
      What important things do I need to consider when I use RT Module  (just several tips if possible) ?
       Sincerely Yours,  Amitai Abramson.

    Hi Amitai,
    You could go through this link to know more about RT FIFO and its use. http://zone.ni.com/devzone/cda/tut/p/id/3934
    and this for communication wizard http://zone.ni.com/devzone/cda/tut/p/id/4676
    Message Edited by mallyaprs on 04-30-2009 03:53 AM
    -Mallya
    " Appreciate and motivate those who help"

  • Producer/consumer architecture over network variables with Real-Time target.

    Hi all,
    I am maintaining a producer/consumer data acquisition program to be deployed on a real-time target. The main code is deployed to and run on the real-time target during experiments, but was having trouble because the program was originally designed to write all experimental data to disk on the real time during acquisition, which puts the whole experiment at the mercy of the hard drive. I am now trying to rework the code so that the host takes care of logging, so that my time-critical loops don't have to wait.
    I am currently using LabVIEW 8.5
    I have two questions:
    First, how can I programmatically call the data-logging subvi on the host so that it runs in parallel with the main vi which runs the experiment and collects data on the real-time? I have attached the test code that I have been working with to figure this out, but it does not run the logging vi continuously in the background. I am aware that there is better functionality for this in newer versions of LabVIEW, but I would prefer not to upgrade unless there is no other option. I would like to be able to run my data-generating vi and have it start the data logging remotely.
    Second, is there a way in the host VI to read values off the network variable using an event structure rather than polling it for updates?
    Any help would be sincerely appreciated!
    Attachments:
    testRemoteLogging.zip ‏124 KB

    VI server
    Mark the target VI as served on the machine on which it will execute and use VI server Call by reference to invoke the served VI.
    This used to be taught as THE way to communicate syncronously with an RT app.
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • SIT Real-time data logging and passing data

    Hello all,
    I am pretty new to LabView real-time, so I just want to confirm a few things. I am also using the Simulation Interface Toolkit.
    Let's take the Sinewave.vi from the SIT examples. I have modified it to use sinewave.dll, and run on PXI-8101. If my understanding is correct, when I click "Play", the entire Sinewave.vi is deloyed into PXI-8101, and therefore the entire VI is running at the same pace. The front panel I see on my desktop is slower snapshots of what is actually happening?
    1) Let's pretend now that the sinewave model is time critical and must run every 10ms. How do I do that? I have noticed that within the "SIT_Indicator_Indices" loop, there is a Wait 50ms block. Is that accurate?
    2) I have also added a time elapsed block that will change the Frequency and Amplitude inputs as a function of time. I made them update every 2ms. What clock are we running on? If my sinewave.mdl suddenly calculate integration (time dependent), can I use that elapsed time block as my timer to pass into the model?
    3) How fast is the sinewave.vi running anyways?
    4) Let's say I want a log of the sinewave output (a data point every 10ms). I don't need the log in real-time, I just want to do some analysis on it later. How do I do it?
    Thanks.
    Attachments:
    Sine Wave.vi ‏104 KB

    Hi Bladhart,
    When running the in the Development Environment (pressing the run button on the Real-Time vi) there will be an extra thread to handle the front panel you see. This thread will be handled just like any other thread in Real-Time and will take processor time, thus slowing down your entire application to a certain extent.  
    1. You would need to make sure everthing inside the loop can execute within 10ms and change the wait time to 10ms. Or you can use a timed loop set to run every 10ms and get rid of the wait time but again you would need to ensure everything in the loop can execute in under 10ms.
    2. The elapsed time should be running off the Real-Time system clock. 
    3. The time that the Sinewave.vi is running is system dependent, there is no set speed.
    4. You can log the data by saving to a *.tdms file. You can then use the data from the *.tdms file to do processing later. 
    <Brian A | Applications Engineering | National Instruments> 

  • Impact of real time cube on query performance and OLAP cache

    Hi:
    We have actual and plan cubes both setup as real time cubes (only plan cube is being planned against, not actual cube) and both cubes are compressed once a day.
    We are planning on implementing BIA accelerator and have questions related to query performance optimization:
    1/ Is there are any query performance benefits in changing the actual cube to be a basic cube (using program SAP_CONVERT_NORMAL_TRANS) if the F table is fully compressed
    2/ Can OLAP cache be leveraged for the queries run against the real time cubes e.g. actual cubes
    3/ What is the impact on BIA of having the actual cube as real time (whetehr or not there is data being loaded/planned during the day in that cube)
    Thank you in advance,
    Catherine

    1) Is there are any query performance benefits in changing the actual cube to be a basic cube (using program SAP_CONVERT_NORMAL_TRANS) if the F table is fully compressed
    From the performance point of view, tha actual cubes i.e std cubes are relatively better.
    2) Yes OLAP cache can be leveraged for bringing up the plan query but all the calculations are done in the planning buffer.
    3) Not sure.

  • Automatic Time Card Generation not generating Time Card

    Hi,
    I am running the program 'Automatic Time Card Generation'. The log file showing the message
    'The process did not generate any timecards for the Payroll, Payroll Period selected'.
    And there is no time card for the given Payroll month.
    Any suggestion for this.
    Many many thanks in advance.
    Regards,
    Subrat

    Please check metalink note 282547.1 to see it is relevant to your issue

  • Need urgent help in Real Time scheduling algorithm implementation

    I am new to Java Real Time programming. I have faced a problem which is stated below:
    Declare tasks
    for
    if it is schedulable then run the task
    otherwise it is not schedulable
    for
    check priority with respect to deadline.
    select highest priority task
    for
    start higest priority task
    if the task is preemtable
    then switch lowest priority task to highest priority task and stop the lowest priority task
    after completion higest priority task, lowest priority task complete the rest of the work.
    this is actually a pseudocode for real time dynamic scheduling ( rate monotonic scheduling). can anyone please help me develop the code?

    PrinceOfLight wrote:
    I am new to Java Real Time programming.
    this is actually a pseudocode for real time dynamic scheduling Define "real-time" in your context. Most people who use the term don't use it correctly. If you truly mean "real-time," then you'll need real-time Java running on a real-time OS.
    can anyone please help me develop the code?What specific problems are you having? If you have no clue where to start, this site is not a good resource.

  • Real Time Third Party Software Integration

    I posted this in the PI forum and it was suggested to post it here as well.  I am new to SAP but have worked with PeopleSoft and MS Dynamics AX for several years.  My company is implementing FI/CO and our partner is telling us that we will interface our third party application via flat files that are scheduled.  We are use to running in a real time environment so this is a little hard to swallow.
    Here is an example of what I am trying to do:
    Our third party software will be the starting point for customers. When a new customer is created we need to create that customer in SAP as well (for use with AR). Currently we open a connection to the existing financial application, verify that the customer does not exist and insert the data into the table.
    We all agree that we do not want to write directly to the SAP table(s).
    What we would like to do is when the user saves the record in the third party app, open a connection to SAP, pass the data to the BAPI, wait for a return code then complete the transaction.
    The third party application is written in PowerBuilder 11 and is able to connect to most any database, talk .Net, and call external API's.
    Please advise if this is possible and if so, a link to an example would be great.
    Thanks,
    Scott

    You may use RFC protocol to connect to SAP system. You download RFC library from download center and install it on your third-party system.
    Check threads.

  • Solaris 10 real-time support on a uniprocessor system

    Hello,
    I've read older documentation stating that Solaris has real-time support on a dual processor system. One of the CPUs is dedicated to the real time tasks. I was wondering
    if this is an absolute requirement. Could one use Solaris 10 as a real-time OS on a uni-processor system?
    Thanks for your help.
    Stephen

    Stephen,
    Solaris is capable of running processes in real-time mode on either a uni- or multiprocessor machine. real-time mode is implemented at the scheduler level, with RT class processes layered on top of TS/IA and SYS processes. This is mostly implemented through priority levels (0-59 for TS/IA, 60-99 for SYS, 100-159 for RT [if used]). For details regarding this, pls. see priocntl(1).
    Be aware of a couple of gotchas, though:
    - RT processes will stay at their priority level, no matter what.
    - They will not be subject to time-sliced scheduling (in fact, they won't be scheduled in normal ways, since the scheduler itself runs at SYS priority level!)
    - They'll not stop running until they either voluntarily give up the CPU by means of something like swtch(), or block on a resource, or any process with an even higher priority becomes runnable.
    In short, they might render your system more or less inoperable, if used without caution.
    Consider it a BAD idea to put your shell into RT mode - and definitely do NOT try to run largely computational tasks (PI to the nth position, as an example) in RT mode, just to get some more performance out of your box! It won't work as you expect it.
    RT is meant to run fairly short routines that require (almost ) deterministic response - such as acting on a signal from a sensor on an assembly line. It's definitely not a way to obtain better response times or outperform your peers.
    Solaris, as any UNIX, is not an outright RT system - it just has some stuff built into it that could help in running it as if it were one.
    Consider well what you're about to do, then reconsider ... ;) Don't say you haven't been warned.
    HIH, kind regards,
    - Tom

  • Hardware recommendation for a real-time camera

    Hi All,
    We are interested in using some cameras with LabVIEW real-time for some data acquisition. We are monitoring quite a large array of points for on/off signals (so a camera is easier to implement than an array of photodiodes). Our initial spec is a CCD, 640x480 chip and about 15fps. I'm guessing firewire or Gig-E as the interface as I've heard USB is not compatible with real-time.
    Our plan is to develop the application to run under LabVIEW real-time on a PXI platform. We also hope to eventually deploy the system so we'd prefer not to use NI Vision (I'm not sure if this is possible or not). Similarly due to cost we'd prefer not to use the Embedded/Compact Vision Systems if we can avoid it.
    Can anyone recommend a camera which they have used with LabVIEW real-time? I have no real experience with RT as yet so any advise at all would be a great help.
    We are also hoping to deploy the system using a cRIO as the main hardware platform. I've seen real-time cRIOs  (http://sine.ni.com/nips/cds/view/p/lang/en/nid/208042) have Gig-E built in. Has anyone used a Gig-E camera directly with one of these controllers?
    Thanks for your help,
    Dave

    Hello DeltaJ,
    Can I suggest that you contact the UK branch by calling 01635 523545 and request that you speak to you local Inside Sales Representative. They will be able to speak to you further regarding your full systems specifications and suggest which NI products will be best for you. 
    With regards,
    Message Edited by Philip.k on 03-09-2010 05:27 AM
    Philip
    Applications Engineer
    National Instruments
    UK Branch
    ===If this fixes your problem, mark as solution!===

  • Compile Real Time dll in MSVS 2008

    I'm trying to compile a dll which is supposed to run as the startup dll on a LabVIEW RT target. For starts, I took code that works fine in LabWindows/CVI (i.e. it compiles, and the resulting dll runs on the RT target). I created a new project in MSVS using the LabWindows/CVI Project template, as dll. I copied the code from the LabWindows project, and all compiles well. However, when I copy the resulting dll onto the RT target and set it as startup dll, I get an error message ('cvirte.dll not found').
    I assume this is because I don't iclude the RT runtime dlls correctly; how would I achieve this?
    Thanks,
    Jonas
    Jonas Zimmermann, PhD
    Neuroscience Department
    Brown University

    As a matter of fact, I have. However, that is not my problem. My problem is that I'd like to compile a library for use on a LV/LW Real-Time target. If I link against cvirte.dll (and copy it on the target), I run into other dependency issues, as this uses functions not supported by the RT system.
    I got (what I think is) a step further, making sure my code is not linked against default libs (/NODEFAULTLIB flag in MSVC++). However, I still get unresolved external symbols (__fltused, __ftol, __RTC_CheckEsp, __RTC_Shutdown, _RTC_InitBase, ___security_cookie, @__security_check_cookie@4, and @_RTC_CheckStackVars@8).
    Is there a sample MSVC++ project for a 'Hello World' dll that compiles for and runs on a real-time target?
    Jonas
    Jonas Zimmermann, PhD
    Neuroscience Department
    Brown University

  • Event Structure in Timed Loop in real time cannot work

    I am a new user for LabVIEW. And I met a problem which really frastre me!!! Hope someone can help me out. Thanks in advance!
    I simply want to use event structure under timed loop, which is extrmely important in my design.
    However, this works very good in my computer (without connect to FPGA).
    Once I connect it to FPGA, then I can run it still but there is no response!
    My file is attached. Please somebody helps me!
    Looking forward to your answers!
    Solved!
    Go to Solution.
    Attachments:
    Test for Timed Loop.vi ‏9 KB

    The FPGA runs headless. Event structures are not going to work. What you need to do is have an application on your host where the user presses a button, changes a value, etc. That event should send a message via TCP/IP to the code running in the real time environment. Then the real time environment should set a control on the FPGA to the value you want.
    In general, real time programming with FPGA has multiple layers.
    1) Host code-> handles user interactions and communicates them to real time code via TCP,UDP, etc. Displays data to user sent from the RT controller.
    2) Real time code->runs headlessly. Handles messages from Host code, processes FPGA data, communicates with FPGA much like the host code communicates with the real time code
    3) FPGA -> does acquistion and passes it via FIFO to the RT
    The first thing you need to do is understand the architecture and how all these pieces of the puzzle work together before throwing things down on a diagram.
    CLA, LabVIEW Versions 2010-2013

Maybe you are looking for

  • How do I transfer itunes from my old computer to my new one?

    how do I transfer iTunes from my old pc to my new pc

  • Indicator on previous tab opened?

    Is there a way to know which tab you last had open prior to the currently opened tab? Sometimes I have quite s few tabs up from the same website and it's easy to forget which tab was the last one you had open if you require to go straight back to it

  • Cursive writing in inDesign

    Hey, I am working on a printed book for second graders that teaches cursive handwriting. You may remember this from your school days... the guides that have the dotted line through the center... the little arrows on the characters that teach which di

  • Complete backup and recovery of WAS 640

    Hi Folks, I am trying to restore our XI System (Web As 640 SP15 + Oracle + Windows) on to a new Server for performance reasons. I am following Wlog published in SDN: /people/sap.user72/blog/2006/03/04/complete-xi-backup-restore-in-an-hour Any comment

  • Inspiration Browser update error

    I have been trying to download the Inspriation Browser, followed directionns, took out old one restated computer, even update the air program--still gettig erro message when I try nto download??