稼働中

マイクロビット(m_06)microbit.compass

compass

「microbit」モジュールには「display, Image, button_a, button_b, accelerometer, compass,pin0, pin1, pin2, pin3, pin4 pin5, pin6, pin7, pin8, pin9, pin10, pin11, pin12,pin13, pin14, pin15, pin16, pin19, pin20,i2c, spi, uart, panic, reset, running_time, sleep, temperature」の関数などがあります。
※「microbit」モジュールを「from microbit import *」でインポートした前提で記載しています。

(05)microbit.compass

方位を測定できます。
「heading()、is_calibrated()、calibrate()、clear_calibration、get_x()、get_y()、get_z()、get_field_strength()」の関数があります。
使用前にcalibrate()で校正が必要です。

(05-1)heading()

3軸の磁力から計算された方位を返します。値は時計回りの角度で、0 が北です。0 から 360 までの整数になります。


#方位を測定
>>> compass.heading()
47

(05-2)is_calibrated()

方位磁針センサーの校正済みかを True で False で示します。


#校正済みのためTrue
>>> compass.is_calibrated()
True
#校正をクリア
>>> compass.clear_calibration()
#校正をクリアしたのでFalse
>>> compass.is_calibrated()
False
>>> 

(05-3)calibrate()

方位磁針センサの校正をします。micro:bitのディスプレイに「TILTE TO FILL SCREEN」のメッセージ後に、全てのLEDが点灯するようにmicro:bitを傾けて校正します。円を書くような感じで調整すると良いかと思います。上手く調整できればHAPPYのイメージが表示されます。


#校正の確認>未校正
>>> compass.is_calibrated()
False

#校正
>>> compass.calibrate()

#校正の確認>校正済み
>>> compass.is_calibrated()
True

まとめ

microbitモジュールのcompassについて記載しました。microbit.compassはmicro:bitのボード上でI2c接続されている加速地磁気センサー(MAG3110)に係わる関数です。別途、MAG3110からデータ読出しする記事を記載したいと思います。