Skip to content

This library helps communicate with the already setup Easy IMU Module (i.e MPU9250 EIMU Module) in your PC or microcomputer-based python projects

License

Notifications You must be signed in to change notification settings

robocre8/eimu_python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Easy IMU Python Library

This library helps communicate with the already setup Easy IMU Module in your PC or microcomputer-based python projects, with the eimu_setup_application.

you can use it in your microcomputer robotics project (e.g Raspberry Pi, PC, etc.)

A simple way to get started is simply to try out and follow the example code

Dependencies

  • you'll need to pip install the pyserial library
      pip3 install pyserial   //linux or mac
      pip install pyserial   //windows

How to Use the Library

  • Download (by clicking on the green Code button above) or clone the repo into your PC using git clone

Note

you can use this command if you want to clone the repo:

git clone https://github.com/samuko-things-company/eimu_python.git

  • Ensure you have the Easy IMU Module is already calibrated.

  • Connect the Easy IMU Module to your PC or microcomputer

  • A simple way to get started is simply to try out and follow the example read_rpy.py code.

  • You can copy the eimu.py file into your python robotics project, import the library as shown in the example read_imu.py code, add it to your code, and start using it.

Basic Library functions and usage

  • connect to smc_driver shield module

    eimu = EIMU()

    eimu.connect("port_name or port_path")

    eimu.clearDataBuffer() # returns bool -> success

  • set imu reference frame -> NWU (0), ENU (1), NED (2)

    eimu.setWorldFrameId(frame_id)

  • get imu reference frame -> NWU (0), ENU (1), NED (2)

    eimu.getWorldFrameId() # returns tuple -> (success, frame_id): bool, int

  • adjust filter gain

    eimu.setFilterGain(gain)

  • read filter gain

    eimu.getFilterGain() # returns tuple -> (success, gain): bool, float

  • read all IMU data (orientation - RPY, linear acceleration, angular velocity)

    eimu.readImuData() # returns tuple -> (success, r, p, y, ax, ay, az, gx, gy, gz): bool, float, float, float, float, float, float, float, float, float

  • read Oreintation - Quaterninos

    eimu.readQuat() # returns tuple -> (success, qw, qx, qy, qz): bool, float, float, float, float

  • read Oreintation - RPY

    eimu.readRPY() # returns tuple -> (success, r, p, y): bool, float, float, float

  • read Linear Acceleration

    eimu.readLinearAcc() # returns tuple -> (success, ax, ay, az): bool, float, float, float

  • read Gyro (Angular velocity)

    eimu.readGyro() # returns tuple -> (success, gx, gy, gz): bool, float, float, float

About

This library helps communicate with the already setup Easy IMU Module (i.e MPU9250 EIMU Module) in your PC or microcomputer-based python projects

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages