↓前回記事
図2を見てみると4 Byte目は0b 00000000と0b 00000001と0b 10000000の3パターンの値をとってます。このデータだけ見ると参考文献通り1 bitと7 bitにしか値が入って無いようです。今回はアクセルとブレーキを同時に踏んだパターンが無かったですが、もし同時に踏むと0b 10000001というデータも出てくると推察されます。
※車両のOBDカプラに装置を接続するという行為は通信を妨害してしまい、故障が入ってしまう可能性もあります。
(例えばCANのH-Lを短絡させて通信できなくしてしまったり、余計なCAN情報を流してしまったりなど)
作業する際は細心の注意を払ったうえで、自己責任でお願いします。
17Cを見てみる
こちらの参考文献によるとFIT3の17Cは下記のようになっているみたいです。
0,1byte目:アクセルペダル量
2,3byte目:エンジン回転数
4byte目0bit:ブレーキON情報
4byte目7bit:アクセルON情報
5byte目7bit:EVモード情報
5byte目5bit:EVモード情報(bit7より先に変化する)
6byte目:??
7byte目:カウンタ
(私の車はEVは無いため、5byte目には違うデータが入ってる可能性ありますが。。。)
それでは実際に見ていきます。
0,1 Byte目、5,6Byte目ですが。GE8の場合は常に0でした。。。
なのでアクセルペダル量の情報はFIT3以降に追加された情報だと推察されます。
(5Byte目は何もないのは予想通りですが、6 Byte目も0でしたね)
2,3 Byte目のデータを見てみる(エンジン回転数)
2,3 Byte目のデータはエンジン回転数という事でしたので、車速情報と合わせてみていきます(図1参照)。ID158の時は算出した0,1Byte目の値に0.01を掛ける必要がありましたが、エンジン回転数の場合はそのような処理は必要なさそうです。
図1:車速情報とエンジン回転数の比較(青:車速、赤:エンジン回転数) |
図1を見てみると車速が増加するタイミングでエンジン回転数が増加し、減速するタイミングでエンジン回転数が下がっていることが分かります。
また、このデータはエンジン始動直後から取得したデータなのですが、始動直後はアイドリングが少し高く1100回転程度ですが、時間経過するとアイドリングが800回転程度で落ち着くことが分かります。
4 Byte目を見てみる
参考文献では4Byte目は0 bit目と7 bit目にしか値が入ってないとなってましたが、一応他のbitにデータが入ってないか見てみます。図2:4 Byte目を2進数に変換し描画したもの |
ちなみにビットの見方を私が勘違いしていたので、間違えないようにお願いします。
0b 00000001を7bit目が立っていると思ってましたが、実際は0bit目が立っているという状況でした。バイトは一番左が0だったですが、ビットは一番右が0だったので少しややこしく感じました。。。
次に上記データの7bit目と0bit目を分離し、車速情報と一緒に描画したものを示します。
図3:車速情報とブレーキ/アクセルOn Off情報 |
少し見づらいグラフとなってしまいましたが、図3を見ると車速が上昇している時はアクセル(赤線)が1となっており、車速が減少している区間ではブレーキ(緑)が1となっていることが分かります。
アクセルオフで減速している区間でアクセルペダルが0と1を繰り返していますが、おそらくアクセルオン/オフ判定の閾値付近のアクセル開度でアクセル操作をしていたのではないかと思います。
まとめ
前回に引き続きID 17Cの情報を見てみました。
解析した結果下記のようなデータが格納されてました。
↓次回記事
0 件のコメント:
コメントを投稿