ヤリスクロス 欧州版シフトセレクターへの換装 その③ CAN解析
目的
チューニング・カスタム
作業
DIY
難易度
初級
作業時間
12時間以上
1
2
次はArduinoを使った電子工作の入門の本。
Arduinoを使えば導通制御ができそうってことで買ってみた。
構想としては
MCP2515CANバスモジュールでCANを受信。
Arduinoで受信したCANから現在のシフトポジションを判定。
現在のシフトポジションに対応した配線のみ導通させるというもの。
3
準備物
まずはArduino Nano Every 2500円位。
コンパクトだし、電源は21vまで対応しているので車載として最適だと判断した。
4
MCP2515 CANバスモジュール 700円位
CANを受信するために必要。
5
配線を傷つけずに手軽にCAN配線にアクセスできるOBD2用の配線コネクタ。
1000円位
その他、ジャンパワイヤーとかいろいろ材料は必要にはなるが・・・
6
完成したものがこちら。
芸術的な出来栄えに自画自賛。
arduino nano everyと
mcp2515の接続や設定
arduinoに書き込むスケッチについてはChatGPT様にご教授いただいた。
ほんと、便利な世の中になったものだ。
ただ、ChatGPTの回答はそれが正しいのか判断できるだけの基礎知識は必要になる。
7
とりあえずこの構成でヤリスクロスのOBD2からCANが取得できるか確認。
arduinoの電源はノートパソコンのUSBから給電。
OBD2ポートにケーブルを指して
パソコンのコンソール(TeraTerm)で確認。
バーっと文字列が流れていき、無事CANが取得できた。
そのままパソコンでログを保存して解析を始める。
SavvyCANというWindowsでも使える解析ソフトがあるが専用のケーブルが無いとダメらしいのでExcelを使って解析する。
シフトを一切変更しないログ。
一定の間隔でシフトチェンジしたログ。
これを比較してエクセルで解析していくが何かおかしい。
毎秒100~200フレーム程度のログだし
CANIDも6つほどしかない。
噂ではトヨタ車のOBD2のCANにはあまり情報が流れてないとかなんとか…
配線図を見てみてもCA2H、LとかCA3H、Lとかあるし、CANと言っても全部の情報を垂れ流すのではなく必要な場所に必要な情報だけを流しているってことで間違いなさそう。
結果、OBD2のCANには目的の情報は流れてない事がわかった。
8
メーター裏のCAN配線なら確実に目的の情報が流れているだろうがアクセスが面倒くさい。
どうにかならないかと、いろいろ調べた結果、ゲートウェイコンピューターのこの配線がメーター裏に繋がってる配線のようだ。
ゲートウェイコンピューターはハイブリッドECUの右側にあるので助手席グローブボックスを外すだけで簡単にアクセスできる。
赤の配線30番がCAN H
白の配線29番がCAN L
9
これが実際にEXCELで解析した結果。
黄色マーカー部が目的のそれ。
ピボットテーブルや関数を駆使して
視覚的に見つけやすいように工夫したものだ。
シフトチェンジは5回なのでバイトの変化が5種類だけのCANIDを探したり、
シフトチェンジをしていない間にバイトが変化したCANIDは除外したり…
そんな単純な事では特定できず…
他のトヨタ車のシフト関連のCANIDの情報を探して、その近辺で探したり…
なかなか特定できずに試行錯誤しながらかなりの時間をかけて特定できたので、特定できたときには叫びたいほど嬉しかった。
ってことで、
ヤリスクロスハイブリッドの
シフトポジションに対応するCANIDは「127」だ。
また、先頭から5バイトは固定で
0010000000になり
6バイトの2桁目がシフトポジションに対応
0 = P
1 = R
2 = N
3 = D
4 = B
6バイトの1桁目以降は変動するので無視すれば良い。
(ちなみに16進数です)
という解析結果になった。
次の記事
https://minkara.carview.co.jp/userid/3620961/car/3563869/8318168/note.aspx
[PR] Yahoo!ショッピング
おすすめ順
売れている順
タグ
関連コンテンツ( 欧州版 の関連コンテンツ )
関連整備ピックアップ
関連リンク