python - 能通過CAN控制一部普通的家用轎車嗎?
問題描述
對汽車原理不了解,想請大神給科普一下,現(xiàn)在比較新的汽車是不是有一大部分是用方向盤或者剎車這些部件將指令通過CAN總線發(fā)到對應(yīng)的執(zhí)行部件,然后完成汽車的行走和駐車?
有沒有低成本且安全(不會把車搞壞)的方式控制汽車,實現(xiàn)行走和駐車?比如CAN收發(fā)芯片連個單片機,通過OBD發(fā)送指令?
看到網(wǎng)上George Hotz的開源硬件代碼,用了一個CAN的收發(fā)芯片,而且不貴,代碼中有個dbc文件,這個是對應(yīng)指令?
是否汽車內(nèi)部有兩套CAN總線,一套是ODB連著的,另一套是車的執(zhí)行部件連接的?
問題解答
回答1:OBD全稱:On Board Diagnostics。為使汽車排放和驅(qū)動性相關(guān)故障的診斷標(biāo)準(zhǔn)化,從1996年開始,凡在美國銷售的全部新車,其診斷儀器、故障編碼和檢修步驟必須相似,即符合OBD Ⅱ程序規(guī)定,所以O(shè)BD Ⅱ系統(tǒng)越來越廣泛應(yīng)用。OBD的常見作用主要有一下幾點:
1.隨時檢測零部件和系統(tǒng)的故障,保證汽車在使用壽命中的排放不超過OBD法規(guī)的要求
2.檢測到相關(guān)排放故障時,OBD系統(tǒng)可以用儀表板上的MIL燈進行報警。
3.故障車輛能夠得到及時修理,減少車輛排放。
4.OBD系統(tǒng)有助于技師迅速診斷,對癥修理,降低維修成本。
但是對于國標(biāo)OBD需要注意的是:國三國四標(biāo)準(zhǔn)的實現(xiàn)一定要有OBDⅡ加以保證,但是OBDⅡ并不等于這些排放標(biāo)準(zhǔn),OBD有兩種標(biāo)準(zhǔn):SAE的美國版的OBD、ISO歐洲版的EOBD。各國實行OBD的時間不一樣。同時OBD還有不同的版本,版本不同其功能性上也有所差異。
除卻各種電源和地線之外,關(guān)鍵的有CAN線、ISO 0141-2 K線、J1850總線,接口也有很多。
相關(guān)文章:
1. 如何解決docker宿主機無法訪問容器中的服務(wù)?2. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個是怎么回事????3. mongodb - Mongo java驅(qū)動中,有沒有封裝好的函數(shù),可以直接取到文檔中的某個具體的值,而不是一個文檔?或者有沒有方法實現(xiàn)??4. 需要一個Java映射/表,其中多個鍵指向一個值。價值通常會改變5. javascript - JS事件委托問題6. javascript - 關(guān)于jquery的remove()方法7. JavaScript中怎么理解=、==和===8. java - Spring事務(wù)回滾問題9. javascript - vue.js如何遞歸渲染組件.10. 如何修改vim插件vimwiki中Vimwiki2HTML的一些細節(jié)
