2014年12月28日

用arduino+兩顆MPU6050同步抓兩質點運動方向

最近跟同事老王在討論一項科展,目的是要測兩個點在空間中移動的軌跡還有移動的頻率。這想到的第一個方式,就是錄影然後用Tracker去分析,不過那些點不只是在一個平面移動,還會轉動,這就沒辦法單純地看某個平面再做影像分析了。

討論一陣子之後,突然想到用慣性感測器來作測試,手邊剛好有兩個,型號是MPU6050,MPU6050 的晶片內有三軸陀螺儀和三軸加速計,作一些運算處理就可以得到我們要的資料。啊,怎麼運算怎麼處理,怎麼接我也不會,不過網路上一定有範例。雖然我不會創造,但是修改倒還是可以。

我找到的範例在這裡
https://github.com/jrowberg/i2cdevlib/tree/master/Arduino/MPU6050

我把https://github.com/jrowberg/i2cdevlib/blob/master/Arduino/MPU6050/Examples/MPU6050_DMP6/MPU6050_DMP6.ino
修改成兩個感應器同時感測,再加上有時間戳記,這樣就方便作後續的分析了,新檔案就放在這邊。(不過東西沒改得很完美,還是會有over flow的問題)
https://sites.google.com/site/pancala/Home/MPU6050_DMP6_2_YPR.ino


第一顆MPU6050這樣接
MPU6050  Arduino
VCC       5V
GND      GND
SCL       A5(Analog 5)
SDA       A4(Analog 4)
INT         D2(Digital 2)


第二顆的MPU6050這樣接
MPU6050  Arduino
VCC       5V
GND      GND
SCL       A5(Analog 5)
SDA       A4(Analog 4)
ADO       3.3V


用終端機去看,baud rate要調到115200就可以囉!