Digital waveform from Excel

HI, I need to do a digital waveform.I have three relays and ON/OFF times are in milliseconds written in Excel cells. One cell tells for how many milliseconds relay is ON and  other tells how long it is OFF. I would like all three signal to be in same chart one upon the other. Not to be too easy there are also two delay cells that tells how much later those two other relay go ON compared to the first one.So actually there is 8 different cells which have times in milliseconds.
My explanation isn't so good so I try to sketch it.
      |          |_____  Channel 1
        on1      off1
______|        |____ Channel 2
 delay1   on2    off2
____|               |_____  Channel 3
delay2   on3       off3
I have Labwiev 8.5 in use. Thanks
Mika

Hi Mika
thats an interesting thing. i´m not sure for what you need the off time. I make an example like i understand it. I ommitted to read from Excel, i choose a 2D Array. See the attachment, pleas. Hope it helps.
Mike
Attachments:
DigitalExcel.vi ‏51 KB

Similar Messages

  • Combine digital waveform from two devices

    Hi All,
    We are using Logic Analyser to generate digital output from DUT and Sourcemeter to measure the current of this output at regular intervals. I am able to obtain the graphs for both from their VIs. Is there a way I can combine these two graphs taking time as x-axis ?
    Regards,
    Kanu

    Hi Kanu,
    I don't see any reason why not but we would need to know more about your setup and if post your code that would be a great help.
    Joe Daily
    National Instruments
    Applications Engineer
    may the G be with you ....

  • Acquire both Analog and Digital waveforms from MSO3034 (Tektronix)

    Hi, 
    How can I acquire simulataneously both the digital (16) and analog (4) channels from the Tektronix MSO3034 scope? 
    Thanks

    Klimovitsky,
    I am not familar with how the MSO3034 performs simulataneous acquistion, but the LabVIEW driver for the MSO3034 can configure multiple channels and then read the data from the scope. There are examples with the driver on how to read multiple waveforms.
    Regards,
    Danny F
    Danny Funk -- Staff Product Support Engineer -- InsightCM R&D -- National Instruments

  • How to make my waveform from excel file perodic in labview graph

    Hi guys,
    Previously I've made a vi which integrates the excel file, to plot the graph values in labview using the values in the excel file to give the me a better flexibility to decide what waveform i want it to be. Can i know how to actually make the graph periodic, as in the waveform repeats,  because currently it can just plot out the waveform accordingly to the values i inserted in the excel. I've attached my vi and aso my csv file together. Thanks guy.
    Attachments:
    12.csv ‏1 KB
    graph.vi ‏18 KB

    So do you want to read the same values over again?
    If that is what you wish to achieve then use waveform chart as opposed to waveform graph. I editted your code slightly so that you can see the different.
    I hope this helps!
    Mehak D.
    Attachments:
    graph.vi ‏18 KB

  • Generate a PDF from Excel with a Digital Signature Field?

    Hello,
    I have an excel workbook that is filled out weekly- I then have to generate a PDF with a digital signature field for a manager to sign (vouching for the data).  I currently have to manually generate the PDF and then manually add a digital signature field.  Is there any way to generate the PDF from excel with a digital signature field that can then be signed?
    Thanks for any help
    -Nathan

    Moved to Acrobat forum.

  • 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 to control individual channel of signal generated from digital waveform generator?

    Digital waveform generator has 8 channels. I need to generate two different signals to HSDIO. How to modify and control two different channels? Also, how to translate pin outs from PXI-6541 to channels? I need to control signal into pin 1,3,29,and 31 individually.
    Thank you!!
    Solved!
    Go to Solution.

    You must combine your individual data into an array.  The digital waveform is simply a digital representation of the binary array.  It still boils down to bit 0 of each array element going to channel 0 (or the first channel you specify in Create Dynamic Channels).  The next bit goes to the next channel.  My last post is quite clear.  To display the array in binary, right click on an array element, then select Display Format, then select Binary.  You can also right click on the element, select Visible, then select Show Radix to display the small b before the number.  One more thing, in the Display Format window, uncheck the box next to Use minimum field width.  Then set the numeric just under the box to 8.  Then select Pad with zeros on left in the box below.
    You should not use waveforms until you learn more about how the HSDIO operates on input data.  It isn't hard to combine waveforms, but it also isn't as clear as using an array of U8 or U16 or U32.
    Trying to explain further.  The first number to be writen to the HSDIO will have this effect:  Bit 0 (LSB) of the number gets written to the first HSDIO channel you specify.  Bit 7 goes to the 8th channel you specify.  If you don't specify 8 channels, the bits get ignored.  So wiring in one number will produce only one bit on each channel.  In other words, the number already combines the bits of all the channels you specify.  You don't combine anything yourself.  Look again at my picture on my last post.  By wiring in an array, you cause a bit pattern to be generated.
    I hope this is more clear.
    - tbob
    Inventor of the WORM Global

  • Can digital waveform editor be launched from labview8.6

    Hi,
    Have anyone tried launching digital waveform editor from labview8.6? if so please let me know.Is there any connectivity VI that can be used for waveform editor.
    Thanks,
    Nandhini

    Nandhini,
    You have two different options for interacting between the Digital Waveform Editor and your hardware.  You can either use the play button directly from the Digital Waveform Editor to launch Signal Express with a HSDIO Express Step configured to generate the waveform you are creating in the DWE, or you can edit and save a waveform to disk, and then configure a LabVIEW program to generate that saved waveform.  It sounds like the second method is what you are looking for.  Save the waveform you are editing in the DWE to disk at a specific location, then configure your LabVIEW VIs to generate the waveform, and use either the HWS read VIs, or you can use the write waveform VIs of the HSDIO and specify the location of the HWS file.
    Brian Coalson
    Software 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

  • 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

  • Importing Data to PDF from Excel

    I need to store data from 1000 unique records of a single form. Acrobat has a good export feature that puts all the data nicely in an excel sheet. However, there doesn't seem to be an equally easy way of repopulating the form with that data, generating a new file for each record.
    The reason I'm doing this is because there doesn't seem to be a way of modifying how a signature field is handled Adobe Default vs Silanis. The type is cemented by what the setting was when the field was created. So my thought is to temporarily store the data in excel. Recreate the Signature fields with the correct setting. Then generate the 1000 files again with the data from Excel.
    Thoughts?

    That is correct - Acrobat does not have that feature.
    I don't understand the issue with Silanis, since PDF Digital Signatures are part of the ISO 32000-1 standard as well as the ETSI TS 102778 (PAdES) standard.
    Signature fields required certificates and passphrases - I don't see how you could "recreate" them...

  • 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 randomly select data from excel using labview.

    A very good day to all. I am actually working on a system that will be selecting integer number from randomly generated set of number. If that wouldnt be possible, I would like the system to be able to select number from the set of numbers which have already been randomly generated from excel. kindly help me with the solution. To make myself clear, supposing I have set of numbers from 1 to 10, I want a labview setup that will be picking these numbers one after the other either with replacement or without from excel or self generated. I know this is possible in matlab but would prefer labview if possible.  Thanks
    Solved!
    Go to Solution.

    Most, if not all, of the languages I've run across have a rand() function that returns a random number between 0 and 1.  Getting some other range is up to the programmer.  Usual method is to multiply by the range you need and add an offset to adjust the mean.  For instance if you need a random number between 200 and 300 the formula might look like  " rand()*100+200 ".   If you need an integer, you can use the round function (which will leave it as a float with no decimal pportion) or the conversion (to int).    All of this is doable and straightforward in LabVIEW.  Have a look: http://digital.ni.com/public.nsf/allkb/FCCDCD678EEF3A9186256D7B008054F5
    If you feel more comfortable pulling from a file, try this: http://digital.ni.com/public.nsf/allkb/C944B961B59516208625755A005955F2 

  • 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 |

Maybe you are looking for