Routing signals PXI-6602

I'm trying to route a single input to more than one counter.  I've been wading through the routing signals options with no success.  I have a PXI-6602 and using LabView 8.20.  I have a single input that I want to measure the period and pulse width on.  Hooking up multiple external lines is an option, but I'm converting from fiber to the input so it would be much easier to route the signals internally.
My 6602 is Dev1.  I can't seem to nail down how to use the route signals vi.  I've looked at some examples with no more clarity.  What's the easiest way to accomplish this task internally and is there a simple clear example?

I would wire to the PFI pins associated with the Gate input of either Ctr0 or Ctr1.  These PFI pins are *not* shared with DIO functions so there's no chance of conflict with future DIO usage.
Both period and pulse width measurements should allow you to successfully specify any of the Gate input PFI pins as the signal source.  You shouldn't need to call any explicit signal routing functions if you're using DAQmx -- it handles most stuff auto-magically.
Another option may be to configure for semi-period measurement.  Depending on the polarity setting, the pulse widths will be either the even or the odd values in the measurement data.  The periods will simply be the sum of adjacent pairs of values, though you may need to ignore the very first value in a buffered measurement -- it represents the (meaningless) time from starting the task until the first active edge.
Sorry, not at a LV machine to create & post an example...
-Kevin P.

Similar Messages

  • Route signal from pxi 6602 to RTSI

    Hi,
    I have a problem to export pulse from pxi 6602 to RTSI0. The code is simple as follows:
    DAQmxCreateTask("",&taskHandle);
      DAQmxCreateAOVoltageChan(taskHandle,"AO/ao0","",-10.0,10.0,DAQmx_Val_Volts,NULL);
      DAQmxCreateAOVoltageChan(taskHandle,"AO/ao1","",-10.0,10.0,DAQmx_Val_Volts,NULL);
      DAQmxCfgSampClkTiming(taskHandle,NULL,1000.0,DAQmx_Val_Rising,DAQmx_Val_ContSamps,2);
      DAQmxCfgDigEdgeStartTrig (taskHandle, "RTSI0", DAQmx_Val_Rising );
      DAQmxWriteAnalogF64(taskHandle,2,0,10.0,DAQmx_Val_GroupByChannel,out,NULL,NULL);
      DAQmxCreateTask ("", &countHandle0);
      DAQmxCreateCOPulseChanTime(countHandle0,"TimingIO/ctr0","",
       DAQmx_Val_Seconds,DAQmx_Val_Low,1,0.5,1);
      err = DAQmxExportSignal (countHandle0, DAQmx_Val_StartTrigger, "RTSI0");
    //  err = DAQmxConnectTerms ("TimingIO/Ctr0Gate", "RTSI0",DAQmx_Val_DoNotInvertPolarity );
      DAQmxStartTask(taskHandle);
      DAQmxStartTask (countHandle0);
    the lines at DAQmxExportSignal(..) and DAQmxConnectTerms(..) both generate big negative number, I spent hours and no answer. In fact I have to use the counter to trigger other boards in my project, I plan to use the route signals a lot.
    Sincerely,
    Taishan

    Hello Taishan,
    Thanks for contacting National Instruments. 
    When you are using DAQmx with a PXI system, much of the signal routing can be handled implicitly by the driver.  From your code, it appears that you want to use a counter output to start an analog output task.  Please let me know if this assumption is incorrect. 
    When used while configuring your analog output task, the following function will cause the internal output of Counter0 to be routed automatically over the PXI backplane to the analog output device.  I have assumed that your PXI-6602 is in slot 2 of the PXI chassis. 
    DAQmxCfgDigEdgeStartTrig (AnalogOutputTaskHandle, "/PXI1Slot2/Ctr0InternalOutput", DAQmx_Val_Rising);  
    The tutorials Getting Started with NI-DAQmx and Learn 10 Functions in NI-DAQmx and Handle 80 Percent of Your Data Acquisition Applications are great starting points for programming with the DAQmx API.  Since you are using C, Using NI-DAQmx in Text Based Programming Environments, is a great starting point for comparing the LabVIEW API to the C API for DAQmx. 
    Please post back if you have any questions. 
    Regards,
    Browning G
    FlexRIO R&D

  • Regarding NI PXI-6602 - How to route PFI_33 to a grounded DIO Line.

    The PXI-6602 card with the TIO chip seems to be very robust on counter and DIO pin assignments and routing, but I have found that counter 1 has a pin (PFI_33 -AUX IN (UP/DOWN) ) that has been troublesome.  I need to either route this pin to another pin such as a DIO pin set as an output and pulled LOW or be able to manipulate the pin to a low state when I setup counter 1.  This is to ensure that noise is kept to a minimum due to the PXI-6602 being cabled to a board with a PLD on it.  Any solutions on how to tie PFI_33 low?
    -Tim

    B Spears,
    Looks like I'm heading down that path... We were looking to do it in software, but nothing has come to light.  Interesting enough, DAQmx has a good sub-vi (DAQmx Connect Terminals.vi) but I am dealing with code back from LABView 5 days utilizing Traditional DAQ.  Try writing a snipet utilizing both "Write to DIO.vi" and "DAQmx Connect Terminals.vi" and watch the error codes fly. 
    One option NI has offered was to re-write the DIO tasking in DAQmx instead of traditional... this maybe an option... but, wow!  That's a lot of code.
    Thanks for the reply B Spears,
    -Tim

  • PXI 6602 shared DIO Counter lines

    Hi,
    I have a question regarding the PXI-6602. From the manual I see that some of its PFI channels are shared. If I wanted to use a counter to generate a timed pulse. Can I use the associated gate and source PFI as digital output lines without affecting the counter?
    Here's a concrete example: Let's say I'm using the counter 7 to generate a timed pulse on PFI 8 which is the CTR OUT. Can I simultaneously use PFI 10, which is listed in the manual as having possible signals CTR 7 Gate and P0.10, as a digital output? Can I simultaneously use PFI 11, which is listed in the manual as having possible signals CTR 7 Source and P0.11, as a digital output?
    Thank you!

    Hi,
    Take a look at this example related to routing counter signals through the RTSI lines.
    http://www.ni.com/example/27109/en/
    Reference Table:
    http://zone.ni.com/reference/en-XX/help/370466W-01/mxdevconsid/tiosigconcounters/
    Luis S
    Application Engineer
    National Instruments

  • How do I use AO update in the Route signal.vi

    Hi support,
    My goal is to create a waveform (to buffer it) and output it using the analog card (PCI-6713) N times and with the frequency F. Apperanlty this is done using a (actually 2) digital counter(s) on the PCI-6602 card.
    This is done using route signal.vi using "AO update". However I have not managed to get it working. I only get error -10341. So my questions are how do I do it? More specificly how do I use AO update in the Route singal.vi Do I need to conect the cards in any perticular way (cabels or so)? Also do you have more information about how the vi route signal works (the help file does not help me much)?
    Grateful for all help.
    I'm using labview 6.0 as developpement platform, and using the PCI-6601, PCI-67
    13 and a PCI-7344 cards. Since the program is quite large I will only send a portion of it, the pulseGen is supposed to generate the waveform (loaded as a text file, also submitted) the digital output used is in case 1 (in pulseGen) the analog output is in case 3. The MissingWaveform.vi is just to ensure that a waveform is supplied to the pulseGen.vi
    Sorry about the mess.
    /Chatri

    Cabling and Interfacing between Boards: You have capability for direct simultaneous connection between 6713 and 6602 (also 6601) via the RTSI bus, but you need to get a cable to connect between the boards. You can connect between the boards using the I/O pins of their respective signal conditioning hardware. These connections are slower. There are also PFI (Programmable Function Interfaces) connections that are set within the VI's.
    All that said, it is not obvious why you want to use the RTSI. You can use the PCI-6713 to generate AO. Presumably you have some signal conditioning accessory; which ever pin of that accessory the AO appears on, you wire it over to the SC accessory for the 6601 and the appropriate pin for the counter gate or
    source you want to use.
    Suggestions: Don't try to work in the context of your big VI for now. Get the AO bit and the counting bit to work together by themselves. Then shoe-horn them into the big VI. Also, consider a call to the NI help line. They are very good. 800.433.3488 (800IEEE488)
    In case you hadn't noticed the DAQ cards and Counter/Timer cards come in different flavors and there are specific example VI's to suit. 6602 uses NI-TIO chip, but PCI-671X are DAQ-STC. Again the NI help people are good at catching this kind of stuff.
    Your question is rather large and hard to manage. Perhaps if you break it down into small chunks the advise will be more free flowing.
    mike

  • How can i find out the resolution and accuracy of PXI-6602 module?

    I have a 32 bit  8 channel PXI-6602 counter module.  PXI card is interfaced to PC with MXI-4 link. How can i find out the resolution and accuracy of this system.What is the maximum accuracy and resolution i will get from this system. Because optical signal to cmos conversion signal is given as a input to the counter.

    Hi chandhu,
    Were you referring to the accuracy of the count register or the timing clock? 
    PXI-6602 specifications can be found in the NI 660x Specifications.  The resolution of the count register is, as you’ve noted, 32 bits.  This corresponds to a maximum count value of 4,294,967,295.  As long as all of the edges are in accordance with TTL specifications, the accuracy of the count register is 100%.
    On the other hand, the PXI-6602 baseclock accuracy takes on the baseclock accuracy of the PXI CLK 10 signal.  Again, this is all found in the specifications.
    You may also want to check out the NI 660x User Manual – it contains a lot of details on the operation of these counter/timer devices.
    I hope this helps.  Please post back if you have further questions.
    Ed W.
    Applications Engineer
    National Instruments

  • PXI 6602 - Retriggerable Finite Pulse Train Generation

    Hi,
    I have a VI in LV7.1 where I configure PXI 6602 to generate finite pulses whenever a trigger is received. And the Retriggerable Property is set to TRUE. I look for the task to complete in order to proceed with the other operations.. This actually works. As soon as the pulses are generated DAQmx Task Done becomes TRUE.
    The same VI I upgraded to LV 2011but this time the 'DAQmx Task Done?' never becomes TRUE even after the trigger is received and pulses are generated. 
    Does anyone know if the 'DAQmx Task Done?' functionality is changed in higher version of LabVIEW so that it no more works as it was in LV 7.1?
    Is yes, then do you know what property to use to know that the operation is done?
    Any help is highly appreciated.
    Thanks.

    CORRECTION TO PREVIOUS POSTING THERE WAS AN ERROR IN HOW I DESCRIBED THE PROBLEM:
    I have a problem using a retriggerable finite pulse train as in the NI example Retriggerable_Finite_Pulse_Train. I use ACTOUT to gate the first re-triggerable pulse control and the second pulse control generates the continuous pulse train which is gated by the first retriggerable pulse control. The ACTOUT signal is generated by an AI control which senses a crank trigger (Hall Sensor). The re-triggerable pulse train is used to modulate a fuel injector in sync with ignition timing and RPM.  If the period of the ACTOUT signal changes due to a change in RPM, the pulse train is recalculated. It works OK with one hitch. Even at constant RPM, after about 15 re-triggerer pulse trains the final pulse of the train does not complete. This leaves the signal high in-between successive re-triggerer pulse trains. This incorrect high signal between re-triggerer pulse trains means that the fuel injector is incorrectly left on in-between pulse trains. This incorrect high signal goes on for about 10 pulse train events and then returns to normal. This pattern repeats. I use the ActualPeriod of the second control's continuous pulse train to ensure the pulse train ends correctly within window of the first re-triggerable pulse. This work but with time this pulse train seem to shift slightly. Is there another way to create a different type of re-triggerable pulse train that overcomes this problem?

  • RPM Measurement using Quadrature Encoder and PXI 6602 counter

    Hi,
    I am on a project at work where I need to verify the speed (in RPM) of an unloaded motor which can operate up to 1400 rpm.  After doing some research, i determined that a quadrature encoder could be used to make the measurement.  I am looking at this encoder  http://sine.ni.com/nips/cds/view/p/lang/en/nid/205321.
    I have a PXI 6602 counter/timer module in which I would like to interface to the quadrature encoder.  I would like to create a VI that allows me to calculate the speed using the encoder.  Can someone provide me with details of what needs to be in the VI or an example which can do this?  At the most basic level, i want to calculate the speed on demand.  After doing this, i would like to figure out how to quickly calculate the speed so that i can determine response time of the speed changing within sub-millisecond resolution (1 ms resolution max).
    Further, i created a VI that allows me to change the pulse width of a 100 Hz pulse train at run-time which tells the motor controller the desired speed.  I would like to be able to use this VI to change the speed of the motor and the first VI (that I am seeking help about) to calculate the response time (time between the initial speed and settling at the new setpoint).
    I am familiar with the NI example finder, but have not been able to find an example that I can use.
    Thanks,
    Gary

    Hey Gary,
    I think for you setup, you should try using the Meas Dig Frequency - Low Freq 1 ctr. You can find it by searching example finder with 'low freq'. This vi tells you the frequency of a digital signal by sampling between two pulses and inverting the time between pulses. If you hook up your encoder to a counter and have that counter specified in the vi, it will be able to give you on demand readings of frequency (you can do some multiplication to get the rpm value, freq*60/pulses per revolution of encoder). A simple way to take continuous readings is to put a while loop around the daqmx read and the data output of the read. You can also replace the numeric indicator to a waveform chart to graphically display the change of frequency or rpm readings over time.
    You should be able to integrate this as two separate tasks with the pulse train vi you created earlier.
    Hope this helps
    Luke W

  • PXI 6602 and encoder reading with two counters

    I'm reading three encoders with 2000 pulses for each revolution with a PXI 6602. As the loads are connected to the motors through a transmission ratio of 200 I need to count both the encoder pulses in each revolution and the number of revolutions.
    I think I could use one counter, with the standard connections, to count the number of pulses in each revolution and another counter, with the source connected to the Z index signal and the up/down connected to the B channel, to count the number of revolutions.
    Does somebody know if there is a simpler solution or a solution that needs only one counter?
    Thanks

    You can do this with one counter. Since you know the relationship between counts and revs (2000:1), you don't really have to count the index pulse separately. Just take the total count and divide by by the counts per rev. The quotient is the number of revs and the remainder is the position within a particular revolution. Make sure to turn off Z indexing with Counter Set Attribute (attribute 20), so that the counter does not reset each revolution.
    Take a look at the NI-DAQ shipping examples in LabVIEW 6.1\examples\daq\counter\ni-tio.llb or at the example linked below. Just add the division operation to get the number of revs.
    http://zone.ni.com/devzone/explprog.nsf/6c163603265406328625682a006ed37d/8bebc7cce0aa65f686256866005e411b?OpenDocument
    This
    seems like a fairly simple solution. Please let me know if I have misunderstood the question.
    Good luck,
    Brent R.
    Applications Engineer
    National Instruments

  • Pxi 6602 pulse generation

    Hi i am new user and i got pxi 6602 iwant to generate a 5 khz 3.5ms 2.5 amplitude and 2.5 offset i probably need to use 2 counters can someone tell me which wires i need to connect on scb 68 device and how ican write this program?
    Thanks for helping me
    Solved!
    Go to Solution.

    Did you read the specs before buying the device? You can't use any counter, let alone two. The device has TTL compatible signals so no amplitude or offset control. A card with timed analog output would work.

  • Comment mesurer un fréqunce avec une carte pxi-6602?

     Bonjour,
    Je cherche grâce à une carte PXI 6602 à mesurer la fréquence d'une signal périodique.
    Cette carte possèdent 8 compteur/timer, et je suis déja parvenu à genérer des trains d'impulsion sur ces compteurs.
    Néanmoins je ne parviens pas à mesurer des fréquences...
    Pour cela j'ai tenté de mesurer la fréquence d'un simple signal carré de 50Hz (amplitude 10V) généré par un GBF. J'injecte ce signal sur le PFI38/GATE0 du compteur 0, mais j'obtiens apres génération de mon code une fréquence nulle. J'ai réalisé ce code sur labVIEW 8.6 avec la fonction "Measure Pulse Width or Period.vi"   (code en pièce jointe)
    Merci d'avance pour votre aide
    Pièces jointes :
    mesure_freq.jpg ‏515 KB

    Desole, je ne parle pas francais bien. Vous devriez avoir des exemples pour l'usage du dispositif de l'E-serie DAQ en Visual Basic dans le repertoire \Program Files\National Instruments\NI-DAQ\Examples.
    Chris Matthews
    National Instruments

  • Filter pxi-6602 LabVIEW DAQ-mx

    Hi,
    I have a PXI-6602 card.
    The signal to measure is on the gate pin.
    On the source pin, it is the internal 20MHz.
    The counter uses the ND_BUFFERED_EVENT_CNT mode.
    I have a LabWindows code with NI driver DAQ for this card which uses filter with this function <<< Line_Change_Attribute( device number, line name, ND_LINE_FILTER, ND_5_MICROSECONDS) >>>
    I must rewrite the code to LabVIEW with NI driver DAQ-mx.
    I use the counter to count edge mode.
    I don't know how to configure the same filter in LabVIEW with DAQ-mx.
    Can you help me ?
    thanks
    best regards

    Assuming you're using the external signal as a "sample clock" in your edge count task, you would enable the filter like this (called before starting the task):
    There are other ways to configure what is essentially the same thing though--if you're using the external signal as something other than a sample clock (e.g. a "pause trigger") then there would be a different property that you would need to set instead.
    Best Regards,
    John Passiak

  • Routing signal through PXI_Trigge​r to RTSI

    PXI-6224 DAQ Generates a pulse through CTR0/PFI12 port. When the pulse reaches its trailing edge,PXI-5122 digitizer starts to acquire a voltage waveform.
    I think it should be done with routing signal through PXI_Trigger to RTSI,like my vi attached. But to the item I test,there is no referenced result,I am not sure if its result correct,even though the vi works OK. Please help me check it,thanks.
    =======================
    Windows XP SP2+LabVIEW 7.1
    Attachments:
    Hall Delay.jpg ‏253 KB
    Meas Usek_Halldelay_A(D).vi ‏265 KB

    Thank you for your answer,
    I'm now sure that its not possible to detect the analog signal level from the multiplexed signal arriving on DAQ 6052E.
    What do you think about a hardware solution which would consist to use an other 6052E DAQ on which the multiplexed analog signal would be connected.
    I think this way has to be explored but I don't know exactly the CPCI pin used to multiplex signal.
    Thanks for all
    Regards
    Geraud

  • Error when trying to use DO as "open collector" on PXI-6602

    When I try to configure a DO of my PXI-6602 as "open collector" I receive the error -200452 ("Measurements: Specified property is not supported by the device or is not applicable to the task."). This is completely mysterious to me since the PXI-6602 should have this feature and my code (see attachment) is practically identical to any of the numerous examples for this topic. Am I overlooking anything really stupid? (LV 8.5, PXI-8145RT) Cheers, uli
    Solved!
    Go to Solution.
    Attachments:
    openCollectorTest.vi ‏14 KB

    Hi uli,
    Did you try setting DO.Tristate while the task is running? There are a few DAQmx devices that do not support setting DO.Tristate while the task is running, but I don't think that the PXI-6602 is among them. I don't have an actual 6602 installed but with a simulated PXI-6602 and DAQmx 8.9, setting DO.Tristate while the task is running does not error.
    Using external hardware is perfectly fine, and should also work for timing I/O (whereas using DO.Tristate would only work for single-point digital I/O).
    I don't see the text that you quoted in the NI 660x Specifications, so I don't know what context it was in, and apparently it has been reworded since then. Note that devices that support open collector output say "open collector (open-drain)" in their specifications; for an example, see the NI USB-6008/6009 User Guide and Specifications.
    Brad
    Brad Keryan
    NI R&D

  • PXI 6602 +BNC-2121 +LabView 7.0

    Hello,
    I am using a PXI 6602 with BNC-2121 Connector Accessory and LabView 7.1 to measure a time in a cams programmer (it is composed by a motor, cams, microswitches. The cams rotate and commutate the microswitch state). I need to use all eight counter but for the moment I set up the program with only one counter ( only one cam). When the measure start I need to count the seconds until the microswitch commutate. In a complete rotation of the cam the microswitch can commutate more times and I need to measure every operation (see Figure 1) and I want to save every time (ti) in a matrix because in a second time I would create a output plot. There is a difficult in this measure: when the microswitch commutate there are a rebound problem. The rebound time (Tr in Figure 2) in negligible respect the cams programmer tolerance and I want eliminate it from my measure. Can Somebody help me to write the program, I am new in LabView world.
    Thank you
    Luca
    Attachments:
    Figure.jpg ‏26 KB

    Hi AlessioD,
    I understand that this is an old post, but I'm also interested in using
    buffered event counting with all the 8 counters of PXI-6624. Is it
    possible to do this and will there be any DMA issues. Do I need to use
    some sort of interrupt for counting? Also the link that you send no
    longer seems to be valid. I would love to read the document that you
    are referring to.
    Actually i'm more concerned because my application requires me to sync
    all the 8 counters of 6624 with 4472( I will be sharing the
    oversampling clock of 4472 with the counters).
    Thanks
    Kallis
    Have a nice day!!!
    LabVIEW | LabWindows/CVI | TestStand
    Certified LabVIEW Architect

Maybe you are looking for

  • How do I reboot my Macbook pro 2011 to a new internal hard drive?

    I had to get a new internal hard drive and I can't afford to pay some one to do it for me. So I was wondering how do I install the operating system on to the hard drive? Thanks

  • "Export classes in frame x" in AS3: how does it work?

    My steps: 1. I have some beefy classes 2. I want my SWF to show a preload anim while it loads these classes 3. Using the "Export classes in frame: " option, I move my classes to frame 10 4. I put a stop(); on the first frame and test w/ the bandwidth

  • Adobe 9 Pro- Reader

    Our firm has Adobe 9 Pro-- Reader 9, under edit, preferences, internet we have de-selected :  Display pdf in a browser.  The reason we do this is we have other applications that use Adobe to open their pdf files outside a browser.  Now we need also f

  • Boot Camp Upgrade

    I have an IMAC running Parallels 6.0. My original set up was a single Vista load that was used both for boot camp and Parallels. This worked great with no problems. I then created a Win 7 VM with Parallels that I have been using for about six months

  • Parking an accounting document - PRELIMINARY_POSTING_FB01

    Hello experts, We are using FM PRELIMINARY_POSTING_FB01 to park accounting documents. We are able to successfully park accounting documents using this FM but when we try to post the parked document using this FM, we are getting an error based on miss