• 車種別
  • パーツ
  • 整備手帳
  • ブログ
  • みんカラ+

lzxiuのブログ一覧

2014年07月21日 イイね!

LinuxでOBD II その3 Scantool(改)を使ってみる

LinuxでOBD II その3 Scantool(改)を使ってみる

Scantool for Linuxのビルドが完成したので、今度はericsond氏の更新ファイルを適用してリビルドしてみることにしました。

適用手順は簡単です。おなじみ
Puppy forumのスレッド内添付ファイル"FileUpdates.zip"をダウンロードして、Scantoolソースファイルの展開ディレクトリ内でunzipするだけです。あとは、makeを走らせてScantoolをコンパイルでOK

 
 # cd Scantool121
 # unzip -uo FileUpdates.zip
 # make

このericsond氏謹製の更新ファイルにより、オリジナルのScantoolに以下の機能が付加されます(機能拡張版Scantoolを以下、『Scantool(改)』とします):

 1) ログファイル"
comm_log.txt"にコマンドとデータが自動保存されるようになる
 2) 最初の起動で"OBD Mode 1 PID 0x00"及び"0x20"を送信して、サポートされている
PIDのみを車両のCAN-BUSから取得可能となる
 3) 
gnuplotをインストールすることにより、Sensorパラメータのロギング結果をグラフ描画可能となる

 4) Sensorパラメータ画面に上述の対応PIDsが表示されるようになる

早速、myラウムでScantool(改)を走らせてみました!

センサー画面では対応PIDs項目のみ表示されるようになり、視認性が向上しました。

またここで、表示"ON"項目のデータログを採取したい場合、"Start DATA"ボタンにてロギングが始まります。この後"Stop DATA"でロギングの終了、"Graph"でgnuplot(要別途インストール)により当該ログがグラフ描画されます。


 
gnuplotなんて大学の時以来(TeXのお供に)なので少し身構えましたが、オート描画してくれるのでとてもイージーでした。ericsond氏はホント偉大だ!
 
ここまで改良が施されるとデータロガーとしてなかなか使えそうですね。ちょっとデバイスが大きいので運転中は難しそうですが...

 

Posted at 2014/07/21 12:59:17 | コメント(0) | トラックバック(0) | OBD II | パソコン/インターネット
2014年07月18日 イイね!

LinuxでOBD II その2 Scantoolのビルド(3) - Scantool実行の巻 -

前回、Scantoolに必要なライブラリの構築は完了しました。いよいよScantoolのコンパイルです。
ここまでくれば、既に展開済みのScantoolディレクトリでmakeすればOKです。

 # cd Scantool121
 # make
 # chmod +x ScanTool


あとは起動前にscantool.cfgを、次の動作環境に適合するように書換えておきます。

 ・System Of Mesurements -> Metric
 ・COM Port -> COM6 (/dev/ttyS5へ、/dev/ttyUSB0のシンボリックリンクを張っておくこと)
 ・Baud Rate -> 38400bps

 # vi scantool.cfg



では、ELM327デバイスを繋げて実行してみましょう...

 #./Scantool
 

でたー、Linuxネイティブ版Scantool!
ヽ( ・∀・)ノ

About画面の表示からも"for DOS"の文字が消え、"for Linux"に。

もちろん動作も安定しています。"log.txt"に動作ログが出力されるようになりました。

これでScantoolを無事ビルドできました。
この次は、改良版の話とかを...
Posted at 2014/07/18 23:29:31 | コメント(0) | トラックバック(0) | OBD II | パソコン/インターネット
2014年07月18日 イイね!

LinuxでOBD II その2 Scantoolのビルド(2) - Dzcommの巻 -

前回allegroのコンパイルが完了したので、allegroのRS-232拡張ライブラリ"Dzcomm"をコンパイルします。

1. Dzcommのソース(dz099i.zip)を以下のURLからダウンロードする:
   http://sourceforge.net/projects/dzcomm/files/

2. Scantoolのソース(scantool_net121src.zip)を以下のURLからダウンロードする:
   http://www.scantool.net/downloads/archive/diagnostic-software/

3. ericsond氏謹製ファイル(ReplaceFiles.zip)の適用
 DzcommとScantoolのコンパイルの前に、ericsond氏の更新ファイルを適用します。
 
 (1) 次のPuppy Forum URLより、スレッド添付ファイル"ReplaceFiles.zip"をダウンロードする:
   http://www.murga-linux.com/puppy/viewtopic.php?t=85679&sid=a7b419068583c1f6fe48d9ea288d1dad

 以下、dz099i.zip、scantool_net121src.zip及び、ReplaceFiles.zipが同一ディレクトリ配下にあるものとして話を進めていきます。
 

 (2) ReplaceFiles.zipをDzcommとScantoolのソースに適用
 # unzip dz099i.zip
 # mkdir Scantool121
 # cd Scantool121
 # unzip ../scantool_net121src.zip
 # cd ..
 # unzip -uo ReplaceFiles.zip


4. ソース構成をunix環境用に修正及び、dzconfig.hの編集
 # cd dz099i
 # chmod +x fixunix.sh
 # ./fixunix.sh
 # vi (emacs, geany or etc.) include/dzcomm/dzconfig.h

 私の環境ではコンパイル時にインクルードファイルの二重取り込みエラーが発生するので、134行以降をコメントアウトしました。


5. Dzcommのconfigure.inファイルの編集
 前回allegroを/opt配下にインストールしたので、インクルードファイルのありかをconfigure.inに明示します。
 # vi (emacs, geany or etc.) configure.in
 configure.inの122行目を次のように変更


6. Dzcommのmakeとインストール
 # ./configure --prefix=/opt
 # make
 # make install


これで、Scantoolに必要なライブラリは一通り構築できました。次回はいよいよScantoolのビルドです ρ(・ω・、)
Posted at 2014/07/18 00:10:05 | コメント(0) | トラックバック(0) | OBD II | パソコン/インターネット
2014年07月16日 イイね!

LinuxでOBD II その2 Scantoolのビルド(1) - allegroの巻 -

LinuxでOBD II その2 Scantoolのビルド(1) - allegroの巻 -前回PuppyパッケージマネージャからインストールしたScantoolが不安定だったので、Puppy Forumの情報を参考にScantoolをソースから独自ビルドしてみました。
今回実施した手順は次のとおりです:

 1. allegroライブラリをコンパイル
 2. dzcomm及び、scantoolのソースの一部をericsond氏謹製(ReplaceFiles.zip)に置換する
 3. dzcommのコンパイル
 4. scantoolのコンパイル

ビルドを行うに当たってまず、Puppyに開発環境一式を組み込む必要があるので、"Puppyセットアップ"で起動時の設定から"devx.sfs"ファイルを読み込むようにしておきます。
これでgccや、makeなどの開発ツ−ル群が使用可能になります。

1. allegroライブラリのコンパイル

(1) 以下のURLからallegroのソースを入手する:
 http://sourceforge.net/projects/alleg/files/allegro/4.2.3.1/allegro-4.2.3.1.tar.gz/download

(2) 適当なディレクトリにソースファイルを展開
 # tar -zxvf allegro-4.2.3.1.tar.gz

(3) 展開したディレクトリ下でfix.sh及びmakeを実行
 # chmod +x fix.sh
 # ./fix.sh unix
 # ./configure --prefix=/opt
 # make
 # make install
 # make install-man

(※ 今回はallegroを/opt配下にインストールしました)

(4) allegroライブラリを使用できるように/etc/profileの環境変数を編集
 # vi (emacs, geany or etc.) /etc/profile
  環境変数"PATH"に、"/opt/bin"を追加
  環境変数"LD_LIBRARY_PATH"に、"/opt/lib"を追加
 # source /etc/profile

(5) サンプルプログラム(exflip.c)をコンパイルして、実行できるか確認
 # cd (allegroのソ−ス展開場所)/examples
 # gcc -I/opt/include exflip.c -o test01 `allegro-config --libs`
 # ./test01


動いた!∩( ・ω・)∩

この手のライブラリはSDLを少しイジったことがあるんですが、allegroは全く初めて。いろいろ情報を集めて、なんかミニゲームでも作りたいですね〜

Scantoolビルドの続きはまた明日に... ではでは。
Posted at 2014/07/16 23:45:57 | コメント(0) | トラックバック(0) | OBD II | パソコン/インターネット
2014年07月13日 イイね!

LinuxでOBD II その1

LinuxでOBD II その1AmazonでELM327デバイスを入手したので、早速ラウムのOBD IIポートに繋いで遊んでみることにしました。

接続I/FはBluetoothかUSBか迷いましたが、USBを選択することに。理由は、家のPC環境が主にLinuxなので認識の際に苦労しなさそうなのと、技適マークが無いBluetoothデバイスを日本で使用するのは如何なものかと考えたからです。

とりあえずPuppy Linux (Precise Puppy 5.7.1)の"Puppy パッケージマネージャ"で、OBD IIプロトコルが喋れるツールは無いものかと思い、いそいそと検索。UbuntuのPrecise Universeレポジトリからscantool "(1.21+dfsg-2)" (OBD-II vehicle diagnostic scanner)なるものを発見!早速導入してみました。

まず初めにラウムのOBD IIポートと、PCのUSBポートにELM327デバイスを挿して、イグニッションON 矢継ぎ早にターミナルで"lsusb"を実行:

Bus 003 Device 002: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port


この時シリアルポート(/dev/ttyUSB0)で認識されているので面倒な悪寒が走りましたが、次の手順にて無事Scantoolで認識できました。

1. /dev/ttyUSB0から/dev/ttyS?にシンボリックリンクを張る(ttyS?の部分は空きポートに合わせて任意。私の場合はttyS5を使用しました。)
# ln -s /dev/ttyUSB0 /dev/ttyS?

2. Scantoolを起動(ここで、ポート未設定と思しきエラー発生)


3. GUI画面の"Options"を次のように変更:

 ・System Of Mesurements -> Metric
 ・COM Port -> COM ?+1
  ("?"は手順1の/dev/ttyS?に該当。ttyS5ならCOM6になる。)
 ・Baud Rate -> 38400

GUI画面の"About"でOBD情報を無事確認。


"Read Codes"で障害情報を確認したり、

"Sensor Data"で各種センサの状況を把握できます。



しかしこのScantool、挙動がかなり不安定です。前回保存した設定ファイル(~/.scantoolrc)を消去しないと、何故か再起動不可能に。abortってワケでもなく、起動後、即終了します
...(ノ∀`)

画面出力から察するに、汎用ゲーム開発ライブラリの"Allegro"を使用したDOS版から移植したものなんでしょうか?(これはこれでちょっとシビレるが...)
打開策を探すべくPuppy Forumの以下のスレッドを見ると、ソースからのビルド方法&更新ファイルが公開されているではありませんか!
次の休日に試してみることにしますΣb( `・ω・´)

OBD II Scantool on Puppy Precise 5.5


Posted at 2014/07/13 21:58:48 | コメント(0) | トラックバック(0) | OBD II | クルマ

プロフィール

「運転中のBGMはSpotifyを利用することが多くなりました」
何シテル?   09/17 21:51
lzxiuです。ほぼサンデードライバーですが、よろしくお願いします。 Twitter: https://twitter.com/LZXIU

ハイタッチ!drive

みんカラ新規会員登録

ユーザー内検索

<< 2017/11 >>

   1234
567891011
12131415161718
19202122232425
2627282930  

リンク・クリップ

バッテリーをPanasonic caosに交換 
カテゴリ:その他(カテゴリ未設定)
2017/11/13 23:05:14

愛車一覧

トヨタ ラウム トヨタ ラウム
トヨタ ラウムに乗っています。
ホンダ ロゴ ホンダ ロゴ
ロゴ E-GA3です。脱ペーパードライバーのきっかけになった車です。

過去のブログ

2014年
01月02月03月04月05月06月
07月08月09月10月11月12月
ヘルプ利用規約サイトマップ
©2017 Carview Corporation All Rights Reserved.