2021/12/15 よりサイトリニューアルしました

Raspberry Pi でmicro:bitのドットマトリックスを制御してみる

micro:bit

 

未開封のmicro:bitが手元にずっとありましたので、少し時間が出来たので触ってみました。

micro:bitはLEDで文字や絵を表現できるドットマトリックスの他、加速度センサや圧電ブザー、有線通信ではi2cやSPI、UART、micro pythonのradioモジュールを使用した簡単な無線通信機能等の機能を搭載しています。

これだけ機能があれば色々出来そうですが、 まだいまいち使い方が分かっていないので、とりあえずドットマトリックスの簡単な制御をしてみる事にしました。

ただ単に、micro:bit単体で点灯させるのも寂しいですので、今回は下記のような流れでRaspberry Piからmicro:bitのLEDを制御させてみたいと思います。↓

Raspberry Pi(Apach WEBサーバー/html→js→cgi(python)でGPIO操作) ⇒ micro:bit(0~2入力のHIGH,LOWでプログラムを走らせる)

 

 

初めに

micro:bitの入出力端子

microbit端子

端子のいくつかは他の端子よりも大きいので、ワニ口クリップを取り付けられます。大きい端子には 0, 1, 2, 3V, GND のラベルが付いています。今回は0~2の3つを使い、ここの入力信号を変化させて(Raspberry PiのGPIO信号)それに応じたプログラムを走らせます。

micropythonについて

micro:bitはmicropythonで開発が出来ます。さらにmicrobit専用のモジュールが用意されているので、手軽に色々な機能が扱えます。

下記サイトにてチュートリアルがありますので、是非参考にして下さい。↓

BBC micro:bit Micro Python チュートリアル

下準備

今回、ブラウザからRaspberry PiのGPIOを制御しますので、Raspberry PiにWEBサーバーを立てる必要があります。

Pythonでは簡易的に使えるhttp.serverがありますが、Apacheを使う事にしました。(どちらでもいいですが。)

また、CGIを使ってjsからpythonを操作する仕組みにしますので、CGIの設定も必要です。

ApacheのインストールやCGIの設定については過去記事でまとめていますので、そちらを参考にして下さい。↓

最後にmicro:bitのIDEをインストールしておきます。私はMu Editorを使用しました。

 

それではまずRaspberry Piのプログラムから作成します。

 

 

Raspberry Pi ZERO W

html/css

続いてjs

javascript

※過去に作成したラジコンのプログラムを応用しているため、文字列に方向が入っていますが気にしないでください。

続いてPython CGIスクリプト

 

python

 

これでRaspberry Pi側の設定はOKです。

使用したGPIOピンからmicro:bitの入力端子0~2とGNDをケーブルで接続します。

micro:bit

micropython

 

完成

ブラウザのボタンクリックでmicro:bitのドットマトリックスを制御が可能になりました。↓

次回は無線通信での制御や、センサーを利用した制御などを試してみたいと思います。

 

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です