ステップ1: 作る
説明
絵画が水平に掛かっているか、棚や作業台が水平であるかを確認するツールを作りましょう。 新しい micro:bit に内蔵のスピーカーを使えば、音で知らせられるように水準器を簡単に機能向上できます。
はじめに
プログラミングガイド
学ぶこと
- 加速度センサーで角度を測る方法
- 「ピッチ」と「ロール」とは
- 2次元で測定したセンサー値を組み合わせて、水平であるかを確認する方法。
動作の仕組み
- micro:bit の加速度センサーは、上下方向(ピッチ)と左右方向(ロール)の2方向の傾きの角度を測定できます。 このプロジェクトでは、これを利用して micro:bit が水平になったときに、LED ディスプレイに表示したり、音を鳴らしたりして、絵を掛けるときや、作業台を作ったりするときに役立つようにします。
- ループは micro:bit の角度をずっと測定し続けます。
- 加速度センサーで測定した角度がピッチとロールの両方で -5 と 5 の間であれば、micro:bit は水平状態にあると判断します。 この場合、LED ディスプレイに「チェック」を表示して音を鳴らします
- 音を聞くにはヘッドフォンやスピーカーを端子 0 と GND に取り付けます。新しい micro:bit であれば内蔵のスピーカーで聞けます。
- ピッチかロールのどちらかでも、角度が +5 と -5 の範囲から外れれば、「バツ」を LED ディスプレイに表示して音を鳴らすのを止めます。
必要なもの
- micro:bit
- MakeCodeまたはPythonエディター
- バッテリーパック(オプション)
ステップ2: プログラムする
1from microbit import *
2import music
3
4# Uses accelerometer readings in the x and y axis
5# and also allows the micro:bit to be slightly off-level
6# to make it work better in practice
7while True:
8 if accelerometer.get_x() > -10 and accelerometer.get_x() < 10 and accelerometer.get_y() > -10 and accelerometer.get_y() < 10:
9 display.show(Image.YES)
10 music.play('C5:1')
11 sleep(200)
12 else:
13 display.show(Image.NO)
14
ステップ3: 改善する
- 角度に応じて音程を変えられますか?
- 本当の水準器のように、画面上で「泡」を動かすようにできますか?
This content is published under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) licence.