注目キーワード

【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コネクタ、ケース取付用レンチ、シール

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 1.8.xバージョンのライブラリ管理方法を紹介した記事です。 Arduino IDEは、より新しいバージョン「2.0.x」が発表されています。     機能がよりリッチになった「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コネクタ、ケース取付用レンチ、シール

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

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

<付属品>

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

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



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で確認

M5Stamp Pico の他の記事はこちらからどうぞ!

すけろく メダカもだいぶ増えたの~。 げんろく そうだな。 毎日の餌やりと、水替え、結構がんばっとるからな。 すけろく 水温は、第一弾で水温センサーを仕込んだから、 管理は楽になった。 げんろく そうだな。 よし、今回は、餌やりを自動化してみるか! 皆さん、お家で何か動植物を飼っていますか? 我が家のメダカもよく育っています。 前回の第一弾で、水槽内の水温を計測・記録するものを作りました。 おかげ […]

すけろく うーむ。 モーターを毎回同じくらい回転させることはできんのかな。 げんろく DCモーターや、サーボモーターだと、 回転量を正確に制御することは難しいぞ。 すけろく では、何か解決策はあるのかぇ? げんろく ステッピングモーターというものがある。 モーターの回転をステップとして制御できる。 今回はこのあたりを動かしてみるか。 この記事では、「M5Stamp Pico」を使って、「ステッピン […]

すけろく うーむ。 何とかならんか~ げんろく どうした? 電池を見つめて。 すけろく 電池を電源にしてM5Stampを使っているのだが、 一定間隔で動かしているのだが、電池の持ちが悪くてな。 げんろく うーむ。どれどれ。 Sleepさせていないのか?これだとずっとCPUが電力を消費するぞ。 よし、今回はDeepSleepの方法を使う方法を紹介しよう。 この記事では、「M5Stamp Pico」を […]

すけろく そういえば、LCDパネルがあるのだが、 使ってなかったな。 げんろく んー。 どれどれ、このコントローラICなら Arduinoで使えるな。 すけろく それなら、M5Stamp Picoで時計を表示したいな。 時刻同期は以前の記事でやっているし。 げんろく よし、やってみよう! この記事では、「M5Stamp Pico」を使って、「LCDモジュール」に時計を表示させてみます。 「M5St […]

すけろく んーどうしたものか。 げんろく どうした? 深刻な顔をして。 すけろく M5Stackにプログラムを書き込んだら 起動しなくなってな。 電源ON/OFFでも無理なのだ。 げんろく 書き込んだプログラムか、バッテリーの 過放電か。工場出荷時に戻してみてはどうだ? この記事では、M5Stackにプログラムを書き込んだ結果、うまく動作しなくなった場合の対処方法を記載します。 ご紹介するのは「工 […]

すけろく 最近、透明で先の見えるディスプレイが あるらしいな。 げんろく ああ、薄暗いサングラスくらいの透過率で 先が見えるものがある TOLED(Transparent OLED)と言うんだ。 すけろく M5Stampからでも表示制御できるのかな。 げんろく Arduinoでプログラムできるものがあるから、 M5Stamp Pico用に改造してみるか。 この記事では、M5Stamp Picoを使 […]

すけろく ちょっと!! e-Paper(電子ペーパー)ってディスプレイ制御は 独特なの? げんろく まあ、そりゃ違うわな。 ものが違うからの。 すけろく Raspberry Pi Pico向けのe-Paperを入手したが、 Arduino+M5Stamp Picoで使いたいのだ。 げんろく よし。 ではM5Stamp Picoで使ってみるか! この記事では、M5Stamp Picoを使って、e-P […]

すけろく M5Stamp Picoのことはじめに、 LEDを一つだけ光らせたが、やはりもっと派手にやりたいな。 げんろく 左様、わしも考えていたのだ。 LEDストラップを使って派手に光らせようではないか。 この記事では、M5Stamp PicoのGroveコネクタを使って、LEDが複数実装されたLEDストラップをいろいろな色やアニメーションで光らせてみます。 M5Stamp Picoはディスプレイ […]

すけろく WiFi接続は前回行ったが、次は時刻同期だな。 げんろく そうだな。IoTに正確な時刻は大切だ。 NTPサーバと時刻同期してみよう。 この記事では、M5Stamp PicoをアクセスWi-Fiアクセスポイントに接続し、インターネットの時刻サービスを使って時刻を同期する方法について紹介します。 M5Stamp Picoはディスプレイを持っていないため、主に処理時間やセンサーなどからデータを […]

すけろく 切手サイズのコンピュータに書き込むことはできな。 げんろく 次は、WiFi接続まわりを試してみよう。 基本はM5Stick Cと同じはずだ。 この記事では、M5Stamp Picoに実装されているWiFi機能を使って、Wi-Fiルータに接続する方法について紹介します。 この記事の前提となるM5Stamp Picoのはじめかたについては、次の記事で紹介しています。 Wi-Fi接続する際には […]