一、实验目的
1.熟悉2台及以上PLC之间如何进行信号往来。
2.熟悉通信指令及其使用方法。
二、实验内容
1.控制要求
这是两台PLC主从式通信的例子,通过这个例子可以了解两台PLC间通信都应建立哪些初始化程序,主站怎样读取从站的数据又怎样将自己的数据写到从站中去,数据的通信是以变量寄存器为通道来实现的,这些寄存器不是唯一的,但只要建立了第一个,后面的就要紧随其后连续使用(也就是说成组使用)。这个例子想达到的控制目的是在主站中用I0.1作为输入信号建立一个字节加1指令,送给从站的输出口显示出来,同时在主站中也累计数据变化过程,当数累加到6时,主站再给从站一个信号,从站接到这个信号后用从站(自己的)输入信号I0.0发给主站输出口一个点动信号。整个过程能说明只要建立好初始化关系,主站输入信号的逻辑关系能够控制从站的输出,反过来从站的输入信号也能控制主站的输出。像这个例子当中有个限制条件,就是只有当主站给从站的数累加到6以后,从站发给主站的信号才有效,在这之前主站是接不到从站信号的。
2.程序设计
这种通信方式的主角就是主站,它让从站干什么,从站就干什么,同时它还可受控于从站,实质上就是数据的读写。读写的区域范围由主站来定,哪些数据可以写给从站,又有哪些数据找从站要,都是编程时需定好的,如本实验中写给从站的数据是主站中MB0与MB1这两个字节,找从站要的数据是从站中MB1这一个字节。STEP 7-Micro/WIN编程软件默认的单台PLC的地址是2,现在是两台PLC,如地址相同是不能通信的,怎么办?只好通过编程软件先把地址区分开,然后再分别给PLC下载各自的程序。按规定PLC的地址只能从2开始往后排,在本实验中看到主站地址是2,从站地址是3,地址2好办,编程软件可以自己找到,地址3就要经过设置才能改变。下面介绍设置过程:打开编程软件,如图3-38所示,单击“查看”下面的系统块,显示界面如图3-39所示,在此看到端口0和端口1处的PLC地址都是2,单击此口右侧的上箭头,把2都变成3,如图3-40所示,然后单击“确认”按钮,这时界面又回到图3-38,单击“▼”下载键把端口的设置下载给PLC,然后单击“查看”下面的通信,通信结束后的界面如图3-41所示,发现这台的程序送进去,再将两台PLC的模式开关都拨到RUN位置,就可以工作运行了。
图3-38 编程软件初始界面
图3-39 修改PLC地址的界面
1)根据控制要求,首先要确定I/O个数,进行I/O分配,确定主站与从站,配好两台PLC之间的通信电缆。主从式通信简单实惠,容易实现,难点与重点是主站的编程,读写区域与数据长度不能搞乱。控制系统PLC接线图如图3-42所示。
图3-40 将地址2变成3
图3-41 通信后已搜到PLC的地址
图3-42 主从式通信控制系统PLC接线图
2)控制程序梯形图如图3-43所示。
说到程序控制指令,其中就有FOR-NEXT循环指令,我们知道FOR循环指令是可以嵌套8层,一般情况下用不到8层,Zui多用到2层,那么2层如何嵌套如何实现呢?接下来就带大家来一步一步操作完成内循环和外循环程序设计。
一、FOR-NEXT循环指令说明
(1)INIT、FINAL分别定义起始值和结束值。
(2)使能输入EN有效,循环体开始执行,执行到NEXT指令时返回,每执行一次循环体,当前值计数器INDX增1,达到终止值FINAL时,循环结束。
(3)使能输入无效时,循环体程序不执行。每次使能输入有效,指令自动将各参数复位。
循环结束完成指令
二、FOR-NEXT循环指令使用注意事项(1)使用FOR和NEXT指令可在重复执行分配计数的循环中执行程序段。
(2)每条FOR指令需要一条NEXT指令。
(3)将FOR-NEXT循环置于Zui大嵌套深度为8层的FOR-NEXT循环内。
三、FOR-NEXT指令使用方法当I0.0为ON时接通一个上升沿脉冲触发FOR指令EN端循环3次,VB100值等于3。
四、FOR-NEXT指令嵌套2层使用方法
I0.0触发时外循环,I0.1触发是内循环,每执行一次外循环内循环执行3次,外循环执行2次,内循环执行6次。
以上即为FOR指令实现程序嵌套循环.