注目キーワード

【Arduino】切手サイズのコンピュータ「M5Stamp Pico」LEDを光らせるぞ!

すけろく
M5Stamp Picoのことはじめに、
LEDを一つだけ光らせたが、やはりもっと派手にやりたいな。
げんろく
左様、わしも考えていたのだ。
LEDストラップを使って派手に光らせようではないか。

この記事では、M5Stamp PicoのGroveコネクタを使って、LEDが複数実装されたLEDストラップをいろいろな色やアニメーションで光らせてみます。

M5Stamp Picoはディスプレイを持っていないため、派手さを求めるなら、LEDストラップという感じです。

今回使うLEDストラップは、15個のLEDが実装されたもの「M5Stack LED Bar (10cm)」を使います。

このストラップは、Groveコネクタで入力できるので、M5Stamp PicoのGroveコネクタとも相性が良さそうです。

 

この記事の前提となるM5Stamp Picoのはじめかたについては、次の記事で紹介しています。

関連記事

すけろく 切手サイズのコンピューター。 なかなかいい響きだの~。 げんろく 何だそれは? すけろく 「M5Stamp Pico」だ。 ESP32系のマイコンを搭載した切手サイ[…]

今回使用したマイコンとLEDストラップはこちら!

M5Stamp Pico DIY Kit
切手サイズのマイコン本体とダウンローダーがセットになったキットです。
通信(WiFi/Bluetooth)機能も搭載され、Aruduino で開発できます。
初めて購入する場合はこちらがおススメです!

<付属品>

  • M5Stamp Pico本体
  • ダウンローダー
  • ピンヘッダ、コネクタ、Groveコネクタ、ケース取付用レンチ、シール

Amazonで確認

M5Stack用NeoPixel互換 LEDテープ 10 cm
10㎝の長さのLEDストラップです。LEDが15個実装されています。
商品には10㎝の他にも、20㎝、50㎝、100㎝、200㎝があります。10㎝のものはかなり短めのものです。両端にGroveコネクタ(HY2.04P)のメスがついているものになります。
(写真は10㎝以上の長さの商品のイメージです。)
Amazonで確認

LEDストラップの仕組み

今回使用するLEDは、制御用信号の線に信号を送ることで、LEDの光の色などを調整することができます。

LEDの仕組みについては、次の記事に詳しく紹介していますので、ぜひご覧ください。

LEDのしくみについての紹介は、こちら!

関連記事

この記事では、M5StickCとLED搭載の冷却ファンを使ったLED発光制御の方法について紹介します。 前回は、M5StickCで冷却ファンを使った回転速度制御をおこないましたが、今回はLEDです。 使用するLEDは、複数のLEDを1個[…]

今回使う「M5Stamp Pico」と「M5Stack LED Bar 」のケーブルの対応は、次のような構成にします。
もちろん「M5Stamp Pico」の他のGPIOを使っても構成できます。

M5Stamp Pico側

M5Stack LED Bar 側
GND(ー)
GND(-)
Vin(+)
Vin(+)
LED制御信号用(G32)
LED制御信号(PWM)
未使用(G33)
未使用

LED制御で使用できるArduino向けライブラリ

LEDをArduinoで使いたときには、次のライブラリを利用できます。

Adafruit NeoPixel Library

Adafruit 社が販売しているLEDストリップなどを制御するためのArduinoライブラリです。
Adafruit社の製品で使用されているLEDは「WS2812B」や「SK6812」が使われているものがあり、今回のようなものも同様に制御できます。

 GitHubのライブラリページはこちら(Adafruit NeoPixel Library)

FastLED

adafruit(Neopixel、DotStar、LPD8806)、Sparkfun(WS2801)、aliexpressなどで販売されているものなど、さまざまなLEDチップセットを簡単かつ効率的に制御するためのライブラリです。

LEDへの書き込みに加えて、このライブラリには、RGB値を操作するための高性能8ビット計算用の関数や、ピンやSPIハードウェアへのアクセスを抽象化するための低レベルクラスが含まれています。

 GitHubのライブラリページはこちら(FastLED)

 

上記の2つのライブラリは、Arduino IDEのライブラリマネージャでダウンロード、設定ができます。

ライブラリのインストールは、次の記事で紹介しています。

関連記事

Arduino IDE」では、使用する機能やセンサー、ボードを使用するプログラムで使用できる有効なライブラリが公開されています。ライブラリを使用すると、効率的かつ品質を確保したプログラミングが可能です。 ここでは、Ardu[…]

 

 

LEDに電源とM5Stamp Picoをつなぐ回路を製作する

それでは、実際にLEDストラップとM5Stamp Picoを電源につないでみましょう。

今回使用するLEDストラップやM5Stamp Picoは入力電圧が5Vなので、5V電源を使用します。

(※5Vよりも高い電圧をかけると危険ですので注意してください)

回路図を次のとおり書いてみました。
今回はLEDで使用する消費電力をM5Stamp PicoからではなくDCジャックから取る形にしています。

実際にブレッドボードで接続してみると次のような構造になりました。

ブレッドボードで使えるようにGroveコネクタとQIコネクタを持つケーブルを作りました。Groveコネクタは、HY2.0(4P)のコネクタと互換があるのでHY2.0のハウジングにしています。M5Stamp Pico側とM5Stack LED Bar 側で使えるよう2セット作っています。(赤線が「5V(Vin)」になるようにしています。)

 

これで仕組みの理解、電子回路の準備が整いました。
次はいよいよプログラミングを行い、LEDを光らせていきます。

 

M5Stamp PicoでLEDを光らせてみる

それではPWM信号を使用してM5StickCからLED発光制御をしてみましょう。 以下の発光パターンを順番に切り替えていくプログラムを考えます。ライブラリとしては「FastLED」を使います。

  • LEDを順番にひとつずつ順番に発光させていく(赤)
  • 全てのLEDを同じ色(単色)で発光させる(赤⇒紫⇒青⇒緑)
  • グラデーションで発光させる
  • グラデーションをローテーションさせてアニメーションさせる

冷却ファンのLED発光制御プログラム

Arduino IDEを起動して、「ファイル」メニューから「新規ファイル」を選択し、表示されるスケッチに以下のように記述します。

 Arduino IDE スケッチ例

 

 M5Stack/M5StickCへの書き込み

  1. 「ファイル」メニューから「名前を付けて保存」で任意の名前を付けて保存します。
  2. 「ツール」メニューから「ボード」情報を確認し、M5Stamp Picoであるか確認します。 この際、「シリアルポート」にマイコンを接続したCOMポートが指定されているかも確認します。
  3. 「ツール」メニューから「シリアルモニタ」を選択してシリアルモニタを起動します。
  4. 「スケッチ」メニューから「マイコンボードに書き込む」を選択します。

 

 プログラム実行結果

 

M5Stamp Picoを起動すると動画のように自動的に発光パターンが切り替わります。

動画の中では、丸い缶の中に入れて撮影したりしました。とてもきれいにいろが出ていますね!

これから組み込んでいくのが楽しみです。

今回の記事は以上になります。

次回は、M5Stamp PicoにWebサーバを作ってWebブラウザからLEDの発光パターンを変更できるようにしてみようかと考えています。

 

今回使用したマイコンとLEDストラップはこちら!

M5Stamp Pico DIY Kit
切手サイズのマイコン本体とダウンローダーがセットになったキットです。
通信(WiFi/Bluetooth)機能も搭載され、Aruduino で開発できます。
初めて購入する場合はこちらがおススメです!

<付属品>

  • M5Stamp Pico本体
  • ダウンローダー
  • ピンヘッダ、コネクタ、Groveコネクタ、ケース取付用レンチ、シール

Amazonで確認

つぎから購入する場合は、次のものを購入してもよいですね。


M5Stamp Pico Mate
切手サイズのマイコン本体とピンヘッダなどのコネクタ類がついているキットです。通信(WiFi/Bluetooth)機能も搭載され、Aruduino で開発できます。
ダウンローダーが必要ない場合はこちらをどうぞ!

<付属品>

  • M5Stamp Pico本体
  • ピンヘッダ、コネクタ、Groveコネクタ、ケース取付用レンチ、シール

Amazonで確認

複数個を一度に購入する場合は、次のものをどうぞ!



M5Stamp Pico(5個入り)
切手サイズのマイコンです。とても小さく、組み込みに有効なサイズ感ですね。通信(WiFi/Bluetooth)も搭載されています。
開発環境(Aruduino IDE/MicroPython/UIFlow)も豊富でおススメです!
たくさん購入したい場合はこちらをどうぞ!

<付属品>

  • M5Stamp Pico本体
  • シール

Amazonで確認

M5Stack用NeoPixel互換 LEDテープ 10 cm
10㎝の長さのLEDストラップです。LEDが15個実装されています。
商品には10㎝の他にも、20㎝、50㎝、100㎝、200㎝があります。10㎝のものはかなり短めのものです。両端にGroveコネクタ(HY2.04P)のメスがついているものになります。
(写真は10㎝以上の長さの商品のイメージです。)
Amazonで確認