Giter Club home page Giter Club logo

smartimu's Introduction

SmartIMU

GitHub version GitHub old version GitHub license GitHub pcb library

SmartIMU 是一個集成微控制器(STM32F411)、3-Axis 加速度計、3-Axis 陀螺儀、3-Axis 電子羅盤與氣壓計(MPU9250、LPS22HB)以及無線傳輸(NRF52810)於一體的 10DOF 模組,控制器透過 UART 連接無線傳輸芯片,可以將感測器資料無線傳輸至其他裝置觀察。板上除了有 LED、按鍵、電源管理以及 RF 功率放大外,亦拉出至多 25pin 帶 ADC、UART、SPI、I2C 等功能的可用 I/O,1.27mm 間距的擴充腳位上下皆可連接,方便擴充不同應用,像是小型四軸飛行器。

Hardware

View


more photo ...

smartimu's People

Contributors

hom-wang avatar wuyouwulv1314 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

smartimu's Issues

SmartIMU board

Is there someplace I could buy one of these boards? Does it run Arduino IDE sketches? Thanks.

一阶龙格库塔与构建增量四元数相乘有什么区别吗

比如我现在的代码是这样的
quaternion delta;
delta.w = 1;
delta.x = (gyro.x) * dt / 2;
delta.y = (gyro.y) * dt / 2;
delta.z = (gyro.z) * dt / 2;
quaternion left=earthToBodyQuaternion;
quaternion_mult(&earthToBodyQuaternion,&left,&delta);
quaternion_normalize(&earthToBodyQuaternion);
实际使用并没有什么问题

MSP430透過SPI讀取MPU9250

嗨你好,
我目前是透過MSP430F5438A的SPI來讀取MPU9250的資料,因為才剛接觸MSP430,所以對一些設定方式都沒還不太熟悉。
目前我先嘗試讀取MPU9250的WHO AM I(0x75)的數值,以下是我的流程及code:

  1. SPI_INIT()
  2. Select slave device(將 MPU9250 CS 拉low)
  3. 在UCA0TXBUF = 0x75 | READ_FLAG
  4. 讀取 UCA0RXBUF的值

`int main(void)
{
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer

Chip_Selector_Init(BIT2);
SPI_Init();

Select_Device(BIT2);

while (!(UCA0IFG & UCTXIFG));
UCA0TXBUF = 0x75 | READ_FLAG;
while(!(UCA0IFG & UCRXIFG));
received_ch = UCA0RXBUF;

return 0;

}`

`void SPI_Init()
{
// P3.0 UCA0CLK -> SCL
// P3.4 UCA0SIMO -> SDA
// P3.5 UCA0SOMI -> AD0
P3SEL |= BIT0 + BIT4 + BIT5;

UCA0CTL1 = UCSWRST;
UCA0CTL0 |= UCCKPH + UCMSB + UCMST + UCSYNC; // 3-pin, 8-bit SPI master
UCA0CTL1 |= UCSSEL_2; // SMCLK
UCA0BR0 |= 0x02; // /2
UCA0BR1 = 0; //
UCA0MCTL = 0; // No modulation
UCA0CTL1 &= ~UCSWRST; // **Initialize USCI state machine** //

}`

我這RXBUF始終讀取到0xFF,目前我猜測會不會是我沒有設定clock frequency,我看MPU9250的data sheet p.36寫 The maximum frequency of SCLK is 1MHz
1

p.5 寫 the sensor and interrupt registers may be read using SPI at 20MHz.
2

所以感到很疑惑,MPU9250的clock frequecy 最大可以到多少,會不會是因為我沒有設定clock而導致無法讀取到WHO AM I?

MPU9250磁力計品質

你好,
您好
我是Moonbear的一員,

近期想要自己實作一個簡單的AHRS程式,
因此拿了上學期修課時所用的板子開始做(2.0)

我近期閱讀了一下您過去的程式碼發現,
舊的2.0的程式在AHRS是有解出磁力Yaw姿態但卻選擇不融合回去,
估計是因為精度的問題

那麼關於磁力計的部份目前已知MPU9150內建的磁力計似乎會有漂移現象,
因此想要在此請教您有關於2.2版改用9250的效果如何呢

感謝
聖文

Slave0及Slave4的差別

您好,我最近在進行用MSP430透過SPI讀取數個MPU9250的專案,我請教了invensense官方,他們提供的initial flow如下:

code

這邊控制磁力計的部分都是對I2C_SLV0做設定,讀取也是從I2C_SLV0讀,但是我發現參照這個initial flow偶爾會發生磁力計ID讀取不到(應該要是0x48,但是讀取出來為0x00),導致磁力計資料整個都是0的問題。加速規及陀螺儀的值則是一直都讀得到,沒有問題。

我發現您在這邊是對Slave 0及Slave 4做設定,想請教您這兩者的差別?先前有寫信給美國invensense,他們的答覆也是建議我使用Slave 4,但是不太清楚這幾個Register的差別?
以及若使用Slave 4是否適用在SPI讀取多顆MPU9250的情況?
謝謝您!=)

依蓉

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.