Export digital waveform+labview

Hi to everyone...I'm a newbie with labview, and I want some help for the beggining...Well I'm working on a project and for start I must use an arbitrary signal and an oscilloscope so as I can see the the graph of it(for simplicity I used a sinus in the beggining...)and then I must use an A/D converter and the digitalized output must be saved in a .txt file so that I can read it...So I wired the sinus with the A/D converter but then I cannot make the output of it compatible so that I can save it...I used the component "export waveforms to spreadsheet file.vi" but it says error diffent type of data you cannot wire a "Digital waveform" with the input of the file "1-D array of waveform(DBL)"????I used and some other components for saving in a file but it didn't go better...What did I do wrong???Please if anyone can help me...I would appreciated!!!
Solved!
Go to Solution.

Hi again...I want some help...Last time I sent you "my_main.vi" file and told you that had a problem about making time to be correct in the .txt file...I haven't solved it yet, although I tried a lot to find how I can change this the txt. Anyway for now what concerns me most is that although the gragh(with the formula i use) i see in the front panel is correct when i take the data from the .txt file and paste it to a .xls file and making a graph it seems that there are pulses of the same amplitude before the visible signal i see in my front panel...I couldn't understand why this was happening but after a while i put the same formula in a grahp calculator that i have and saw that the previous pulses are not of the same amplitude, they just appear to be so because the amplitude that is set to the component isn't enough to show their whole amplitude...so they are been cut off and seem to be the same...So i tried to change the values at the x-axis but I didn't make it.The program holds some certain range(0-4) that I had initially set to it...At the bottom line I'm facing a problem to appear the rest of the graph in the component's output, and also to fix the phenomenically wrong pulses to my .txt file...Please I would appreciated if anyone can help me...Im sending you all files to have a picture of wht's going on...
Thank you for your time...
Michalis V.
Postgraduate Student
Department of Informatics and Telecommunications
National & Kapodistrian University of Athens  
Attachments:
my_main.vi ‏20 KB
results.txt ‏154 KB
samples.xls ‏428 KB

Similar Messages

  • Can labview digital waveform editor provide tri state option

    hi
    Could anybody who have used labview digital waveform editor
    would let me know whether, the package supports the
    tri state opertaion also.
    rags

    Currently the LabVIEW Digital Waveform Editor does not provide tri state functionality. 
    Minh Tran
    Applications Engineer
    National Instruments

  • Simultaneous analog and digital waveform read with PXIe-6361 and BNC2120 ?

    Hi there,
    I am trying to collect both analog and digital signals from a PXIe-6361 linked to a BNC2120, using the attached VI. I am running Labview 2011 64bit. This is the first time I am working with digital input. On the 2120 board, I have the digital input BNC cable connected to User Input 1 and wire between the screw terminal of UserInput 1 and the P0.1 (Digtial I/O) screw terminal.
    I have two questions related to this:
    1) When I try to run the VI in its current state, I get the following error:
    Error -89137 occurred at DAQmx Start Task.vi:3
    Possible reason(s): Specified route cannot be satisfied, because it requires resources that are currently in use by another route.
    Property: RefClk.Src
    Source Device: PXI1Slot2
    Source Terminal: PXIe_Clk100
    Required Resources in Use by
    Task Name: _unnamedTask<6>
    Source Device: PXI1Slot2
    Source Terminal: None
    Destination Device: PXI1Slot2
    Destination Terminal: RefClockInternal
    Can anyone point me in the right direction for troubleshooting this?
    2) I would like to combine my regular waveforms and the digital waveform into one array which would then be written to file. I can't figure out how to combine the two different waveform types...can anyone give me a hint on this?
    Thanks for your help,
    Claire.
    Attachments:
    Export Waveforms To Spreadsheet File (1D)_wo extra line.vi ‏33 KB
    Multi-Device Synch-Analog Input-Finite Acq-Analog Start_Claire_wDigitalin.vi ‏105 KB

    Hi ClaireJ,
    Sounds like a reference clock conflict. This KnowledgeBase (KB) talks about this error when using simultaneous sampling. Also, might want to check the device routes in Measurement and Automation Explorer (MAX) as discussed here. Finally, if you are routing your PFI line over a RTSI connection, this error can occur. This KB discusses it.
    As to your second question, this post should help.
    Bill E. | Applications Engineer | National Instruments

  • Digital waveform

    Aim of my VI: 1. PLC Digital Outputs are being switched from On and OFF through a relay. I have to read that signal and represent it in the digital waveform within a time period, using NI DAQ 6251.
    2. The data should be represented in real time showing the pulse with X-axis having the time scale.
    3. I have capture all the data and save in an excell file.
    4. With minimum resolution of 1 to 10ms.
    Please see my VI which I made and suggest.
    I have a question, in my VI I have directly plotted the data coming from the digital read. What is the X-axis there?
    Secondly I have used the time stamp to represent the actual time.
    Which graph is correctly satisfying the purpose? Sorry I generally get confused with timing in the loop.
    Attachments:
    Read-PLC-Dig Chan.vi ‏59 KB

    Hi KRAZE4LV,
    The following example demonstrates how to perform a continuous digital read that outputs the data to a graph:
    NI Community Example: Digital - Continuous Input - https://decibel.ni.com/content/docs/DOC-25130
    I would recommend starting with this.  The graph, however, will not scroll as you have described.  To get the behavior you want, you should replace the Digital Waveform Graph with a Waveform Chart.  Here is a guide about the types of charts and graphs available:
    Types of Graphs and Charts in LabVIEW - http://zone.ni.com/reference/en-XX/help/371361H-01/lvconcepts/types_of_graphs_and_charts/
    To get your digital data into this chart, you will need to use the following VI from your Waveform Palette to convert your data to a compatible type:
    Digital to Analog VI - http://zone.ni.com/reference/en-XX/help/371361H-01/lvwave/digital_to_analog_wf/
    You can adjust the chart's history (right-click»Chart History Length...) to configure how many samples are shown at a time.  With this setup, your x-axis will be your computer's timestamps.
    As for your file logging, the following VI performs the file i/o you are requesting:
    Export Waveforms to Spreadsheet File VI - http://zone.ni.com/reference/en-XX/help/371361H-01/lvwave/export_wave_to_spreadsheet/
    Regards,
    Chris E.
    Applications Engineer
    National Instruments
    http://www.ni.com/support

  • How to do a digital waveform subtractio​n

    i am trying to subtract two digital waveform using subtract operation, but it seems that the subtraction opertation doesn't like digital waveform.
    error message:"You have connected two terminals with different types. the type of the source is digital waveform, the type of the sink is double"
    anybody can help? please.

    Hello,
    See the attached modified example. Now you can access data in a 2D array .
    Software developer
    www.mcm-electronics.com
    PS: Don't forget to rate a good anwser ; )
    Currently using Labview 2011
    PORTUGAL
    Attachments:
    dither tech2.vi ‏57 KB

  • Convert digital waveform to array

    Hello,
    I posted a problem before Christmas regarding data acquisition and accessing the hardware buffer on a 6562 card. I managed to figure out that problem but now I'm stuck when I try manipulating the data I obtain. (The original problem can be seen here: http://forums.ni.com/ni/board/message?board.id=70&​thread.id=7926)
    Briefly, my application is clocking and synchronising an ADC board and then looking at the raw ADC data that comes back from the board. To provide synchronisation I am sending a sync pattern on one data line and using a second line to send a "start of frame" indicator, a '1' bit when I know that the board is synchronised. This line otherwise only sends ‘0’s. This cable is wired back into the NI card and LabView. All data sent uses the NI-SHDIO Generation Express VI and I'm using the Acquisition Express VI in parallel with the Generation VI to capture the raw ADC data when it comes off the ADC board. Since I am acquiring both the ADC data and the frame indication data (which I am looping by connecting that output DIO to an input DIO), the digital waveform essentially contains 2 arrays and I can view these from a graph indicator within LabView.
    No problems so far. In order to manipulate the data and look at individual frames I am writing the ADC data to file. To extract the digital data from the digital waveform I am using the following VIs:
    -Get Waveform Components
    -Get Digital Data Components
    -Write to Binary File
    To view and manipulate the data I read it into Matlab and this is where I can tell that something's not right. When I read the file into a variable in Matlab, the variable becomes a 1D double array of 40,008 elements. This seems very odd, considering the Acquisition VI only takes 20,000 samples. When I look at the 1D array more closely it looks like the two arrays have been cross added in some fashion. The 1D array certainly doesn't match either of the two arrays visible in the graph indicator inside LabView. I can understand if the file is reading one array after the other (20,000 + 20,000 almost equals 40,008 after all) but that doesn't appear to be the case.
    I would greatly appreciate some help on how I can extract the two data lines either using Matlab or LabView. Currently it looks like LabView is making a hash of things whenever I try to manipulate or extract the two arrays from the digital waveform. I have tried a multitude of different VIs and ideas but nothing appears to work.
    The most straight forward way would be using the "Converting Digital Waveform to Binary VI" but it can't handle two arrays within the same waveform. (The result looks like the two arrays exclusively OR’d together). To combat this I tried running two Acquisition Express VIs in parallel (one for ADC data, the other for the frame info) but got an error message referring to invalid handles. I presumed this meant that I can't run two acquisition VIs simultaneously, judging from forum posts of users facing the same error message.
    Sorry for the long post but I feel that I needed to fully explain the problem. I'm attaching my LabView code.
    Thank you for reading,
    Christian
    PS. GenAcq2.vi is my code. Waveform_GenAcq2_Cfg.hws is sent by the first Generation VI; Waveform_GenAcq2_shorter_frame_indicators.hws by the second Generation VI.
    Attachments:
    CodeAndWaveforms.zip ‏126 KB
    GenAcq_Screenshot.JPG ‏83 KB

    The extra "8" is being caused by the fact that the "Write to Binary File" VI has a "prepend array or string size" input. Its default is true, and in your case you have it unwired, so you get the array size prepended. As for the rest of your issue, what are your Matlab commands to read a file? The following example VI, which generates a digital waveform and saves it to file,
    can be correctly read into Matlab using the following commands:
    fid = fopen('c:\temp\digData.bin','r');
    F=fread(fid, [256,8], 'uchar');
    Message Edited by smercurio_fc on 01-18-2008 05:26 PM
    Attachments:
    Example_VI_BD.png ‏11 KB

  • How to send digital waveform to the DAC?

    How to send digital waveform, obtained by Function Generator.vi to the Digital-Analog Converter? What kind of subVIs I have to use for this? I have LabView_5.0 on MacOS.

    The 6032 is not a GPIB board. It is a DAQ board board and has 2 16-bit analog outputs, 8 16-bit outputs (16 single-ended), and 8 digital i/o lines. I don't know what you mean that a MIO16/LPM16 is connected to it. There are a lot of example VIs that ship with LabVIEW. Select Find Examples from the help menu and look under Hardware Input and Output. LabVIEW 7 has some under DAQmx>Analog Generation and older versions of LabVIEW have them under DAQ>Analog Output.

  • How do I sample a digital waveform?

    I have a digital waveform that represents a 1-bit data stream.  The bit rate is 1Mbit/s (i.e. For a value of '1' the line is high for 1us, for '0' the line is low for 1us). 
    I want to create a numeric array representation of the line by taking a sample of it every 1us and appending it into an array.
    How do I set it up in LabVIEW to sample the line at 1MHz and create a 1-D numeric array of the bits?

    Hi Raine,
    It sounds like you're trying to keep data from previous samples in memory through the next iteration of the sampling loop, then append the new sample to the array.
    Using shift registers is the most reasonable option. To create a shift register, wire your sample data to the edge of your sampling loop then right click and select Replace with Shift Register. You can then use a Build Array function to connect the shift register data with the current sampling data.
    Cheers.
    | Michael K | Project Manager | LabVIEW R&D | National Instruments |

  • Memory leak in Digital Waveform

    I have a program with a pretty serious memory leak that uses up all my system RAM and crashes my computer within a few hours of running the program.
    The program takes an array of U16s where each bit represents a digital signal. The VI converts each U16 to a digital array and groups the resulting 16 digital signals into different busses for display on a Digital Waveform Graph. The profiler doesn't show any excessive memory usage in the VI. I put the whole VI into a Diagram Disable structure and moved a few pieces out at a time, and eventually the only thing inside the disable structure was the Digital Waveform Graph indicator. When this indicator is enabled, the memory usage of my system rises slowly and steadily until it uses all available RAM and crashes the system.
    If I replace the Digital Waveform Graph indicator with a cluster, the memory leak still occurs (but much more slowly). I thought using the cluster fixed the leak until I reran the VI overnight while using the cluster instead of the Graph.
    If I stop the VI before all the RAM is used, the RAM will not release until I close LabVIEW entirely. Once LabVIEW closes, the memory is released slowly and exponentially unless I use the "End Process" option in Task Manager.
    This is a continuation of a previous post I made where I thought the memory leak was due to problems transferring data from an FPGA for display.
    I ran the MemLeak vi (attached) on two separate systems, both running LV 2013 SP1, and got the same results. The memory leak is noticeably fast when using the enable structure connected to the Digital Waveform Graph but still present when using the cluster of Digital Waveforms.
    Attachments:
    MemLeak.vi ‏33 KB
    LV shutdown.PNG ‏101 KB

    Thanks for the replies.
    In response to John's points:
    1. The attached VI is a simplification of an FPGA VI that read a fixed number of samples from a DMA FIFO using an FPGA Interface Invoke Method approach. I'm using a card (PXI-7842R) that doesn't allow use of the Acquire Read Region method. In order to allow people without an FPGA card to hopefully see the issue, I replaced it with the for loop. Assuming that this for loop does leak (which I don't believe it does; as altenbach said, it's a fixed size allocation that LV should be able to reuse), why would I see a difference in the leak magnitude depending on which indicator I connect to the array?
    2. I've previously reviewed the document you referenced, and I don't see any errors from it present in my code; do you? I have no global/local variables, strings/arrays displayed on front panel, property nodes, coercion dots, altered memory sizes, resizing/reallocations, etc. I don't see any weird buffer allocations. I used to have the conversion from U16 array to digital waveforms in a subVI but placed it on the same diagram to allow incremental use of the Diagram Disable structure.
    3. The forum post you referenced had many of the items discussed above, plus it was solved using an RT FIFO. I'm not passing data from a producer to a consumer; I'm just displaying acquisition results. I guess you could say I'm processing the data, but I'm really only converting it to a format that the indicator will take; I'm not operating on the data.
    It's good that the leak doesn't show up in 2014, but my SSP runs out in a couple of days; I never got an upgrade to 2014. This is the last item remaining on the development path, and we've already spent ~$4k to upgrade the controllers enough to display the acquisition without dragging down the CPU. I will be in hot water if I spent all that money and then end up having to scrap the display...

  • Generate digital waveform form a read from spreadsheet.vi

    Hi, I'm very new to LabView and am having some problems in completing what I believed would be a very simple task.
    I am using the Read from Spreadsheet.vi to read in an Ascii tab delimited file that I created in Matlab (the file is simple a vector of 1's and 0's that represent a binary stream) All that I want to do is take the output from this and generate a digital waveform corresponding to the 1's and 0's in the array but I cannot find a way of doing this.....
    Help much appreciated,
    Thanks.

    You should be able to just run your data straight  in to the digital write function as long as you select the correct port width of your hardware.
    If you want to do it with a digital waveform it's a bit trickier, the digital waveform data type is a surprisingly complex animal.
    There might be a better way to do it, but this is what I've had to do in the past...
    The "build digital data" function needs a 2D array in, so convert your 1D array into a 2D.
    Then the digital data can be input into a Build Digital Waveform.
    Then the digital waveform can be output with the write digital waveform.
    Message Edited by Troy K on 03-23-2008 11:37 AM
    Troy
    CLDEach snowflake in an avalanche pleads not guilty. - Stanislaw J. Lec
    I haven't failed, I've found 10,000 ways that don't work - Thomas Edison
    Beware of the man who won't be bothered with details. - William Feather
    The greatest of faults is to be conscious of none. - Thomas Carlyle
    Attachments:
    array_to_digital1.png ‏4 KB
    array_to_digital.png ‏9 KB

  • How plotting on a digital waveform graph the bit transition in function of the time

    Hi everyone,
    I am using LabView 6.1 on a Windows XP computer. I am to plot output bits sequences on a digital waveform graph just before sending the information to a board.
    So far I can see the transitions for my 16-bit port (16 plots) but the width of a pulse is always identical, no matter what times I enter. I wired my 1-D array timestamps to the property node Xscale.MarkerVals[] of my digital waveform graph... but it doesn't seem to affect my plotting...
    Thanks in advance for any help concerning this problem.
    Jonathan Sabah

    Well here is piece of my VI with the necessary sub VI.
    I also want to hide/unhide plots... I have found how to hide.. but cannot figure out how to unhide.
    Any help please ?
    Thanks again
    Jonathan
    Attachments:
    Exemple.vi ‏58 KB
    Setup_DIO64_for_Output_1.0.vi ‏111 KB

  • How to playback a digital waveform

    Hi I would like to do some post processing work on a digital graph data. I would like to use 2 seperate VIs for data acquisation and post processing. So first I acquire the data  then pass the whole waveform data as an input to the other subVI but I olways get the last waveform  . Could you please let me know how I can pass the whole information about a continous digital waveform without saving it on disk
    thanks

    You can do a variety of things, such as building an array of waveforms by auto-indexing them where you wire out of the aquisition loop.  Alternatively, if you want just a single long waveform, the Append Waveforms.vi (Functions -> Programming -> Waveform -> Analog Waveform) should do nicely.  You can also manipulate the waveform components directly and append the data arrays if you want some more control over it, but that's pretty much what the built in vi does.
    The Colex Group
    Lead Software Engineer
    Certified LabVIEW Developer

  • How can you add comments to a text file while using a Digital Waveform vi?

    Hi. I'm very new to Labview. I have a txt file of 1's and 0's wired to a "read from text file" which is then wired to a "spreadsheet string to digital.vi" ("digital waveform") and lastly to a graph. I want to add notes to the txt file that will not be read in the digital waveform. i.e. Like how you use // or /* in a C++ program to show that you are writing a comment and not code.
    Labview version: 8.5
    Thank you

    You will just need in your text file a line at a time.  Search the string for the characters // or /*.  If it finds them, then loop back and read another line.  If it doesn't find them, you must have a good line of data and you can pass on to the next part of your cod.

  • Digital Waveform Graph refuses to edit Bus names

    I am trying to display digital waveforms on graph whose lines are grouped. It looks like the functionality exists to group the lines into "Buses". There appears to be a way to rename each Bus from its default "Bus 0, Bus 1, etc." since there is an Express VI called "Group Digital Signals" that does it. It looks like the express VI is editing the attributes on the waveforms in order to rename the Buses. The attributes are NI_ChannelName for the Bus and NI_LineNames for the lines that make up the bus.
    When I code it, the Line Names are renamed according to what I want, but the Bus names remain default Bus 0, Bus 1, etc. Is there something I must do to rename the Buses?
    (see attached VI)
    Thanks,
    Dan
    Solved!
    Go to Solution.
    Attachments:
    Digital Graph.vi ‏26 KB

    So Young Daniel, do you mean like this?
    All I did was select where is said Bus 0,1 or 2 and typed in a new value.
    Mike...
    Certified Professional Instructor
    Certified LabVIEW Architect
    LabVIEW Champion
    "... after all, He's not a tame lion..."
    Be thinking ahead and mark your dance card for NI Week 2015 now: TS 6139 - Object Oriented First Steps

  • Is the digital waveform graph supported in Measurement Studio?

    I have an application that could really use the LV-style digital waveform graph in Visual C++. Are there any plans to support the digital graph in Measurement Studio?
    Thanks, Bob

    Unfortunately, there is currently not an equivalent of LabVIEW's digital waveform graph in Measuremeht Studio for Visual C++. You can fake some of the features with CNiGraph. If you have Measurement Studio for Visual Basic 6.0 installed, you can see some examples of this in the VB DAQ\Digital\Digital Waveform and Digital Waveform Continuous examples. Also, attached is a sample Visual C++ 6.0 project that demonstrates how you can simulate some digital graph features with CNiGraph. There's also a screenshot attached that shows what this looks like. Hope this helps.
    - Elton
    Attachments:
    DigitalGraphExample.png ‏16 KB
    GraphDemo.zip ‏19 KB

Maybe you are looking for

  • Fujitsu ScanSnap no longer recognized in Windows 7

    After my husband installed FitBit software on our laptop, our ScanSnap S1500 suddenly stopped working.  I have uninstalled and reinstalled the original software from CD, run Microsoft's FixIt, shutdown and restarted the laptop several times and the l

  • Bootcamp 5.1 Windows could not prepare the computer to boot into the next phase of installation

    I've searched the internet, I've tried solutions on some of the discussions on here: Windows 8.1 install fails on new 2013 Retina MacBook https://discussions.apple.com/message/23490854#23490854 How to install Windows 8.1 on Haswell MBP https://discus

  • Corrupted diacritical accents in iTunes 7.7

    I updated to iTunes 7.7 and discovered that the diacritical accents in the mp3 tags have been corrupted. Most of the accented characters look normal in the play window, but when I open info for any mp3, I get strange-looking characters. If the accent

  • WAP4410N Access point and 4404 WLAN Controller.

    Hello to all, I am planning to setup a new WLAN using WAP4410N Wireless N Access Point. Is it possible to manage the AP using 4404 WLAN controller ? I need to buy arround 42 AP for covering the entire building. Regards, Aslam

  • Account Balance Access

    Some of our users do not have access to view a BP's Account Balance.  How do we set this so they can see the Account Balance?  Do CRM users get access to this? Thanks, Mike