gclib  423
Communications API for Galil controllers and PLCs
python.md
1 # Python {#python}
2 
3 ## Install gclib
4 
5 The gclib Python wrapper assumes the default gclib \link installation \endlink location.
6 
7 ## Install Python
8 
9 * See https://www.python.org/ if Python is not already installed on the system. The gclib Python wrapper supports Python versions 2 and 3.
10 * On Windows, choose to add Python to the environment variable during installation. This allows Python to be invoked from the command line.
11 
12 ## Install the gclib Python module
13 
14 ### Windows
15 
16 * Type the following commands into a command prompt.
17 
18 
19  C:\Users\username>cd Desktop
20  C:\Users\username\Desktop>mkdir python_temp
21  C:\Users\username\Desktop>cd python_temp
22  C:\Users\username\Desktop\python_temp>copy "c:\Program Files (x86)\Galil\gclib\source\wrappers\python\*" .
23  C:\Users\username\Desktop\python_temp>copy "c:\Program Files (x86)\Galil\gclib\examples\python\*" .
24  C:\Users\username\Desktop\python_temp>python setup.py install
25  running install
26  running build
27  running build_py
28  creating build
29  creating build\lib
30  copying gclib.py -> build\lib
31  running install_lib
32  copying build\lib\gclib.py -> C:\Python34\Lib\site-packages
33  byte-compiling C:\Python34\Lib\site-packages\gclib.py to gclib.cpython-34.pyc
34  running install_egg_info
35  Writing C:\Python34\Lib\site-packages\gclib-1.0-py3.4.egg-info
36 
37 
38 * The gclib Python wrapper is now installed. Go to the next section, **Using gclib from the Python Interpreter**.
39 
40 
41 ### Linux
42 
43 * Type the following commands into a Terminal prompt.
44 
45 
46  $ mkdir ~/python_temp
47  $ cd ~/python_temp/
48  $ tar -xvf /usr/share/doc/gclib/src/gclib_python.tar.gz
49  gclib.py
50  setup.py
51  $ tar -xvf /usr/share/doc/gclib/src/gclib_python_examples.tar.gz
52  example.py
53  $ sudo python setup.py install
54  [sudo] password for user:
55  running install
56  running build
57  running build_py
58  creating build
59  creating build/lib
60  copying gclib.py -> build/lib
61  running install_lib
62  copying build/lib/gclib.py -> /usr/lib/python2.7/site-packages
63  byte-compiling /usr/lib/python2.7/site-packages/gclib.py to gclib.pyc
64  running install_egg_info
65  Writing /usr/lib/python2.7/site-packages/gclib-1.0-py2.7.egg-info
66 
67 
68 * The gclib Python wrapper is now installed. Go to the next section, **Using gclib from the Python Interpreter**.
69 
70 
71 ### OS X
72 
73 * Be sure that the *Create Environment Variable* step has been followed in the \link osx OS X\endlink installation instructions.
74 * Type the following commands into a Terminal prompt.
75 
76 
77  $ mkdir ~/python_temp
78  $ cd ~/python_temp/
79  $ tar -xvf /Applications/gclib/source/gclib_python.tar.gz
80  x gclib.py
81  x setup.py
82  $ tar -xvf /Applications/gclib/examples/gclib_python_examples.tar.gz
83  x example.py
84  $ sudo python setup.py install
85  running install
86  running build
87  running build_py
88  creating build
89  creating build/lib
90  copying gclib.py -> build/lib
91  running install_lib
92  copying build/lib/gclib.py -> /Library/Python/2.7/site-packages
93  byte-compiling /Library/Python/2.7/site-packages/gclib.py to gclib.pyc
94  running install_egg_info
95  Writing /Library/Python/2.7/site-packages/gclib-1.0-py2.7.egg-info
96 
97 * The gclib Python wrapper is now installed. Go to the next section, **Using gclib from the Python Interpreter**.
98 
99 
100 ## Using gclib from the Python Interpreter
101 
102 * Invoke the <a href="https://docs.python.org/2/tutorial/interpreter.html" target="_blank">Python Interpreter</a>.
103 * Type the following into the Python prompt.
104 
105 
106 
107  >>> import gclib
108  >>> g = gclib.py()
109  >>> g.GOpen('192.168.0.42 --direct')
110  >>> print(g.GInfo())
111  192.168.0.42, DMC4080 Rev 1.2c, 783
112 
113 ## Running Python scripts
114 
115 * Navigate the terminal to the location from **Install the gclib Python module** where example.py was copied.
116 * Open *example.py* in a text editor.
117 * Set the address in the g.GOpen() call to match an avaiable connection.
118 * Execute the following command at the Terminal.
119 
120 
121  $ python example.py
122  gclib version: py.127.110.250
123  192.168.0.42, DMC4080 Rev 1.2c, 783
124 
125 * Experiment with the example by uncommenting sections, between the triple quotes, '''.
126 
127 
128  $ python example.py
129  gclib version: py.127.110.250
130  192.168.0.42, DMC4080 Rev 1.2c, 783
131  GProgramDownload() correctly errored. Can't fit with level 3 compression
132  Uploaded program:
133  #A;i=0;i=i+1;i=i+1;i=i+1;i=i+1;i=i+1;i=i+1;i=i+1;i=i+1;i=i+1;i=i+1;i=i+1;i=i+1
134  i=i+1;i=i+1;i=i+1;i=i+1;i=i+1;i=i+1;i=i+1;i=i+1;EN
135  Downloaded program verified
136  Array element verified
137  187942.0000
138 
139  Starting move...
140  done.
141 
142 ## Getting help
143 
144 
145  >>> help(g.GOpen)
146  Help on method GOpen in module gclib:
147 
148  GOpen(address) method of gclib.py instance
149  Opens a connection a galil controller.
150  See the gclib docs for address string formatting.
151  See Link GOpen() <http://www.galil.com/sw/pub/all/doc/gclib/html/gclib_8h_aef4aec8a85630eed029b7a46aea7db54.html#aef4aec8a85630eed029b7a46aea7db54>
152 
153  >>> help(g.GCommand)
154  Help on method GCommand in module gclib:
155 
156  GCommand(command) method of gclib.py instance
157  Performs a command-and-response transaction on the connection.
158  Trims the response.
159  See Link GCommand() <http://www.galil.com/sw/pub/all/doc/gclib/html/gclib_8h_a5ac031e76efc965affdd73a1bec084a8.html#a5ac031e76efc965affdd73a1bec084a8>
160 
161  >>> 'for a full listing, try help(g)'
162 
163 
164 
165 
166