一、 to指令是从plc对增设的特殊单元(如fx2n-4da)缓冲存储器(bfm)写入数据的指令
to,top:十六位连续执行和脉冲执行型指令
dto,dtop:三十二位连续执行和脉冲执行型指令
to指令的编程格式: to k1 k12 d0 k2
*k1:特殊模块的地址编号,只能用数值,范围:0---7
*k12:特殊模块的缓冲存储器起始地址编号,只能用数值,范围:0---32767
*d0:源寄存器起始地址编号,可以用t,c,d数值和位元件组合如k4x0
*k2:传送的点数,只能用数值。范围:1---32767
to k1 k12 d0 k2指令的作用是: 将plc的16位寄存器d0,d1的数值分别写入特殊单元(或模块)n0.1的缓冲寄存器(bfm)#12,#13中。
二、from指令是将plc增设的特殊单元(如fx2n-4ad)缓冲存储器(bfm)的内容读到可编程控制器的指令
from、fromp:十六位连续执行和脉冲执行型指令
dfrom、dfromp:三十二位连续执行和脉冲执行型指令
读出指令from的编程格式:from k1 k29 d0 k2
*k1:特殊模块的地址编号,只能用数值,范围:0---7
*k29:特殊模块的缓冲存储器起始地址编号,只能用数值,范围:0---32767
*d0:目标寄存器起始地址编号,可以用t,c,d和除x外的位元件组合如k4y0
*k2:传送的点数,只能用数值。范围:1---32767
from k1 k29 d0 k2指令的作用是: 从特殊单元(或模块)N0.1的缓冲寄存器(bfm)#29,#30中读出16位数据传送至plc的d0,d1寄存器里。
FROM KO K29 K4M10 K1应该是:从特殊单元NO 0(模块)。缓冲寄存器(BFM)#29中读出16位数据传送到可编程控制器的K4M10中(也就是,M10、M11。。。M25中)
三、fx2n-4ad:
1、可选用的模拟值范围是-10v到10vdc(分辨率:5mv),或者是4到20ma,-20ma到20ma(分辨率20μa)。
2、fx2n-4ad和fx2n主单元之间通过缓冲存储器交换数据,fx2n-4ad共有32个缓冲存储器(每个是16位数据)。
3、fx2n-4ad占用fx2n扩展总线的8个点。这8个点可以分配成输入或输出。fx2n-4ad消耗fx2n主单元或有源扩展单元5v电源槽30ma的电流。
缓冲存储器(bfm)的分配如下:
*#0:通道初始化,缺省值h0000 。
*#1---#4:通道1---通道4的平均采样数(1---4096),用于得到平均结果。缺省值高设为8(正常速度),高速操作可选择1 。
#5---#8:通道1---通道4采样数的平均输入值,即根据#1---#4规定的平均采样次数,得出所有采样的平均值。
#9---#12:通道1---通道4读入的当前值。
#13,#14:保留,用户不可以更改。
*#15:选择a/d转换速度,设为0(缺省值)则选择正常速度(15ms/通道);设为1则选择高速(15ms/通道)。
#16---#19:保留,用户不可以更改。
*#20:复位到缺省值和预设。缺省值为0 。
*#21:禁止调整偏移、增益值。缺省值为(0,1)允许状态 。
*#22:偏移,增益调整 g4 o4 g3 o3 g2 o2 g1 o1 。
*#23:偏移值 缺省值为0 。
*#24:增益值 缺省值为5000 。
#25---#28:保留,用户不可以更改。
#29:错误状态 。
#30:识别码k2010 。
#31:禁用。
带*标志的缓冲区(如#0)可以用bfm写入指令to从plc写入 。不带*标志的缓冲区(如#5)可以用bfm读出指令from读入到plc 。偏移的定义:当数字输出为0时的模拟量输入值 。增益的定义:当数字量输出为+1000时的模拟量输入值。
实例如图:通道1与通道2用作电压输入,fx2n-4ad模块连接在特殊功能模块的0号位置,平均数设为4,plc的d0,d1接收平均数字值。
1、读出识别码d4与k2010比较,如果识别码是k2010则表示plc所连模块是fx2n-4ad,cmp指令将m1闭合(k2010等于d4)。
2、建立模拟输入通道#1,#2 。#0缓冲区的作用是通道初始化,从低位到高位分别指定通道1、通道4,位的定义为: 0--预设范围(-10v到10v)。1--预设范围(4ma到20ma)2--预设范围(-20ma到20ma);3---通道关闭 。本例的h3300是关闭3,4通道,1,2通道设为模拟值范围是-10v到10vdc 。
3、将4写入缓冲区#1,#2,即将通道1和通道2的平均采样数设为4,含义大概意思就是每读取4次将这4次的平均值写入#5,#6。
4、读取fx2n-4ad当前的状态,判断是否有错误。如果有错误m10---m22相应的位闭合
5、如果没有错误,则读取#5,#6缓冲区(采样数的平均值)的值并保存到plc寄存器d0,d1中。
TO K4 K0 H1111 K1是将16进制的H1111值写进位置4的模块的0号缓冲存储器,作为设定参数用。
K4 :模块位置4(取值0---7,也就是主机右边第5个特殊模块)
K0 :BFM#0(0号缓冲存储器)
H1111:通道CH1,CH2,CH3,CH4设定为模式1
K1 :写1个BFM数据。
BFM缓冲存储器的具体作用请查资料。
TO K4 K2 D250 K1是将D250的值写进位置4的模块的2号缓冲存储器,作为设定用。
K4 :模块位置4(取值0---7,也就是主机右边第5个特殊模块)
K2 :BFM#2(2号缓冲存储器)
D250:数据存储器
K1 :写1个BFM数据。