999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ISO-K的車載診斷系統USB接口適配器設計

2022-08-18 07:45:36李明君王志福
青島理工大學學報 2022年4期

李明君,于 翔,夏 雨,王志福

(1.同濟大學 a.電子與信息工程學院;b.汽車學院,上海 201804;2.大陸泰密克汽車系統(上海)有限公司,上海 201807)

車載診斷(OBD,On-Board Diagnostic)系統是汽車電子的一個重要的組成部分,它提供了外部電子設備與汽車的計算機網絡的標準接口。在汽車中的電子產品占比逐步增長的趨勢下,車載診斷系統對車輛的重要性也越來越大。在車輛的診斷過程中,尤其是車輛零件部件的供應商所進行的測試中,ISO 14230-2規范[1]規定了被測試的ECU(電子控制單元)需要支持基于ISO-K協議的診斷接口。該協議被廣泛應用于各車載電控單元的診斷系統中,它同串行標準接口RS232技術一樣[2],都是基于典型的通用異步串行通信電路。

目前的ISO-K診斷系統與上位機之間的通信連接大都采用串口(例如RS232標準串口)轉ISO-K的方式。隨著筆記本電腦的更新換代,輕量化和便攜化逐漸成為趨勢。RS232接口逐漸被很多筆記本廠商減配,從而采用更加高效的USB接口,這就造成了原有的診斷系統同測試終端接口不匹配無法建立通信。同時,USB接口越來越成為市場的主流,與RS232接口的數據傳輸速率相比,USB憑借差分特性能夠達到更高的傳輸速率和更強的抗干擾性能。

在測試終端與車載電氣網絡的連接中,不僅要考慮傳輸速度的要求,還要兼顧對連接雙方的電氣保護。在車輛的診斷過程中,被測件可能會接受來自外部電源的多個電壓脈沖,其中有些波形的電壓高達上百伏,而且波動較大。一方面會導致診斷信號受到干擾,從而無法獲得可靠的被測件狀態信息;另一方面,劇烈的電壓波動還可能會通過測試端口對測試終端造成破壞。因此,如何實現基于ISO-K協議的USB接口的診斷系統,就成了行業內亟待解決的技術問題。本文提出了一種應用于OBD系統的ISO-K診斷適配器,基于ISO-K協議和UART協議設計了相關的電路圖并與前人的解決方案[3-5]進行了對比,通過實驗驗證了該適配器在診斷過程中能夠穩定工作。

1 UART協議

通用異步收發傳輸器(Universal Asynchronous Receiver/Transmitter)通常稱作UART[4],是設備間進行異步通信的關鍵模塊。UART負責處理數據總線和串行口之間的串/并、并/串轉換,并規定了幀格式;通信雙方只要采用相同的幀格式和波特率,就能在未共享時鐘信號的情況下,僅用2根信號線(RX和TX)就可以完成通信過程,也稱為異步串行通信。圖1為UART協議的示意。

圖1 UART協議示意

UART能夠在雙方未通過外部時鐘進行同步的情況下就能夠完成通信過程,這主要依賴于UART規定了其傳輸的幀格式和波特率,收發雙方需要按照固定的格式和速度進行發送和接收數據[6],UART的幀格式定義如圖2所示。

圖2 UART數據幀格式

其中,UART通信的空閑狀態高電平數值為1,在傳輸字符之前先發出一個邏輯0信號(起始位),表示傳輸字符的開始。數據幀中的其余位的意義如下:

1) 數據位:可以是5~8位邏輯0或1,如果在沒有校驗位的情況下,傳輸的數據位可以到達9位。可以傳輸的數據包括ASCII碼(7位),擴展BCD碼(8位)。LSB和MSB分別代表傳輸的數據中的最低位和最高位。

2) 傳輸校驗位:由于在傳輸過程中電平會受到電磁輻射、誤匹配的波特率,以及傳輸距離的影響,因此接收端在接收到數據后會對每一幀數據中的0和1的個數進行計數。這便是傳輸校驗位的作用。如果傳輸校驗位為0,則數據幀中1的個數應該是偶數;如果為1,則為奇數。如果接收端的計數結果滿足這一規定,那表明傳輸過程中沒有發生數據丟失,反之,則數據在傳輸過程中被損壞。

3) 停止位:它是一個字符數據的結束標志。

4) 空閑位:處于邏輯“1”狀態,表示當前線路上沒有數據傳送。

2 ISO-K協議

2.1 ISO-K協議的工作原理

ISO-K協議是在UART協議基礎上的一種車輛內通信系統中的協議,通常用于ISO 14229-1[7]和ISO 15031-5[8]中所規定的診斷過程。基于ISO-K協議的K線是一種雙向的通信鏈路,除了能夠在診斷過程中為診斷終端和ECU提供通信之外,還常常被用于初始化階段地址信息的傳達和快速初始化情況下從外部測試設備到ECU的喚醒[9]。由于直接將測試終端通過RS232串口接入基于ISO-K協議的設備中的診斷方式缺乏檢查一致性和驗證功能等高級屬性,同時在診斷過程中,測試人員需要知道被測件距離其極限工作點的距離,而以上功能都是通過RS232串口的直接連接所無法達到的。在基于ISO-K協議的異步傳輸過程中,發射機和接收機通過寄存器起止比特位的設置從而實現同步,在診斷過程中不需要額外的時鐘線路,能夠做到單線通信。與RS232串口不同,ISO-K類似于一個總線系統,通過尋址,它可以與各種各樣的控制裝置進行通信。標準的通信速率為10.4 kbit/s,在一些特殊的情況下,例如向Flash中寫入軟件程序的時候可以達到115.2 kbit/s。

2.2 ISO-K協議診斷過程

基于ISO-K協議的診斷的過程主要分為兩部分,分別是初始化過程和數據傳輸過程。其中,初始化過程十分重要,在ISO 9141[10]和ISO 14230-1[11]中分別定義了ISO-K通信協議。盡管ISO 14230-1正在逐漸取代ISO 9141成為普遍使用的協議,然而在相當長的一段時間內,兩者還會共同存在。對于每一個診斷服務端(ECU中用于診斷的部分)只能支持上述的其中一種協議,因此,診斷客戶端(一般為PC終端)需要通過初始化來確定服務端所使用的協議版本,同時確定兩者通信所使用的數據格式和波特率等信息。

ISO 14230-2為ISO-K協議分別定義了兩種不同的初始化模式,一般5 bit/s模式更為常用,其流程如下:

1) 地址字段傳輸。客戶端向服務端以5 bit/s的速度發送地址字段0x33,地址字段為8 bit,再加上起始位和結束位各占1 bit,因此,該過程耗時2 s。

2) 地址字段驗證。ECU中的服務端會對收到的字段進行驗證,該過程耗時在20~300 ms。

3) 同步字段傳輸。ECU服務端會向客戶端發送用于同步的字段0x55,發送的格式和波特率都由服務端指定,從而通知外部的測試設備(客戶端)新的通信波特率。

4) 同步字段驗證和新波特率設置??蛻舳藢邮盏降耐阶侄芜M行解析并設置更新后的波特率。該階段耗時在5 ms之內。

5) 關鍵字節傳輸。服務端在發送同步字段之后等待5~20 ms,等待客戶端設置新波特率完畢之后,會發送2個關鍵字節。兩個關鍵字節決定了該次通信采用何種協議。如果采用ISO 2141-2協議,2個關鍵字符分別為0x0808或者0x9494;如果發送的字符為0x8FE9,0x8F6B,0x8F6D,0x8FEF,則通信應選用ISO 14230-4所規定的ISO-K協議。

6) 關鍵字驗證??蛻舳藭κ盏降年P鍵字進行驗證,從而選擇測試設備所要使用的ISO-K協議。此外,客戶端還需要獲取關鍵字所使用的頭部字段格式以及2個關鍵字的間隔,從而保證2個關鍵字的間隔在規定的范圍之內。

7) 異或關鍵字傳輸??蛻舳藭?5~50 ms的等待之后將服務端發來的關鍵字進行異或后發出。

8) 異或關鍵字驗證。服務端驗證接收到的異或關鍵字。

9) 同步完成。在等待一定時間之后,服務端會將初始化字符進行異或發送給客戶端作為做好通信準備的信號。至此,初始化在服務端就結束了。

10) 異或初始化字符驗證。客戶端會對接收到的異或初始化字符進行驗證。驗證之后,初始化過程在客戶端結束。

這種初始化方式步驟繁瑣,速度較慢;另外一種方式為快速初始化,只需要一次收發過程,因此得到了越來越廣泛地應用。

2.3 ISO-K協議的數據幀格式

基于ISO-K協議傳輸的數據幀包括3個部分:數據頭、協議數據和校驗和,其結構如圖3所示[12]。

圖3 ISO-K協議數據格式

2.3.1 數據頭

格式字符(FMT,Format byte):1個格式字符包含6位長度位和2位地址位。在進行ISO-K通信之前,程序通過初始化過程中的關鍵字的頭部字符獲得其格式。在頭部字符中,最高和次高2位組成了地址位。00表示頭部字符中不包含地址信息;01表示使用ISO 9414-2規范所規定的ISO-K協議;10表示物理層尋址;11表示多個客戶端和一個服務端建立了連接;后5位長度位標志了不包括頭部字符和校驗和的其余字符的長度。通常情況下,一個數據幀的長度在1~63個字符。如果長度位為0,則說明傳輸的數據長度超過了63個字符。

目標地址字符(TA,Target Addressing byte):頭部字符中的目標地址字符指的是消息接收端的識別符。這一字符通常和源地址符配合使用。目標地址字符通常分為兩種:一種用于物理尋址,另外一種用于功能尋址。物理尋址指的是一對一通信情況下的尋址方式。而功能尋址則指一對多通信情況下的尋址方式。這些地址在ISO 9414,ISO 14230-2,ISO 14230-4等國際標準中都進行了嚴格的規定。通常情況下,目標地址字符只會在通信網絡中有多個節點出現的時候才會啟用,而在一對一的單點通信的情況下,此標識符會被省略。

源地址字符(SA,Source Address byte):源地址字符是消息發送端的標識。它通常被看作是一個物理地址。和目標地址字符一樣,也僅僅用于多點通信的網絡中。

長度字符(LEN,Length byte):長度位在消息長度不超過63個字符的情況下不會出現,也就是說,在短消息的情況下,消息的長度由FMT中的6位長度位來表示。而只有當消息的長度超過63個字符的時候,FMT中的第6位長度位為0,長度字符表示整個消息的字符個數。通常情況下,不是所有的服務端都會支持這一字符。在初始化階段,服務端必須通過關鍵字符來告知客戶端自己是否支持這一長度字符。

2.3.2 協議數據

協議數據就是K總線上傳遞的數據信息。它通常為1~63個字符或者1~255個字符。其中第1個字符為請求的服務標識,其余的字符內容取決于具體的服務。

2.3.3 校驗和

校驗和字符位于消息的尾部,它的長度為1個字符,值為消息中除了校驗和字符之外所有字符的總和。

3 診斷適配器電路設計

3.1 功能分析

適配器的功能主要由EMC保護、ISO-K接口轉換UART電路以及UART電路轉USB電路等三大模塊組成。EMC保護模塊主要用于車載電控的電壓波動對于上位機(PC端)的損壞,ISO-K接口轉換UART電路主要目的是將ISO-K協議通過IC芯片轉換為UART通信協議,UART電路轉USB電路主要目的是將UART電路協議轉換為USB協議的接口信號。

根據前述的UART協議以及ISO-K協議,重新設計并制造了一款基于ISO-K協議的診斷適配器,優化了之前的技術設計方案,實現了適配器的小型化和輕量化的新型設計。

3.2 硬件選型與設計

3.2.1 整體架構

與原本的技術方案需要將TTL電平作為中間單元的轉換不同,該技術方案摒棄了作為中間轉換的RS232接口,采用直接將ISO-K通過通用的UART電路轉換為USB電路。同時,在K線與車載電控單元的診斷接口之間同樣設置了電氣隔離保護單元,以確保最極端的情況也不會對適配器造成損壞,乃至造成上位機PC端的USB端口的損壞。

圖4 技術方案架構

3.2.2 ISO-K的UART芯片選型

該芯片需要能夠將K線的雙向信號準確并且可靠地轉化為滿足UART協議的TX和RX信號,為滿足該功能需求選擇L6937D型芯片。該芯片提供了一整套的滿足ISO9414標準的總線串行通信服務,包括一個雙向的K線接口,一對TX,RX接口。該芯片的優勢還表現為在針對過壓、短接、溫度過高或者正負極接反等意外情況時采取的保護措施,以及在抗擾性方面,對每一個針腳上的最大容忍干擾可達±0.2 mJ,通信速度最高可達50 kbit/s。K線端為高電平時的電流小于120 μA,而在低電平時的待機電流僅為1 μA。此外,從睡眠狀態到喚醒狀態之間的時間延遲小于5 μs。芯片的外圍電路設計如圖5所示。

圖5 L6937D芯片外圍電路

3.2.3 UART轉USB的芯片選型

該芯片需要滿足將UART協議的TX,RX數據快速地轉換為能夠被USB串口讀取的格式?;谠摴δ苄枨筮x用FT230X芯片作為主要芯片。該芯片是一款專門為小型電子設備設計生產的UART串行數據和USB數據相互轉換的專用芯片。該芯片內置時鐘,無需外部晶振,傳輸速度為300 bit/s~3 Mbit/s,擁有512 bit的緩沖空間區域,因此能夠實現較大的傳輸容量。同時,該芯片采用和USB相同的5 V供電,可直接從USB端進行取電。芯片的外圍電路如圖6所示,其中R1和R2,R4和R5為網絡終端電阻用于匹配網絡差分信號;R3為一個0 Ω電阻,是磁珠的預留焊盤,而磁珠主要用于過濾高頻信號,提升適配器的EMC性能,如需要可將0 Ω電阻換成磁珠。

圖6 FT230X芯片外圍電路

3.2.4 總電路設計圖

將車載電控單元接口設備模塊、EMC保護電路、ISO-K接口轉換UART電路、UART電路轉USB電路以及USB接口等模塊串聯在一起的設計方案如圖7所示,由于電氣隔離功能集成在了L6937D的芯片中,從而實現了更加緊湊的系統設計,實物如圖8所示。

圖7 技術方案總設計

圖8 USB轉ISO-K線

3.3 性能測試

在性能測試環節,分別采用以RS232和USB為接口的診斷適配器對同一內容文件大小為2.35 MB的軟件進行刷寫試驗。試驗結果表明,以RS232為接口的適配器的刷寫時間為235.3 s,而本文設計的USB接口適配器僅用時217.5 s,刷寫速率提高了7.56%。同時,本文所設計的USB接口適合于目前所有電腦,并且相比于RS232接口的適配器質量更輕、體積更小。

4 結束語

在如今的測試設備逐漸淘汰RS232串口的技術背景條件下,原先設計需要在RS232接口后級聯一個RS232轉換USB接口的設備才能實現應用需求。隨著系統復雜性的上升和空間的擴大,在診斷系統發生故障時,給故障的排查帶來諸多不確定因素。USB數據的傳輸速率可以高達480 MB/s,遠高于RS232總線的數據傳輸速率。另外,新的車載電控單元診斷系統USB適配器的設計,將電氣隔離模塊集成到ISO-K和UART的轉換芯片中,減小了適配器的體積。新的設計方案實現相同的需求,只用了2個芯片,系統的復雜度大大簡化,而且傳輸速度也有明顯提高。該方案憑借其小巧的體積和較輕的質量以及較高的傳輸速率將大大改善工程應用的效率。

主站蜘蛛池模板: 精品久久久久无码| 91外围女在线观看| 中文无码精品A∨在线观看不卡| 最新加勒比隔壁人妻| 久久国产精品麻豆系列| AV熟女乱| 国模粉嫩小泬视频在线观看 | 免费国产高清精品一区在线| 久操线在视频在线观看| 久久综合色88| 精品亚洲欧美中文字幕在线看| 欧美第二区| 伊人91在线| 免费看美女毛片| 91午夜福利在线观看| 久久综合色视频| 精品一区二区三区水蜜桃| 国禁国产you女视频网站| 欧美区一区| 亚洲欧州色色免费AV| 久久综合激情网| 激情综合激情| 日韩毛片视频| 日本午夜精品一本在线观看| 国产精品成人观看视频国产| 亚洲av成人无码网站在线观看| 天堂成人在线| 日韩精品亚洲精品第一页| 黑人巨大精品欧美一区二区区| 国产成人乱无码视频| 国产精品亚洲va在线观看| YW尤物AV无码国产在线观看| 亚洲动漫h| 久操线在视频在线观看| 成年av福利永久免费观看| 免费毛片视频| 激情综合网址| 午夜影院a级片| 伦精品一区二区三区视频| 欧美日韩一区二区三| 综合亚洲网| 国产日本欧美在线观看| 美女被狂躁www在线观看| 久久精品女人天堂aaa| 国产高清在线观看91精品| 狠狠五月天中文字幕| 天天干伊人| 久久窝窝国产精品午夜看片| 国产在线八区| 欧美视频在线观看第一页| 91小视频在线播放| 丝袜无码一区二区三区| 婷婷六月色| 国产精品区网红主播在线观看| 在线综合亚洲欧美网站| 欧美成人午夜视频免看| 色欲综合久久中文字幕网| 制服丝袜在线视频香蕉| 久久网欧美| 欧美综合在线观看| 草草影院国产第一页| 97在线国产视频| 午夜视频在线观看区二区| 亚洲精品成人片在线观看| 日本三级精品| 18禁影院亚洲专区| 日韩经典精品无码一区二区| 国产精品蜜臀| 国产浮力第一页永久地址| 亚洲天堂.com| 日韩国产亚洲一区二区在线观看| 亚洲 日韩 激情 无码 中出| 亚洲午夜国产精品无卡| 亚洲日韩精品伊甸| 国产黄色免费看| 色综合热无码热国产| 国产伦精品一区二区三区视频优播| 国产成年无码AⅤ片在线| 福利在线不卡一区| 亚洲美女一级毛片| 无码网站免费观看| 色成人亚洲|