Change properties of more than one channel for a session-based DAQ object

1 vue (au cours des 30 derniers jours)
C R
C R le 25 Fév 2014
Concerning the session-based DAQ control:
s = daq.createSession('ni');
s.addAnalogInputChannel('cDAQ1Mod6',[0 1 2 3],'Thermocouple');
When there are multiple channels, how to I assign similar properties. For example:
s.Channels.Thermocoupletype = 'J';
This does not work when there is more than one channel assigned on the left hand side, and only one on the right (It seems there is no overloaded function to distribute the 'J' to all channels...).
Also, and I feel like the solution, shown with 3 channels:
s.Channels(1).Thermocoupletype = 'J';
s.Channels(2).Thermocoupletype = 'J';
s.Channels(3).Thermocoupletype = 'J';
Is poor at best, and very cumbersome - if you have 15 channels and 3 properties, that is 45 lines of code!!! For loops seem like a bad idea also, thou I am sure they work.
How can I change Channel properties for multiple channels at one time?
Many fine details for session-based DAQ work are difficult to find in the help documentation. Please guide me.
Thanks for any advice.

Réponses (1)

Shyam Sangaraju
Shyam Sangaraju le 23 Juil 2014
“set” function can be used to assign similar properties to multiple channels. Following sample code demonstrates how to use “set” function:
>> s = daq.createSession('ni');
>> h = s.addAnalogInputChannel('Dev1',[0 1 2 3],'Voltage');
>> set(h,'Name','HWDigital');
Where ‘Name’ is PropertyName (in your case it could be ‘Thermocoupletype’).
HWDigitalis PropertyValue (in your case it could be ‘J’).
his vector of handles.
“set” function sets the named properties to the specified values on the object(s) identified by H. H can be a vector of handles, in which case set sets the properties' values for all the objects.

Catégories

En savoir plus sur Simultaneous and Synchronized Operations dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by