Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

PXI-6133 Pulse Frequency Output and Input using DAQmx

Solved!
Go to solution

I am trying to confgure a counter pulse frequency output task, and then read that signal in with a counter input pulse frequency input task.  I am using a 2 PXI-6133's, each connected to  a BNC-2090A.  I want output a square of a certain frequency with the counter output pulse frequency task, and then read in the frequency of that signal using a couter input frequency task.  I am not sure how to property configure these tasks, or how to set which terminal to use for each tas.  I'm not sure what terminals on the BNC-2090A the counter input/output channels correspond to because this is not show in the PXI-6133 documentation or the BNC-2090A documentation.

 

Please see the attached VI for my attempt at setting this up.  I am currently getting two errors:

1) Error-200452 occured at PRoperty Node DAQmx Channel in Counter Test- Specified property is not supported by the device or is not applicable to the task.

 

2. Error -89136 at DAQmx Start Task- Specified route cannot be satisfied because the hardare does not support it.

 

If I remove the two DAQmx property channels where I try to set the terminals for the counters, then the program runs, but then I do not know which terminals on the BNC-2090A the counters are connected to!  This causes the DAQmx read for the couter in frequency tasks to timeout because it doesn't detect a signal.

 

I would greatly appreciate help for properly configuring these tasks and determine what terminals on the BNC-2090A the counter tasks will run on.

0 Kudos
Message 1 of 7
(4,380 Views)

I'm on LV2013 and can't open your code so can only address your description.

 

As a start, because both cards are PXI, they share a PXI timing bus that can be used to route your pulse signal between the boards without need for external wires.   DAQmx makes this pretty easy by handling a lot of the dirty work under the hood.

 

Lets say you create your pulse using Dev1 and Ctr0.   When you configure your measurement task on Dev2, you can designate the signal you measure as something like "Dev1/Ctr0InternalOutput".  That's about it.  DAQmx works out the signal routing under the hood.  Note that the terminal constant or control you use to designate the signal to measure may require you to first right-click, choose "I/O Name Filtering...", then select "Show Advanced Terminals".  If you agree that this shouldn't be hidden away, give Kudos to this idea.

 

 

-Kevin P

ALERT! LabVIEW's subscription-only policy came to an end (finally!). Unfortunately, pricing favors the captured and committed over new adopters -- so tread carefully.
0 Kudos
Message 2 of 7
(4,346 Views)
Solution
Accepted by topic author dh10

I see a couple issues in the code initially:

  1. For your CI task, you have the type set as Counter Input>>Frequency.  But on the DAQmx channel property node for that task, you're changing the CI.PulseWidth.Term property.  It should be CI.Freq.Term.  Set the input to be whichever PFI line you'd like to input the signal on.  Quick tip: you don't have to type the device name in at all.  Entering "PFI0" is the same as "DevN/PFI0" since the device has already been specified at the DAQmx Create Virtual Channel function.  Leaving the device name out will make your code more flexible in case you later decide to change the device name.
  2. S Series cards, such as the 6133, do not have the same flexibility for changing output terminals of counter tasks as you might find with an M or X series device.  Page 83 of the S Series Manual shows which signals can be output to PFI lines - Ctr0Out is not one of those.  Instead, Ctr0 out is, by default, pin 2.  The wiring from a 6133 to BNC-2090A is definitely tough to figure out (likely because the 2090A was designed for use with E and M series devices), but if you compare the pinout for a PXI-6255 connector 0 with the 6133 pinout, you'll notice that they're essentially a 1-to-1 match.  Pin 2 is PFI12 on the 6255, so I would assume the same for the 6133.  All this to say, Ctr0Out will always appear on pin 2/PFI12 for the 6133, and you therefore cannot change the output terminal as your code attempts to do, resulting in the -89136 error.  Remove that property node entirely and the error should go away.
Cody A.
Message 3 of 7
(4,340 Views)

Kevin,

 

Thank you for your reply.  My scenario in the problem description is just for testing purposes to get it working.  My final product will actually have this running on two different NI Chasses that will be communicating using frequency modulation.  Once frequency will mean the system is healthy, the other will indicate there was failure.  I don't think your solution for using internal signal routing within the NI Chassis will work.  My apologies for not describing the final product I am working towards.

0 Kudos
Message 4 of 7
(4,316 Views)

Cody, thank you very much for your reply.  This information is useful, but I still have a couple more questions.

 

1)  I was assuming the PXI-6133's are X series because of the "X" in the name, but it looks like I was wrong, so I cannot change the terminals for the counters.

 

2)  Just to summarize and make sure my understanding is correct:  With my S Series PXI-6133 I can set the input terminal for the counter frequency measurement (input), but I cannot set the terminal for a counter output?

 

3)  Using the pinout in the S-Series manual, how do I figure out which pin that corresponds to on the BNC-2090?  The PXI-6133 User manual doesn't show which PFI Channels the Counter Out channels correspond to.  I will try using the channels specified in the PXI-6255 manual to see if that works, but it seems rediculous this isn't specified in the 6133 User Manual.

 

Thanks again for your help.  I will test these updates out with the counter output attached to PFI12.  I won't be able to test my DAQ again until Wednesday, but I will post back once I do.

0 Kudos
Message 5 of 7
(4,312 Views)

1)  I was assuming the PXI-6133's are X series because of the "X" in the name, but it looks like I was wrong, so I cannot change the terminals for the counters.

X Series devices have a 63XX numbering.   The X in the name of the PXI-6133 is just one of the letters in the PXI (PCI eXtension for Instrumentation) acronym, which describes the card's bus type.  All S Series cards have a 61XX number.

 

2)  Just to summarize and make sure my understanding is correct:  With my S Series PXI-6133 I can set the input terminal for the counter frequency measurement (input), but I cannot set the terminal for a counter output?

Yes, that is correct.  The input can be on any PFI line that can be routed to the counter input (source or gate, depending on counter task type), but the output is static.

 

3)  Using the pinout in the S-Series manual, how do I figure out which pin that corresponds to on the BNC-2090?  The PXI-6133 User manual doesn't show which PFI Channels the Counter Out channels correspond to.  I will try using the channels specified in the PXI-6255 manual to see if that works, but it seems rediculous this isn't specified in the 6133 User Manual.

The BNC-2090A was not designed for use with S series cards (only M and E series, as specified in the manual), which is why the documentation does not include connection information for using an S Series card with the 2090A.  In the 2090A user manual, page 22 shows that the front screw terminal connector has a spot for PFI12.  I used the 6255 manual to match pin 2 of the 68 pin connector to PFI 12.  Assuming the pinout between 6255 and 6133 are 1-to-1, you can assume that pin 2 on the 6133 matches PFI 12 as well.  This is not included in the 6133 manual or 2090A manual because those two devices were not designed for use together.

Cody A.
Message 6 of 7
(4,306 Views)

Cody,

 

Thanks again for your help, everything is now working as expected!

0 Kudos
Message 7 of 7
(4,279 Views)