フルカラーLEDリング・加速度センサー・ブザーを搭載した、IchigoJam/IchigoDake用の拡張基板です。
「光の三原色」「コンピュータでの色の扱い」などを学ぶ教材として開発しました。
回路図
- LEDリング(WS2812B)はLED端子につながっているので、「WS.LED」コマンドで制御できます。
- 加速度センサーは、X軸出力がOUT1(ANA5)、Y軸出力がOUT2(ANA6)、Z軸出力がOUT3(ANA7)につながっています。それぞれANA()関数で値が読み取れます。読み取る前に「OUT1,-1:OUT2,-1:OUT3,-1」を実行して、プルダウン設定にしてください。
基板データ
- Fusion PCB用ガーバーデータ(ZIP)(86×90mm)
*同じ基板を4枚並べて配置しています。
*この基板データは、CC BYライセンスとします。どうぞご利用ください。
(C) 2024 Shiro Saito (https://www.ichigoaman.jp)
材料
以下の順番でハンダ付けすると作りやすいです。
- KXTC9-2050使用3軸加速度センサモジュール
- 加速度センサーが不要な方は、はんだ付けしなくて構いません。
- ピンヘッダ (オスL型) 1×40 (40P) ※14ピン×2本にカット
- waves 8個セット 外径 32mm WS2812B 8LED(amazon)
- 同様の品がたくさん出品されています。
- 裏面の端子に、L型ピンヘッダ(4ピン)をはんだ付けして、基板に差します。
- 圧電スピーカー(圧電サウンダ)(13mm)PKM13EPYH4000-A0
- IchigoJamキットでお馴染みのブザーです。
プログラム
ランダム
8個のLEDをランダムな色で光らせます。
10 FOR L=0 TO 23 20 [L]=RND(50) 30 NEXT 40 WS.LED 8
光の三原色
G(緑)・R(赤)・B(青)の光の三原色の値を設定して、合成色を確認できます。
数字キー1・2でGの値を上下、3・4でRの値を上下、5・6でBの値を上下させてください。
10 CLV 20 K=INKEY() 30 [0]=([0]-(K=49)+(K=50))&255 40 [1]=([1]-(K=51)+(K=52))&255 50 [2]=([2]-(K=53)+(K=54))&255 60 WS.LED 1,8 70 ?"G";[0],"R";[1],"B";[2] 80 WAIT 5 90 GOTO 20
傾斜計
加速度センサーの値を読み取って、傾斜している(下っている)方向のLEDが光ります。
基板をいろいろな方向へ傾けてみてください。
10 LET [30],1,0,7,2,8,6,3,4,5 20 OUT 1,-1:OUT 2,-1 30 FOR N=0 TO 23:[N]=0:NEXT 40 A=ANA(5)/31-16 50 X=(A>0)-(A<0) 60 B=ANA(6)/31-16 70 Y=(B>0)-(B<0) 80 ?X,Y 90 L=[34+X+Y*3] 100 [L*3]=50 110 WS.LED 8 120 GOTO 30
センサーかわくだり
加速度センサーのX軸方向へ基板を傾けて、自キャラを左右に動かして遊びます。
IchigoDyhook+IchigoDakeだと、全体を左右に傾ければいいので遊びやすいです。
10 CLS:CLT:X=16:OUT 1,-1 20 A=ANA(5)/31-16 22 [6]=50*(A<0):[18]=50*(A>0) 24 WS.LED 8 26 X=X-A:X=X&31 30 IF SCR(X,5) ?TICK()/60:END 40 LC X,5:?"O" 50 LC RND(32),23:?"*" 60 WAIT 3 70 GOTO 20
ハンドベル
基板を上下に振ると、一音ずつ曲を演奏します。
- 20行が曲のデータです。「;」で区切って音を並べてください。
- 上下の振り方によってはうまく音が出ない時があります。40行の「A<710」の値を調整してください。
10 CLV:OUT 3,-1 20 P="C;D;E;F;E;D;C;R;E;F;G;A;G;F;E;R" 30 A=ANA(7):?A 40 IF A<710 PLAY P+N*2:N=N+1 50 WAIT 30 60 GOTO 30