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: 

Building Peak and Hold output counters: HW and SW required?

Hello again,
Still not clear I am afraid. Would both correlated DIO (STC2) and pattern output STC3 (?) realize what I need to achieve? To remind you I need to output to a single counter a certain profile (pattern) with precision and continuously. Duty cycle and frequency parameters can be changed on the fly after a certain time (seconds) and to be taken into account by the counter output with an acceptable delay (few 100ms).

Do I need to configure the counter output with all the successive values that it has to take or just one pattern and telling the counter output that it has to realize x times or indefinitely the same pattern until the task is stopped?

Also what STC2-based products can realize correlated DIO?

Thanks

Christophe Content

0 Kudos
Message 11 of 17
(564 Views)

Hello Christophe,

 

It seems that I have misunderstood what you were trying to explain.

The 0.1 % error is only on the frequency and duty cycle and not on the "on the fly" changing of the parameters.

 

By reading the previous posts I concluded that the 0.1% error was about the complete pattern.

 

So the "on the fly" changing of parameters can have an error up to several 100 ms?

Kind Regards,
Thierry C - CLA, CTA - Senior R&D Engineer (Former Support Engineer) - National Instruments
If someone helped you, let them know. Mark as solved and/or give a kudo. 😉
0 Kudos
Message 12 of 17
(552 Views)

Hello,

 

Please check the initial document that I have attached to my first message. There are 5 parameters: Dcy_I, F_I, tp, F_H, Dcy_H. Until one of those 5 parameters change the same pattern is repeated undefinitely.

 

1/ Is it possible to enter the pattern once to define the counter output or do I have to enter the whole sequence i.e. 100 or 1000 times the same pattern that the counter will then repeat?

 

When one of the 5 parameters will change, the application will redefine the pattern. This particular event can take few 100 ms at least, that is no problem.

 

2/ Would both correlated DIO (STC2) and pattern output STC3 (?) realize what I need to achieve?

 

3/ Also what STC2-based products can realize correlated DIO?

 

Thanks for your answers

Christophe Content

0 Kudos
Message 13 of 17
(539 Views)

Hello Christophe,

 

Correlated DIO (STC2 and STC3) follows the same rules as buffered analog input and output. It is possible to regenerate (set the Regeneration Mode to Allow Regeneration) a waveform from the board (on-board memory) by using the ‘Use Only on Board Memory’ Property and only transferring the data once. One very important thing to keep in mind is that in this case something called “glitching” can occur when you write new data to the buffer. This way you could have a combination of old and new data in the buffer at a certain moment in time.

 

To avoid this “glitching”-behavior one thing you can do is disable the regeneration and provide every sample through a (sort of) FIFO to your on board memory. So if you don’t mind the “glitching”, then you should be able to reuse the pattern in the way you’ve described.

 

With the buffered pulse train generation (STC3 only) you’re also able to set the regeneration mode and set the ‘Use Only on Board Memory’ Property. Also you have the benefits that I’ve mentioned before.

 

So as an answer to your questions:

 

1)      Yes, it should be possible.

2)      It should be possible with STC2 (correlated DIO is possible,  but not for the 621X-series) and with STC3-chipsets (correlated DIO and Buffered Pulse Train with Sample Clock Timing possible)

 

Regarding the last question:

If you’re talking about USB M-series device, then the bus-powered devices (621X) do not support correlated DIO. The Externally Powered USB M Series devices do support correlated DIO. More information about this can be found on http://digital.ni.com/public.nsf/allkb/D34BEC815E400ECD8625768A006F8AD6

 

So if you want to use a USB M-series device, then choose an Externally Powered version.

 

Can you let me know if this answers your questions or if you have some new ones?

Kind Regards,
Thierry C - CLA, CTA - Senior R&D Engineer (Former Support Engineer) - National Instruments
If someone helped you, let them know. Mark as solved and/or give a kudo. 😉
0 Kudos
Message 14 of 17
(514 Views)

Hello,

It is a little bit clearer but still not totally. I remind you that my application just uses one Digital Out channel on its own, with no external synchronization needed with an AI or AO or another DIO. I just need to be able to send waveforms that must be generated (see first attached document of the original post). My understanding was that I just needed the Hardware Timed I/O function of a board. Hence:

1/ do I really need this Correlated DIO function?

2/ could you please better narrow down the recommended hardware?

These two discussions will maybe help to better understand the need:

http://decibel.ni.com/content/docs/DOC-5763

http://forums.ni.com/t5/Multifunction-DAQ/How-to-generate-arbitrary-waveform-fro-counter/m-p/1248810...

Glitches are not really an issue provided their relative width is small vs the entire waveform (<1%)

Thanks again for your patience,

Christophe

0 Kudos
Message 15 of 17
(499 Views)

Hello Cristophe,

 

No, there are other options for generating hardware timed IO than the correlated DIO one.

 

If you just want Hardware timed I/O for one channel (on an M-series device, likein the original questions), then you can find the available options in the following KnowledgeBase:

http://digital.ni.com/public.nsf/allkb/51754212AD10BDCE862573BD007BFDD2

Kind Regards,
Thierry C - CLA, CTA - Senior R&D Engineer (Former Support Engineer) - National Instruments
If someone helped you, let them know. Mark as solved and/or give a kudo. 😉
0 Kudos
Message 16 of 17
(479 Views)

Hello Christophe,

 

I'll summarise everything that has been mentioned over here (and in our e-mail conversation) and provide a conclusion.

 

So what you want to do is the following:

- Generate the pattern described in your first attachment with those parameters on one output (so not for multiple injectors as mentioned in the forum post) without synchronization.
- Have at maximum a 0.1 % error on the parameters of the produced pattern?
- Have the ability to update the used parameters of the pattern (and therefore also thepattern
) with a delayup to 500 ms.
-
Glitches can happen provided their relative width is small vs the entire waveform (<1%)

 

To be realize this you cannot use a bus-powered USB- M-series Device (USB-621x like in your available hardware).

 

What you can and should use for this purpose is one of the following devices:

 

a) An Externally Powered USB M Series device will provide you with the possibility to perform corelated DIO (but no buffered pulse train generation).

b) A USB X Series device will let you perform corelated DIO as well as buffered pulse train generation.

 

The USB X Series (NI USB-6341) would indeed be a card that is able to obtain the wanted result.

Next to the timing, triggering and synchronization benefits of the used STC3-chipset, this card also provides a pricewise very good (cost-efficient) solution.

 

Kind Regards,
Thierry C - CLA, CTA - Senior R&D Engineer (Former Support Engineer) - National Instruments
If someone helped you, let them know. Mark as solved and/or give a kudo. 😉
0 Kudos
Message 17 of 17
(455 Views)