• 5

請問有沒有人使用過 OpenECU?

cmdunlop wrote:
有的
國外真的有人這樣做自行銲晶片與撰寫程式

我知道有的, OBD2 USB cable 就買現成的好了, eBay 好像一堆 幾十塊錢就有的 買一條也省的麻煩, 只是 software 的部份不知道有沒有人可以分享 or open source 的 sample 可參考的

謝謝
買個VAG-COM cable + romraider就好了...
legacygt.com有一個thread專在討論這個的...
Car #1: 2011 Hyundai Sonata 2.0T Limited Car #2: 2012 Ford Edge SEL + 205A
我知道romraider 功能強大, 自己寫一個也不會比人家寫得好, 只是自己寫一個的樂趣大概就跟自己修車的樂趣有異曲同工之妙吧. Anyway, 感謝給了個 "VAG-COM" 這個 keyword.
不過到目前上網查的結果, VAG-COM 似乎都是寫給 VAG 用的? 而通吃的大多是建議用 ELM327 chipset 系列的 dongle. 不知道有沒有人用過 ELM 327 系列的 OBD2 dongle 可以分享一下?
而後來又去找了一下 ELM327 相關的 resource, 有得到以下發現跟大家分享一下
1. ELM327 是用類似 modem 的 AT command 來溝通, 所以理論上應該用個 serial port terminal 就可以來試試看?
2. 在 Cornell 有個 project
OBD II project 是利用 ELM327 加上一個簡單的 panel 來操控

3. 以上的 resource 還有提供 ELM327 datasheet link http://elmelectronics.com/DSheets/ELM327DS.pdf
4. 還是那個 cornell 的東西, source code - OBD2.C

接下來可以來買 dongle, 開始試驗了.
難得有人又在討論,借個版發問~抱歉!!

小弟的車為2001 forester 2.5s NA,目前自行掛上aem fic6 外掛電腦,此電腦的其中一向優點是可以自行設定各(進氣壓力or節氣門開度or.../轉數區段)間的目標空燃比,且不會有逆修正的問題發生。
1.在設定選項中需填入此車的injector response time(battery dead time),單位為μs,填寫正確可以讓電腦更正準確的計算怠速後的供油補償量。但查了電子檔的技術手冊卻查不到,哪位大哥可以幫我找找呢??一般都落在數百或1000初μs左右。
2.對subaru的na版(ej251)而言,對於各進氣壓力/各轉速的a/f,不知誰有好的建議值經驗參考值??不要跟我說一律12.5哦!!也暫時不要叫我上馬力機歐!!目前我只有原廠交換型高流量濾心跟改觸媒(金屬200目)中段而已。

小弟的出發點是因為環保要求等,所以原廠會盡量讓open &close loop保持在λ=1左右,但同時也會失去部分引擎性能,所以想找回一點fu回來而已。小弟當然也想romraider一下,無奈怕不支援,只得.........還望各位不惜賜教!!!
simonkuan wrote:
http://www.megamanual.com/index.html

這個 website 真是太棒了, 除了自己做 ECU 很有趣外
裡面提供的 resource, 像是 CAN BUS 的一些東西 http://www.megamanual.com/com/CAN.htm 更是整理的相當不錯的資訊
感謝分享
moss888 wrote:
很抱歉又把這個以前的 topic 再浮上來了.
想請問一下, 有沒有人試過買條 OBD2 to USB dongle 的線, 然後寫個小程式從 PC 讀取 RPM, Speed 等等的 data 出來?
我知道市面上現成的 logger/software 很多, 甚至也有不用錢的, 但就是想自己寫一個來玩玩看.
不知道有經驗的人可以分想一下嗎?

謝謝!


有,不過要用RS232的相容性比較高,如果要USB轉RS232,不如買PC卡轉RS232,因為USB的線還有NB相容性要挑過,不然會沒辦法使用。
gladiator wrote:
有,不過要用RS232的相容性比較高,如果要USB轉RS232,不如買PC卡轉RS232,因為USB的線還有NB相容性要挑過,不然會沒辦法使用。

感謝分享, 不過我要表達的意思其實是說 很多 OBD2-to-USB dongle 其實都是模擬成一個 serial port (就 OS or Application 而言), 但本質上還是一個 USB device. 目前是去買了用 ELM327 chipset 做的 OBD2 USB dongle 來試試看, 等東西收到了再跟大家分享一下試的結果.
All right, 東西終於收到了! 其實收到很久, 只是 ELM327 的 chip 板本太舊 (市實上那跟本就是非正廠晶片), 後來還退換貨, 螫騰了一下.
eBay 上很多都是賣的便宜的 OBDII to USB dongle 都是用ELM327 相容的非原廠晶片, 想買的人要留意一下.
簡單說 透過 ELM327 用 OBDII 來跟 車子取得資料, 其實還滿簡單的.
只要有一個 Terminal Emulator (可以用 XP 下的 Hyper Terminal 或是類似的東西), 就可以開始玩.
ELM327 本身只有標準 UART interface, 所以那些 USB interface 的裡頭其實都裝了顆 USB to UART 的轉換 IC, 因此會需要 install 這個 convertor 的 Driver, 然後在 PC 上就會多跑出來一個 COM port
然後很多產品中的 ELM327 都是吃車子的電 (而不是 USB bus), 所以 OBDII 那頭要先接好, 並把車子 ignition 切到 ON 後, 再把 USB 插到 PC.
之後就可以打開 Hyper Terminal, 設定好 UART port (就是看剛剛安裝 Driver 後, 出來的 COM port 是哪一個), Baud rate 可能是 9600 or 38400, 要看 ELM327 的線路設定, 然後 NO HW flow control, No Parity, 8 bits, 1 stop bit ,就很一般的設定.
接下來就可以在 terminal 中, input ATZ<enter> (reset ELM327 的 command 就跟 reset modem 一樣)
假如一切順利
就會看到

ELM327 v1.3a

>

這就代表 reset 完成, 可以開始玩了
以下幾個簡單範例
取得車速
INPUT
01 0D<enter>

OUTPUT
41 0D 3C

41 0D 是代表車子 ECU response 01 0D request
3C 就是車子, 3C (16 進位) = 60 (10 進位) 所以就是車速 60
因為只有一個 byte, 所以最大車速是 FF = 255KM/h 不知道開超過會變怎樣??

取得引擎轉速
INPUT
01 0C<enter>

OUTPUT
41 0C 1A F8
1AF8 就是轉速, 轉換成10進位是 6904, 這似乎太高了?
原因是轉速是這個數字再 乘上 1/4, 所以是 1726 rpm, 這樣就比較正常了.

此外 OBDII 其實包含了一大堆 protocol, SAE J1850, ISO 1914-2, ISO 14230-4 and etc...
傳輸速度也有相當的不同, 像 ISO 1914-2 的 Baud Rate 就只有 10.4 kbps, 幾乎像古早的 9.6K modem.
假如 ECU 回應也慢的話, 往往一秒內可能取得不到 10 次資料都大有可能.
下一步, 就可以來寫個簡單的轉速表來玩玩看.
以上就是簡單分享, 有興趣大家討論.

這裡有位好心的前輩,整理了OPENECU的調教重點,要玩之前先看一下:
http://skyripper.pixnet.net/blog/post/41632031-skyripper's-tuning-notes-for-subaru-and-romraider-v1.0

工具並不難,但是要很了解engine management 跟原廠的運算邏輯 才是最難的部分。
  • 5
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?