E-series. Time between 2 leading edges w/ GPCTR

We are attempting to acquire the time between 2 first leading edges with 2 light screen signals coming into PFI_9.  The light screen signals send pulses to PFI_9 independently and one at a time.  However, we realize that we sometimes get multiple pulses subsequent to first pulses on each screen and this yields erroneous GPCTR times between first leading edges.   
We want just the first edges of each screen.  If need be, we can separate the lines from the screens so that screen 1 goes to PFI_9 and screen 2 goes to PFI_4, or some other such recommendation.  If we do that, what might the code look like?
Attachments:
ScreenPulses.doc ‏49 KB

I would bring the signals in on two different PFI lines and approach the problem like this:
1. Create a Pulse Generation task on one counter (CTR0) to trigger off of the first light screen pulse.
2. Setup a second task on CTR1 to count edges on CTR0. Set this task to stop (or pause) when it sees the second light screen pulse.
3. Now you have the amount of time between the pulses (Take the amount of events counted and divide by the frequency of the pulse train generated on CTR0).
I don't know if this will help you or not, but here is an example of doing this in LabVIEW. The example is in DAQmx which I would recommend using if your hardware supports it. I am attaching a screenshot. If you don't have LabVIEW at least you'll be able to see the program flow from the screenshot.
I hope this is helpful!
Garrett H
National Instruments

Similar Messages

  • How can I measure the time between each two successive rising edges ,using Digital Input ?

    Hello
    I'm trying two measure the time in seconds between each two successive rising edges on a digital input .
    Till now I have managed to detect the rising edge ,increment a counter with each rising edge ,and snap the time at which the rising edge happenned
    all I need now is to subtract the current rising edge time from the previous rising edge time in order to calculate (T) which can be 1/frequency and display it in realtime to the user.
    but I don't know how to do this
    Can somebody please help me !!!
    Solved!
    Go to Solution.
    Attachments:
    Counter without time.vi ‏11 KB

    Woah!  
    Sorry Apok, but your code is becoming way too complicated/messy. I don't think that all of those shift registers or boolean conversion/operators are needed at all.
    If you want to measure the timing between two button presses then this is a different (much less complicated) way. It simply records the timing of the button press into a shift register then compares the two.
    Spoiler (Highlight to read)
    Of course this is a very quick and basic solution just to show you that it can be much simpler than you are making it (remember to use the mechanical actions of the buttons to get the behaviour you want).
    A better way would be to use an event structure looking at value changes of the buttons to determine the timings between clicks.
    -CC
    "If anyone needs me, I'll be in the Angry Dome!"
    Attachments:
    Time between clicks.vi ‏9 KB

  • Difference between Compute lead time and Rool up lead time

    Hi All,
    Could you please clarify what is difference between Compute Lead time and Roll up lead time.
    I see in Routing > Tools.
    Thanks in Advance
    Regards
    Ravi

    Refer The Oracle document
    Manufacturing Lead Time Computations
    Manufacturing Lead Time Computations (Oracle Bills of Material Help)
    Rolling Up Cumulative Lead Times
    Rolling Up Cumulative Lead Times (Oracle Bills of Material Help)

  • Measure the communicat​ing time between LabView send out commands and response of instrument

    I send a command to a function generator(SRS DS345)using "GPIB Write" via GPIB,to change the frequency of output.And I would like to to measure the time between
    initially send out commands and actual response of instrument(frequency change).I have designed a program which contains three sequences,the 2nd one contains "GPIB Write",and the 1st and the 3rd contain "Tick count",then subtract the latter from first one.I think this is not the time that I want...
    What should I do ?
    Thanks!!

    If want a more precise and NIST-traceable method of timing a portion of your LabVIEW code. The below VI uses two counters on an E-Series or NI-TIO based device to complete this task.
    Download the attached VI and replace the for loop (EVENT TO TIME) with your VI or code.
    This example uses the maximum timebase of your device as the source for "simple event counting". Due to counter roll-over, two counters are used in order to be able to time events of short or very long duration. See VI Documentation for more information.
    Attachments:
    Time_With_Counters_(LV61).vi ‏199 KB

  • Measuring time between pulses to find velocity

    Hi all!
    I'm trying to program a velocity monitor to keep track of how fast a motor is going so that I can start a recording once it reaches my desired constant velocity.  I'm measuring the velocity of my motor with a light sensor that senses a piece of white tape attached to the outer edge of my motor (aka, it pulses once per rotation)  which means that if I know the time between pulses I can calculate the velocity.  I think I understand how to do this for one iteration but I want to keep on measuring the velocity after I tell it to change until it's the constant velocity I desire. Can anyone help me with a program to continually measure the velocity?
    Thank you,
    Lost Student

    OK, I set it up as follows but I'm not getting very logical numbers.  For a fairly constant rate they vary in series like 6, 3, 1.5, 2, ext which would mean I'd be going something like 1 rotation every ms, which I am not doing. Do I need to change something in the DAQ assistant?  I think Citabria's program is measuring the the total sample times before the T/F is satisfied, which would solve for the time between high voltage pulses but I'm not sure how his program adds the times.
    Thank you
    This is what I'm measuring, there is a 10v pulse every time the white tape is hit with a light

  • LabVIEW/SignalExpress: How can I automate measuring the time between two pulses?

    Hi everyone, bit of a newbie here so please bear with me.  
    I'm a student at a university conducting a muon decay experiment with an oscilloscope connected to some photomultipliers.  To summarize, if a muon enters the detector it will create a very small width pulse (a few ns).  Within a period of 10µs it may decay, creating a second pulse.  The oscilloscope triggers on the main pulse 5-15 times per second, and a decay event happens roughly 1-2 times per minute.  I am trying to collect 10 hours of data (roughly 1500-2000 decay events) and measure the time it takes for each decay.
    I've been able to set recording conditions in SignalExpress that starts recording on the first pulse and stops recording on the last.  The Tektronix TDS 1012 oscilloscope however feeds 2500 points of data from this snapshot into a text file (for use in excel or other software).  Even if I perfectly collected the data, I would have 100,000+ data points and it would be too much to handle.  I don't know how (or if it's possible) to reduce the sample size.
    To conclude, using Labview or SignalExpress, I would like to be able to have the software
    1.  Differentiate between the single pulse detections and double pulse decay events
    2.  Record only when two pulses appear on the oscilloscope
    3.  Measure the time between these two pulses and ONLY that to minimize the amount of data recorded.
    Any help would be GREATLY appreciated, thanks!

    Hi wdavis8,
    I am not that familiar with Tektronix, but there should be a place in the dialog that you go through when you create the action step to acquire date to specify a sampling rate. That would allow you to reduce the number of data points you are seeing, but may reduce the quality of the data.
    If it’s just a matter of that much data being hard to dig through when you have that many points, you could do some analysis on the data after the fact, and then create a new file with only the data you want to look at. For example, you could identify the peaks in the data, and based on the distance between them or the difference in magnitude, selectively write data to a new file.  
    Here is some information about peak detection in LabVIEW:
    http://www.ni.com/white-paper/3770/en/
    You could also do some downsampling on the data to get fewer data points:
    https://decibel.ni.com/content/docs/DOC-23952
    https://decibel.ni.com/content/docs/DOC-28976
    Those are just a few quick ideas. 
    Kelsey J
    Applications Engineer

  • "logon time" between USR41 and security audit log

    Dear colleagues,
    I got a following question from customer for security audit reason.
    > 'Logon date' and 'Logon time' values stored in table  USR41 are exactly same as
    > logon history of Security Audit Log(Tr-cd:SM20)?
    Table:USR41 saves 'logon date' and 'logon time' when user logs on to SAP System from SAP GUI.
    And the Security Audit Log(Tr-cd:SM20) can save user's logon history;
    at the time when user logged on, the security audit log is recorded .
    I tried to check SAP GUI logon program:SAPMSYST several ways, however,
    I could not check it because the program is protected even for read access.
    I want to know about specification of "logon time" between USR41 and security audit log,
    or about how to look into the program:SAPMSYST and debug it.
    Thank you.
    Best Regards.

    Hi,
    If you configure Security Audit you can achieve your goals...
    1-Audit the employees how access the screens, tables, data...etc
    Answer : Option 1 & 3
    2-Audit all changes by all users to the data
    Answer : Option 1 & 3
    3-Keep the data up to one month
    Answer: No such settings, but you can define maximum log size.
    4-Log retention period can be defined.
    Answer: No !.. but you can define maximum log size.
    SM19/SM20 Options:
    1-Dialog logon
    You can check how many users logged in and at what time
    2-RFC login/call
    Same as above you can check RFC logins
    3-Transaction/report start
    You can see which report or transaction are executed and at what time
    (It will help you to analyise unauthorized data change. Transactions/report can give you an idea, what data has been changed. So you can see who changed the data)
    4-User master change
    (You can see user master changes log with this option)
    5-System/Other events
    (System error can be logged using this option)
    Hope, it clear the things...
    Regards.
    Rajesh Narkhede

  • How to keep waiting time between processed messages !!

    Hi Folks,
    I have got one scenario required waiting time between processed messages. The problem as follows !!
    File --> Proxy scenario. I receive 15 messages from sender side (same messages structure) so working with one interfaces. File picking and transforming this message and split into 2 messages. messages are receiving to receiver. I am using BPM with 7,8 steps like receiving step, block , message transformation step , internal block 1 for sender 1, internal block 2 for sender 2.
    All things are working fine, messages are going to receiver properly. But customer requirement is , wait step required between processed messages before sender1. I have put wait step still, PI picks all messages in one shot processing and waiting for 2 minutes, after 2 minutes sending all messages at the same time, this process is not working.
    I have tried with wait step in mapping (Sarvesh) given excellent idea, still PI works the same way.
    Can someone please explain a bit why the messages or not waiting message by message. I am using EOIO with Queue name and file process mode "BY NAME" and I have tried "BY TIME" as well. I have given priority to this Queue. On BPM Queue assignment : One Queue.
    Please I am expecting positive answer !!
    Many Thanks in Advance
    San

    Hi Rudolf Yaskorski ,
    Not sure about your PI release and BPM model, do you create separate process instance for each file, or do you process files collecting them in one single instance? Are you using parallelization within your ccBPM ?
    I am using serialization, I don't think bpm can do Parallization until PI 7.0, but PI 7.11 has got has queue assignment. But I am using one queue. This must be serialization.
    To me it looks like your issue is not in ccBPM but rather more in polling files (as per your post file CC polls all 15 files in one shot). So if you wish to poll the files not at the same time some workaround is required. Possible options you could check out:
    A. Either implement "wait" in your mapping based on file name or other criteria (e.g. directory name). Check out if respective BPM instances are really created at different times.
    I have used wait step in mapping. These 15 messages has to go through one interface. So I am using one interface. But I have checked mapping process time in all messages on receiver system. Shows same timing, even though I put 40000 ms waiting time in mapping.
    B. Try polling different files (or use different directories) with different channels and coordinate starting / stopping of your channels by scheduling availability for each CC in RWB. E.g. you poll file 1 with CC 1. You start 2 minutes later CC 2 and poll file 2. And so on.
    I am not clear about this . On BPM waiting step is working and it keeps wait all messages, which are coming through one interface. Then it releases all messages at the same time.
    I don't know how to resolve this. I have tried with Transport acknowledgment, but all messages are going to reciver system waiting at receiver system in priority queue and processing in EOIO, but taking so long. Rather all messages go and sits in queue, I want to stop messages by message with 2 minutes time gap. How please?
    Kind Regards
    San

  • When using historical datalogging, is it possible to hide the elapsed time between tag updates when viewing on a graph?

    When my process stops, I am reading an array of tags(datapoints) and writing the max and average to memory tags for data logging. However, when viewing the data, the elapsed time between cycles spreads the data out unevenly. It could be 90 seconds between cycles or maybe two hours or longer. Is there a way to convert the time axis data to be just consecutive datapoints?? It would be like logging data based on a particular condition happening rather than time-based trending. Should I try to use the data set logger examples instead?? I would prefer to use the built-in datalogging features rather than writing to databases.

    You could export your data to a spreadsheet file and then actually write then again in a second database using this example program in the devzone
    http://zone.ni.com/devzone/conceptd.nsf/webmain/5A921A403438390F86256B9700809A53?opendocument
    Using this program (if you don't want to modify it, which would take a reasonable amount of time specially if you are not familiar with VI-Based Server) You would have to generate a collum in your spreadsheet file to be the timestamp, it would be a artificial timestamp.
    What you could do in your application is to first save the data to file and then read from file, substitute the collum timestamp for the "artificial one" and then write it to the database, again, with that you would not need to modify this program.
    However if you have the time and is willing to work with VI-based server you could try to modify the example program to be adapted for your purposes.
    I hope it helps
    Good Luck
    Andre Oliveira
    Applications Engineer
    National Instruments

  • I have iphone5 and now been given Nokia lumia 520 for work. How can I ensure that my calendars all sync in real time between each phone? Many thanks for any advice

    I have iphone5 and now been given Nokia lumia 520 for work. How can I ensure that my calendars all sync in real time between each phone? Many thanks for any advice

    Well if you got the Phone Pggray43 at a Local Corporate store in your Area)  you should be able to return it as long as you have all the contents.!  Phone, Charger and any other accessories that came with it the Box of Course.. As long as you have not went past the 14 Day return.. the store can go over what you used as in Air Time and Data..
    Now if you've went past the 14 Day return you be Liable to pay a E.T.F =  Early Termination Fee the fee for this is around $300 so hopefully you have not went past the 14 Day return window the Manager if Available is the one I would talk to tell them your on Social Security and you just can't afford a phone as this I'm sure they'll work with you to get something solved..
    Hope ya have Good Luck.! b33

  • I want to measure te time between the peaks

    I need to measure the time between each peaks (QRS peak) in an ECG waveform continuously and plot on the chart.
    Can u please help me with this.

    Hello kok,
    Here is an example.  I am using a sine wave instead but it will still work.  Just put in the threshold to be above the itnermediate peaks that you want to ignore but below the peaks you want to get.  The VI will then tell you what location inside of the array the peak occured.  You can subtract each location from each other to find how many elements pass between peaks.  You can then multiply the number of elements between peaks by the amount of time between each sample.  I hope this helps.
    Steven T.
    Attachments:
    rrmeter.vi ‏16 KB

  • HT204380 can you face time between 2 devices which are registered to the same email address

    can i use face time between my iphone 4s and my sons ipod touch 4th gen eventhough they are both registered to the same apple account and same email address?

    Yes you can. You just need a unique e-mail address on the iPod to call. I can FaceTime from my phone to my iPad since we have my wife's e-mail as the FaceTime contact.

  • Time between digital inputs?

    Hi, I would like to measure the time between a digital input being true.
    Basically I have a prox picking put a point on a rotating shaft (to determine RPMs).
    What I want to do is measure the time between consecutive input signals from the prox, divide 1 rev by the time, multiply this by 60 to get RPMs. Then compare that value to a set value ( say 300 RPM ). If it is equal or great, contine onto the rest of the program, if it is less than the set value, keep looping until it is greater than or equal to the set value.
    Thanks in advance for the help!
    Ryan
    LV 7.1

    If you need to measure accurately the rotation speed on a single turn, software timing may not be accurate enough, since the Window internal clock readings have lags (read "errors") of more than 10 ms (= 100 rps, about 2 rpm error), even when no other application is running. So either you count (and wait) for a given number of rotations, and calculate an average, or you use hardware timing with a counter on the DAQ card (if any)...
    Otherwise, if you only need an estimate of the rotation speed, you can read the digital line and wait for 2 consecutive changes. The period can be calculated from the time stamps. See the attached vi. Wait a few seconds to observe the variations generated by Windows.
    Merry Christmas, and Happy Wiring !
    CC
    Chilly Charly    (aka CC)
             E-List Master - Kudos glutton - Press the yellow button on the left...        
    Attachments:
    Rotation speed.zip ‏14 KB

  • ITunes playback has inconsistent gap time between songs

    When I burn a store bought CD into iTunes and then play the CD in iTunes, the gap time between the songs is sometimes inconsistent. There's a pause between some songs but others run into each other. What causes this? Can it be prevented? Thanks.

    Hi Laura:
    Welcome to discussions!
    One workaround is to make a slideshow soundtrack by making a single long track of music from purchased or regular music:
    1) Burn your desired playlist to CD in iTunes.
    2) Make sure you have itunes Preferences set to "just open the CD and not automatically play or import the songs."
    3) Insert the burned CD and iTunes will open.
    4) Within iTunes, select the tracks that you want to join and then use Advanced: Join CD Tracks.
    5) Go to Advanced>convert selection to AAC.
    6) When done, make a new playlist named after the slideshow.
    7) Put the new combined track into the playlist.
    8) In iPhoto, select this playlist for your slideshow.
    You can also Share/Export the slideshow to Full Quality DV; import the resulting Quicktime movie into iMovie and add the music there (or do the whole slideshow in iMovie). If you have Quicktime Pro, you can Share/Export the slideshow (like above), but then open the resulting Quicktime movie in QTPro, and copy/paste your music from within Quicktime.
    Sue
    Thanks to John Keller for typing all of that out!

  • Data load taking very long time between cube to cube

    Hi
    In our system the data loading is taking very long time between cube to cube using DTP in BI7.0,
    the maximum time consumption is happening at start of extraction step only, can anybody help in decreasing the start of extraction timing please
    Thanks
    Kiran

    Kindly little bit Elaborate your issue, Like how is mapping between two cubes, Is it One to one mapping or any Routine is there in Transformation. Any Filter/ Routine in DTP.  Also before loading data to Cube did you deleted Inedxes?
    Regards,
    Sushant

Maybe you are looking for

  • Can't edit an event in my Calendar.

    Yesterday I noticed that I can't edit an event in my Calendar. Also when I type a new event it drops some of the type off when I hit return. And it's not necessarily dropping off the end of the sentence! I'm using OSX10.8.5. The only thing that's dif

  • Vision builder

    Hi there ! I'm new in the field of machine vision and I need your help in my project,I want to build an application that inspects the sealed terminals of automative wires like in the image attaches below, calibration and edge detection and comparing

  • HT202879 I have been using the linked boxes feature extensively in my layouts, and am most surprised that it has been dropped - WHY?

    The linked boxes feature in Pages was one of my pet facilities, and a carryover from my days with MS Office's Publisher.  I am most chargrined to find that when I converted my pages newsletter template to the latest version, the link had vanished.  I

  • SQL Error, ORA-03113  occured

    My SQL statment is : SELECT P.ORDERNO, CASE WHEN P.TYPE = '0' THEN '成人' WHEN P.TYPE = '1' THEN '儿童' WHEN P.TYPE = '2' THEN '婴儿' END PSGTYPE FROM AGENTAREA T, PASSENGER P, when execute it ,ORA-03113 occured , why ? AGENTAREA is a view, PASSENGER is a

  • New Nano's

    So because i can't get iTunes 7 as i only have OS X 10.2.8,i actually can't use my new iPod at all? Is that for real? Cause that is just about the lamest thing i have ever heard. Is there anyway around this or am i going to have to buy a new **** com