こんにちは、けいです。
今回から、M5stickVというデバイスを使って、micropython言語の解説記事を上げていけたらなと思います。
自分も現在進行形で学習中なので、もし間違っていたらコメントでご指摘をお願いします。
M5stickVについてまとめた記事があるので、ぜひ読んでみて下さい。
目次
M5stickVをざっくりと
特徴
M5stickVについては、沢山の記事がありますのでここではざっくりとだけ紹介します。
Kendryte K210を搭載したAIカメラです。高性能なニューラルネットワークプロセッサ(KPU)とデュアルコア 64 bit RISC-V CPUを使用しており、低コストかつ高いエネルギー効率で高性能な画像処理を行うことができます。
スイッチサイエンスさんより
ハードウェア的に画像処理などのAIに特化したデバイスだということが分かります。プログラムも、Micropythonで書くことができ、AIのライブラリを使用することができるので、まさに小型AIエッジデバイスのパイオニアといっても過言ではありません。
外観
下の写真は文房具と比較したものです。消しゴムになりきっていますね。
本当に消しゴムサイズでリアルタイムAI処理が出来てしまうので、5年前からしたら夢のようです。
文字を表示させる
M5stickVには液晶が元々ついていて、pythonで液晶の表示などを記述できるように設計されています。
今回は文字を表示させる方法に焦点を当てて解説します。
また、プログラムについては公式ドキュメントのものを使用します。
LCDモジュールで文字を表示
結果から見てみましょう。
プログラムを見てみましょう。
import lcd
lcd.init()
lcd.draw_string(100, 100, "hello maixpy", lcd.RED, lcd.BLACK)
プログラムを分解して見ていきましょう。
import lcd
1行目は、lcd モジュールを使えるようにimport します。
lcd.init()
3行目は、lcdに表示する画面を初期化します。
lcd.draw_string(100, 100, "hello maixpy", lcd.RED, lcd.BLACK)
4行目はlcdモジュールのdraw_stringという関数を使って、stringつまり文字列を描画します。
引数は順に、(横の初期位置, 縦の初期位置, 文字列, 文字の色, 背景の色)
となっています。
imageクラスを使って画像で文字を表示
結果から見てみましょう。
プログラムを見てみましょう。
import lcd
import image
img = image.Image()
img.draw_string(60, 100, "hello maixpy\n hello maixpy\n hello maixpy", scale=2)
lcd.display(img)
プログラムを分解して見ていきましょう。
import image
2行目はimageモジュールをimportしています。
img = image.Image()
この行は、imageモジュールのImageクラスのインスタンスを生成して、imgという変数に代入しています。
img.draw_string(60, 100, "hello maixpy\n hello maixpy\n hello maixpy", scale=2)
この行は、image.Image()クラスのdraw_string関数を使用して、imgに画像オブジェクトを生成します。
文字列は改行\nなどのコードも書けます。
lcd.display(img)
この行で、lcdに画像オブジェクトを表示させています。
次に、色を変化させる場合は、draw_string関数の引数のcolorを選択する必要があります。
color = (R, G ,B)で指定できます。
コードは以下になります。
import lcd
import image
img = image.Image()
img.draw_string(60, 100, "hello maixpy\n hello maixpy\n hello maixpy", color=(128, 0, 0), scale=2)
lcd.display(img)
結果はこのようになります。
以上で今回は終わりとなります。ありがとうございました。
他のモジュールの使い方も紹介しているので、よかったら見てみてください。
コメントを残す