Controller for Elektro-Automatik power supplies
Project description
SOMANET Test Suite - Controller for EA PSUs
Linux
Recommended step
Move 99-ea-psu.rules
to /etc/udev/rules.d/
and restart udev
with sudo service udev restart
.
This rule will create devices, that look like ea-ps-20xx-xx-0
or ea-ps-23xx-xx-0
with an increasing counter for every
connected device.
Before start
To use ttyACMx
devices without sudo, add your user to the group dialout
:
sudo adduser your_user dialout
Windows
When connecting the power supply, Windows will install automatically the correct drivers.
Installing module
pip3 install ea_psu_controller
Import module
import ea_psu_controller
Create object
To connect to a particular PSU, you can call
Linux: psu = PsuEA(comport='ttyACM0')
Windows: psu = PsuEA(comport='COM1')
or as com port description: psu = PsuEA(comport='PS 2000 B')
If you added the device rule and you connected only one PSU, there is no need to provide a device name:
psu = PsuEA()
Also possible is:
psu = PsuEA(comport='ea-ps-20xx-xx-0')
| If there is more then one PSU connected to the host, the script will connect to the first device found. | It is also possible to take the S/N written on the back of the PSU and call (dev rule on Linux needed):
psu = PsuEA(sn='0123456789')
or to use the device designator (dev rule on Linux needed):
psu = PsuEA(desi='PS 2142-10B')
Dis/connect to power supply for controlling
psu.remote_on()
psu.remote_off()
For multi output devices most functions provide a additional output argument:
psu.remote_on(output_num=0)
or psu.remote_on(output_num=1)
| It's only necessary to call remote_on()
, when you want to control the PSU.
| If you just want to read device information, you don't need to.
Power on and off output
psu.output_on()
psu.output_off()
or
psu.output_on(output_num=1)
psu.output_off(output_num=1)
Set parameters
Arguments can be int or float.
psu.set_voltage(24)
psu.set_current(0.5)
psu.set_ovp(30)
psu.set_ocp(8)
The script will always set the maximum possible values in dependency of the nominal power.
| For example: | Nominal power = 160 W | If you set now the voltage to 40 V, it's not possible to set a higher current than 4 A (=160W/40V). | If you want to set a higher current, you need to decrease first the voltage.
Get parameters
Return argument: float.
psu.get_voltage()
psu.get_current()
Maximum sampling rate is ~10 Hz.
Get status
Return argument: dictionary
psu.get_status()
Dict contains following keys:
- 'remote on'
- 'output on'
- 'controller state' (CV=0, CC=2)
- 'tracking active'
- 'OVP activ'
- 'OCP activ'
- 'OPP activ'
- 'OTP activ'
Get device description
Return argument: tuple (name, SN)
psu.get_device_description()
Close connection
To close the connection, call:
psu.close(remote=False, output=False)
Set both arguments to True to turn off the output and remote control
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ea-psu-controller-1.1.0.tar.gz
.
File metadata
- Download URL: ea-psu-controller-1.1.0.tar.gz
- Upload date:
- Size: 7.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.18.4 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 69dd13fe03b72abb3d638a2ab2cb01db09edf829b139fdf57ec949caf6b323d3 |
|
MD5 | 56c4c714ebf33ac022951ca902ff357a |
|
BLAKE2b-256 | 1c1246cea67f35fd5b849ebefda792b43cbd2804e4db6f2e140456e42d9ef127 |
File details
Details for the file ea_psu_controller-1.1.0-py3-none-any.whl
.
File metadata
- Download URL: ea_psu_controller-1.1.0-py3-none-any.whl
- Upload date:
- Size: 8.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.18.4 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 26ffe8f9e743e609b054c544c0f12d258ead1f4b736d769fafc0db5139dc7691 |
|
MD5 | ef4a1247795bd143177fc0327d4ea9ed |
|
BLAKE2b-256 | b70f76f34069442cb00167374c2fc9ebcc03f3403a9cabf879cd0b7629a6fd41 |