汽车CAN总线探索之旅
随着各类先进的车载传感器、控制器、执行器等装置接入汽车,融合现代通信与网络技术的智能网联汽车逐步纷纷落地,它们旨在实现车与X(车、路、人、云等)智能信息交换、共享,具备复杂环境感知、智能决策、协同控制等功能,实现安全、高效、舒适、节能行驶,并致力于最终实现替代人来操作的新一代汽车。
然而,车体大量引入的电子元件势必使得汽车在网络安全领域变得越来越脆弱。汽车网络安全这一话题便愈来愈被重视,目前该系统发展的整体路径遵循软硬件优先发展,软件算法逐步升级的方式,在发展的过程中,对于软硬件的网络安全测试,软件算法的测试和漏洞挖掘将会是下一个风口。
i春秋社区签约作家,硬件版版主——橡树(曹宇宁)受邀,开启春秋直播公开课《汽车网络安全基础》,本系列课程将结合作者的实战经验,通过真实案例,把晦涩难懂的理论技术转化为通俗易懂的知识点,帮助更多新手小白快速入门汽车网络安全,精准找到学习切入点。
看课地址:https://www.ichunqiu.com/open/69828
讲师简介
橡树——i春秋社区签约作家,硬件版版主。一个喜欢研究车联网安全、物联网安全和ROS机器人控制系统的零零后。
所获成绩
ISCC2021全国大学生信息安全对抗技术竞赛擂台赛全国二等奖。
2020年全国物联网设计大赛西北赛区一等奖。
HCIA-IOT认证物联网工程师。
课程抢先知
1、CAN总线介绍
CAN最初是由德国的BOSCH公司为汽车监测、控制系统而设计的。现代汽车越来越多地采用电子装置控制,如发动机的定时、注油控制,加速,刹车控制(ASC)及复杂的抗锁定刹车系统(ABS)等。由于这些控制需要检测及交换大量数据,采用硬接信号线的方式不但烦琐、昂贵,而且难以解决问题,采用CAN可以很好的解决上述问题。
下面这张图就可以清晰的表达CAN总线在总线型网络拓扑中的表示形式:
这张笔者修改过的闭合曲线图可能更清晰:
2、抗干扰欧姆
因为我们在看示波器的时候,一些细微的干扰就可能会影响示波器波形图,所以一般图上会画两端各一个120欧姆的电阻,整个CAN网络总线其余电脑并联在这组CAN线上,终端电阻不一定会放在发动机电脑或者ABS电脑里,会放在某一个电脑里,其作用是做抗干扰。
3、CAN口小技巧
每组主CAN线上肯定会有终端电阻,我们在测量时会测出来是60欧姆的阻值。其实这里也有一个技巧,就是在用OBD(仅限于在实验接口)去做测试的时候,可以用万用表去测,附加有60Ω的电阻就可能是CAN端口。
4、串行通信
我们先了解一下上门的串行通讯,其实就是用一根线来进行通讯,可以来看一下这个电报机发射器。
当这个触点闭合,会发出一个高电平在数字电路中用1表示;当开关断开,会发出一个低电平,在数字电路中用0表示,这个电报机大家在电影里面都看过,其实他就是通过闭合时间的长短来组成不同的编码。例如我们需要发一个SOS,那么,就是类似于这样的波形图:
闭合时,会发出一个高电平,松开时候发出一个低电平,通过按压时间的长短来组成不同次序的密码通过密码本进行翻译,这样就明白它说的信息具体是什么。
5、差分信号
接下来我们来看差分信号,下图这种信号就叫做差分信号,即取这两条线之间的差值。
这两条线都是2.5v的时候,相当于这个开关没有闭合;当开关闭合的时候,CAN高是3.5v,CAN低是1.5v,中间会有2v的电压差,相当于有个高电平。
当CAN高与CAN低一样时,相当于低电平没有接通,所以,不管是CAN线还是lin线都和发电报比较相似,都是串行通讯,只是不同的排列组合代表不同的含义。
以上为本节内容分享,你学会了吗?