マイクロビットには水準器というセンサーがあります。
※画像:水準器 | micro:bit
水準器には横方向がどれほど傾いたか?を感知するロール(roll)と縦方向を感知するピッチ(pitch)があります。
この水準器を使用してネコのスプラウトを動かしてみます。
はじめに水準器からどのような値を得られるのか?を調べる為に下記のコードを試してみます。
○と○のブロックを使用して、文字列を連結してみます。
このコードを実行してみると、
ネコがマイクロビットから得られたロールとピッチの値を教えてくれます。
次に水準器から得られた値を元にネコを動かせるようにしてみます。
マイクロビットの水準器から得られたデータをそのままx座標とy座標に加算します。
水準器の値でy座標の方は上下逆になりますので、-1をかけて値を反転させておきます。
早速、このコードを実行してみますと、
意図通りの動作になったように見えますが、ネコの動きが速すぎて制御が大変です。
ここでネコの移動速度を緩めてみます。
ロールとピッチの各々の値に10を割って数字を小さくしてみます。
このコードを実行してみますと,
ネコの動きが穏やかになり、制御しやすくなりました。
あとはマイクロビットが少しだけ傾いている時はネコは動かないようにするといった処理も必要になってきますが、それは挑戦してみてください。