最近一直在做 1Mbit/秒 CAN数据远距离传输正确性的测试,刚开始的时候,是不存在问题的,但是后来为了降低成本,CAN的隔离光耦有改变型号,价格降低了近一倍,但是问题也随之出现,短则几个小时,长则几天,总会有一笔错误数传错,因为电路部分只换了隔离光耦,所以肯定就是这里的问题,而且根据新选光耦的规格,性能参数是完全是符合需求的,那这个问题要如何解决那?
先看下电路图:
速度在1M,所以在考虑电路的正确性的时候,首先考虑把EC7拿掉了,因为二极管本身就存在一定的电容效应,而且当时这个EC7用的还是0.1U的电容,容值过于大,导致波形延时很严重。再拿掉EC7之后,数据传输的出错率有所降低,但是还是会错,根本性错误还是没有去除。
从规格上了解到,光耦的启动电流为2mA,驱动电流为5~15mA,节压降为1.5V经过计算,得出ER9(1Kohm)和ER11(2Kohm)的阻值选取过大,虽然可以使其动作,但是过长距离传输,引入干扰过大,还是会有错误产生。为了使其抗干扰能力更强,还特意降低了ER13的阻值,增加其驱动能力。。。
miaozengxue_503596631 2008-3-25 16:02
用户1703864 2007-11-16 15:44
用户59449 2007-11-16 14:24
最好别用1M/s,那个是极限速率,通常是很难达到的,除非各个硬件软件环节做到了最优,光耦的电容去掉
用户24096 2007-11-16 13:10