Python libraries to talk to IQ Motion Control devices
Project description
IQ Motion Python API
This library is to talk to any IQ Control devices from mulititude of communication protocoles.
Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
Prerequisites
All the prerequisits can be installed with pipenv:
pipenv install
All the prerequisited can be installed from "requirement.txt".
pip install requirements.txt
Installing
You can install this library using "pip":
pip install iqmotion
If you want to edit this library and/or run some tests, You can clone this repository locally on your computer.
Submodule
If you are using this repository as a submodule, make sure to make a symbolic link:
ln -s python_api/iqmotion iqmotion
Running the tests
You will need the following packages to run the tests:
- pytest
- pytest-cov
You can install these packages with pip:
pip install pytest
pip install pytest-cov
You can then run the software tests with the following command:
pytest ./iqmotion/tests/ --cov-config=.coveragerc --cov=iqmotion --cov-fail-under=90
The test will fail if coverage is under 90%
You can run the hardware tests with the following commands:
python run_hardware_tests.py speed --usb_handle=/dev/ttyUSB0
python run_hardware_tests.py servo --usb_handle=/dev/ttyUSB0
python run_hardware_tests.py step_dir --usb_handle=/dev/ttyUSB0
We use pylint and black to format this repository.
Contributing
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
Versioning
We use SemVer for versioning. For the versions available, see the tags on this repository.
Here is an example on how to create a new version change before pushing
semversioner add-change --type patch --description "my_changes"
semversioner add-change --type minor --description "my_changes"
semversioner add-change --type major --description "my_changes"
Authors
- Raphael Van Hoffelen
See also the list of contributors who participated in this project.
License
This project is licensed under the MIT License - see the LICENSE file for details
Acknowledgments
- Matt Piccoli for helping out debugging the architecture and continuously testing the API.
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
Hashes for iqmotion-0.9.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ee1ca8785132d346e103d3e42d87eaac7c2ec9d16e9a68cd4bc15c6567092d61 |
|
MD5 | ad1a7c2b2e88a56bec15abc57f31740d |
|
BLAKE2b-256 | 1d1a4b00f2ecba5b4e39c131a771087b65ac4d6000d991a3099f76f8601b1dc6 |