Skip to main content

Cross platform fast time python robot interface controller

Project description

FTPRCI

Fast Time Python Robot Controller Interface

Description

This library is a collection of classes and functions to help with the development of robot controllers in Python. It is designed to be fast and easy to use, with a focus on real-time control. Works on CPython and MicroPython.

Installation

To install the library, simply run:

```sh
pip install ftprci
```

Usage

The library is divided into several modules, each with a specific purpose:

  • interface: Contains the Interface class, which is an abstract base class for all interfaces.
  • actuators: Contains the Actuator class, which is an abstract base class for all actuators.
  • estimator: Contains the Estimator class, which is an abstract base class for all estimators.
  • controller: Contains the Controller class, which is an abstract base class for all controllers.
  • sensor: Contains the Sensor class, which is an abstract base class for all sensors.
  • logger: Contains the Logger class, which is used for logging. # TODO
  • main: Contains the RunnerThread class, which is used to run the controller with precise timings.

Here is an example of how to use the library:

```python
import ftprci as fci

th = fci.RunnerThread()

sensor = fci.LSM6()
estimator = fci.KalmanFilter()
controller = fci.PIDController(1, 10, 0.1)
actuator = fci.DCMotor()

th.callback | sensor.read | estimator.estimate | controller.steer | actuator.command
th.run()
```

Contributing

Do not hesitate to contribute to the project if you create a new sensor, estimator, or anything! You can open a pull request or an issue on the GitHub repository.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ftprci-0.2.25.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ftprci-0.2.25-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file ftprci-0.2.25.tar.gz.

File metadata

  • Download URL: ftprci-0.2.25.tar.gz
  • Upload date:
  • Size: 14.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for ftprci-0.2.25.tar.gz
Algorithm Hash digest
SHA256 1b9e02f730ce5dd2c424e669dfaed19bb3ceb53e44b3413a11a9f64109d6702c
MD5 ffe497b574c4528cf312d78f4f59600c
BLAKE2b-256 c5b9ca251f1aa75d2a51f55754efbda6bce0d15be5271e26f0dd9d310dadd2ad

See more details on using hashes here.

File details

Details for the file ftprci-0.2.25-py3-none-any.whl.

File metadata

  • Download URL: ftprci-0.2.25-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for ftprci-0.2.25-py3-none-any.whl
Algorithm Hash digest
SHA256 195ff3202d5992061436b58b020371fd975628be762af73da5642eca7dd2063a
MD5 a39a9a7ad109f343779d99cd443802a5
BLAKE2b-256 482ef326c07bc13d7bae3605119fe90c35c7e0ade18646cc9b08f9156f3bbe96

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page