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.1.tar.gz (9.2 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.1-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: imumaster-0.0.1.tar.gz
  • Upload date:
  • Size: 9.2 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.1.tar.gz
Algorithm Hash digest
SHA256 c8641e99d7f9b8093eb787c7794cd54050bd56ea71ebecf6922ad125e9151d66
MD5 a2012e12bc16e4e2c4f23a7b6c02f749
BLAKE2b-256 3ea10bb2e671d13d03143be2b86f799d6dba8baa26944b0fbeb49cd2eb21abad

See more details on using hashes here.

File details

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

File metadata

  • Download URL: imumaster-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 10.2 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c7c26e43c54a9968464b48df67e06f32df9bb13ac5a862c993c0c8c2b7fa14df
MD5 3e8f10e07b477ea9fb319d5611e4f4ee
BLAKE2b-256 e22d56de945f29b6bfe136006b0b241f9d27468c9b8b813afde0fa0ab3105f23

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