Mi servirebbe un aiuto in matlab
Salve, vorrei chiedervi un aiuto in matlab.
Sono da poco un "utilizzatore" d matlab e vorrei chiedervi un consiglio su come scrivere un codice: in pratica sto utilizzando un macchinario (un keithley 6517b) con un collegamento RS-232 e per mandargli query (e ricevere dati da analizzare) devo utilizzare matlab.
Per il momento ho scritto questo codice per collegarmi al macchinario.
% Find a serial port object.
obj1 = instrfind('Type', 'serial', 'Port', 'COM4', 'Tag', '');
% Create the serial port object if it does not exist
% otherwise use the object that was found.
if isempty(obj1)
obj1 = serial('COM4');
else
fclose(obj1);
obj1 = obj1(1)
end
% Connect to instrument object, obj1.
fopen(obj1);
CICLO
%Query
a = [];
data = query (obj1, 'richiestavaria');
a (end+1) = data;
Ora nella sezione CICLO dovrei mettere un ciclo (o un timer) per ripetere la query per un tot di tempo predefinito, ad esempio un'ora o una giornata (si potrebbe mettere anche un for, ma non so come inserire il timer nel for), ma non so come impostare il timer.
Sono da poco un "utilizzatore" d matlab e vorrei chiedervi un consiglio su come scrivere un codice: in pratica sto utilizzando un macchinario (un keithley 6517b) con un collegamento RS-232 e per mandargli query (e ricevere dati da analizzare) devo utilizzare matlab.
Per il momento ho scritto questo codice per collegarmi al macchinario.
% Find a serial port object.
obj1 = instrfind('Type', 'serial', 'Port', 'COM4', 'Tag', '');
% Create the serial port object if it does not exist
% otherwise use the object that was found.
if isempty(obj1)
obj1 = serial('COM4');
else
fclose(obj1);
obj1 = obj1(1)
end
% Connect to instrument object, obj1.
fopen(obj1);
CICLO
%Query
a = [];
data = query (obj1, 'richiestavaria');
a (end+1) = data;
Ora nella sezione CICLO dovrei mettere un ciclo (o un timer) per ripetere la query per un tot di tempo predefinito, ad esempio un'ora o una giornata (si potrebbe mettere anche un for, ma non so come inserire il timer nel for), ma non so come impostare il timer.
Risposte
Puoi utilizzare il comando pause per fermare l'esecuzione per un determinato tempo. Se inserito alla fine del codice all'interno del ciclo ti permetterà di decidere ogni quanto tempo eserguire la tua query. Ovviamente non si tratta di qualcosa di molto preciso. Non ti saprei dire se esiste qualcosa di più preciso in matlab (non l'ho mai usato per questo genere di cose).
Ah grazie mille
allora proverò con il comando "pause" e vedo come va.
