plc接线基础知识(电气大牛详解PLC通信)
RS485通讯网络是一个总线形式的网络,那么网络中的主站是如何区别各个站点的呢?要知道在这个网络中,主站发出的数据网络中的每个从站都是可以接收到的(因为主站发出的高低电平是施加在整个网络上的),就像班主任讲话全班同学都可以听到一样,那么班里的同学是怎么知道班主任是叫自己呢?很明显每个人都有名字,班主任只要在发出的指令里加上他想指挥的同学的名字就可以了。同理RS485网络里每个从站也有自己的名字,那就是站地址,主站只要在发出的报文里加上站地址信息,那么对应的从站就会执行这条报文。下面我们一起看看如何在程序中完成这个过程。
图 1‑1
这里我们还是用PLC做从站电脑做主站,我们定义报文的第一个字符作为站地址,如果我们的从站的站地址是02,那么主站发出的报文如果第一个字符是02那么就认为这条报文是发给该从站的,从站给主站返回数据,如果主站发出的报文第一个字符不是02那么就认为该条报文是发给别的站点的,从站继续进入接收等待状态,等待下一条报文。
2、程序的编写
图 2‑1
图 2‑1所示是主程序内容,看过上一篇文章的朋友肯定会发现这和数据收发那一节程序的内容是一模一样的,我们这个程序大家主要是要看接收完成中断的程序我是怎么写的。
图 2‑2
图 2‑2是接收完成中断,这里我们使用字节判断指令判断接收到的报文是否是发给本站点的,2表示本站点站地址是2如果写3的话表示本站点站地址是3。如果没有接收到站地址则继续等待接收。
图 2‑3
图 2‑3所示为发送完成中断,发送完成后进入等待接收报文状态。
我们可以先在发送缓冲区将数据准备好,当主站发出的报文中的站地址和本站吻合,我们将发送缓冲区的数据返回给主站,如图 2‑4所示。
图 2‑4
技成培训原创,未经授权不得转载,违者必究!
往期优秀文章回顾:
西门子PLC知识点这么多,我该从哪开始学?【快速掌握PLC诀窍】
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com