README.rst

Thu, 24 May 2018 23:08:14 +0200

author
David Douard <david.douard@logilab.fr>
date
Thu, 24 May 2018 23:08:14 +0200
changeset 102
91713944ebb0
parent 96
6ff321f0d37d
permissions
-rw-r--r--

[prologix] implement more prologix commands and add API to register emulated devices

also refactor tests as generative tests using pytest's parametrized API.

94
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
1 ===============
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
2 pygpibtoolkit
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
3 ===============
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
4
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
5 pygpibtoolkit_ is a pure Python 3 toolkit for managing and controlling test
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
6 equipment via the GPIB_ (aka IEEE-488) bus.
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
7
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
8 Currently, it only supports Prologix_ compatible GPIB dongles, but support for
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
9 linux-gpib_ is planned.
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
10
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
11 Installation
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
12 ============
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
13
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
14 The simplest way to install pygpibtoolkit_ is to use pip_. I strongly recommend
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
15 you use virtualenvs_ for this, for example via virtualenvwrapper_ or pew_. Here
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
16 is an example session using virtualenvwrapper_ on a Debian stretch machine:
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
17
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
18 .. code-block:: bash
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
19
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
20 david@host:~$ mkvirtualenv -p /usr/bin/python3 pygpib
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
21 Already using interpreter /usr/bin/python3
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
22 Using base prefix '/usr'
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
23 New python executable in /home/david/.virtualenvs/pygpib/bin/python3
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
24 Also creating executable in /home/david/.virtualenvs/pygpib/bin/python
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
25 Installing setuptools, pkg_resources, pip, wheel...done.
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
26
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
27 (pygpib) david@host:~$ pip install pygpibtoolkit
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
28 [...]
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
29 Installing collected packages: pyserial, numpy, sip, PyQt5, pyqtgraph, pygpibtoolkit
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
30 Successfully installed PyQt5-5.10.1 numpy-1.14.3 pygpibtoolkit-0.1.0 pyqtgraph-0.10.0 pyserial-3.4 sip-4.19.8
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
31 (pygpib) david@pavo:~$ pygpib-detect --help
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
32 usage: A simple tool for detecting connected GPIB devices [-h] [-d DEVICE] [-v]
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
33
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
34 optional arguments:
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
35 -h, --help show this help message and exit
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
36 -d DEVICE, --device DEVICE
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
37 Device of connected Prologix GPIB bundle
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
38 [/dev/ttyUSB0]
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
39 -v, --verbose
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
40 (pygpib) david@host:~$ python
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
41 Python 3.5.3 (default, Jan 19 2017, 14:11:04)
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
42 [GCC 6.3.0 20170118] on linux
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
43 Type "help", "copyright", "credits" or "license" for more information.
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
44 >>> from pygpibtoolkit.prologix import GPIB
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
45 >>> from pygpibtoolkit.gpibcontroller import GPIBController
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
46 >>> cnx = GPIB(device='/dev/ttyUSB0')
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
47 >>> ctl = GPIBController(cnx)
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
48 >>> dvm = c.register_device(24, "HP3456A")
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
49 >>> dvm.S0F1 # set DVM to DC Voltage mode
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
50
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
51
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
52
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
53 Please refer to the `user manual`_ for more informations on how to use the
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
54 provided tools and how to use the API.
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
55
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
56
63
1c0d92f95115 added doc (almost empty) files
David Douard <david.douard@logilab.fr>
parents:
diff changeset
57
85
b55977dcc311 fix README
David Douard <david.douard@logilab.fr>
parents: 84
diff changeset
58 You can get information on pygpibtoolkit on
94
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
59 http://pygpibtoolkit.readthedocs.io
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
60
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
61 The project is hosted at
91
f2a8f688dbc0 project moved to bitbucket
David Douard <david.douard@logilab.fr>
parents: 86
diff changeset
62 https://bitbucket.org/dddouard/pygpibtoolkit
63
1c0d92f95115 added doc (almost empty) files
David Douard <david.douard@logilab.fr>
parents:
diff changeset
63
94
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
64 If you have any questions, please mail david.douard@sdfa3.org for support.
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
65
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
66 pygpibtoolkit_ is (c) 2007-2018 David Douard
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
67 and is available under the GNU General Public Licence v2.
63
1c0d92f95115 added doc (almost empty) files
David Douard <david.douard@logilab.fr>
parents:
diff changeset
68
94
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
69 .. _pygpibtoolkit: http://pygpibtoolkit.readthedocs.io
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
70 .. _`user manual`: http://pygpibtoolkit.readthedocs.io
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
71 .. _GPIB: https://en.wikipedia.org/wiki/IEEE-488
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
72 .. _Prologix: http://prologix.biz
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
73 .. _linux-gpib: https://linux-gpib.sourceforge.io
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
74 .. _virtualenvs: https://docs.python.org/dev/library/venv.html
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
75 .. _pip: https://packaging.python.org/key_projects/#pip
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
76 .. _virtualenvwrapper: http://virtualenvwrapper.readthedocs.io
1ac1457af83f [readme] write a more meaningful README file
David Douard <david.douard@logilab.fr>
parents: 91
diff changeset
77 .. _pew: https://github.com/berdario/pew

mercurial