CAN总线信号质量优化

问题描述

一个项目的CAN接口在进行SI测试时,发现CAN_H信号电平不稳定,有噪声,波形如下:

在这里插入图片描述


解决方案:

该部分CAN电路原理图如下:
在这里插入图片描述
由于在设计之初,该路CAN接口不确定真的要用,于是为了节约成本,没有将共模电感贴上。

虽然从问题波形来看不是共模噪声,但是共模电感单个方向依旧是一个100nH的电感,即对于差模噪声本身是有一定一致作用的。
在这里插入图片描述
在贴上CMC后,问题解决。优化后的波形:
在这里插入图片描述

### 测试CAN总线信号质量的方法 #### 使用差分探头测量CAN_H和CAN_L线路 为了评估CAN总线上的信号质量,建议使用差分探头连接至CAN_H和CAN_L线路。这是因为CAN总线采用差分信号传输机制,在板级测试并确保安全的情况下,也可以考虑暂时利用无源探头连接到CAN_L和地线(GND)[^1]。 #### 验证DUT对地漂移的免疫性 另一个重要的测试方面是验证被测单元(DUT)对于地电位变化的抵抗能力。这涉及两个阶段的操作:一是当DUT发生相对于地的电压偏移时;二是当测试仪器本身相对地存在电压偏移时,观察这两种情况下DUT之间的通信状态是否正常[^3]。 #### 利用专用软件辅助测试 除了硬件层面的检测外,还可以借助专门设计用于CAN总线的数据操作与仿真程序来进行更深入的功能性和性能分析。这类工具通常提供了一个统一的应用编程接口(API),使得能够方便地执行诸如发送接收消息、监控网络流量以及诊断错误等功能,从而帮助工程师更好地理解和优化系统的运行情况[^4]。 ```python import can def send_message(bus, msg_id, data): message = can.Message(arbitration_id=msg_id, data=data) try: bus.send(message) print(f"Message sent on {bus.channel_info}") except can.CanError as e: print(e) # Example usage with a specific CAN interface (e.g., socketcan or PCANBasic) with can.interface.Bus(bustype='socketcan', channel='vcan0') as bus: send_message(bus, 0x7DF, [0x02, 0xFF]) ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值