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. 网页爬虫 - 关于Python的编码与解码问题3. css - 文字排版问题,内容都是动态抓出来的,字数不一定。如何对齐啊4. javascript - router.push无效5. javascript - 为什么var obj = {}创建对象的方法里面不能用this.xxx来声明属性 ?6. css3 - 微信小程序如何把radio改成2个选择按钮的样式7. selenium-selenium-webdriver - python 将当前目录加入到 环境变量8. css - input间的间距和文字上下居中9. 为什么javascript 18014398501093363 == 18014398501093364 返回ture10. javascript - 浏览器回退,如何保证js对dom的操作保存下来

网公网安备