Blinkt!はお気に入りのpHATです。8つのLED(APA-102)を搭載した超薄型Raspberry Pi のアドオンボードで非常に光量も多くプログラミングも簡単な部類に入ります。
Lチカと同じように光を制御して楽しめます。
今回、RaspbianがBusterになり、Pimoroniのサイトにあるインストールスクリプトが動かなかった方のためにマニュアルインストールをしています。
Raspbianのフルインストールが必須なので、Raspbian Liteではインストールできません。
これもRaspberry Pi Zero WHに繋いでみました。

また、pHATですが、今回はジャンパワイヤーで繋いでいます。
マニュアルインストール
このBlinkt!は英国Pimoroniの製品です。今では国内の正規代理店でも取り扱っています。Amazonに出品していることもあります。
https://shop.pimoroni.com/products/blinkt
冒頭にも記載の通り、pHATなのでGPIOに差すだけです。ジャンパワイヤーで繋げる場合、5V電源はナンバー1と2がありますが、基本はピンナンバー2を使用します。
Raspbianのセットアップ後、またはconfig.txtでI2Cを有効にしてください。
インストール手順
gitHubのページの通りで構いません。
https://github.com/pimoroni/blinkt
sudo apt-get install python3-blinkt
git cloneでダウンロードします。
git clone https://github.com/pimoroni/blinkt.git
blinktというフォルダが出来上がります。その中のlibraryフォルダにsetup.pyがあります。これでモジュールをインストールします。
cd ~/blinkt/library/ sudo python3 setup.py install
一部エラーが表示されましたが、再起動後には問題無くモジュールの読込は成功しました。
サンプルプログラム
このblinktフォルダにはサンプルプログラムもあります。(~/blinkt/examples)
この中のどれでも以下で実行してみてください。終えるには中断するためCtrl + Cです。
python3 ~.py
Pinoutページにあるサンプルを新規ファイルにコピペして実行しました。
https://pinout.xyz/pinout/blinkt
sudo nano test.py
from blinkt import set_pixel, show from random import randint from time import sleep while True: for pixel in range(8): r = randint(0, 255) g = randint(0, 255) b = randint(0, 255) set_pixel(pixel, r, g, b) show() sleep(0.1)

このプログラムだとLEDの色が順番に変わっていきます。綺麗です。
このblinkt!のプログラムはインポートさせるライブラリも少なく分かり易く、色を指定して表示させるだけなので、とても理解しやすいと思います。
比較的に簡単な文法
色をセットする書き方はいくつかありますが、基本は簡単な文法です。
set_pixel(0, 255, 255, 255)
set_pixel(インデックス(場所), R, G, B)
インデックスは0~7です。左から1から8までのLEDの場所です。コンピューターでは数を数えるのは0からです。
RGBはレッド、グリーン、ブルーの色で、その量を255までの数字で表します。青と赤を混ぜれば・・・紫ですね。紫は(128,0,128)です。
ある程度の色は事前に調べておくと良いでしょう。
インデックスを変数にして順番に代入していけば光が動くように表現できます。

また、輝度(brightness)も設定できます。(blinkt.set_brightness(0.1)など)
最後に
シンプルなプログラムで書けますから、他に機能を割り当てるのは比較すれば簡単な部類に入ります。
例えば、温度などを取得した場合、その温度の範囲によって何目盛りを光らせ、色は何色にさせるのか決めておくと、簡単な温度計になります。
他にも、メールを受信したら一番左が点滅するといった切っ掛けから光らせるのもアリですね。
光らせるアイディアはたくさんありますから、サンプルプログラムを全て理解するだけでも充分に応用が効くところがハマりました。
低価格でもあるので、1つ持っていると楽しめます。
コメント