hardware discovery using instrhwinfo
1 view (last 30 days)
Show older comments
I am developing this little app. There is a "Find" button when it is clicked, I would like to scan for all available hardware connected to my system and then show a list of VISA address that is available.
Below is the code snippet using instrhwinfo to do this job. If this is the right way ?
visainfo = instrhwinfo('visa', 'agilent');
if ( isempty(visainfo.ObjectConstructorName) )
fprintf('No VISA instrument is found');
else
for n = 1:length(visainfo.ObjectConstructorName)
obj = eval(visainfo.ObjectConstructorName{n});
visaInstruments{n} = get(obj, 'RsrcName');
fprintf('%s\n', visaInstruments{n});
end
end
Based on the description for instrhwinfo, 'visa' is the interface and 'agilent' is the adaptor. Question is, if I create a standalone application using application compiler and share to user, does user need to install Agilent VISA library in order to use this application or everything will be provided by the Matlab runtime ?
In other words, any dependency for application using instrument control toolbox ?
0 Comments
Accepted Answer
Vinod
on 25 Nov 2015
Your standalone application will require the user of the application to install any 3rd party drivers such as Agilent VISA. Without this, your compiled code on a machine without Agilent VISA will fail to find Agilent VISA as the VISA libraries are attempted to be loaded up at run time.
2 Comments
Vinod
on 28 Nov 2015
This would be the kind of code you can use.
someVariable = instrhwinfo('visa');
if isempty(someVariable.InstalledAdaptors)
% If we are here, it means the user doesn't have a compatible installed VISA
msgbox('Please install a compatible VISA installation');
else
% Check to see if you have agilent visa installed
% App code here...
end
More Answers (0)
See Also
Categories
Find more on Instrument Control Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!