Scilab Home Page | Wiki | Bug Tracker | Forge | Mailing List Archives | Scilab Online Help | File Exchange
ATOMS : VISA Signal Acquisition and Instrument Control Toolbox details
Please login or create an account

VISA Signal Acquisition and Instrument Control Toolbox

Interface with National Instrument's Virtual Instrument Software Architecture (VISA)
(2628 downloads for this version - 7029 downloads for all versions)
Details
Version
0.9.1
Author
Scilab Enterprises
Owner Organization
Scilab Enterprises
Maintainers
Francois Granade
Clement David
Yann Debray
Categories
Creation Date
February 18, 2016
Source created on
No source archive has been provided for this toolbox version.
Binaries available on
Scilab 6.0.x:
Windows 32-bit Windows 64-bit
Install command
--> atomsInstall("visa")
Description
            This is the version for Scilab 6.0.0 of the VISA toolbox for signal acquisition
and instrument control. 

This toolbox provides an universal interface for measurement device from most of
the device suppliers on the market (National Instrument, Agilent/HP, ... ),
including:

- Digital multimeter (DMM)
- Oscilloscope
- Arbitrary waveform/function generator
- DC power supply
- AC power supply
- Switch
- Power meter
- Spectrum analyzer
- RF signal generator
- Upconverter
- Downconverter
- Digitizer
- Counter/timer


This is a beta version, for community evaluation. 

The Virtual Instrument Software Architecture (VISA) is a standard for
configuring, programming, and troubleshooting instrumentation systems comprising
GPIB, VXI, PXI, Serial, Ethernet, and/or USB interfaces. VISA provides the
programming interface between the hardware and development environments.

Requirement:
Appropriate hardware, in the form of a National Instruments GPIB,GPIB-VXI,
MXI/VXI or serial interface board.
For GPIB applications, install NI-488. For VXI applications, install NI-VXI. For
other hardware interfaces, NI-VISA uses the system’s standard drivers.
NI-VISA distribution media
            
Files (2)
[314.38 kB]
Windows 32-bit binary for Scilab 6.0.x
Windows 32-bit for Scilab 6.0.0 - NI-VISA 5.3
[308.93 kB]
Windows 64-bit binary for Scilab 6.0.x
Windows 64-bit for Scilab 6.0.0 
News (0)
Comments (14)     Leave a comment 
Comment from Stephane Pisani -- February 19, 2016, 05:24:39 PM    
Hi,

I have installed Scilab 6.0; Visa 15.0.1 and visa_0.9.1 (under Windows 7 32bits) and I got
the same error message than previously:
******************************************************************************************

Initialisation :
  Chargement de l'environnement de travail

Start VISA Integration Toolbox
	Load macros
	Load gateways
atomsLoad : Une erreur est survenue au cours du chargement de 'visa-0.9.1-0':
	addinter : La bibliothèque partagée n'a pas été chargée: Unknown Error
------------------------------------------------------------
This is a beta software: 
please report any bug at http://bugzilla.scilab.org.
Thank you!
------------------------------------------------------------
******************************************************************************************

Could you let me know how can I sucessfully use this toolbox ?
Comment from Manfred Mücke -- March 4, 2016, 12:55:00 PM    
Hello,

I installed the toolbox under Win8 64bit and Scilab 6beta1. I get the following message
when 
loading the toolbox:

Start VISA Integration Toolbox
	Load macros
	Load gateways
WARNING: This module requires a Windows x86 platform.
	Load help
	Load demos


findAllInstruments gives the following:

	--> findAllInstruments()
	at line     6 of function findAllInstruments 	
	(xxx\contrib\visa_0.9.1\macros\findAllInstruments.sci line 14 )

	Undefined variable: viOpenDefaultRM

Any advice?

Thanks, Manfred
Answer from Clement David -- March 4, 2016, 12:56:54 PM    
>> I installed the toolbox under Win8 64bit and Scilab 6beta1. I get the following
message
> when 
> loading the toolbox:
> 
> Start VISA Integration Toolbox
> 	Load macros
> 	Load gateways
> WARNING: This module requires a Windows x86 platform.
> 	Load help
> 	Load demos
> 
> Any advice?

Hello Manfred,

The warning indicates that you download the Scilab x86 whereas you should use Scilab x64
(and thus the visa x64 toolbox).

Regards

--
Clément
Answer from Manfred Mücke -- March 4, 2016, 01:43:42 PM    
Hi Clément,
 
> The warning indicates that you download the Scilab x86 whereas you should use Scilab
> x64 (and thus the visa x64 toolbox).

I definitely installed the 64bit version of the toolbox.
First I installed via atoms (atomsInstall('visa')), which gave exactly the result described

above when restarting Scilab. (I assume atoms checks for 32/64 bit and downloads the
correct 
file.)

Then I removed the package again (checked also that the contrib/visa folder was removed), 
manually downloaded visa_0.9.1.bin.x64.windows.zip and installed it.

BTW, atomsLoad with path didn't work:

----------
--> atomsInstall('visa_0.9.1.bin.x64.windows.zip')
at line   170 of function atomsInstall ( xxx\modules\atoms\macros\atomsInstall.sci line 186
)
Invalid index.
----------

but unpacking in /contrib and starting via Menu Tools/visa_0.9.1 worked). But again, I
receive 
the error message described above.

Thanks, Manfred 
Answer from Clement David -- March 9, 2016, 02:08:17 PM    
> Hi Clément,
>  
> > The warning indicates that you download the Scilab x86 whereas you should use
> Scilab
> > x64 (and thus the visa x64 toolbox).

Hi Manfred,

I just updated the visa 0.9.1 x64 for Scilab 6.0.0 beta1 and fixed the issue. In fact I 
just forgot to update the loader.sce to enforce the x64 detection. Could you check after 
an `atomsSystemUpdate` please ?

--
Clément
Comment from Millet Fabien -- March 9, 2016, 09:35:32 AM    
Hi Clément,

I've the same issue of Manfred.

I suppose this is due to the loader.sce function in ..\sci_gateway\c
#####
if win64() then
  warning(_("This module requires a Windows x86 platform."));
  return
end
#####
So this is why when we launch --> findAllInstruments()
	at line     6 of function findAllInstruments 	
	(xxx\contrib\visa_0.9.1\macros\findAllInstruments.sci line 14 )

	Undefined variable: viOpenDefaultRM

It seems that we didn't have done the link between Visa and the function is not
recognized.


If I take out the win64() check then I get an issue with addinter: 
addinter: The shared archive was not loaded: A dynamic link library (DLL) initialization
routine failed.


Could you please help to understand how to make the link with Visa DLL ? 

Thanks, Fabien


PS: I've updated NI-Max to last version and I'm using Scilab 6.0.0 beta 1 in 64bit mode.
Comment from Millet Fabien -- March 9, 2016, 10:56:58 AM    
Added information:

When I load scilab_visa.dll with Dependency Walker, I've got those errors: 

Error: At least one required implicit or forwarded dependency was not found.
Error: Modules with different CPU types were found.
Warning: At least one delay-load dependency module was not found.
Warning: At least one module has an unresolved import due to a missing export function in
a delay-load dependent module.


The Scilab_visa.dll which is on the x64 package of the 0.9.1 seems to be indicated a CPU
of x86 inside based on Dependency Wlaker.

Is the scilab_visa.dll for x64 correct ??

Thanks. Fabien
Answer from Clement David -- March 9, 2016, 11:07:08 AM    
> The Scilab_visa.dll which is on the x64 package of the 0.9.1 seems to be indicated a
> CPU
> of x86 inside based on Dependency Wlaker.
> 
> Is the scilab_visa.dll for x64 correct ??
> 
> Thanks. Fabien

Yep in fact the 0.9.1 version for Scilab 6.0.0 beta1 is not build against the x64 visa 
library. I will update the version today.
Comment from Millet Fabien -- March 9, 2016, 02:30:46 PM    
Hello Clement,

Thanks to have updating it so fast. 
Now I have the same error of Stephane: 

atomsLoad: An error occurred while loading 'visa-0.9.1':
	addinter: The shared archive was not loaded: Unknown Error


When I try to read scilab_visa.dll with dependency walker I've got this log: 

Error: At least one required implicit or forwarded dependency was not found.
Warning: At least one delay-load dependency module was not found.
Warning: At least one module has an unresolved import due to a missing export function in
a delay-load dependent module.


core.dll 
output_stream.dll
api_scilab.dll
libntl.dll
ast.dll
vcruntime140.dll
MSVCR90.DLL
API-MS-WIN-APPMODEL-RUNTIME-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-ERROR-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-ROBUFFER-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-STRING-L1-1-0.DLL
API-MS-WIN-SHCORE-SCALING-L1-1-1.DLL
DCOMP.DLL
IESHIMS.DLL

seems to not find entry point ... Is this why addinter function returns an error ??
Is it a module or soft that we miss to make the link worked?

I've tried, scilab 5.5.2 (64 bits) and 6.0.0 and always got the same answer (see above). 
How could I know where addinter fails ... to find a solution?

Thanks.
Fabien
Answer from Clement David -- March 9, 2016, 02:45:04 PM    
> Hello Clement,
> 
> Thanks to have updating it so fast. 
> Now I have the same error of Stephane: 
> 
> atomsLoad: An error occurred while loading 'visa-0.9.1':
> 	addinter: The shared archive was not loaded: Unknown Error
> 
> 
> When I try to read scilab_visa.dll with dependency walker I've got this log: 
> 
> Error: At least one required implicit or forwarded dependency was not found.
> Warning: At least one delay-load dependency module was not found.
> Warning: At least one module has an unresolved import due to a missing export
function
> in
> a delay-load dependent module.
> 
> 
> core.dll 
> output_stream.dll
> api_scilab.dll
> libntl.dll
> ast.dll
> vcruntime140.dll
> MSVCR90.DLL
> API-MS-WIN-APPMODEL-RUNTIME-L1-1-0.DLL
> API-MS-WIN-CORE-WINRT-ERROR-L1-1-0.DLL
> API-MS-WIN-CORE-WINRT-L1-1-0.DLL
> API-MS-WIN-CORE-WINRT-ROBUFFER-L1-1-0.DLL
> API-MS-WIN-CORE-WINRT-STRING-L1-1-0.DLL
> API-MS-WIN-SHCORE-SCALING-L1-1-1.DLL
> DCOMP.DLL
> IESHIMS.DLL
> 
> seems to not find entry point ... Is this why addinter function returns an error ??
> Is it a module or soft that we miss to make the link worked?
> 
> I've tried, scilab 5.5.2 (64 bits) and 6.0.0 and always got the same answer (see
above).
> 
> How could I know where addinter fails ... to find a solution?

Hello Fabien,

OK thanks for the information : lets focus on a single platform / Scilab version for now.
On my windows x64 with Scilab 6.0.0 beta1 x64 and visa 0.9.1-2 x64 I have :

 * some dependency walker errors but only for Scilab libraries (CORE.DLL OUTPUT_STREAM.DLL
API_SCILAB.DLL LIBINTL.DLL AST.DLL) as Scilab is not in the %PATH
 * VISA64.DLL is also present on the list
 * KERNEL32.DLL VCRUNTIME140.DLL and some API-MS-WIN DLLs

Comparing to the ones on your system, VISA64.DLL seems present on my setup and missing on
yours, can you confirm ? Could you also give me your visa installed version ?

Regards,

Comment from Millet Fabien -- March 9, 2016, 03:08:15 PM    
Hello Clement,

The list I place before is the one with no entry points.

The other seems to work, or at least the soft has found an entry point. 
So I have entry point for :
VISA64.DLL
KERNEL32.DLL
and some API-MS-WIN dlls

but not for VCRUNTIME140.DLL. (if I compare to your list).


So I don't confirm you comment => I have an entry point for VISA64.dll and I could find
the function we needed. 
I don't get why the link with addinter do not work. 

If I scroll down the Visa64.dll in the dependancy walker software, only one dll seems to
not be there: 
MSVCR90.DLL (under VISAUTILITIES.DLL)
=> if you give me an address mail I could send you a picture ... It could be easier to
explai :-s


Regarding NI software:
- I have Ni-Max 15.3.0f0
- NI-Visa is 15.5
- NI-Visa Runtime 15.5
- NI-488.2 15.5

Thanks.
Fabien
Answer from Clement David -- March 9, 2016, 05:02:11 PM    
> The list I place before is the one with no entry points.
> 
> The other seems to work, or at least the soft has found an entry point. 
> So I have entry point for :
> VISA64.DLL
> KERNEL32.DLL
> and some API-MS-WIN dlls
> 
> but not for VCRUNTIME140.DLL. (if I compare to your list).
> 
> 
> So I don't confirm you comment => I have an entry point for VISA64.dll and I could
> find
> the function we needed. 
> I don't get why the link with addinter do not work. 
> 
> If I scroll down the Visa64.dll in the dependancy walker software, only one dll seems
> to
> not be there: 
> MSVCR90.DLL (under VISAUTILITIES.DLL)
> => if you give me an address mail I could send you a picture ... It could be
easier
> to
> explai :-s

Ok could you try installing the visual studio 15 runtime lib and check ? In the meantime I
will re-compile the toolbox with VS2013 to remove the dependency on VCRUNTIME140.DLL .
Answer from Millet Fabien -- March 10, 2016, 07:14:53 AM    
> Ok could you try installing the visual studio 15 runtime lib and check ? In the
meantime
> I
> will re-compile the toolbox with VS2013 to remove the dependency on VCRUNTIME140.DLL
.

Hello Clement,

I've installed this: 
https://www.microsoft.com/en-us/download/details.aspx?id=48145

and it works. I didn't get the message before. It load the visa correctly.  
I only check findAllInstruments() for now and it has find the instrument which was
connected. 
I will play with it now. 

Thanks for your help.
Fabien 
Answer from Manfred Mücke -- March 16, 2016, 10:49:49 AM    
This answer has been deleted.
Answer from Manfred Mücke -- March 16, 2016, 10:51:32 AM    
Hi Clement,

> I will re-compile the toolbox with VS2013 to remove the dependency on
VCRUNTIME140.DLL.

just wanted to check if there is a new version with reduced dependencies.

Thanks, Manfred
Comment from Xu Narcy -- May 20, 2016, 04:03:33 AM    
dear scilab, how to use the visa Format I/O in the scilab? 
I pass with the viPrint(), buf fail with viScan().
May you share a example?
Thank & BRs.
Comment from Anibal Carpio -- October 5, 2016, 11:34:03 PM    
Is there a version to be used with Linux?
Answer from Clement David -- March 1, 2017, 03:28:28 PM    
> Is there a version to be used with Linux?

Hi Anibal, on my linux system ; I am unable to get VISA working :/ . If you are aware of
an open-source (or a working) VISA implementation, I would be glad to build the module
against it.
Comment from Vin Gillette -- February 24, 2017, 09:51:25 PM    
Dear maintainers, 
As it's clearly mentionned in the user 
manual the viWrite command automatically 
provided a carriage return("\n") after 
the scpi command. I'm highly interested 
by remove this special character but i 
guess that to do it i have to go down 
from one layer maybe the dll? Is it 
possible to have access to this 
particular function or do you have an 
alternative method to remove this ending 
character? Thanks per advance guys. 
Comment from Martin Lavier -- March 31, 2017, 05:51:22 PM    
Hi, 

I have an issue with the toolbox. I try to communicate with a device which work at 38400
bauds. I configurated everything on NI-MAX but scilab doesn't seem to use the correct
baudrate anyway. 

Is their any possible way to configurate the baudrate scilab will use to send SCPI commands
?

Looking forward for your insights,
Thanks, Martin
Leave a comment
You must register and log in before leaving a comment.
Email notifications
Send me email when this toolbox has changes, new files or a new release.
You must register and log in before setting up notifications.