Impulse on periodic signal from DAQ

I'm using a myDAQ to measure a perioidic voltage signal, and I want to find the maximum and minimum of this signal. When acquiring the signal though, there seems to be a large impulse in the start of the acquisition data shown in one of the attachements. The capture is from a probe from before any filtering is applied to the signal. I'm not sure if this is an effect of the signal acquisition or something I am doing with the signal filtering, and I am new to signal processing in Labview in general.
In the picture, I acquire 2 signals at 1, split the signal at 2 (top signal is of interest), filter at 3, scale at 4, and display at 5.
Can anyone point me in the right direction of what could be going on in my code?
Attachments:
Capture2.PNG ‏34 KB
signal.PNG ‏9 KB

You might want to test the signals that you acquiring in MAX. It seems like the signal is going from 0 to -4.5 V in a short time. You are using the DAQ Assistant, which could be the source of the odd signal. I would recommend running some of the DAQmx examples. These examples can be accessed by going to Help in LabVIEW –> Find Examples -> Hardware Input and Output -> DAQmx -> Analog Input.
Using Test Panels in Measurement & Automation Explorer for Devices Supported by NI-DAQmx
http://www.ni.com/tutorial/4638/en/
Thanks,
Frank
Application Engineer
National Instruments

Similar Messages

  • Measure Frequency of Digital Signal from DAQ-Board

    I'm using a National Instruments DAQ board and I need to measure the
    frequency of a digital signal from my data acquisition board.
    I know the measure frequency.vi (In diagram - data acquisition -
    counter), but i don´t understand yours implementation mainly in input
    "counter". Because i don't understand the relationship of board channel (for
    signal acquiring ) and the measure frequency.vi.
    Thanks in advance,
    [email protected]

    Hi,
       Attached is a vi which models your signal, and provides a way to measure the average frequency over a window of time. It converts the signal to a sequence of periods. I usually start with this approach because you can save the data in a much more compact form if your sampling rate is high. Obviously over a specified period of time, if there are no zero crossings the frequency is zero, so I was a little incoherent before. The real issue is the latency caused by averaging. Your frequency measurement is most accurate half your window size before the current time, so smaller windows give you more up to date measurements, but also more noisy. If you need the most up to date measurement, then you have to use the time since the last crossing which is the case where the frequency never goes to zero. That's probably not a realistic situation. If you needed less latency, you could use a prediction algorithm.
    Also, there are a number of signal measuring and processing vi's that LV gives you, for instance pulse measurements that could be used to partially implement this or other approaches, but I normally steer clear of them unless they fit exactly due to having to convert back and forth to the waveform data type.
    Have fun!
    Attachments:
    DigRandFreq.png ‏62 KB
    DigitalRandomFreq.vi ‏34 KB

  • Splitting one signal from DAQ

    Hi I m just working on my project and part of this is also build interface in Labview to use DAQ device 6008.
    DAQ device serves to acquire Voltages from thermistors and my interface should split this signal for example like this:
    =if(and(x>=8,D65<=8.54),-33.1*LN(D65)+46.12,if(and(x<8,x>=7.12),-40.1*LN(D65)+34.11,if(and(x<7.12,x>=6.15),-51.2*LN(D65)-0.28,"Out of Range")))
    but this is just excel equation that works. I tried to do something similar in quation node because that would be the simpliest way for me, signal that enters the node is x and leave as y and goes to the waveform chart, but it didn`t work.
    Then I built this interface thanks to the greater, lower icons and it was working fine till I was using number indicators icons as my input, but when i replaced them with DAQ device there was lot of issues with data types I was using and even after I fixed them there was all of sudden other problem with my equation node (because I needed to write condition somehow I used node) DAQ didn`t like it.
    Any help please. I m new in this world then if someone will know what to do, please try it in simple world.
    thank you in advance

    Hi and thank you for your answer.
    First file is the interface I created without DAQassist because I was told it will be the same when the numeric controllers will be replaced with DAQ assist, and this interface works.
    The next file is with DAQassist and there is many errors regarding the wires types and even when I add "convert from dynamic data" after signal is split then I get next error, and even when I ad "index array" that is recomended for this error when I run simulation I m getting next error regarding my functional node.
    If you can help I would really appreciate it.
    I have to find my very first file which include only functional node and I will forward it to you.
    Best regards
    Tino
    Attachments:
    Tino_equation_node.vi ‏124 KB
    Tino_equation_node_DAQ.vi ‏176 KB

  • How can i creat a DTMF signals, from DAQ ,I'm need vis

    I have DAQ E6025
    i need to creat from AO output a DTMF signals.

    Greetings,
    Below, I have attached a LabVIEW example that encodes and decodes DTMF signals.
    Good luck with your application.
    Spencer S.
    Attachments:
    Simple_DTMF_encoder_and_decoder.vi ‏233 KB

  • Can't Split Signals from DAQ Assistant

    I am reading three RTDs from a NI 9217 by using the DAQ assistant. I have tried to split the signals with the "Split Signals."  However, when I expand the icon to three outputs, it only gives me 1 output node to connect to instead of three.  How do I correct this?
    Attachments:
    RTD inputs.vi ‏87 KB

    I see what you mean.  In LV 8.5.1.  See attachment.  Only the top connector shows a connection.  The 2nd and 3rd don't.  You can't wire from them to another icon such as another waveform graph.  But you can wire from another icon TO the connector and it connects up.
    It looks fine in LV 8.6.
    Is this a LV 8.5.1 bug?
    Message Edited by Ravens Fan on 09-03-2008 04:28 PM
    Attachments:
    SplitSignals.PNG ‏3 KB

  • Noise from DAQ signals sent through a 2532 switch

    Hello,
    I may have a hopeless case here, but it's worth a shot....
    I am trying to send DAQ analog voltage time traces through a 2532b switch, and then to my DUT. When I measure the DUT without the switch, my noise level is very low. When I route signals through the switch to the DUT, the noise is increased (as expected) but to a degree that makes this system totally useless for my application. Is the 2532 not designed to route analog signals? Can I hope to send analog signals through my switch with say a doubling in noise instead of a 15x increase in noise?
    I have posted a schematic of how my system is configured. Note that wherever possible, I am using BNCs. I even threaded the 2532 ribbon cables through a 1/2 in. tinned copper braid, so the system is about as well shielded as is possible with this hardware. I've also posted signal sent to the DUT (in this case a dummy 1Mohm resistor) using a 1Mhz sampling rate.
    Thanks, everyone!
    Attachments:
    setup.png ‏23 KB
    no switch.PNG ‏72 KB
    with switch (2).PNG ‏75 KB

    Hi Frank,
    Sorry I should have included more information. The DAQ is outputting a voltage signal, for example a 1Hz 1V sin wave. This signal serves as the external voltage source for a potentiostat, such that the potentiostat sources the signal it receives from the DAQ. The potentistat has hi and low leads (working electrode and counter electrode) which are routed through the switch before going to the DUT. The potentiostat then measures the actual applied voltage and the measured current and outputs them as voltage signals which are fed directly into the DAQ.
    The breakout boxes are all shielded and so are the cables. The DUT is in a faraday cage.
    As far as noise sources, the building ground is not terrific but it is pretty good. 60hz noise is present, but the fft spectrum of the noisy signal also contains prominent signals at 80kHz and higher. The potentiostat is designed for high bandwidth, low current applicaitons and so has very favorable noise. The PXIe is the only computer on in the room, and all electronics are plugged into a isolated power supply (it think it is generically called a UPS). I've turned off all other equipment in the room including the lights.
    Anyways, the noise only shows up when I route the signal from the potentiostat through the switch. When I send the signal from the potentiostat directly to the DUT, the noise is great (see attachments in previous posts). I would blame the extra noise on a ground loop except that as I have set it up, routing the signal through the switch does not introduce any extra paths to ground.
    Thanks for taking a look at this!
    -Gim

  • Read/acquire signal from remaining empty channels of NI9205 by modifying the vi of ATI Force/Torque Transducer which uses the first 6 channelsof DAQ card.

    Hello,
    I am using force/torque transducer by ATI Automation. It provides me with its own vi to measure and write the data of the 6 signals (3 axes Forces, 3 axes torques)
    Following is my Ni system: -
    cDAQ 9172 chassis: Slot 5 - NI 9401, Slot 6 - NI 9205, Slot 8 - NI 9237. (Excitation voltage to the sensor/transducer (0-5V) using 9237).
    I connect the 6 signals from the transducer cable to channels ai0,1,2,3,4,5 in NI 9205(differential). The vi uses a calibration 6*6 matrix to finally display the calibrated voltage data.
    Now, I wish to use the remaining availabe channels that empty in 9205, namely ai17, ai18, ai19 for other signal measurements.
    ai17 channel is connected to Hall sensor  that gives out a square waveform corresponding to the rotor rpm. ai18, ai19 is connected to rotor-motor power supply's voltage and current signal respectively.
    But I am not able to access these 17, 18,19 channels from ATI company's vi. The vi loads the complete DAQ card (9205), uses only first 6 channels, hence the array data wire consists of only 6 channels. I can split these into 6 individual signals only.
    If I use a separate DAQ task to read channels ai17,18,19, then I get the error that this channels are reserved for some other task. Please tell me how can I access all the remaining channels apart from the first 6.
    I am attaching the vi here.
    Steps to run the "MEASUREMENT main.vi" : -
    Load calibration file:-  FT8840.cal;
    Load DAQ card: NI 9205
    Load ctr0 of NI 9401 (I am using this counter for rpm measurement purpose, this is my addition to the actual vi) 
    Attachments:
    DAQ - Copy.zip ‏574 KB

    There's nothing I can do to help.  I don't have your hardware to be able to modify your code and to set it up to make sure it runs properly.  Most people on the forum probably don't either.  This is where you'll have to put your programming and LabVIEW skills to work to solve your problem and make it run the way you want to.  If you run into a specific problem and get stuck, then please post back.

  • How to read and display a signal from my a miccrontroller (MCB1700) onto labview connected via a CAN port on a PXI machine

    How do you read and display a signal from my a miccrontroller (MCB1700) onto labview connected via a CAN port on a PXI machine?
    I tried using a DAQ Assistant but the CAN port is not included as one of the supported physical channels even though all its drivers are upto date.
    Please help..
    Thanks.
    Solved!
    Go to Solution.

    Attached herewith is a print screen of what is showing on MAX
    The CAN ports are on NI PXI-8461
    Hopefully that clarrifies something.
    Attachments:
    Untitled.png ‏212 KB
    Untitled.png ‏212 KB

  • How can I tell if signals from two devices are truly synchronised?

    Hi there,
    How does one check that signals from two devices (two separate devices in a single X-series chassis) that should be synchronised actually are?   I am using a PXIe6361 and PXIe4331 on a PXIe-1073, with Labview 2001 SP1 64-bit. All devices are using the Sample Clock from the 4331 device, and an AI Start Trigger, so they should be synchronised.
    I thought that writing the signal data to file and checking the time stamp for each column of data would be the most accurate, but I have been told that timestamps are software created and therefore don't reflect the actual time that the signals were acquired by the hardware.  When I do this, the timestamps vary by up to 150ms which is larger than I expected.
    If I set the x-axis of the waveform graphs (on the GUI) to "Time" then it appears that the first data sample is taken at different times for the two plots (one plot per device).
    If I set the x-axis of the waveform graphs (on the GUI) to "Ignore time stamp" (so that the x-axis just starts from 0 rather than a date-time) then the first data point occurs at "0" for both graphs. However, I'm not sure that this reflects the actual alignment of the signal.
    What is the best way to check if signals collected on different devices in the same chassis are actually synchronised?
    Thanks,
    Claire.

    Hi Lynn,
    Thanks for your help and for sending the demo.
    I understand the concept of how the signals will look if they're not synchronised and your demo shows that nicely. I guess I have been perplexed by someone else telling me that the timestamps in the output file (and following from that I assume timestamps on a waveform graph) do not give an indication of whether signals are synchronised. The reason they gave for this was that the timestamps are manufactured by the software, not the DAQ hardware.  They suggested that I put the setting "ignore waveform timestamps" on my waveform graphs, and then check that both signals come in at the same time (i.e. both start at zero), but I'm not convinced about this. 
    When I use an analog trigger, neither the timestamps in my output file or on the two waveform graphs are synchronised. If I don't use the trigger, then there is far less disparity in the timestamps in the output file. I've attached two output files here, and my VI.
    This is my first attempt to synchronise a voltage module and a strain gauge module on an X-series chassis, so I want to make sure that I'm achieving the best synchronisation that I can, and the difference in behaviour with and without the trigger worries me.
    Thanks,
    Claire.
    Attachments:
    without trigger.txt ‏5 KB
    with trigger.txt ‏6 KB
    Multi-Device Synch-Analog Input-Finite Acq-Analog Start_Claire_wDigitalin_12June2012 PTbridge.vi ‏196 KB

  • How to get signal from analog input and send it to analog output (real-time​)

    Hi everyone,
    I am doing simple task in Visual C++ and I am using PCI-6221(37 pin).
    Basically, I want to send same signal from 'analog input' to 'analog output'
    at the same time (almost), to make it real-time application.
    Can someone please provide me sample program. 
    I would appreciate if you could provide me with the good tutorial which explains
    step by step everything about programing NI-DAQmx for C/C++.
    Best Regards,
    Khassan
    Solved!
    Go to Solution.

    This is my code in C++, you can optimize it if it looks too messy. This code reads signal from analog input and outputs it through analog output. 
    To make this code work additional  include directories and library directories must be added from NI.
    I hope it helps someone.
    #include <stdio.h>
    #include <conio.h>
    #include "NIDAQmx.h"
    #include <math.h>
    #define DAQmxErrChk(functionCall) { if( DAQmxFailed(error=(functionCall)) ) { goto Error; } }
    int main(int argc, char *argv[])
    int32 error=0;
    TaskHandle taskHandleRead=0,taskHandleWrite=0;
    int32 read=0;
    float64 dataRead[1000];
    char errBuffRead[2048]={'\0'};
    char errBuffWrite[2048]={'\0'};
    bool32 done=0;
    int32 written;
    DAQmxErrChk (DAQmxCreateTask("",&taskHandleRead));
    DAQmxErrChk (DAQmxCreateAIVoltageChan(taskHandleRead,"Dev1/ai0​","",DAQmx_Val_Cfg_Default,-10.0,10.0,DAQmx_Val_Vo​lts,NULL));
    DAQmxErrChk (DAQmxCfgSampClkTiming(taskHandleRead,"",100.0,DAQ​mx_Val_Rising,DAQmx_Val_ContSamps,0));
    DAQmxErrChk (DAQmxCreateTask("",&taskHandleWrite));
    DAQmxErrChk (DAQmxCreateAOVoltageChan(taskHandleWrite,"Dev1/ao​0","",-10.0,10.0,DAQmx_Val_Volts,NULL));
    DAQmxErrChk (DAQmxCfgSampClkTiming(taskHandleWrite,"ai/SampleC​lock",100.0,DAQmx_Val_Rising,DAQmx_Val_ContSamps,1​000));
    DAQmxErrChk (DAQmxStartTask(taskHandleRead));
    DAQmxErrChk (DAQmxStartTask(taskHandleWrite));
    while( !done && !_kbhit() )
    DAQmxErrChk (DAQmxReadAnalogF64(taskHandleRead,1,10,DAQmx_Val_​GroupByScanNumber,dataRead,1000,&read,NULL));
    DAQmxErrChk (DAQmxWriteAnalogF64(taskHandleWrite,read,0,10.0,D​AQmx_Val_GroupByChannel,dataRead,&written,NULL));
    _getch();
    Error:
    if( DAQmxFailed(error) )
    DAQmxGetExtendedErrorInfo(errBuffRead,2048);
    DAQmxGetExtendedErrorInfo(errBuffWrite,2048);
    if( taskHandleRead!=0 )
    DAQmxStopTask(taskHandleRead);
    DAQmxClearTask(taskHandleRead);
    if( taskHandleWrite!=0 )
    DAQmxStopTask(taskHandleWrite);
    DAQmxClearTask(taskHandleWrite);
    if( DAQmxFailed(error) ){
    printf("DAQmx Error: %s\n",errBuffRead);
    printf("DAQmx Error: %s\n",errBuffWrite);
    printf("End of program, press Enter key to quit\n");
    getchar();
    return 0;

  • Generating signal from the 5412 which is in sync with the external signal

    Hi,
    I am using the 5412 AWG. An external signal comes from the test unit. I need to generate a signal to the test unit which should be in synchronous with external signal which comes from the test unit. Can anyone help in this?
    Regards,
    Rajashekar

    Hi Rajashekar,
    You could synchronize these two signals by sharing a start trigger and using the input signal from your test unit as the sample clock for the 5412.  There are some considerations when doing this that can be seen in the External Sample Clock Considerations section of the 5412 help linked below:
    External Sample Clock Sources
    If you are using LabVIEW, you can find examples in the Example Finder located at Help >> Find Examples.  The FGEN examples are located at Hardware Input and Output >> Modular Instruments >> NI-FGEN >> Arbitrary Waveform Generation.  You can choose which line to use as the sample clock.  You will also need to add in some triggering.  You can find an example of triggering at  Hardware Input and Output >> Modular Instruments >> NI-FGEN >> Synchronization >>FGEN DAQmx Synchronization.vi.  This is synchronizing to a DAQ card, but you can synchronize to your external signal just the same way, i.e., sharing a start trigger and a reference clock.
    Regards,
    Jim Schwartz

  • Noisy Analogue Signals From SCB-68

    Hi,
    I have a set up as shown below. 
    Futek Load Cells >> SCC-SG04>> SC-2345 >>SH68-68EP Cable >> SCB-68 >> Analogue input of PCI 7350 8 axis motion controller.
    This set up has resulted in a noisy analogue signal from 7350 with high amplitude spike. 
    I had tried to check the signal from load cell by connecting load cells >> SCC-SG04 >> SC-2345 >> M-Series DAQ card, the reading was fairly smooth with no spikes. Therefore, i suspect the noise was picked up in the connections for SCB-68.
    Is this set-up correct to connect the load cell signals to PCI-7350? If so, how can I reduce the noise picked up from the connections?
    Thanks for helping. 

    Hi,
    I have a set up as shown below. 
    Futek Load Cells >> SCC-SG04>> SC-2345 >>SH68-68EP Cable >> SCB-68 >> Analogue input of PCI 7350 8 axis motion controller.
    This set up has resulted in a noisy analogue signal from 7350 with high amplitude spike. 
    I had tried to check the signal from load cell by connecting load cells >> SCC-SG04 >> SC-2345 >> M-Series DAQ card, the reading was fairly smooth with no spikes. Therefore, i suspect the noise was picked up in the connections for SCB-68.
    Is this set-up correct to connect the load cell signals to PCI-7350? If so, how can I reduce the noise picked up from the connections?
    Thanks for helping. 

  • Bad data from daq

    I am taking data off of a radar gun. The gun is connected to one channel of a 16 channel circuit board which sends the data through an ide cable to a DAQ notebook card. This exact setup worked at one time on an older computer. Now the signal from the gun is too weak to read. I have watched the data real-time using the test panel in the Measurement & Automation Explorer. In doing so, I noticed one aditional concern. The data peaked whenever I lifted my feet off the ground. This peak was even more dramatic if I had one hand touching the radar gun.
    Thanks for the help.
    Albert

    Albert,
    It sounds like you may have a grounding issue. Is your board configured for reference single-ended (RSE) or non-reference single-ended (NRSE)? When you say "too weak", does this mean you aren't reading anything? What voltage are you expecting to read. Is the laptop plugged in when you are acquiring data? That is, does it have its own ground reference? You may want to analyze your setup as far as determining your various ground references. I would also suggest reading the following tutorial that discusses many factors that need to be taken into account when wiring signals in the field.
    Tutorial

  • New monitor can not detect signal from new referb pc

     Monitor is a new flat screen,  model 2310m full HD with  vga, hdmi, and dvi-d connectors and boot up CD which includes pdf manual and video drivers etc..
             PC is a referb Pavilion M9200t first time started since referb with a G-Force GT graphics card (1 gigabite) and dual DVI-D connections. No VGA or HDMI out. OS is vista ultimate that I will probably update to windows 7 if I ever get it set up. Monitor does not get a signal from new PC with DVI-D cable or a VGA cable with an adapter. Monitor works fine with my old XP PC after installing drivers  and using the vga cable. New PC has no VGA out, so I bought a VGA to DVI-D adapter thinking that it would have proper drivers for a VGA monitor with no success. I also tried new PC on my old monitor with the DVI-D adapter on the VGA cable and that didn't work either. I can't do a first run setup without a monitor and the monitor won't work without a signal.
            I bought the PC from a friend who decieded to buy a laptop instead and had never started it. He bought it from someone who was selling referbs on E-bay and messed up and accidently started the warranty period  or so they say. 
            Also when I plug the PC in the fan starts and continues running till I do a hard shutdown, that is holding start button down till the PC shuts off. If I unplug and replug the computer it starts again without pushing start button. Does anyone think it is the graphics card issue or maybe power supply, or just not booting at all?  Any ideas would be greatly appreciated.------Thanks in advance.----Larry

                Ok, thats the procedure I was talking about earlier. I did that bios default factory reset just now. First the version 6 and earlier. It didn't work so I tried version 7 and later and that didn't work. I then tried version 6 and earlier again only this time pushed F10 more rapidly and got right in right when I got to the F5 and enter portion. Then I pushed F10 again to save the change and enter again to close. The PC didn't boot up the next screen like the test said it would. So I did it all again and spent some time reading what was on the bios pages but  accidently pushed ESC as the bios menu suggested instead of enter to close out   . No boot up screen again. I did another hard shutdown and then unplugged the cord for 5 minutes and this time the PC stayed off when I plugged it back in. The bios are set to default but I cannot get it to start again in safe mode or boot up. So if the power supply is working properly, and the monitor worked in safe mode, then the video card must be good. right?
              So I'm editing from the night before, its Monday morning here in Wi. and I'm sorry to say that after leaving the PC unplugged all night that when I plugged it back in this morning, the dumb thing started again without pushing the  start button.  So the only thing doing a recovery on the bios accomplished was to prove that my the video card can run the monitor in safe mode which is a good thing I guess. Hope someone has an idea as to what else I can try.-------thanks

  • How do create an analog signal from a text or binary file?

    I'm trying to output an analog signal from a file on an NI-DAQ 6251 card using labview 8.5. I've found the examples on building a waveform, but I'm stuck at how to read a text file and make a 1-D array to input my amplitudes into the buildwaveform.vi and I can't find any information on how to do so. Any help or direction is greatly appreciated.
    thanks,
    David
    Solved!
    Go to Solution.

    If all that you want in the file is the Y values, then a text file with a value on each line could be read. The Read From Spreadsheet File can be used. It will return a 2D that you can then use the index array function to get a column or if you select Transpose, the returned 1D array would be used.
    If you want to create an example, use a 1D array constant in a VI and pass it to the Write to Spreadsheet File.

Maybe you are looking for

  • Agent Assignment Doesn't work For Some Users

    Hi all, In OOCU_RESP there are four agents in a responsibility. But only one (say A) of the four gets tasks in Inbox. The other three (say B, C, D) get nothing. I removed A from the responsibility and B, C, D still get nothing. In SWIA the log shows

  • ITunes freezing when trying to sync iPod...

    This problem just recently started, but I can't fix and need help! Whenever I try and sync my iPod it syncs maybe a few songs and then freezes, then if try and force quit iTunes or eject my iPod my entire computer freezes and I have to force restart

  • EJBTransactionRolledbackException occurs when load EJB from HTTP session

    A stateful session bean that contains user information is stored to HTTP session once a user is successfully logged in. Subsequent requests has to go through a security filter where in the filter it validates if the session contains this stateful ses

  • How to partition one column of the resultset into two columns

    Step 1 Row_Num | Col1 | Col2 1 52 100 1 52 101 1 52 102 1 52 103 2 52 200 2 52 201 2 52 202 2 52 203 2 52 204 2 52 205 Step 2 Row_Num, Decode(Row_Num,1,Col1,Null) Col1_1, Decode(Row_Num,2,Col1,Null) Col1_2,Decode(Row_Num,1,Col2,Null) Col2_1, Decode(R

  • WiFi Connection does not see the internet

    I have this problem with my Inc2 and my home wifi.   I have a Linksys/Cisco E1000 router supplying my wireless and wired networking at home; it is a standard set up with a WPA Personal2 shared key authentication.    I set my Inc2 to connect with the