Arduino でジャイロセンサーを試してみました。使用したジャイロセンサーは、STマイクロ社製の L3GD20 です。加速度センサーは直線方向の加速度を検出しますが、ジャイロセンサーは回転方向の速度(角速度)を検出します。



MEMS motion sensor: three-axis digital output gyroscope
http://www.pololu.com/file/0J563/L3GD20.pdf



今回使用する秋月モジュールのピン配は下記のようになっています。


http://akizukidenshi.com/download/ds/akizuki/ae-l3gd20.pdf


秋月モジュールはI2CとSPIを選択できるようになっています。今回はI2Cで接続したいと思います。



CSはGNDに接続しますので、デバイスアドレスはW/Rビットを除いた7bitなので、右に1ビットシフトした 0x6A になります。

Arduino UNO は 5V駆動で、ジャイロセンサーは3.3V駆動ですので、I2Cを接続するにはレベル変換回路を使う必要があります。



実際に組んだ回路がこちらです。




位置関係が分かりにくいので斜めからのアングルです。




加速度センサー同様、使用する前にデバイスのパラメータを設定しなければなりません。データシートからコンフィギュレーションレジスタの設定を確認します。




DR<1:0>、BW<1:0>の設定値はデータシートに次のように定義されています。




今回は試しに使うだけなので、DR<1:0>、BW<1:0>両方とも "00", "00" つまり、データ出力レート(ODR):95Hz、カットオフ周波数:12.5Hz に設定します。

スケッチは下記のようにプログラムしました。多くの部分で加速度センサーのスケッチを流用しています。





出力データを確認します。最初にZ方向(基板に対して左右に振る)、次にX方向(基板に対して手前に傾ける)、最後にY方向(基板に対して左右に傾ける)を試してみました。




角速度を検出しているみたいですね。加速度センサーと組み合わせれば、ロボットの状態を検出することができそうです。
(^_^)/~


関連記事
Arduino 3軸加速度センサーのI2C接続うまく行きましたー
http://makers-with-myson.blog.so-net.ne.jp/2014-03-16

Arduino 3軸加速度センサーで大ハマリ中。。
http://makers-with-myson.blog.so-net.ne.jp/2014-03-15

Arduino で3軸加速度センサーを試してみた!
http://makers-with-myson.blog.so-net.ne.jp/2014-03-08


※I2Cレベル変換回路を加えた図を差し替え・追加ました。(2016.4.9)





Arduinoをはじめようキット

  • 出版社/メーカー: スイッチサイエンス
  • メディア: エレクトロニクス






L3G4200D ジャイロセンサーモジュール

  • 出版社/メーカー: 梅本有限責任事業組合
  • メディア: エレクトロニクス