IchigoJam/IchigoDakeで簡単に加速度センサーが使えるボードです。
基板の傾きや重力のかかり具合を検知できます。
動画はこちら。
【IchigoJam】加速度センサーボード
基板データ
X・Y・Z軸方向の加速度が、それぞれANA5(OUT1)・ANA6(OUT2)・ANA7(OUT3)のポートへアナログ値で入力されます。
X・Y軸は「512」が水平で、傾くとプラス/マイナス方向に値がずれます。
Z軸は基板の上下方向(重力の方向)で、上下に基板を振ると値が増減します。
*この基板データは、CC BYライセンスとします。どうぞご利用ください。
(C) 2020 Shiro Saito (https://www.ichigojaman.jp)
材料
- 3軸加速度センサモジュール KXSC7-2050
- モジュール基板にシルク印刷されたX軸・Y軸と、この基板に印刷されたX軸・Y軸が、プラスマイナスが逆方向になっているので注意してください。(出力されるアナログ電圧を見る限りでは、この基板のXY軸の方向が正しいと思うのですが)
- 絶縁ラジアルリード型積層セラミックコンデンサー 0.1μF50V2.54mm (10個入)
- ピンヘッダ 1×40 (40P)
プログラム
水準器
IchigoDake+IchigoDyhookを机の上などに置くと、水平かどうかを検知します。
水平なら気泡「O」が中心の「+」と重なります。
10 OUT 1,-1:OUT 2,-1 20 X=ANA(6)-512:Y=ANA(5)-512 30 CLS 40 LC 15,11:?"+" 50 LC 15+X,11+Y:?"O"; 60 GOTO 20
かわくだり
基板を傾けて、キャラを左右に操作します。
IchigoDake+IchigoDyhookを想定しています。IchigoJamの場合は以下のように改造してください。
- 10行の初期化ポートを「OUT 1,-1」に
- 20行の入力ポートをANA(5)に、Xの計算の+(プラス)と-(マイナス)を逆に
10 CLS:CLT:X=16:OUT 2,-1 20 A=ANA(6):X=X-(A>524)+(A<500) 30 IF SCR(X,5) ?TICK()/60:END 40 LC X,5:?"O" 50 LC RND(32),23:?"*" 60 WAIT 3 70 GOTO 20
基板の傾きや重力のかかり具合を検知できるので、アイデア次第でいろいろなことができます。