Interface to ThorLabs devices which communicate using the APT protocol.
Project description
This is a python interface to Thorlabs equipment which communicates using the APT protocol. Because there are a large variety of these devices, such as translation and rotation stages, flip mounts and laser diode drivers, this package has been kept as general as possible. A hierarchical class structure is designed such that basic functionality is handled transparently at low levels, allowing a minimal amount of code to be used to implement device-specific features.
In its current state, this package should be able to perform device discovery, communications and message encoding/decoding for every APT-compatible device. Classes for a small number of specific motion controllers are provided which give essentially feature complete functionality for these particular devices. To use a new, unsupported device, a subclass can be created which describes the specifics of the device control and implement its new functionality. If the device is very similar to something already implemented, then the amount of coding required can be very small. For example, the TDC001 is a relatively simple DC motor driven motion controller, and the class to implement it is only a few lines of code since it is able to be derived from the APTDevice_Motor class.
The code has no dependence on the Thorlabs software or libraries, and so is platform-agnostic. It has been tested on Linux and Windows, but should work on all other operating systems supported by the pyserial library.
Support
Documentation can be found online at https://thorlabs-apt-device.readthedocs.io/en/latest/.
Bug reports, feature requests and suggestions can be submitted to the issue tracker.
License
All original work is free and open source, licensed under the GNU Public License. See the LICENSE for details.
A fork of the thorlabs-apt-protocol library is included under the protocol directory, which remains under an MIT license. See LICENSE for details.
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 thorlabs_apt_device-0.3.8.tar.gz
.
File metadata
- Download URL: thorlabs_apt_device-0.3.8.tar.gz
- Upload date:
- Size: 55.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1f51cc7b80ca63cf841d96f2172f420d53890cf049b33458e283dbe248eb22f9 |
|
MD5 | 4af3f16a2f1c341beb362f265f10132f |
|
BLAKE2b-256 | 0472e046337437e882d232d77fd6d4b09bccf3c0f3a8689faa122f714f09d508 |
File details
Details for the file thorlabs_apt_device-0.3.8-py3-none-any.whl
.
File metadata
- Download URL: thorlabs_apt_device-0.3.8-py3-none-any.whl
- Upload date:
- Size: 64.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 84897581dc99e6f1ab774f07f9466d9137c94ac3dfa0fa59cdd305a4c9682872 |
|
MD5 | 80a8d670b2117453fcaa8ce4ef2b4c65 |
|
BLAKE2b-256 | cc3860afff0deb2379c5feae251a5da9e9773c6ac8e2f09fbdac8d2980e28aa2 |