俺が趣味で参加しているオヤジバンドのベース担当は、目の光るカエルだ。

…なんていきなり云われても、知らない人には何のことやらだろうけど、ホントにそうなんだから仕方がない。動画でちょっと見てほしい(半分宣伝だよ)。

 

 

左奥にいる緑ジャージのカエル、目が光っているのがお分かりだろうか? 光る目のせいかステージ上で奇妙な存在感を放っていて、あろうことかヴォーカルの俺より目立ってるフシがある! 由々しき事態と云わざるをえないよホント。こいつより目立つステージギミックを作るのは、ヴォーカルの俺としては急務なのだ!

 

そこで、トレードマークである「黒丸メガネ」に、俺も負けじと光り物を仕込むことにした。ちょうど家に、黒丸メガネっぽいスチームパンク風ゴーグルが転がっていたので、そこにLEDを埋め込んで、ビカビカっと光らせるのだ。これで、観客の視線を釘付けにしてやるぜ!

 

スチームパンク風ゴーグル。

 

※いまもAmazonあたりで買えるみたいだ。

 

 

 

こんな感じにしたいのだ

完成形のイメージだけは持っている。よくSF映画やゲームに登場するような、ロボットの表情ディスプレイのようににしたいのだ。たしか、初代AIBOもこんな感じじゃなかったかな。

 

『ラチェット&クランク パラレル・トラブル』より。

 

あるいは、ぱちんこ『ホー助くん』とか。

 

平和の羽根モノぱちんこ『ホー助くん』。

 

要は、黒丸メガネの中にLEDドットマトリクスを仕込んで、まばたきさせたり、笑い目にさせたりするわけだ。

 

 

既製モジュールが合わない!

さてどうやって作ろうか。LEDドットマトリクスがモジュール部品として手に入ればラクだよなあ…と、秋月電子Adafruitのサイトを調査してみたけれど、ちょうどいいサイズのものがない。

 

Adafruitが出している「NeoMatrix」というパネルや、その互換品なんかは、カラーLEDで発色も綺麗だし、サイズが合えば最高にいいんだけどねー。

 

 

 

 

 

そこで例によって、基板から作ることにした。実は、LEDマトリクスを調査していく過程で、使われている部品がどれもほぼ共通であることを知ったのだ。WS2812B」というカラーLEDだ。簡単な回路と1本の信号線で、多くのLEDをコントロールできるらしい。

 

WS2812B。

安価に入手できるカラーLEDテープに使われている。

 

なんでも、AdafruitがこのLEDを「NeoPixel」というブランド名で展開していて、Arduinoでコントロールするためのライブラリも充実しているとのこと。なんと好都合な。

 

よし方針は決まった。WS2812Bを並べて、ゴーグルに入るサイズのLEDマトリクスを作ろう。そうしよう。

 

 

KiCadで設計

まずは作りをパクるために、WS2812BのLEDマトリクスをAmazonで調達した。でも、調査・実験の段階は特に面白くもないので割愛。

 

LEDマトリクスをブレッドボード上で動かしてみる。

 

ゴーグルの片眼の直径が47mmなので、その円形にWS2812Bを並べるとなると、6×6ドット以下にしかできない。角にはLEDを配置できないので、実際にはトータルで24ドットぐらいかな。さすがにそれでは表現力が低すぎなので、WS2812Bは小さいサイズ(2mm×2mm)の「WS2812B-2020というタイプを使うことにした。

 

WS2812Bはゴーグルに24個ぐらいしか並べられない。

 

あと、既製品を見る限りでは、WS2812Bを使った製品はどれも0.1μF程度のパスコンが入ってる。パスコンがないと電源電圧が不安定になるってことなのかな。このあたりのやり方はパクっておく。

 

というわけで、LEDとパスコンをひたすら並べて回路を作成。手間はかかるけど、めっちゃ簡単だわ。

 

完成した回路図。

同じものをひたすら並べる簡単なお仕事。

 

 

初めての表面実装基板

さて、ここからが本番。プリント基板の設計だ。
基板の外形(47mmの円形)に、あらかじめLED配置イメージのアタリを付けておいて、そこに並べていくわけだ。

 

UserDrawingレイヤーに枠線を引いておく。

 

なお、WS2812Bは表面実装部品なので、基板全体を表面実装で設計していくことにする。パスコンも表面実装部品を選定。サイズはなんと1.0×0.5mmだ。小せえ!

 

枠線の中心にLEDを配置。

 

というわけで、基板パターンが完成。
右目用と左目用で基板を共用するために、外部に線を出す場所を両側に配置してある。

 

なんだか、眼球に血管が走ってるようなイメージ。

 

部品は片面だけに配置するので、裏面が寂しかったから、KiCadの「イメージコンバーター」を使って、六百デザインのロゴを配置してみた。

 

裏面にロゴ。

 

 

JLCPCBに「部品実装」してもらおう

さて、1ミリ以下の表面実装部品をはんだ付けするなんて、俺の老眼には到底不可能だ。そこで今回は部品の実装までも業者に発注することにした。いつもお世話になってるJLCPCBさんが、部品の調達から実装まで、いつものごとく格安でやってくれるみたいなんだよね。

 

部品実装(PCB Assembly)も安い。

 

JLCPCBの在庫部品を検索すると、WS2812B-2020の在庫もしっかりある。価格は$0.1ほど。購入個数が多ければさらに安い。50個以上だから$0.08ぐらい。うん、リーズナブルだ。高かったらこの計画は頓挫してたなw

 

JLCPCBサイトに載っている品番(JLCPCB Part #)を確認しておく。
品番は「C965555」。

EasyEDAというWeb基板設計ツール用のデータも提供されている。
俺がKiCadで使っているデータと同じなので問題なし。

 

合わせてパスコンも選定する。このあたり、サイズは規格化されているようなので、容量とサイズと耐電圧から部品を選ぶ。

 

パスコンの品番は「C1525」。

 

ここで重要な情報がパーツの品番(JLCPCB Part #)。基板製作を発注するときはガーバーデータだけを送ればいいんだけれど、部品実装を発注する際には、パーツの品番もデータに埋め込まなければならないのだ。

 

このあたり、JLCPCBのヘルプにも情報は載っているけれど、インターネット上には先人の知恵が公開されているので、参考にさせてもらった。感謝。

 

 

 

まあ、やることは簡単で:

  • 回路図エディターで部品に品番を埋め込む

  • 回路図エディターで部品表(BOM)を出力する

  • PCBエディターで部品の配置ファイルを出力する

これだけ。
まず部品に品番を埋め込むには、回路図エディター上でシンボルの情報に「LCSC」というフィールドを追加して品番を書き込む

 

「LCSC」というフィールドが、品番情報。

 

部品表の出力は、回路図エディターの「部品表を生成…」から行うのだけれど、プラグイン(スクリプト)を入れなければならないので、ちょっと面倒かな。
JLCPCB向けBOM生成スクリプトをダウンロードしてきて適当な場所に置き、部品表を生成するときに選ぶ。

 

「bom2grouped_csv_jlcpcb.xsl」というのがスクリプト。

 

生成された部品表(CSVファイル)がこちら。でも今回ぐらい部品の種類が少ないと、スクリプトの恩恵があまりないね。手書きでも作れるw

 

単なる表だ。

※ちなみにこのスクリプト、ファイル名やフォルダ名にスペースや漢字が入っていたりするとエラーになるっぽい。調べたら、スクリプトの問題というより、システム側(要はマイクロソフト側)の問題らしい。相変わらずだなあ。

 

最後に部品の配置ファイル。これはPCBエディターの「製造用出力…」から。

 

「.pos」と書かれているけど、「.csv」で出力する。

 

ここにも手間がひとつあって、表の1行目を指定された名称にしなければならなかったりする。うう面倒なり。

 

Designator/Val/Package/Mid X/Mid Y/Rotation/Layerとする。

 

これで発注用データが揃った。

 

 

さて「部品実装」を発注しよう

下準備ができたら、後はサクサクだ。
まず、いつものようにガーバーデータをアップロード

 

もう手慣れたもんだ。

 

スクロールした下の方に「PCB Assembly」という項目があるので、スイッチをオンにすると選択肢が現れる。

 

実装タイプ(PCBA Type)は「Standard」を選んでおく。調べたところによると、WS2812Bのような基本パーツではない部品を使うときには「Economy」は選べないのだそうな。この時点ではEconomyを選んでいてもいいのだけれど、後でStandardに変更させられることになる(後述)。

 

あと、製作する基板は5枚だけど、実装する個数(PCBA Qty)は好きな個数が選べる(Economyの場合は2個から)。試作用の対応なのかな? いずれにせよ、ゴーグルには2つあれば十分なんで、それを選んでおく。全部選んだら「Confirm」

 

実装タイプは「Standard」、実装個数は「2」。

 

お次は、部品表(BOM)配置ファイル(CPL)のアップロードだ。用意したファイルをドラッグ&ドロップ。

 

JLCPCBでは配置ファイルを「CPL」と呼んでいるようだ。

 

左下に、この製品の用途を説明する欄があるので、入力しておく。通関のときに必要になる情報だ。これ、以前3Dプリント部品を発注したときに、通関から電話がかかってきて尋ねられたことがある。

 

LED Boardとしておいた。

 

次は使用パーツの確認。実は、実装タイプ「Economy」を選んでいると、ここでWS2812BはExtendedパーツだからStandardしか選べないよと云われるのだった(実は1回あった)。なお、ここでStandardに選び直すこともできる。

 

この画像はEconomyを選んだ場合。「Standard Only」と書かれている。

 

以上でデータのアップロードは完了! 料金は、送料を除いて$47.45。後はいつもの手順で、カートにセーブして発送方法を選ぶだけだ。

 

さーて、どんな感じで仕上がってくるのかな。楽しみすぎる。

 

(次回に続く)

 

※公開当初、「サイバーパンク風ゴーグル」と記載していましたが、「スチームパンク風ゴーグル」の誤りでした。訂正いたします。