您现在所在的是:

PLC论坛

回帖:2个,阅读:3514 [上一页] [1] [下一页]
3472
dixinke
文章数:1062
年度积分:50
历史总积分:3472
注册时间:2004/9/9
发站内信
发表于:2004/12/27 10:21:00
#0楼
在西门子CLUB看到的帖子,觉得不错,共赏!
论坛中关于PC/PPI电缆的贴子不少,本人来谈谈对PC/PPI电缆的认识。因本人并未解剖或做过类似的电缆,仅依推测来谈,错误和不当之处,请各位网友不吝指正。又本人没有见过新的USB和最新的6ES7 901-3CB30-0XA0电缆,对这两根电缆本人并不熟悉。

1、为什么要用PC/PPI接口?

因S7200CPU使用的是RS485,而PC机的COM口采用的是RS232,两者的电气规范并不相容,需要用中间电路进行匹配。PC/PPI其实就是一根RS485/RS232的匹配电缆。

2、RS485采用差分的两根A/B线进行通讯,A和B两根线的相对电平来表达0和1,同一时刻只能由一个设备驱动总线,其它在总线上的设备此时都处在接收状态;

RS232接口收RXD和发TXD线独立,可以同时进行收发通讯,同时RS232设计成两个设备之间的单独通讯,不支持多于两个设备的联接,所以它的收发随时都可进行,不会发生通讯碰撞。

3、RS485总线上什么设备、何时可以驱动总线,是由通讯协议决定的。RS485和RS232都没有多余的引线告知处在中间的匹配电缆什么时候可以驱动RS485总线,而且匹配电缆一般也不懂具体的通讯协议。匹配电缆单方面根据RS232的发送需求来决定是否需要驱动RS485总线:当TXD线上有发送数据脉冲时,匹配电缆立即由接收态转为发送态,驱动RS485总线,当TXD上数据脉冲消失后,匹配电缆再转为接状态,允许RS485总线上的其它设备驱动总线。

4、为什么要设置波特率和数据位长?

从PC/PPI的规范中有一条:

Direction change delay: RS–232 stop bit edge received to RS–485 transmission disabled

1.4 character times max.(1.4 x 11/baud) = 1.6 ms at 9600 baud

意思是说,从收到RS232的停止位起,到RS485发送停止(即停止驱动RS485总线),这个时间最长为1.4个字符的发送时间,是个相对于波特率和字符位数的量。如果RS232发送的字符间隔小于1.4的字符宽度,那么PC/PPI连续驱动RS485总线,可以消除终止驱动又再驱动而引入的噪音。

从几百波特率到几K甚至几十K波特率,相差10位以上,低波特率的数据脉冲,在高波特率时与字符间隔相当,所以要正确设置以保证通讯的稳定可靠。

5、为什么有的(非西门子)匹配电缆不用设置,能做到自适应?

据我所知,如果匹配电缆只在发送0时驱动总线,在发送1时不驱动总线,可以做到自适应。通过电路上的设计,当没有设备驱动总线时,让总线处于1的状态,所以,不驱动总线也可以发送1(不知道这样做可连接的站点数是否会下降?)。RS232发送完停止位后,TXD即停留在1状态,直至下一个字符的起始位为止,所以,自适应的匹配电缆在发送完停止位后,立即停止驱动(释放)RS485总线,与波特率和位长无关。
961
zhaojian
文章数:5
年度积分:50
历史总积分:961
注册时间:2004/8/19
发站内信
发表于:2005/1/8 9:03:00
#1楼
表情这个帖子很不错,谢谢你!能自制更好。有什好的经验多交流。
971
sunzisheng
文章数:3
年度积分:50
历史总积分:971
注册时间:2007/3/6
发站内信
发表于:2008/4/2 17:10:00
#2楼
我有一个由西门子s200和一个hitech触摸屏组成的系统。我要用Micro/Win4与S200CPU建立通讯。可是触摸屏和编程软件不能同时建立与cpu的通讯。请高人指教。

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

62.4004