相生コンピュータークラブ第2期(2026年3月)~WS2812Bを点灯させる~

2026年第2期は、ものづくりプログラミング。昨年作ったRaspberrypi Pico実験基盤を使って、カラーLEDを点灯させるところからスタートします。

タイピング練習とアルゴロジック

私たちが主宰するクラブは、ゴリゴリのコーディングをさせることで有名です。タイピングが速くて正確だからこそ、楽しくてやりがいのあるプログラミングが可能です。

でも恐れることなかれ、手順を追ってきちんと練習すれば最短で半年くらいで実践的なPythonプログラミングができるようになります。入門の入門講座で小学2年~小学4年生が驚くほどの成長を見せています。

練習のツールはフリーのもので十分です。練習の進め方とコツをクラブで覚えてしまえば、あとは自分でいくらでも進められます。

プログラミング入門の入門講座(相生・龍野)

AI時代の“学びの土台”を育てる、完全初心者向け準備講座 AI時代に強い子へ。プログラミングの“その前の力”を丁寧に育てる準備講座です。 本編クラブへのスムーズなステッ…

カラーLED(WS2812B)を点灯させる

カラーLEDを点灯させるには、実験基板と接続しなければなりません。接続用のピンを基板にはんだ付けします。

もうすでに実験基盤を完成させているので、ピンの接続は3カ所はんだ付けするだけです。あっという間に終わります。

しかしながら少しテクニックが要るのは、ピンをまっすぐにきれいにはんだ付けするところ。基板に対してピンが不安定なので、小細工が必要です。また、仮止めして温めながら修正するというテクニックも必要です。

これができたらコーディングスタートです。

まずはテストプログラムを動かしてみる

ものづくりプログラミングでは、いきなり難しいプログラムを動かすことはしません。まず、最低限ハードウエアの機能確認ができるようなプログラムで動かします。

コードを入力して、接続すればきちんと動くかどうか確認できます。ものの15分弱で入力し終えました。完成すると動画のようにLEDが4色に光ります。

WS2812Bを点灯させるテストプログラム
まずは動くかどうかテスト

素晴らしいなあと思うのは、動かなくても自分でエラーコードを読んで、間違っているところを修正しているところです。よくあるのは、「スペルミス」「大文字小文字の間違い」「インデント」です。だいたいName ErrorかSyntax Errorがでるので解決しやすいエラーです。

続けて少し複雑なテストプログラム

最初のテストプログラムは簡単すぎるので、続けて少し複雑なテストプログラムを動かします。

今度のプログラムは、下の動画のようにLEDが次々に流れるようなプログラムです。コードは少し長め。それでも15分強でだいたい入力し終わっていましたね。

テストプログラムその2
LEDの追いかけっこ

さらに応用、簡単な反射神経ゲームを作る

LEDをチラチラさせるだけでは面白くないので、さらに応用してゲームにしたのが反射神経ゲームです。以前、ほかのクラブのメンバーがパソコン画面内で動くゲームを作っていたのに発想を得て、LED(WS2812B)で作ってみたものです。

WS2812B7個を使ったリアクションゲーム
真ん中で止めろ!!

さすがに、これは時間内に完成させたメンバーはいませんでした。次回もやりましょう。

いったんパソコンの使い方を学習する

個別によく使うショートカットキーを伝えてきましたが、ここで一斉に全員にショートカットキーを使ってもらいましょう。

プログラミングでよく使うのは以下です。

キー機能
F5プログラムを実行する
(プログラム実行中に)Ctrl + cプログラムを強制終了する
Ctrl + zもとに戻す
Ctrl + c → Ctrl + vコピー & ペースト
Ctrl + a全部を選択
Tabインデント(字下げ)を入れる
Shift + Tabインデントを戻す
Ctrl + sファイルに保存する
Ctrl + n新しいファイルを開く
Ctrl + fコードを検索する

ショートカットキーなんて言うのは頭で覚えるものではなくて、使っているうちに自然に身体が覚えるものです。意識的に使っていけば、そのうち自然に使えるようになります。使いましょう!

光の三原色を知って、LEDの発光色を制御する

絵の具の色の作り方は、メンバーみんな馴染みがある様子です。でもLEDを発光させるときは、「光の三原色」を使います。

原理を説明したら、あとはコーディング。

カラーを手入力で変更して確認するプログラム
RGBの各色を手入力で変更する
混色実験プログラム
2色を設定してグラデーションを再現する

動かしているうちに疑問が出てきた

RGBに設定できる値は0~255です。でも1000とか10000とかの値を入れたらどうなるのでしょう?

実際に光らせてみて、光るけれども不思議な光り方をします。さあ考えましょう。

ちなみに、わたしたちスタッフも答えを知りません。下は後ろで考えているところです。

わたしたちスタッフも、すべての答えを知っているわけではありません。ではどうするかというと、原理原則に沿って、当たりをつけながら答えを探していきます。漠然とAIに聞いたところで、答えは出ません。ここがAIには負けない技術力です。

良い失敗をしてくれました

あるメンバーが、泣きそうな声でラズPicoが動かなくなったと言ってきました。「サージ」とか聞こえたので、やばいなあと思いながらLEDを見てみると……プラス・マイナスが反対に刺さっていました。

で、すぐにパソコンから引っこ抜いて正しく接続しなおしました。ところが、パソコンがPicoを認識しません。やばいなあ、壊れたかなあ。ということで、パソコン再起動して、重要なことを全体に水平展開。

原因は、おそらく過電流が流れてPicoが壊れたか、保護回路が働いて止めたかのどちらかでしょう。再起動で正常に戻ればラッキーです。

単なるプログラムと違って、電子工作は物理的に壊れます。お金が減って、心はすり減るかもしれないけれど、その分得られる経験は計り知れないものがあります。わたしたちスタッフもさんざん壊しています。

今回は、過電流保護機能が働いていたみたいです。再起動で無事でした。良い失敗、良い経験が出来たと思います。

LEDを光らせてなんの役に立つのか

たかだか7つのカラーLEDを光らせたところで、すなわち役立つものが作れるかというと、そんなことはありません。しかし、まったくの無意味かというとそうではないのです。

例えば、テレビやスマホの画面は、考え方としてはまったく同じ考え方で画面表示しています。

また、鉄道の行先表示(電気掲示器)はまさしくLEDだし、店舗などで見かけるメッセージスクロール看板もLEDです。

いきなりこれらの製品レベルのものを作ろうとしても無理です。高い山を登るにしても、まずは麓の第一歩から登り始めます。

カラーLEDを光らせて遊ぶところから、小さな一歩を積み重ねましょう。そうすることで、点と点が線でつながり、複雑なものが作れるようになるのです。