Help with error Invalid argument at position 2. Function requires exactly 1 positional input(s).

42 vues (au cours des 30 derniers jours)
I need some help debugging an error I am seeing in my command window when trying to invoke a static method.
This is the code I have began writing to remotely control a visa instrument.
classdef TandE
methods(Static)
function insertionloss(machine, ip, calfile)
switch machine
case 1
vna = visadev('ni', ip);
fopen(vna);
%Setup Calibration / Port Mapping
write(vna, "SYST:PRESET");
write(vna, "MMEM:LOAD:CSAR" + ' ' + calfile);
write(vna, "*WAI");
write(vna, "SENS:SWE:MODE CONT");
fclose(vna);
case 2
otherwise
warning('Unexpected Machine')
end
end
end
end
When I try to call the function I am hit with this error. I am not quite sure what I am doing incorrectly but some help would be appreciated.
>> a = TandE
a =
TandE with no properties.
>> a.insertionloss(1, ip, calfile)
Error using TandE.insertionloss
Invalid argument at position 2. Function requires exactly 1 positional input(s).
>>

Réponse acceptée

Tanner Fortier
Tanner Fortier le 27 Déc 2022
Déplacé(e) : Voss le 28 Déc 2022
Issue was fixed, found it it was due to the visadev call and not the function call. Was using visa to call before and did not realize that the newer visadev did not have the same requirements for a call.

Plus de réponses (0)

Catégories

En savoir plus sur Downloads dans Help Center et File Exchange

Produits


Version

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by