最近在做运动控制卡的项目,调试样机的过程中,需要验证CAN总线通讯功能的正确性。以前只限于理论上认识CAN总线,使用的CANbus的通讯卡也是有上位机例程,基本上简单地配置上位机软件就可以正常工作了。这次调试需要深入测试CAN接口的通讯过程,正好把之前的对CAN的认识再复习深化一下。
之相对远的距离,在工业现场抗干扰能力也很强。下图是我按照CAN总线的要求做的一条双绞线,黄色和绿色分别是CAN_High线和CAN_Low线。要求绞距20mm,不绞合的距离不超过50mm。所以采用CAN总线,是因为它只需要两根双绞线就可以连接多个通讯节点,并且可以传输
规定的双绞线传输距离与CAN总线的传输速率的关系如下表。我们的传输距离很短,所以可以采用很高的传输速率。即便是采用最高的传输速率,以OSC802示波器的25M带宽,也是足够调试用的。
下图是我设计驱动控制板的CAN通讯接口部分的原理图,使用SN65HVD230收发器:
打样后的运动控制板是这样的:
使用LOTO的USB示波器OSC802对CAN通讯的信号进行捕捉,抓取数据进行解析判断。
使用USB示波器OSC802的单次触发功能,很轻松对CAN总线上的电平信号进行了捕捉。不过我们现在还看不懂它,需要对CAN的电平逻辑和传输协议有所了解。
没有收发信号时,两条导线上的电平相同(大约2.5V)。这种电平状态为隐形状态,也称之为隐性电平,即为逻辑1。有信号时,CAN_H导线的电平升高至少1V;而对应的CAN_L导线电平降低同样值,这种电平状态为显形状态,也称之为显性电平,即为逻辑0。5V和3.3V的CAN收发器的逻辑电平会稍有不同。
我们通过程序发出一串CAN数据后,用OSC802捕捉到的波形如下:
根据波形进行数据解码需要注意的有两点:
1:在CAN协议中将CAN_H和CAN_L的差值为高电平时定义为显性,逻辑上表示为0,为低电平时定义为隐性,逻辑上表示为1。
2:在CAN的协议中当连续出现5个显性时就需要插入一个隐性。
CAN的标准帧和扩展帧协议格式:
所以,波形数据解读为:
图中被红色斜线划掉的为CAN协议有意在5个连续显性后面加的单个隐性位,所以去掉。所以,通过USB 示波器 OSC802抓取到的数据为:
这个数据帧发出的数据为:
1010101111001101
0xAB, 0xCD
解析结果与上位机收发的结果互相验证正确,所以此次运动控制板的CAN接口功能调试成功完成
关键字:Loto CAN总线 通讯数据
引用地址:
Loto实践干货(3) 测量CAN总线通讯数据
推荐阅读最新更新时间:2024-11-12 16:44
基于CAN总线控制伺服的码垛机器人系统
CAN(ControllerAreaNetwork)即控制器局域网络,属于总线式串行通信网络,其成本低,安装方便,主要用于各种设备监测及控制。其优点如下:
①CAN总线可以多主方式工作,网络上任意一个节点均可以在任意时刻主动地向其他节点发送信息,而不分主从,通讯方式灵活。还可分成不同的优先级,以满足不同的实时要求。
②可以点对点、一点对多点及全局广播等几种方式传送和接收数据。其传输速率可达1 MIbps,传输距离可达40 m。速率5 kbps时,距离可达10 km。
③采用短帧结构,每帧字节数最多为8个,可满足通常工业领域中控制命令、工作状态及测试数据的要求。传输n寸l盲-I短,受干扰少。
④采
[嵌入式]
基于K线/CAN总线的KWP2000协议分析及协议栈的开发测试
1 前言 在汽车故障诊断领域,针对诊断设备和汽车ECU之间的数据交换,各大汽车公司几乎都制订了相关的标准和协议。其中,欧洲汽车领域广泛使用的一种车载诊断协议标准是KWP2000(Keyword Protocol 2000),该协议实现了一套完整的车载诊断服务,并且满足E-OBD(European On Board Diagnose)标准。KWP2000最初是基于K线的诊断协议,由于K线物理层和数据链路层在网络管理和通讯速率上的局限性,使得K线无法满足日趋复杂的车载诊断网络的需求。而CAN网络(Controller Area Network)由于其非破坏性的网络仲裁机制、较高的通讯速率(可达1M bps)和灵活可靠的通讯方式,在车载
[嵌入式]
一种采用CAN总线的车灯控制系统设计
引言 CAN(Controller Area Network) 是德国博世公司在20 世纪80 年代初为汽车业开发的一种车载专用串行数据通信总线, 满足SAE (Society of Automo bileEngineer) 对C 类高速车载网络(≤1Mb/ s) 的要求, 适合动力传动和底盘电子系统的信息传输与控制, 因此也适合一般车载电子系统的信息传输与控制。
与传统技术相比, CAN 总线有如下特点: ①采用非破坏性仲裁技术, 获得仲裁优先的节点将继续传输消息, 消息不会被另一个节点破坏或发生错误; ②CAN 总线采用短帧结构, 每一帧的有效数据为8 字节, 数据传输时间短, 受干扰的概率低, 重新发送的时间
[嵌入式]
基于LPC2294的CAN总线主节点的硬件及软件设计方案
内容摘要:为引入 CAN 总线技术以实现运动控制系统的网络化。提出了基于LPC2294的CAN总线主节点的硬件及软件设计方案。硬件采用基于ARM7内核的微控制器LPC2294,使用CTM1050T作为CAN收发器,设计了带有CAN总线以及以太网接口的硬件 电路 ,并进行了SRAM、NORFLASH与NAND Flash的扩展。软件采用μCLinux作为操作系统,并开发了CAN控制器的驱动程序,实现了CAN总线的各种功能。通过制作样机并进行实验,验证了这一方案的有效性。 CAN(Controller Area Network)即控制器局域网络,是国际上应用最广泛的现场总线之一,已经成为计算机控制系统和嵌入式工业控制局域网
[单片机]
LOTO课6:一只三极管的输出特性曲线的测绘
这是我们在研究BGT,然后它放大电路之前,我们通常会看见这样一张曲线图。 它不算是一张曲线,从这上去是很平缓的,是一个集电极特性。那么我们研究放大三极管的放大。它的放大有一个集电极的饱和电流,还有一个击穿的VCE的最大电压。通过这两个,然后通过很多个Ib,然后会呈现出这样一个曲线,然后可以确定静态工作点。 图是怎么测出来这样的一个曲线,它是通过用一个NPN三极管。然后,基极加一个基极的Ib,再把Ib调到一个固定的电流,之后给一个固定的Rc,就是集电极的电阻。之后你就去拧这个集电极的电压VCC,这样会呈现这样一个曲线。 然后去变一个Ib,又会呈现另外一个曲线。 现在就用VCA02的示波器,加上我们的一个小信号发生器模
[测试测量]
新能源客车CAN总线的故障定位和干扰排除
安凯新能源客车是国内较早研发及批量化运营电动客车的企业,最早上电动车国家公告,公告数量全国第一,目前国内市场占有率达到70%以上,并且大量出口到欧美,已经成为了行业的领导品牌。安凯之所以取得广泛用户的信任,在于该公司对行驶安全性和可靠性有着极高的标准。针对新能源客车普遍存在CAN总线受到电磁干扰问题,安凯和致远电子合作,使用CANScope-Pro专业版CAN总线分析仪成功定位故障,排除干扰,并且进行可靠性测试,为安凯新能源客车稳定运行保驾护航。
安凯客车故障诊断纪实
● 频谱分析准确定位故障根源
新能源客车与传统客车不同,其是使用电池、电容来存储能量,然后通过逆变成交流,带动电动机驱动车辆。当客车
[嵌入式]
ARM在五轴嵌入式数控磨削系统中的应用
0 引言 多轴数控系统在加工复杂型面时,需要各个轴之间协同工作,实时性、可靠性要求较高。CAN总线可提供高达1Mbit/s的数据传输速率,这使实时控制变得非常容易。另外,硬件的错误检测特性也增强了CAN的抗电磁干扰能力。它是一种有效支持分布式控制和实时控制的串行通信网络,这些特点决定了CAN总线技术在多轴数控系统中有很好的应用前景。本文利用CAN总线技术为五轴数控系统提供了一个实时可靠的信息交互网络,解决了传统总线插板I/O模块多,干扰严重、系统软件复杂、硬件兼容性差等问题,提高了信号传输实时性和可靠性,便于安装、调试和维护,经济效益明显,是自动化领域发展的一个重要方向。 1 基于CAN总线数控系统的结构 如图1所示
[单片机]
Can总线的故障类型有哪些
CAN(Controller Area Network)是一种局域网通信协议,广泛应用于汽车、工业自动化等领域。然而,CAN总线系统在实际应用中也可能遇到各种故障。 1. 物理层故障 物理层故障主要涉及CAN总线的硬件部分,包括电缆、连接器和网络节点。 1.1 电缆损坏 电缆断裂或接触不良。 电缆受到外部环境影响,如温度、湿度等。 1.2 连接器故障 连接器接触不良,导致信号传输不稳定。 连接器损坏,如针脚弯曲或断裂。 1.3 节点故障 节点硬件损坏,如微控制器、收发器等。 节点软件故障,如固件错误或配置问题。 2. 电气层故障 电气层故障主要涉及CAN总线的信号传输问题。 2.1 信号干扰 电磁干扰(EMI
[嵌入式]