Madgwick filter for IMU data and quaternions.
Project description
Python Sensor Fusion
Fuse IMU data into a Quaternion pose.
Install
To install the library run: pip install py-imu
Development
- Install Poetry
make initto create the virtual environment and install dependenciesmake formatto format the code and check for errorsmake testto run the test suitemake cleanto delete the temporary files and directoriespoetry publish --buildto build and publish to https://pypi.org/project/py-imu
Usage
from py_imu.madgwick import Madgwick
from py_imu.motion import Motion
from py_imu.quaternion import Vector3D
def main():
"""Test the modules in py-imu."""
madgwick = Madgwick(frequency=100.0, gain=0.033)
estimator = Motion(
declination=9.27, latitude=32.253460, altitude=730, magfield=47392.3
)
# provide time increment dt based on time expired between each sensor reading
for data in data_stream:
gyr = Vector3D(data[0:3])
acc = Vector3D(data[3:6])
madgwick.update(gyr=gyr, acc=acc, dt=0.01)
estimator.update(q=madgwick.q, acc=acc, timestamp=0.01, moving=True)
if __name__ == "__main__":
main()
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
py_imu-0.1.0.tar.gz
(15.6 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
py_imu-0.1.0-py3-none-any.whl
(17.0 kB
view details)
File details
Details for the file py_imu-0.1.0.tar.gz.
File metadata
- Download URL: py_imu-0.1.0.tar.gz
- Upload date:
- Size: 15.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.2 CPython/3.13.6 Darwin/25.0.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9499bf755b6b3ad964a48b64a2e98c671fc540adfdcf5e22935dc5a8e6af2ef9
|
|
| MD5 |
267cad9a7caf09f202374d915ddfa956
|
|
| BLAKE2b-256 |
82babd12aee591479f2941b3cbcd69e356c1dbd2f42f3afc603ce2b0cd2bb7c3
|
File details
Details for the file py_imu-0.1.0-py3-none-any.whl.
File metadata
- Download URL: py_imu-0.1.0-py3-none-any.whl
- Upload date:
- Size: 17.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.2 CPython/3.13.6 Darwin/25.0.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
389ce69862543168a3b9b8c79957b5ed114de3b7a1b2eb7a12846a1c7abdaf95
|
|
| MD5 |
876bf98e6109396c461429f90a48541a
|
|
| BLAKE2b-256 |
6dd4e4fae9bb4808e42b15209f8353614ff93cb2d71d776dba070960c0a49972
|