micro:bit,OBD2,社外部品・DIY

前回と前々回の記事で、ELM327を介してエンジン回転数を示す2バイトのデータが、micro:bitのバッファ内の定位置に入る事の確認と、アスキーコード16進数から数値10進数への変換プログラムの作成を行いました。今回はこれらを踏まえた上で実際にエンジン回転数を得られるプログラムを作成し、車両で試してみます。

micro:bit,OBD2,社外部品・DIY

前回、車両に接続したELM327へOBD2ポートに対しての情報取得命令(010C:エンジン回転数)をmicro:bitから送信し、その答えとなる返信をLCDパネルに表示出来る事は確認しました。実際の返信内容にはエンジン回転数以外の情報も含まれるのですが、繰り返しの取得でもmicro:bitのバッファー内で毎回同じ位置に入る事も確認出来たので、必要な部分のみ抜き出して利用出来そうです。ただし返信内容は16進数のアスキーコード(文字)なので、これを最終的には10進数の数値に変換する必要があります。

スポンサーリンク

micro:bit,OBD2,社外部品・DIY

シリアル通信におけるRS232C通信については、TTLコンバーターを使用する事でmicro:bitとELM327間の通信は一応行う事が出来ました。今回は実際に車両のOBD2ポートにELM327を接続し、micro:bitの情報取得命令に対して、車両からの応答をLCDパネルで表示出来るか確認してみます。

2020年1月27日Ad,micro:bit,OBD2,社外部品・DIY

micro:bitの通信機能には無線通信機能の他、有線で行うシリアル通信機能があります。シリアル通信では3本の配線(送信・受信・GND)を使用して通信を行いますが、micro:bit同士であればワニ口クリップで簡単に接続して通信が可能です。Microsot MakeCodeでもシリアル通信に関するブロックも用意されています。さらに「USBにリダイレクト」のブロックを使用すると、PC(要ターミナルアプリ)とも接続出来ます。

Ad,OBD2,社外部品・DIY,車両・機能

以前、ELM327を使用して車両OBD2からデータを取得し、FA用PLCでアクセル開度や車速、エンジン回転数を同時に取得する事が出来ました。実際に車両で確認してみてもそれなりに正しい値になっていそうですが、車両でデジタル表示される車速以外は確認する方法がありません。そこでOBD2の分岐ケーブルを購入し、通常車両で使用しているTRUSTのインフォメータータッチと比較してみようと思います。・・・が。

スポンサーリンク