打印

CAN总线网络通信问题

[复制链接]
1438|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
对于CAN网络的通信:
   CAN通信受波特率、传输最大距离、使用的传输线、终端电阻匹配、CAN网络的节点数量等因素影响,现在我想请教一下,具体这些因素是如何互相制约影响的,特别是在大系统(CAN网络节点多的情况)下终端电阻匹配电阻的大小选择如何定义?
   这里说一下我遇到的问题:
   1.我这边有一个系统,有一个作为CAN主机,另外有60台CAN从机设备,现在60台设备,我分别装载3个箱子里,主机和第一组20台装在箱子1号(内部CAN走线很短),然后通过大概2米的距离连接到2号箱子(20台设备),然后再通过2米距离连接到3号箱子,其中主机CAN口有一个120欧姆电阻,2号箱子末端有一个120欧姆电阻,3号箱子末端也有一个120欧姆电阻,我们通过实验验证,只有都加这3个120欧姆电阻,整个系统通信才正常,只要去除中间的120欧姆电阻,系统全无通信,这时我们查看CANH-L的差分电压为1.8V,但是只给第一个箱子上电,一号箱子通信正常,其他的都不行!求解,为什么需要在中间加一个匹配电阻,是因为节点多了,需要加这个电阻么?
    2.我在用STM32F105系列芯片时,他有两路CAN,当我在设置两路CAN的接收中断优先级一样,发送直接调用CANtrsmit()发送,但是两路CAN两端都接有15个CAN设备,而且两端的CAN设备会不停的主动发送数据,当我15个设备电流增大时,STM32F105芯片CAN通信断了,而且不可恢复,必须重启,但是程序没有跑飞,CAN底层在数据量大的时候手干扰会死机,而且不可恢复?

相关帖子

沙发
jjjyufan| | 2014-6-10 15:28 | 只看该作者
你采用的是什么链接方式?

使用特权

评论回复
板凳
gracewall|  楼主 | 2014-6-10 18:34 | 只看该作者
jjjyufan 发表于 2014-6-10 15:28
你采用的是什么链接方式?

您好:
    不知道您指的连接方式是什么?是针对于问题1还是问题2?
    我们用的是普通的双绞线,在每一个CAN节点处拉出一路,主路继续往下连接

使用特权

评论回复
地板
jjjyufan| | 2014-6-10 21:28 | 只看该作者
一箱里的节点离你每个板子距离多少?

使用特权

评论回复
5
airwill| | 2014-6-11 21:35 | 只看该作者
中间加电阻是不合理的.  具体得看你接线情况,
第二个问题, 应该是软件问题, 最后找你的调试器帮忙. 既然软件没有跑飞, 是否故障恢复或重启机制能够恢复运行?

使用特权

评论回复
6
gracewall|  楼主 | 2014-6-12 13:04 | 只看该作者
jjjyufan 发表于 2014-6-10 21:28
一箱里的节点离你每个板子距离多少?

每个箱子内部20台模块CAN总线商都5m左右,节点均匀分布,第一个箱子到第二个箱子距离5M,其间没有节点

使用特权

评论回复
7
gracewall|  楼主 | 2014-6-12 13:06 | 只看该作者
airwill 发表于 2014-6-11 21:35
中间加电阻是不合理的.  具体得看你接线情况,
第二个问题, 应该是软件问题, 最后找你的调试器帮忙. 既然软 ...

故障恢复,不可恢复运行,重启可以,中间不加电阻不行,必须加!

使用特权

评论回复
8
jjjyufan| | 2014-6-12 13:55 | 只看该作者
gracewall 发表于 2014-6-12 13:04
每个箱子内部20台模块CAN总线商都5m左右,节点均匀分布,第一个箱子到第二个箱子距离5M,其间没有节点 ...

感觉布线不合理
你下次试试这样 每个板子端口做2个CANH CANL 使板子到总线之间的距离最短 最末端配个终端电阻。
我们都是这样布线的,

使用特权

评论回复
9
jjjyufan| | 2014-6-12 14:08 | 只看该作者

使用特权

评论回复
10
gracewall|  楼主 | 2014-6-13 10:04 | 只看该作者
jjjyufan 发表于 2014-6-12 14:08

您好:
     我们现在遇到问题时,就如题我说的问题1,现在在CAN主机接收不到其他所有模块的返回信息,但是此时所有CAN节点都可以收到CAN主机发的信息(不是广播命令),都是针对每个节点的信息,也就是说这时候CAN主机的发送信息状态把总线拉死了,只有主机能发了?

使用特权

评论回复
11
jjjyufan| | 2014-6-13 10:12 | 只看该作者
我怀疑就是布线导致的问题
布线问题,导致主机收到错误信息,
节点过多导致 碰撞 反射,也许主机收到多次 然后。。。。。。。。。建议楼主你改下布线方式,
如果还有问题,降低速度,试试

使用特权

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

本版积分规则

1

主题

12

帖子

0

粉丝