首先IO分配,X0是启动按钮,X1是停止按钮,Y0是主接触器,Y1是星型接触器,Y2是三角型接触器,K1Y0是组合位元件,K1代表4个位,即Y0~Y3,OUTT0 D0是定时器,设定值是D0,可赋值写入设定值。
程序首先是上电一个扫描周期利用传送指令做清零功能,当按下启动按钮时做定时器设定值的赋值功能,当按下停止按钮时做输出Y点的复位功能。中间的启保停程序当启动按钮X0接通时,M0接通并通过M0常开自锁,同时驱动定时器T0进行延时,设定值便是前面传送到D0的K140,后面通过触点比较指令比较时间范围并进行输出即可,当T0<=K60时,即6s时间内,传送K3到K1Y0,二进制状态为0011,那么Y0和Y1接通,也就是说主接触器和星型接触器接通,当K60<=T0
利用FX3U4AD模拟量模块做温度输入,假设温度传感器的温度范围是0~150度,电压范围是0~10V,选择数字量范围是0~32000。
根据FX3U4AD模拟量模块手册,并查找输入模式设置规定,通过指令MOVH0U1\G0,U1代表是扩展模块的位置编号是1,G0指的是模块的输入模式地址为BFM#0,H0代表4个通道都设置为-10~10V的电压输入模式,数字量输出范围是-32000~32000。
BMOV U1\G10 D100K4是将4个通道的模拟量输入读取到D100~D103寄存器中。FMOVK1 U1\G2K4是设置4个通道的平均值,K1是初始值,代表没有平均的效果,可以更改平均值的数值为K2~K4095即启用了平均值功能,FMOVK0 U1\G6 K4,K0是初始值,代表关闭滤波器功能,更改为K1~K1600即开启滤波器,注意平均值功能和滤波功能任选其一使用。
将读出来的数字量做运算,即可看出实际的温度值。因为温度是0~150度,0~10V对应0~32000,所以用150除以32000求出每个数字量对应的温度,再乘以读出来的数字量,即可得出温度值了。