SHIROのIchigoJam日記

マイコン「IchigoJam」(イチゴジャム)の電子工作とプログラミングをメインに

加速度センサーボード

IchigoJam/IchigoDakeで簡単に加速度センサーが使えるボードです。
基板の傾きや重力のかかり具合を検知できます。
動画はこちら。

【IchigoJam】加速度センサーボード

f:id:shiro0922:20200914174225j:plain

基板データ

f:id:shiro0922:20200914143850p:plain
X・Y・Z軸方向の加速度が、それぞれANA5(OUT1)・ANA6(OUT2)・ANA7(OUT3)のポートへアナログ値で入力されます。
X・Y軸は「512」が水平で、傾くとプラス/マイナス方向に値がずれます。
Z軸は基板の上下方向(重力の方向)で、上下に基板を振ると値が増減します。


*この基板データは、CC BYライセンスとします。どうぞご利用ください。

(C) 2020 Shiro Saito (https://www.ichigojaman.jp)

材料

プログラム

水準器

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

基板の傾きや重力のかかり具合を検知できるので、アイデア次第でいろいろなことができます。