打印
[STM32F1]

通过CAN总线来控制汽车

[复制链接]
3195|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 wenshijian 于 2013-11-26 11:36 编辑

         今天我们来讲CAN总线的高阶应用。在汽车电子领域,现在最多的就是CAN数据读取,最难也最火的应用就是CAN总线反控。当然用的芯片就是STM32,普通8位单片机性能不足,处理不来。
         CAN总线反控就是通过CAN总线来向汽车发送一些控制命令,比如升窗命令,开锁关锁命令,响一声喇叭,闪一下灯之类的。这样就可以实现免接线,对于很多汽车电子设备来说,可以省去不少的麻烦。应用对象如:汽车防盗器、汽车一键启动、遥控启动、汽车监管软件、GPS定位、车载导航、倒车雷达等等。
         CAN反控最重要的就是找到这些反控命令,或者叫做反控CAN数据。大家知道,读取汽车的CAN数据其实很简单,只要有一个CAN工具加一个OBDII插头就可以读到数据,相关工具有:KVASER、CANoE、XTM、还有周立功的一款忘记型号了,比较好用的还是KVASER。读数据很简单,多数人都会,但是数据那么多,哪些数据是你需要的呢?哪些数据是可以当作反控命令的呢?
        其实这就是个技术活了。
       不是楼主故意说大话,CAN总线这个东西呢很多人都会,什么编程收发数据之类的都有现成的。但是能搞透的人就寥寥无几。
---------------------------------------------------------------------2013,11,06-----------------------------------------------------------------------------------
        好了隔了一个月才想起来要更新,真心不想写得太详细。
       其实汽车CAN总线式越来越多,就奔驰来说,一共有12条CAN线,包括车身控制、姿态调整、发动机状态、仪表总线等等,而且数据繁多,识别起来难度极大。相信相关开发人员都会看到就头疼。可是如何识别这些数据,并找到我们想要的控制数据呢?
        先来看看图,这个图片是奔驰S350的内部CAN线网络,一共6组双绞线,都是CAN传输数据线,都有数据,但是又都不一样。

    也许有人会反驳我说,汽车的CAN总线不在这里,是在OBD哪里的6/14脚,那我就只能无语了。
    这6组CAN 总线都有数据,我给大家列出两组来看看:
第一组:(篇幅限制,这里只是一小部分,大家看看时间标签就知道了,这只是几秒钟的数据)
0   204431424 X       1   0                                  45.778120 R
0   204439616 X       1   0                                  45.784270 R
0   204447808 X       1   0                                  45.791120 R
0   205078592 X       5  64  32 255 255   0                  45.802110 R
0   205602880 X       4   0   1 123   5                      45.810130 R
0   207814720 X       1 128                                  45.814940 R
0   208314432 X       1   0                                  45.819780 R
0   208748608 X       1  15                                  45.825390 R
0   270581824 X       5   0   0   0   4   1                  46.179410 R
0   270598208 X       8   0   0  32   0   0   0  32   0      46.195420 R
0   270663744 X       8  16   0   0   0   0   0   0   0      46.200340 R
0   270704704 X       8   0 176   0  18  98   0   0   0      46.140260 R
0   270712896 X       6   0   0   0   0   0   0              46.147910 R
0   270721088 X       8   0   0   0   0   0   0   0   0      46.210320 R
0   270729280 X       8  48   1   0   3  48   1   0   3      46.125120 R
0   270794816 X       8 128   0 138  17   2   7   0   0      46.156470 R
0   270803008 X       1   0                                  45.951650 R
0   270811232 X       1   0                                  46.024390 R
0   270827584 X       7   0   0  93 173 162   0   0          45.959870 R
0   270860352 X       2   0   0                              45.975550 R
0   270876736 X       7   0   0   0   0   0   0   0          45.867140 R
0   270925888 X       3   0   0   4                          45.873840 R
0   270942272 X       8   4   7   0   0   0   0   0   0      46.188090 R
0   271089728 X       3   0   0   0                          45.879760 R
0   271319104 X       5   0   0   0   0   0                  45.967770 R
这组数据都是扩展帧的数据,数据比较散乱没有一定规律,识别困难,我直接无视。。。125Kbps
第二组数据
          977         8   0  53 128   0   0   0   0   0      11.277990 R
         1001         8   0   0 160   0   0   0 160   0      11.278230 R
         1017         8 128   0   0   0 105   0 253  80      11.282070 R
         1019         8   0   0   0   0   0   0   0   0      11.282320 R
         1217         8   0 180 122  95 162   0   0   0      11.282560 R
         1233         8   0   0   0   1 224  15   0 203      11.282800 R
         1265         8  65 140   1 140   0 136   0  38      11.283040 R
         1906         8   0   0   0   0   0   0   0   0      11.283290 R
          201         8   0   0   0   7   0   0   8   0      11.288290 R
          398         8   3   3   0   0   0   0   0   0      11.288530 R
          401         8   6 128  70 128   6 116   0   0      11.288770 R
          493         8   1 144   0   0   0   0   0   0      11.289020 R
          495         8   0   0   0   0   0   0   0   0      11.289270 R
          201         8   0   0   0  10   0   0   8   0      11.300800 R
          398         8   3   3   0   0   0   0   0   0      11.301050 R
          401         8   6 128  70 128   6 115   0   0      11.301280 R
          417         8   0  16  64   0 112  87   0   0      11.301530 R
          451         8   6 128   6 160   0   0   0   0      11.301770 R
          493         8   1 144   0   0   0   0   0   0      11.302010 R
          495         8   0   0   0   0   0   0   0   0      11.302260 R
          241         4  40   0   0  64                      11.309600 R
          288         5   0   0   1 185   0                  11.312120 R
          201         8   0   0   0  13   0   0   8   0      11.313310 R
。。。。
这个是标准帧的数据,也是很大一堆的 500Kbps
当然经验告诉我,这两组数据都不是我要的控制信号,我还必须在其他4组CAN线里面找合适的CAN数据,不过呢,这第二组的数据里面,有一些还是很有用的,比如门得信号、遥控器的信号、车速、里程等,可惜是不能反控。(怎么找到这些信号?呵呵保密这是我的专用工具找的)
沙发
戈卫东| | 2013-10-29 17:56 | 只看该作者
广告?

使用特权

评论回复
板凳
wenshijian|  楼主 | 2013-10-29 20:11 | 只看该作者
戈卫东 发表于 2013-10-29 17:56
广告?

不是啦大戈,没想好怎么写就点发表了

使用特权

评论回复
地板
wenshijian|  楼主 | 2013-10-29 20:11 | 只看该作者
等我想好了再改改

使用特权

评论回复
5
zpp_204| | 2013-11-10 14:51 | 只看该作者
期待.。。。。。

使用特权

评论回复
6
gaobq| | 2013-11-10 14:54 | 只看该作者
CAN是个好东西,无主,高速、硬件CRC,两线,强大的接收过滤,好!

使用特权

评论回复
7
tianli1980| | 2013-11-10 18:21 | 只看该作者
据说CAN_BUS总线技术一般都出现在国外高端汽车,在自主品牌中,采用CAN总线技术的车型中很少。

使用特权

评论回复
8
wenshijian|  楼主 | 2013-11-10 20:42 | 只看该作者
tianli1980 发表于 2013-11-10 18:21
据说CAN_BUS总线技术一般都出现在国外高端汽车,在自主品牌中,采用CAN总线技术的车型中很少。 ...

嗯,对的,不过呢现在很多普通车也开始有CAN了,而且逐渐抛弃了线对线连接,比如别克雪弗兰系列,都可以通过CAN系列来升降窗,开关锁。不过实现全可控的还是高端车型,比如奥迪奔驰宝马,基本不要接线

使用特权

评论回复
9
make8419247| | 2013-11-13 15:23 | 只看该作者
CAN要精通还是需要时间和精力的

使用特权

评论回复
10
wenshijian|  楼主 | 2013-11-26 11:37 | 只看该作者
tianli1980 发表于 2013-11-10 18:21
据说CAN_BUS总线技术一般都出现在国外高端汽车,在自主品牌中,采用CAN总线技术的车型中很少。 ...

顶起来,慢慢更新吧

使用特权

评论回复
11
aundry| | 2014-4-29 14:31 | 只看该作者
wenshijian 发表于 2013-11-10 20:42
嗯,对的,不过呢现在很多普通车也开始有CAN了,而且逐渐抛弃了线对线连接,比如别克雪弗兰系列,都可以 ...

雪佛兰走的是GMLIN,也叫单线CAN

使用特权

评论回复
12
usst_mcclane| | 2014-4-30 20:15 | 只看该作者
路过,学习一下

使用特权

评论回复
13
usst_mcclane| | 2014-4-30 21:39 | 只看该作者
楼主你真狠

使用特权

评论回复
14
yuanbuqi| | 2014-5-10 12:20 | 只看该作者
楼主,我知道你是谁,曾经在zhiwei干过。。。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:原车屏升级 IIC解码 电容屏IIC解码 IIC转UART

11

主题

149

帖子

4

粉丝