python - 能通過CAN控制一部普通的家用轎車嗎?
問題描述
對汽車原理不了解,想請大神給科普一下,現在比較新的汽車是不是有一大部分是用方向盤或者剎車這些部件將指令通過CAN總線發到對應的執行部件,然后完成汽車的行走和駐車?
有沒有低成本且安全(不會把車搞壞)的方式控制汽車,實現行走和駐車?比如CAN收發芯片連個單片機,通過OBD發送指令?
看到網上George Hotz的開源硬件代碼,用了一個CAN的收發芯片,而且不貴,代碼中有個dbc文件,這個是對應指令?
是否汽車內部有兩套CAN總線,一套是ODB連著的,另一套是車的執行部件連接的?
問題解答
回答1:OBD全稱:On Board Diagnostics。為使汽車排放和驅動性相關故障的診斷標準化,從1996年開始,凡在美國銷售的全部新車,其診斷儀器、故障編碼和檢修步驟必須相似,即符合OBD Ⅱ程序規定,所以OBD Ⅱ系統越來越廣泛應用。OBD的常見作用主要有一下幾點:
1.隨時檢測零部件和系統的故障,保證汽車在使用壽命中的排放不超過OBD法規的要求
2.檢測到相關排放故障時,OBD系統可以用儀表板上的MIL燈進行報警。
3.故障車輛能夠得到及時修理,減少車輛排放。
4.OBD系統有助于技師迅速診斷,對癥修理,降低維修成本。
但是對于國標OBD需要注意的是:國三國四標準的實現一定要有OBDⅡ加以保證,但是OBDⅡ并不等于這些排放標準,OBD有兩種標準:SAE的美國版的OBD、ISO歐洲版的EOBD。各國實行OBD的時間不一樣。同時OBD還有不同的版本,版本不同其功能性上也有所差異。
除卻各種電源和地線之外,關鍵的有CAN線、ISO 0141-2 K線、J1850總線,接口也有很多。
相關文章:
1. css3 - 微信前端頁面遇到的transition過渡動畫的bug2. javascript - 請教如何獲取百度貼吧新增的兩個加密參數3. 網頁爬蟲 - Python 爬蟲中如何處理驗證碼?4. mysql - 分庫分表、分區、讀寫分離 這些都是用在什么場景下 ,會帶來哪些效率或者其他方面的好處5. Python爬蟲如何爬取span和span中間的內容并分別存入字典里?6. javascript - 關于css絕對定位在ios瀏覽器被橡皮筋遮擋的問題7. mysql 一個sql 返回多個總數8. css - input間的間距和文字上下居中9. (python)關于如何做到按win+R再輸入文件文件名就可以運行?10. Python如何播放還存在StringIO中的MP3?
