ねこにコベイン

にゃーにゃーにゃー

Arduinoを使ってAuraSync対応の機器を色々光らせる話

事の起こり

前の前のpostのとおり、酔った勢いでPWMファンを買ったらAuraSync対応だったので*1、なんとかこいつを制御してやりたいなあ、と考えたのが始まりです。
PWMで色を変えるなら、Lチカの延長じゃーん、LチカといえばArduinoじゃーん*2
というわけで、Arduinoどうすっかなー、AVRにbootloader書き込んだらどうにかなるんじゃねー?そういや手持ちでAtMega8大量にあるなあ*3、てことからいろいろ調べて、さあやるぞ、という感じです。

PWM

難しいことはさておき、吉田製作所のYouTubeでNch-MOSFETというやつを使えばチョロインかな?というところまでは分かった。
https://www.youtube.com/watch?v=MmyI4CsPZyE

ファンの回転数を制御する前に、LEDの明るさを変えるテストしているので、このテストそのまんまでいいじゃん、という話かなと思った。

というわけで動画で紹介されていたMOSFETのやつをAmazonで買って使っていたけど、3つ繋げると結構場所取るなあ、というのが難点。

f:id:nyarinkopv:20201111213602j:plain
さすがに結構場所を食う

基板をFusionに頼む

というわけでAVR乗っけてMOSFET3つ付けた基板をSeeed Fusionに頼んでみました。
https://www.fusionpcb.jp/
海外にKiCADのデータを送ったら1~2週間で基板になって戻ってくるスグレモノ。
…蛇の目基板にシコシコ部品置いて電線で結んでってやっても大した作業量じゃないんですけど、はんだ付けがどうも苦手なので…CADいじくる方がまだ楽だよ、送料高いけど*4

というわけではいコレ、ドーン!
f:id:nyarinkopv:20201104193035j:plain
せっかく基板作ってもらうんだからUSB-シリアル変換載せる端子とかICSPも付けようよ、とか、ボタンやポットを付けたらいいのに、というのは届くまで気づかなかったよ…
あと、あちゃんでいいのにあんまり付いていなかったのでパスコンとか保護回路はほぼ一切つけてない。(ひどい)

部品リスト

ふだんはaitendoを使ってますが、リンクは秋月の商品ページを張っておきます。(だいたい同じものならまあ動く。とくに抵抗値)

ソフト側はArduinoで…

Arduinoのスケッチ例に「Basics - Fade」ってあるじゃないですか。
これを元ネタにAuraSyncソフトの説明を書いているサイトを巡って色の変化のパターンをパクって、もとい参考にして実装するだけです。

まだテストで色変わるやつしか書き込んでない…

// led_brightness_sample1

const int pin_G = 9;
const int pin_R = 10;
const int pin_B = 11;

void setup() {
}

void loop() {
  int led_G = 0;
  int led_R = 0;
  int led_B = 0;

  const int osG = 17;
  const int osR = 31;
  const int osB = 43;
  
  while(true){

    analogWrite( pin_G, led_G );
    analogWrite( pin_R, led_R );
    analogWrite( pin_B, led_B );
    
    led_G = ( led_G + osG) % 256;
    led_R = ( led_R + osR) % 256;
    led_B = ( led_B + osB) % 256;

    delay( 100);
  }
  
}


応用としてボタンを外付けして、ボタンを押すたびにパターンが変わるとか、可変抵抗でパラメータをいじって、パラメータはEEPROMに覚えさせておくとか。

載せるほどのものではないですが

KiCADで書いた図面
R1~R3は100Ωくらい、R4~R6は1kΩくらい、C1とC2は22pFくらい。
f:id:nyarinkopv:20201108234706j:plain

*1:どうりで高かったわけだ。素面なら絶対買わない。

*2:ホントはArduinoで出来ること、最初のサンプルにBlink、というお約束みたいなのが大嫌いな、はずなのですが…

*3:raphaelの影響です。https://www.raphnet.net/electronique/electronique_en.php

*4:初回はそうでもない

*5:あちゃんでいいの互換機能を1~3ピン+17~22ピンからジャンパ飛ばしてくっつける際に必要な回路の基板、個人的には「なんちゃっていいの」と呼んでます。