From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Traditional DAQ Counter to DAQmx Counter

Solved!
Go to solution

I am trying to convert an existing legacy application written in LabVIEW 6 to LabVIEW 2012. I have an issue with a Traditional Daq Counter. Specicically the VI "Event Or Time Counter Config.vi". In the attached VI, you can see that Counter 1 is configured to count the cycles of an internal signal, not a signal from the counter's SOURCE pin. This configuration generates an integer count for every cycle of the internal signal: every 10 microSeconds in this case. I cannot seem to find a way to replicate that functionality in DAQmx. I am using a DAQCard 6062E (PCMCIA Slot) in a Dell D620 Laptop. I tried to attach a fully functional VI but get the error "The contents of the attachment doesn't match its file type." so instead I have had to attach a JPG image. I have included comments in the VI to help clarify things. Any help appreciated. Thank you.

0 Kudos
Message 1 of 6
(2,531 Views)
Solution
Accepted by MikeW_MikeW

In DAQmx you may achieve the same result by setting the input terminal for an edge count task to be the internal 100 kHz timebase:

 

Untitled 1 Block Diagram _2013-08-12_11-55-25.png

 

The 100 kHz Timebase is considered an "advanced terminal" (don't get me started on that topic) so to see it in the drop-down you must right-click the control/constant and select the appropriate I/O name filtering option.

  

 

Best Regards,

John Passiak
0 Kudos
Message 2 of 6
(2,510 Views)

I am not following you. My task is to generate a counter frequency (100 KHz) using a Counter Output and count the edges of that continuous output. You are showing me a Counter Input property.

0 Kudos
Message 3 of 6
(2,489 Views)

Counting the edges involves using a counter input task in DAQmx.  Generating the 100 kHz signal would have to use a separate counter (or like I mentioned, just use the 100 kHz timebase that is already available on the hardware).

 

 

Best Regards,

John Passiak
0 Kudos
Message 4 of 6
(2,485 Views)

Yes John, you are correct. I was getting confused between Counter Output and Counter Input. I implemented the property node for the internal timebase and I am getting the count that I need. Of course, my H/W only has a 20 MHz Timebase available and I have to do some compensation for that in my Big Loop but it is no big deal. I see this as a liability in not being able to specify a particular frequency as in the Traditional DAQ example I sent you but we all work the tools we have available. Thanks for your help.

0 Kudos
Message 5 of 6
(2,454 Views)

The hardware has a 20 MHz timebase or a 100 kHz timebase, but for some reason the 100 kHz timebase is considered an "advanced" terminal so you have to do the following to get it to show up in the list of available DAQmx terminals:

 

1.  Right-click the control/constant

2.  Select I/O Name Filtering

3.  Check Include Advanced Terminals

 

 

If I recall correctly that Traditional DAQ VI (Event or Time Counter Config.vi) only allows you to select a frequency that corresponds to one of the onboard timebases (but I haven't looked at Traditional DAQ VIs or documentation in quite some time so I might be mistaken--if it really does allow you to configure any frequency you like then it would have to be using a second counter or the frequency generator to do so, which you could do in DAQmx as well if you wanted to).

 

 

Best Regards,

John Passiak
0 Kudos
Message 6 of 6
(2,449 Views)