デジタルコンパスからの出力をレーダー表示する
Arduinoでデジタルコンパスからの値をatan2を使ってラジアン角に変換しシリアル出力します。それをProcessingで受け取ってセンサーを動かした分だけレーダーのように動かします。
先にやっておく
- [head]#include <Wire.h>
- [head]#define addr 0x1E
- [先にやっておく] Wire.begin();Wire.beginTransmission(addr);Wire.write(0x02);Wire.write(0x00);Wire.endTransmission();
ずっとやる
- [ずっと]int x,y,z;Wire.beginTransmission(addr);Wire.write(0x03);Wire.endTransmission();Wire.requestFrom(addr, 6); if(6<=Wire.available()){x = Wire.read()<<8;x |= Wire.read();z = Wire.read()<<8;z |= Wire.read();y = Wire.read()<<8;y |= Wire.read(); }
- [ずっと]double _ABVAR_1_t = atan2(x,y);
あとは<t>で角度が取り出せますからシリアル出力します。[待つミリ秒<で更新間隔を決めます。50くらいがいいでしょう。
あとはこのシリアル出力を受けて動くProcessing です。<Serial_Rader.zip>
あとはこのシリアル出力を受けて動くProcessing です。<Serial_Rader.zip>
Post a Comment