在上述通信方式下,由于只用两根线进行数据传送,所以不能够利用硬件握手信号作为检测手段。因而在PC机与PLC通信中发生误码时,将不能通过硬件判断是否发生误码,或者当 PC与 PLC工作速率不一样时,就会发生冲突。这些通信错误将导致PLC控制程序不能正常工作,所以必须使用软件进行握手,以保证通信的可靠性。
由于通信是在PC机以及PLC之间协调进行的,所以PC机以及PLC中的通信程序也必须相互协调,即当一方发送数据时另一方必须处于接收数据的状态。如图7-18、图7-19所示分别是PC、PLC的通信程序流程。
图7-18 PC机通信程序流程图
图7-19 S7-PLC通信程序流程图
通信程序的工作过程:PC每发送一个字节前首先发送握手信号,PLC收到握手信号后将其传送回PC,PC只有收到PLC传送回来的握手信号后才开始发送一个字节数据。PLC收到这个字节数据以后也将其回传给PC,PC将原数据与PLC传送回来的数据进行比较,若两者不同,则说明通信中发生了误码,PC机重新发送该字节数据;若两者相同,则说明PLC收到的数据是正确的,PC机发送下一个握手信号,PLC收到这个握手信号后将前一次收到的数据存入指定的存储区。这个工作过程重复一直持续到所有的数据传送完成。
采用软件握手以后,不管PC与PLC的速度相差多远,发送方永远也不会超前于接收方。软件握手的缺点是大大降低了通信速度,因为传送每一个字节,在传送线上都要来回传送两次,并且还要传送握手信号。但是考虑到控制的可靠性以及控制的时间要求,牺牲一点速度是值得的,也是可行的。
PLC方的通信程序只是PLC整个控制程序中的一小部分,可将通信程序编制成PLC的中断程序,当PLC接收到PC发送的数据以后,在中断程序中对接收的数据进行处理。PC方的通信程序可以采用VB、VC等语言,也可直接采用西门子专用组态软件,如STEP7、WinCC。
审核编辑:汤梓红
-
plc
+关注
关注
5008文章
13166浏览量
462118 -
通信
+关注
关注
18文章
5973浏览量
135864 -
西门子
+关注
关注
93文章
3008浏览量
115644 -
PC
+关注
关注
9文章
2066浏览量
154033 -
程序
+关注
关注
116文章
3777浏览量
80853
原文标题:西门子S7-200系列PLC与PC通信程序流程图及工作过程
文章出处:【微信号:工控PLC学习,微信公众号:工控PLC学习】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论