How can I send a square wave to the Tektronix AFG 3022B function generator and change its amplitude using a "To Instrument" block in Simulink?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
MathWorks Support Team
le 18 Juin 2019
Modifié(e) : MathWorks Support Team
le 11 Mar 2020
How can I send a square wave to the Tektronix AFG 3022B function generator and change its amplitude using a "To Instrument" block in Simulink?
Réponse acceptée
MathWorks Support Team
le 11 Mar 2020
Modifié(e) : MathWorks Support Team
le 11 Mar 2020
You can use the following settings in the "To Instrument" block in order to achieve this in Simulink:
1) In the "Hardware Configuration" tab, you can specify the interface or use the object from the MATLAB workspace.
2) In the "Instrument Initialization" tab, select "Execute function" and provide a function (for example: configureInstrument).
3) Create a MATLAB function with one input argument (the VISA object), for example:
function configureInstrument(v)
fprintf(v, '*RST');
fprintf(v, 'SOURCE1:FUNCTION SQUARE');
fprintf(v, 'SOURCE1:FREQUENCY 10E3');
fprintf(v, 'SOURCE1:VOLTAGE:AMPLITUDE 1.00');
fprintf(v, 'SOURCE1:VOLTAGE:OFFSET 0.00');
fprintf(v, 'SOURCE1:PHASE:ADJUST 0DEG');
fprintf(v, 'OUTPUT1:STATE ON');
end
4) In the "Send" tab set:
a) Command: 'SOURCE1:VOLTAGE:AMPLITUDE ' (with single quotes, the space at the end is important)
b) Output format: ASCII
c) ASCII format string: '%.2f\n'
With this configuration, at every simulation timestep the command sent to the instrument is going to look like this: 'SOURCE1:VOLTAGE:AMPLITUDE 1.94' (for an amplitude of 1.94). The amplitude value corresponds to the value of the signal at the input port of the "To Instrument" block.
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Instrument Connection and Communication 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!