LOLシールドを使って文字をスクロールする名札を作る
◆まえがき
Arduino のLOLシールド(9x14 LED)を使ってLED名札を作ってみました。今週末に Maker Faire Tokyo 2023 が久しぶりに開催されるので、会場内で首からぶら下げてみようかと思います。
◆回路図
本来はArduino UNO に挿して使う物ですが、それでは厚くてケースに入らなかったので、Arduino NANO に変更しました。図中にも記載していますが、点線で示しているLOLシールドは裏から見た図(Bottom view)になっています。
回路としては、D2からD13までの12ピンを順に接続しているだけです。チャーリープレクシングで点灯させているので126個のLEDを12本の配線で任意のパターンで点灯させることが可能になっています。
電源は +5V のピンにリチウム電池からダイオード経由で供給しています。これでは供給電圧が低目になってしまいますがまあ大丈夫でしょう。あと、LEDの明るさが下がるのでちょうど良いと思います。なお、プログラムする時はそのままUSBを挿せばOKです。
回路図に書き忘れましたが、UNOのD13に基板内で接続されているLED(いわゆるBuilt in LED) は白色の物に交換しています。元の赤色LEDのままだと、Vfの低さが影響して不要なLEDが薄く点灯してしまいます。ちなみに、純正品のUNOなどではちゃんとバッファが入っているのでそういう問題は起きません。
◆外観
・表側
秋月のポリカケースを使いました。そのままではLEDが眩しいので乳白色のプラシートを入れています。
・裏側内部
基板間でショートしないよう、間に塩ビのシートを入れています。長く使うものでは無いので、ピン間を直接配線しただけです。
◆プログラム
// file name: 20231013_MFT2023_LolNamePlate // このプログラムは下記で提供されているLoLshieldライブラリの // https://github.com/jprodgers/LoLshield // に掲載されている、exampleのLoLshield-master/Animations/LoL_Shield_Demo.ino // から、文字のスクロール表示の部分を切り出して修正したもの。 // 著者のJimmie Rodgersさんに感謝します。 // 2023/10/13 ラジオペンチ http://radiopench.blog96.fc2.com/ #include "Charliplexing.h" #include "Myfont.h" #include "Arduino.h" #include <EEPROM.h> int toggleState; int EEPROMaddress = 0; // 表示文字列の定義 int charLength = 48; unsigned char text[] = "Thank you MFT2023 exhibitors. radiopench "; byte brightness = 1; void setup(){ toggleState = EEPROM.read(EEPROMaddress); upToggleState(); LedSign::Init(GRAYSCALE); for (int i = toggleState+1; i > 0; i--){ LedSign::Set(i-1, 0, brightness); } LedSign::Clear(0); } void loop(){ Myfont::Banner(charLength,text); } //Ups or resets the state counter void upToggleState(){ toggleState++; if (toggleState > 3) toggleState = 0; EEPROM.write(EEPROMaddress, toggleState); }
LOLシールドのライブラリをインストールすると追加される example の中の、 LoL_Shield_Demo.ino から文字表示の部分だけを切り出しただけです。点灯はチャーリープレクシングです。
◆動画
Arduino とLOLシールドを使って名札みたいな物を作ってみた。
— ラジオペンチ (@radiopench1) October 12, 2023
土曜日にMFT2023に行くので、首からぶら下げてる予定。ちょっと小っ恥ずかしいけど、久しぶりの開催だからまあ良いかな、 pic.twitter.com/CwpDxmUbkW
◆まとめ
こういうLEDアレイはそれなりのインターフェイスを介して表示させるのが最近のやり方ですが、手持ち部品が活用できたのでまあ良しとしましょう。
消費電流は20mA程度なので、公称容量900mAhの14500のリチウム電池で40時間くらいは連続点灯出来るはずです。