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. node.js - nvm怎么更新node的最新版本呀?2. html5 - 目前 公司App 嵌入H5页面 做个 手机支付功能 没有做过 所以 请求各位有经验的 给个思路3. PHP单例模式4. angular.js使用$resource服务把数据存入mongodb的问题。5. Angular.js 无法设置Authorization头,该怎么解决?6. angular.js - angular内容过长展开收起效果7. dockerfile - [docker build image失败- npm install]8. docker不显示端口映射呢?9. Docker for Mac 创建的dnsmasq容器连不上/不工作的问题10. html5 - Vue绑定动态变量不可用