controlib
A Python package for control system design and deployment.
ControLib is a package to help users design advanced control systems, test and benchmark them, and deploy them on a few selected embedded platforms (Arduino, STM32 Nucleo, Raspberry Pi). By advanced, we are referring to control systems beyond the realm of classical control (e.g. Model Predictive Control), especially those that are heavily reliant on machine learning and/or optimisation. Some classical control systems (e.g. PID controllers) will be included as well.
Some Simulink models will also be provided. To interact with these using Python, ControLib will use the PySimlink package.
ControLib will support Software-in-the-loop, Processor-in-the-loop, and Hardware-in-the-loop testing, although the extent to which it will do so is yet to be determined.
Please note that development is still in the very early stages, and it might take a while before a stable version is released.
Features
The package's main features and capabilities will be announced and listed here as soon as they are added.
Installation
Using pip
The package can be installed via pip:
pip install controlib
Using git
Alternatively, you can download the package directly from Github. To do so, clone the repository:
git clone https://github.com/MiguelLoureiro98/controlib.git
Then, move into the package's directory and install it using pip:
cd controlib
pip install .
Documentation
An official documentation website containing installation instructions, user guides, an API reference, examples, and a contribution guide, will be released soon.
Known Issues
Nothing to report.
Licence
This package is licenced under the GNU General Public License v3.0.
About
ControLib is currently being developed and maintained by Miguel Loureiro, a mechanical engineer who specialises in control systems, machine learning, and optimisation.
Metadata
Release files for controlib 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| controlib-0.1.0.tar.gz | 41.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| controlib-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 71.9 kB
Release files / controlib-0.1.0.tar.gz
| Download URL | controlib-0.1.0.tar.gz |
|---|---|
| Size | 41.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4b26e49839e1c05ca2c918943d69b3004120e2ae4d5ba258c2857d6ab42b34f7
|
|
BLAKE2b-256 checksum How to use checksums |
69881697b9e507f28749cfaebf7c6833b811df8c9878dbcb9eae566cea1c9a3a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.11.10
|
Release files / controlib-0.1.0-py3-none-any.whl
| Download URL | controlib-0.1.0-py3-none-any.whl |
|---|---|
| Size | 30.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e34fdc3d5d0bb429e1e72514b1098ebdd99fb26624cd3469ac021b7b7f947200
|
|
BLAKE2b-256 checksum How to use checksums |
918e63d964a44a68f6144667ddbf1e82b136ff89686dca8846da83cab6f3f5bf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.11.10
|