Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | Next revision Both sides next revision | ||
en:python-ivi:readme [2013/08/08 04:38] alex [Included drivers] |
en:python-ivi:readme [2013/08/08 07:08] alex [Installation] |
||
---|---|---|---|
Line 32: | Line 32: | ||
The Python IVI library is a Pythonized version of the .NET and COM IVI API specifications, with the CamelCase for everything but the class names replaced with lowercase_with_underscores. The library most closely follows the .NET standard, with the calls that would require the .NET helper classes follwing the corresponding COM specifications. There are some major deviations from the specification in order to be consistent with the spirit of the other IVI specifications. The fgen class is the most obvious example of this, using properties instead of the getters and setters as required by the IVI specification. | The Python IVI library is a Pythonized version of the .NET and COM IVI API specifications, with the CamelCase for everything but the class names replaced with lowercase_with_underscores. The library most closely follows the .NET standard, with the calls that would require the .NET helper classes follwing the corresponding COM specifications. There are some major deviations from the specification in order to be consistent with the spirit of the other IVI specifications. The fgen class is the most obvious example of this, using properties instead of the getters and setters as required by the IVI specification. | ||
+ | |||
+ | ===== Requirements ===== | ||
+ | |||
+ | * Python 2 or Python 3 | ||
+ | * One or more communication extensions | ||
===== Installation ===== | ===== Installation ===== | ||
Line 40: | Line 45: | ||
# python setup.py install | # python setup.py install | ||
</code> | </code> | ||
+ | |||
+ | ==== Instrument Communication Extensions ==== | ||
+ | |||
+ | Python IVI does not contain any IO drivers itself. In order to communicate with an instrument, you must install one or more of the following drivers: | ||
+ | |||
+ | === Python VXI11 === | ||
+ | |||
+ | Python VXI11 provides a pure python TCP/IP driver for LAN based instruments that support the VXI11 protocol. This includes most LXI instruments and also devices like the Agilent E2050 GPIB to LAN converter. | ||
+ | |||
+ | Home page: | ||
+ | http://www.alexforencich.com/wiki/en/python-vxi11/start | ||
+ | |||
+ | GitHub repository: | ||
+ | https://github.com/alexforencich/python-vxi11 | ||
+ | |||
+ | === Python USBTMC === | ||
+ | |||
+ | Python USBTMC provides a pure python USBTMC driver for instruments that support the USB Test and Measurement Class. Python USBTMC uses PyUSB to connect to the instrument in a platform-independent manner. | ||
+ | |||
+ | Home page: | ||
+ | http://alexforencich.com/wiki/en/python-usbtmc/start | ||
+ | |||
+ | GitHub repository: | ||
+ | https://github.com/alexforencich/python-usbtmc | ||
+ | |||
+ | === Linux GPIB === | ||
+ | |||
+ | Python IVI provides an interface wrapper for the Linux GPIB driver. If the Linux GPIB driver and its included Python interface available, Python IVI can use it to communicate with instruments via any GPIB interface supported by Linux GPIB. | ||
+ | |||
+ | Home page: | ||
+ | http://linux-gpib.sourceforge.net/ | ||
+ | |||
+ | === pySerial === | ||
+ | |||
+ | Python IVI provides an interface wrapper for the pySerial library. If pySerial is installed, Python IVI can use it to communicate with instruments via the serial port. | ||
+ | |||
+ | Home page: | ||
+ | http://pyserial.sourceforge.net/ | ||
===== Usage example ===== | ===== Usage example ===== |