Skip to main content

This package provides different sensor fusion algorithms like Extended Kalman Filter (EKF) to estimate orientation.

Project description

imumaster

This library currently supports attitude estimation for inertial sensors in a common coordinate system. It utilizes the Extended Kalman Filter (EKF) algorithm to estimate orientation based on sensor data from a nine-axis sensor (accelerometer, gyroscope, magnetometer), providing the result of attitude estimation during the motion process of inertial sensors in the form of Euler angles and quaternions.

The IMU sensor and the ground coordinate system are both right-handed coordinate systems.

IMU sensor coordinate system definition: the x-axis points forward, the y-axis points left, and the z-axis points upward. Ground coordinate system definition: the x-axis points north, the y-axis points west, and the z-axis points upward.

The IMU sensor and the ground coordinate system are defined as follows:

IMU sensor coordinate system (xyz points towards):
NWU (North, West, Up): x-axis points north, y-axis points west, and z-axis points upward.
NED (North, East, Down): x-axis points north, y-axis points east, and z-axis points downward.
ENU (East, North, Up): x-axis points east, y-axis points north, and z-axis points upward.

Euler angle definition:

Roll: rotation around the x-axis.
Pitch: rotation around the y-axis.
Yaw: rotation around the z-axis.

Additionally, it provides general quaternion calculation functions such as addition, subtraction, multiplication, conjugation, inversion, norm calculation, and normalization.

Attitude Estimation

1.download

pip install imumaster

2.import

import imumaster

3.example。

>>> orientation = imumaster.Orientation(sample_rate=100, frame='ENU', method='EKF')
>>> accel_data = np.array([0.06, 0.03, 0.99])
>>> gyro_data = np.array([0.1, 0.2, 0.3])
>>> mag_data = np.array([0.3, 0.1, 0.2])
>>> q_estimation = orientation.EKF(accel_data, gyro_data, mag_data)
>>> eulerangle = orientation.eulerangle(q_estimation)

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

imumaster-0.0.2.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

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

imumaster-0.0.2-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file imumaster-0.0.2.tar.gz.

File metadata

  • Download URL: imumaster-0.0.2.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.4

File hashes

Hashes for imumaster-0.0.2.tar.gz
Algorithm Hash digest
SHA256 e3ac06ca34f672248b267b19d0cfa97137f93861c05e57a8269d0a93ae286cc0
MD5 99be3f8440c8b3887ed9ab2466fcdbb1
BLAKE2b-256 362cc0b3a835a4745cc777a0d0beaf80c0928b8b14ecc976569434d65627648d

See more details on using hashes here.

File details

Details for the file imumaster-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: imumaster-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.4

File hashes

Hashes for imumaster-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 945e9e883b7e05664fe9237cd7189c1adc33effc99da838530418b3184265047
MD5 8f3442050bee6aa12aa369488b8476f3
BLAKE2b-256 f3b8649c9df637ff1507af8024cd69e8ea69e601b23e3370b1ab969e933057aa

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