Controlling fpga digital output node from realtime boolean

I have a system where I want to turn on / off a digital output running on the FPGA.    
Once I set the boolean on my realtime side (which turns on the FPGA output), I see the output turn on the CRIO, but it flickers on and off.   (not latching?).   I just want the FPGA to stay on as long as the output is turned on, on the realtime side.  I cant change the mechanical action of the switch due to limitations on FPGA / RT according to labview ( I get an error at compile)
Any suggestions on how to correct this?
Solved!
Go to Solution.

I have simplified my program to something very basic to replicate the problem. 
The digital output D0 switches on and off everytime the realtime loop cycles through. 
If I run just the FPGA seperate and turn on the digital output control D0 it stays on solid. (until I turn it off again)
What am I doing wrong?
Attachments:
FPGA_RT_TEST.zip ‏144 KB

Similar Messages

  • How do I control a digital output on NI9144 FPGA with fpga code running on NI9082.

    Due to a recent change in our hardware configuration I need to locate my various I/O modules in various locations around the facility. I am attempting to use an etherCAT setup consisting of an NI9082 and multiple NI9144 (for now only one NI9144). I need both devices to run code in the respective FPGA and make the results available to the other devices and for user interface software. My question is is it possible for the two FPGA code segments to communicate directly with each other without going through the RT or computer interfaces. I need to fire a digital output bit on the NI9144 based on logic running on the NI9082.
    Are there any good code examples around that someone can point me to?
    Thanks for the help.

    Hi, you can include trigger conditions (digital, or analog) on your FPGA VI and connect directly the I/O from module to module (analog with analog & digital with digital), however, if the chassis are meant to be at different locations the cable used to connect the ports is equals the length in between each device and that could degrade the signal if we are taking about a couple meters or kilometers. The most reasonable way to send/receive data from great distances is through ethernet using a regular communication protocol (such as TCP/IP, network streams, network shared variables...etc).
    Alejandro | Academic Program Engineer | National Instruments

  • How to control a digital output signal using the DAQ assistant?

    I am using a USB 6251 DAQ board and would like to control a switch. I am gathering airflow, pressure, and acoustic data on the same board (analog input) and would like the switch to trigger when the airflow value is within a pre-determined range. Finally, I would like to reverse the polarity of the switch (to off) about a second after the initial digital signal, all of which is during continuous data acquisition.
    I am able to actuate the switch only when pressing the "run" button in the DAQ assistant window. I am proficient with data acquisition but have never tried programming an output... Please help!
    Thanks!
    -a troubled researcher
    P.S. I am running LabVIEW 8.5 as well.

    blsmith4,
    You probably won't get the control of the digital port on your card by only using the DAQ Assistant. One of the following examples should provide you the functionality that you would like out of the box:
    Digital - SW - Timed Output (Simple)
    Digital - Continuous Output (More Complex)
    Continuous Write Digital Port - External Clock - Non Regeneration (Most Complex)
    Let me know if these work better for you.
    Best,
    Jason M.
    Applications Engineer
    National Instruments

  • How does iTunes volume control affect digital output?

    I'm using iTunes on a Mini with an external USB DAC. The volume control and equalizer inside iTunes affects the volume so it must be processing the digital data in some fashion.
    It doesn't appear you can disable the volume control so how do I know what, if any volume setting outputs a digital stream that has not been processed by iTunes?
    intel mini   Mac OS X (10.4.7)   external Scott Nixon usb dac

    I have a scott nixon and I have the same quesstion. Does the volume control slider on itune work in digital domain? if so, does it work by increasing/reducing the bit rate?

  • HOW TO USE HOST COMPUTER VI TO CONTROL COMPACTRIO DIGITAL OUTPUTS

    Hi,
    I am designing a closed loop control system using Labview FPGA  and  CompactRio real time target.  I am using FPGA for the control system coding. I want to use the host computer to monitor some signal levels and send out a signal using NI9401 module to control external amplifier. The host computer does not have memory capacity to hold labview software. Can I use executable on this host computer so I can have this front panel to monitor the control system? Could you tell me how to monitor signal levels going in and coming out from FPGA (is there sample vi I can look to get an idea? I am using Ethernet cable to connect compactrio to host computer ) Thanks!

    Hi suni,
    if you work with LabVIEW 8.6, then you can use the scan engine to get the values from your fpga to the real time target. If you do so, then you only need to work with shared variables. To see all your values on your host pc, you can create an executable which can read and write values over tcp/ip. There are a lot of examples about it, use the example finder please. To use the scan engine is only one way, you can write all the communication by yourself. For the communication between real time and host, i would use tcp/ip instead of shared variables.
    Mike

  • FPGA digital output time

    Does anybody knows the typical time that a FPGA card, like PXI 7831, take to generate a TTL signal on one of its digital lines?
    To be much clear, imagine you read a digital line on your PXI 7831 as fast as possible (40 MHz...?) and then generate a TTL high signal when you see a rising edge on digital input...What you be the delay between the two signals?

    The delay between reading an edge on the input line and updating an ouput line will depend on the exact requirements of your application and the implementation of the code based on that. There are two main ways to implement this type of application.
    You can continuously read the input line and then in your LabVIEW code check for a change of state and if one is detected, update the output line. The delay between reading the input and updating the output will be 2 or 3 clock cycles of the FPGA (50-75 ns at 40 MHz). However since this code would be running in a loop, the loop overhead is added to the possible delay as the change on the input line may occur at any time. So the maximum delay may be around 6 to 8 clock cycles.
    The second method to implement t
    his code is to use the Wait for Edge function in LabVIEW FPGA. This function will wait for an edge on a digital input line and continue when an edge is detected. The delay will be 2 to 3 clock cycles, however the application will not be cycling through the loop if no edge is detected.
    Depending on the complexities of your diagram you may be able to compile your code for an 80 MHz FPGA clock rate in which case the delays would be cut in half.
    Christian L
    NI Consulting Services
    Christian Loew, CLA
    Principal Systems Engineer, National Instruments
    Please tip your answer providers with kudos.
    Any attached Code is provided As Is. It has not been tested or validated as a product, for use in a deployed application or system,
    or for use in hazardous environments. You assume all risks for use of the Code and use of the Code is subject
    to the Sample Code License Terms which can be found at: http://ni.com/samplecodelicense

  • How to Output Nodes from XML web service to a FLV?

    Hi
    I've used AS3 to query a web service and obtain the resulting XML.  I need to parse the result down to just a few nodes for a given location.  I can tackle that separately.  I am wondering how I output the parsed XML to a flash video file (.flx)?  The video has place holders for the XML node values.  What do I need to do to place the XML results in the video?
    Thanks,
    Sid

    Andrei1 wrote:
    What is a content of XML nodes? I am not sure what you mean by "inserting nodes". Do you mean that you want to display some information over the video?
    And yes, encoders do take XMLs to inject metadata into video. But this is metadata only.
    OSML = Open Source Media Framework:
    http://www.opensourcemediaframework.com/
    By inserting nodes, I mean that the XML web service returns data for each city, which needs to be parsed to just high temp, low temp and current condition.  Those 3 values needed to be dispalyed over, or woven into, the video at each city location.  My thought was that AS3 could somehow recognize the 3 placeholders for each city and insert the high temp, low temp and condition icon into each placeholder.  However, when I import the FLV file into Flash, there are no elements into which I can infuse this data.

  • Using an FPGA Read Wirte Node from inside a OO Class

    I'm trying to develop an object orientated program for a RIO.
    In the broadest of terms I'm just try to use one of my VI's to change the status of a control on the FPGA. Even with putting the FPGA reference in to the encoder typedef I'm unable to select the control as the VI doesn't know which FPGA it's referenceing.
    Is there a way to do something like this?

    I've just done as suggested here: http://forums.ni.com/t5/LabVIEW/Typedef-FPGA-VI-Reference-Does-Not-Retain-Interface-Definition/td-p/...
    And that appears to be working.

  • Easy driver stepper control via digital outputs

    Hi, I have a couple little motors that I'm driving with a Sparkfun easy driver board. The board just takes in pulses, and for each pulse it gets it steps the motor one step. Another digital pin sets the direction. I have attached the VI.
    I have the digital PFI1 on my DAQ connected to the "pulse" terminal on the board, and it steps when you send pulses to the board. However, the DAQ seems to be operating in burst mode. If I set the frequency to 10 Hz, for instance, with a finite number of steps (say, 1000), the motor steps in little bursts rather than continuously moving. I scoped the output of the DAQ, and it does appear to be turning the square wave on and off.
    The pulse chain is initiated by:
    1. CO Pulse Freq, set to 0.5 duty cycle and the specified frequency using ctr1
    2. Implicit timing with finite samples, # of pulses is the number of user provided steps
    3. DAQmx Start Task
    I enter a loop to monitor the progress, which just checks DAQmx Is Task Done every so often and updates a counter.
    What is a better way to do this? Why is the counter operating in burst mode?
    Thanks
    Attachments:
    Stepper2.vi ‏51 KB

    Hm. It appears that Sparkfun has a number of defective units that behave this way. I think my code is actually fine.

  • Microseconds delay to control digital outputs in WSN-3202

    Hi,
    I’m using the LabVIEW WSN Module to control the digital outputs of the WSN-3202 node. Is there a way to add a microseconds delay in my flat sequence structure? Because I’m using a pulse driven optical sensor which requires delays intervals in microseconds.
    Thanks,
    Ahmed

    Hi Ahmed,
    The availability of a microsecond resolution for timing depends on the onboard clocks or setup that the system allows. These nodes are often used to control/acquire in a non-continuous way to save battery. Therefore, they are required to wake/sleep in cycles that take a couple of minutes generally. What are you exactly trying to do with the node?

  • Using mathscript to generate multiple digital outputs for switch control

    Hello 
    I am new to this NI LV and a have kind of a basic question. I would like to use Mathscript to generate an array of bolean numbers which will be used to control the Digital I/O lines. I am using NI 6251 USB device and the Mathscript code runs well. But I have a problem using this array to control the Digital output. So I created a simple test programme where I set the DAQ assitant to generate 4 digital outputs(P0.0 ~ P0.3) and it gives error that  ".. number of channels in the data does not match the number of channels in the task..." (see attachment) . How can I solve this problem thank you.
    Attachments:
    K-9.jpg ‏36 KB

    looks like you did not initialize all 4 of the elements in the bool array....

  • Controllin​g digital outputs with timing

    Hello,
    I am having trouble controlling my digital outputs based on using a timer to control them. My problem with this code is that when running case #2 the output comes on both the indicator and the h/w channel as expected but when the timer elaspes the indicator goes off the the digital output channel stays on. Maybe there is a better way or more common practise of controlling logic based on using timers? Any suggestions would be appreciated.
    Regards,
    John
    Attachments:
    Sign & Pool_Aug_26_.vi ‏66 KB

    Here is an example of what I think you are trying to do. Ask any questions you need to ask and I will explain what I did. There are better ways to do some of the things but I wanted to show you an example of what I thank you are trying to accomplish.
    Tim
    Johnson Controls
    Holland Michigan
    Attachments:
    Example.zip ‏54 KB

  • Digital output daq

    Hi,
    This should be very easy, but for some reason I'm having issues. All I want to do is have a switch control a digital output. I am using an NI 9742 Dsub (link) card, which should be capable of digital output. 
    Attached is my code, with a simulated card. When testing I switch the DAQ assistant properties to the real card.
    Using this code, I cannot get a DC output at all, my scope just hovers around 100mV. Using other cards, I have the Analog I/O working just fine, but for some reason the digital output on this card isn't? Also, if you look at the card, there are 8 green LEDs towards the top. I believe each one specifies when an output is on. When I turn the switch on, the corresponding light does in fact light up, but I cannot measure a voltage? Is there some setting I'm missing?
    Hopefully this makes sense. Thanks!
    -secondary question: Once this works, how do I change the output range. The specs say 6V-30V output, but I do not see where to change this. 
    Solved!
    Go to Solution.
    Attachments:
    digital output help.vi ‏42 KB

    If you dig into the Operating Instructions, you'll notice that you have to supply an external power supply.  The way this card works to by connecting the external supply to the output.  You should also see this on the side of the module.  NI's site doesn't have a good sideways shot, but it looks like a switch.
    So basically, with no power supply you will get no voltage out.  The output range is also adjusted by adjusting the external supply.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • My daq 6008 wil not drop the 5V after the VI is stopped, i have a digital signal going from the error out on the daq in the while loop to the error in on the daq outside the while loop and a boolean going to the data of the daq outside

    my daq 6008 wil not drop the 5V on a digital output after the VI is stopped, i have a digital signal going from the error out on the daq in the while loop to the error in on the daq outside the while loop and a boolean going to the data of the daq outside, but i can t seemto get it to work

    i attached the block diagram so you can have a look
    Attachments:
    PID Temp control.docx ‏120 KB

  • Write digital output on wireless node

    hello
    i have wsn kit with 9791 gateway, i need to program node 3202 to write a digital output, i want to know how can i do this in labview ?
    do i have to write program ? what library in labview should i chose ? is it using FPGA module in labview ? i really spent alot of time searching for this answer and i am new in labview program
    thank you 

    Hi,
    In order to use the WSN-3202 with Gateway-9791, you have to install LabVIEW and NI-WSN driver.
    You can find the software version support for your WSN at http://zone.ni.com/devzone/cda/tut/p/id/12734#toc0.
    After you have install the software, you can configure your WSN using Measurement and Automation Explorer (MAX) and add WSN node to the gateway, it might not looks exactly the same in the picture below because I am not using 9791 as the gateway.
    Next, you can open an empty project or your existing object and add your gateway into your project.
    After you add the gateway and your node into the project, you can access the DIO at WSN-3202 through the share variable node. You can just drag the DIO from the project explorer into your vi.
    Best Regards,
    KH
    Application Engineer

Maybe you are looking for