週末はオフ会に行ってきました。
体に纏わりつく「ねっとり」とした暑さが不快でしたが気の利いた仲間達との談義は心地よいものです。
用事があった為少し無理をして参加しましたが参加して良かった。
ほんと、車好きならオフ会に出席してなんぼですよ。
最初は知らない人達に囲まれて馴染めないかもしれませんが、C-HRのパーツのことなど共通の話題は山ほどあります。
勇気をもった一言、一行動が違う世界に誘ってくれます。
是非、近くでオフ会があるなら参加してください。
さて、私の光り物系DIYも高等な技術を習得すべく次のステップへ移行中ですが同時にそのひかり方が迷走気味です。
回る必要のない部位が回ったり、フラッシュしたり・・・
ま、いいか。
先日のブログで路線変更を宣言した通り、NeoPixelと呼ばれる色を個別に制御可能なLEDの点滅にチャレンジしています。
調査用の部品とマイコンボードは手元に届いており、すでに「シーケンシャルウィンカー」もどき、「ストップライト点滅」などの基礎制御は実装確認済み。
中心となるArduinoマイコンと用意されているライブラリが優秀過ぎてPICマイコンで制御していた苦労がなんだったのかと思えるほどです。
一方、Arduinoマイコンの欠点が見えてきました。
1つは先日のブログで語った「消費電流」の問題。
今調査で使用しているNeoPixelはWS2812Bですが1個あたり50mA消費します。
今後DIYで使用するNeoPixelはSK6812ですがこちらは1個あたり80mA消費します。
1mあたり144発並んでいるテープLEDを使いますが20発並べても長さが15cmしかありません。
ハイマウントストップライトの長さが25cmぐらいあり、2段並べるとすると72発使用します。
この消費電流は5.8Aです。
これをドライブさせる回路が結構な大きさになるため電源ユニットを別出しにして設置する必要がありそうです。
適当な場所からの枝線で元電圧を確保すると電圧不足になって正規の機能に影響しそう。
本来ならバッ直が望ましいぐらいです。
やはり電源確保が大きな課題になりそうです。
2つめは意外に制御が遅いという事。
NeoPixelは電源のプラス/マイナス、シリアル通信用ラインの3本で構成されます。
この3本だけですべてのLEDの色を個別に制御できる特徴がありますが、制御データは「バケツリレー方式」なんですよ。
1個目の通信が終わったら2個目にデータを渡す、2個目のLEDは次にデータを渡すという感じ。
LEDの数が増えると末端のLEDにデータが到達するまでに遅延が発生します。
これは結構面倒な現象です。
(ロジアナでデータ取ろうとしたんですが上手く取れなかったです)
通信速度は800kHzなので100個ぐらいでも遅延の影響は見えるかと。
3つめはArduinoの立上がりが遅い。
マイコンが安定するまでの時間が遅いです。
例えばウィンカーのような断続的なオンオフパルスで回路をオンオフさせると、毎回立上がりで遅延が発生します。
これを回避するためには制御回路に電圧を常に掛けておかなければなりません。
シーケンシャルユニットの場合、ウインカー線とGNDだけで良かったんですけど、Arduinoの場合はこの他にIGN線のような常時+12Vを与える必要があります。
配線が増える問題と熱などで制御が吹っ飛んだ時のリカバリー(例えばWatchDogなど)を組んでおく必要があります。
個人的な見解ですが、この自作回路で純正のウィンカーをシーケンシャルにするのはお勧めしません。
(回路が吹っ飛んだ時、ウィンカーが出ていない可能性があるため)
専用ICでシーケンシャル化回路を組みウィンカー線でドライブする場合、1回目の点滅で吹っ飛んでも、次の点滅で正常復帰出来るためウィンカーが点かないということがありません。
やはり専用ICで回路組む方が安全すね。
(PICでもOKなんですがあれも30msぐらいは遅延が発生します)
(専用ICでのシーケンシャル化回路は私の過去ブログで紹介済み)
過去ブログはこちら
Arduinoで遊ぶとすれば、補助のウィンカー制御(例えばリフレクターなどのウィンカー化)やハイマウントストップランプ、ミラーウィンカーのような補助系のライトの置換です。
ディライトなどの補助系のものもOKです。
ここは保安部品をいじっているという自覚で注意深く回路設計することが重要です。
と言うわけで遊ぶ対象としてはハイマウントストップランプが第一候補になっているわけです。
(リアフォグでもいいんですが、すでに商品化されてますしね)
あとは「燃えない」電源回路が確保できればDIYとしては目途が立ちます。
普通は燃えないんですけどw
10A確保する電源回路に自信がありません。
そこはbuchinobuさんのC-HRに「仮付だから」ということで試して頂くしかありませんね。
(オフ会に参加された方しか分からない笑いネタです)
(さすがに燃えそうな物を人の車には取付できませんので安心してください)
いずれにせよ、まだ調査を始めたばかり。
すでにNeoPixel+Arduinoの組合せでガッツリと組込んでいる匠がおられるので意見を聞きながら進めていきます。
その方の実装の動画を見たんですけどあの数のLEDを制御するのにどんな電源を使っているのか興味ありでした。
(少し神掛かってる実装なので理解できない可能性が高いですけど)
Arduino、これ楽しいです。
何でも出来る感じ。
想像力が掻き立てられます。
基本、ソフトウェアで制御しますので基本回路を1個公開すれば汎用できると踏んでいます。
あとは皆さんで自由に作品を作って頂ければと思うのでヤリ甲斐もあるし。
今後も途中経過はブログにしていきます。
(あとがき)
さすがにArduino制御でのシーケンシャル点灯を動画に撮ったところで感動が薄いので動画撮ってません。
毎回色を変えてシーケンシャル点灯するとかレインボー点灯でシーケンシャル化するとか幾つかのデモパターンをコーディング中。
NeoPixelらしさが出たところで動画公開します。
みなさんにNeoPixelの可能性を知ってほしいので。