今年は可変要素を増やしてテスト中。
1.点灯の最大値
2.点灯の速度
3.消灯時の時間
これらを似非乱数で決定。(Arduinoの乱数はまぁそういうもんレベルです)
2.点灯の速度とは、1.点灯の最大値に行くまでの加算する値。
A) 1.点灯の最大値が100で2.点灯の速度が10だと10段階で明るくなって、10段階で暗くなる。
B) 1.点灯の最大値が100で2.点灯の速度が5だと20段階で明るくなって、20段階で暗くなる。
段階は固定の時間なので、A)よりB)の方が長く灯っている事になる。
なんて事を今日昼間に思いついて、帰宅後にコードにしてみたら意外と旨く行きそうなので採用。
あとは、毎年使ってる、暗くなった動作開始して、特定時間たったら終わって、次に一定タイミング以上明るくなったら暗くなるのを待つようなコードを入れ込めば完成。
追加でなるべくAVRを寝かせる様なモードにして電力消費を抑えたい。点灯パターンタイミングも微調整は必要。
電池がなくなってきた時になんらか知らせる点灯モードも検討中。一応、元の電池の電圧を測定できるように回路は作ってある。RGBLEDを1こ入れる予定なので、それが点滅するようにするか。LEDはRGB1こ(3LED)、白6個、青6個で15個なので、1個PCA9685の端子が余る。これを「電池交換してちょうだいモード」の告知LEDにするのもありだなと。ともあれ明日にはストロベリーリナックスのINA226の電流測定モジュールが届くので消費電流を測定して調整してみたい。まぁ、今のままでも単三アルカリ電池で丸1日は動いてます(デバッグ用のLCDも表示させた状態で)。
このあとは実際のリースへのLEDの設置配線作業が待っています。
来年の課題は、スムースに点灯させる事かな。点灯速度が5だと5,10,15,20,25 … の様に明るさが増す。これを点灯切り替えのタイミン付を短くする事でスムースにしたい。
こんなコードだけど、こういうのの良し悪しを議論できるような職場だったらよかったのにな。
あ、基板はすでに完成させてます。