——
参考:
《三菱FX系列PLC编程速成全图解》 韩相争 化学工业出版社
FX2N-2DA中文手册说明书
简介
FX2N-2DA模拟量输出模块的功能是把PLC中的数字量转换成模拟量,将12位数字量转换成2点模拟输出(电压输出或电流输出),以便控制现场设备。该模块无需外部电源,其电源由基本单元提供。
关于FX2N-2AD模拟量输出模块可参考这篇文章。
技术指标&输出特性
产品出厂时,默认输出特性0-10V DC。
接线方式
注意电压输出和电流输出接线方式不同:电压输出时,IOUT与COM需要短接;电流输出则没有短接操作。
信号输出设备与模块之间最好用屏蔽双绞线连接;为了减少外界干扰,在电压输出时,可在输出设备(图中的变频器等)两条信号线间并联1个0.1~0.47uf的电容(如图所示)。
与FX2N-2AD模拟量输入模块不同,指南明确指出电压输出/电流输出的混合使用也是可以的。
通用程序
缓冲存储器分配
表中:
通道1 D/A转换开始:b1由1变0
通道2 D/A转换开始:b0由1变0
D/A低8位数据保持:b2由1变0
虽然在BFM#17中有“通道1 D/A转换开始”和“通道2 D/A转换开始”两个位,使得其看上去同时支持两路输出,但是因为BFM#16同一时刻只能储存一组数据,所以实际上我认为在同一时刻仍然只有一路模拟量输出。
——
刚学习的时候关于BFM有两个疑问,第一个疑问是BFM#16中“输出数据的当前值(8位数据)”,为什么不是完整的12位?另一个疑问是,BFM#17中“D/A低8位数据保持”,为什么要保持这低八位?
结合官方例程,照我自己的话说,因为某种原因BFM#16中最多只能容纳8位数据,为了能写入12位数据,执行的操作就是先往BFM#16中写入低8位数据,然后在BFM#17中设置将这低8位数据保持;再往BFM#16中写入高4位数据,这样就完成了12位数据的写入。
程序设计
以双通道为例:
下面对该梯形图程序进行逐行解释(以通道1为例):
- D100中储存了待转换的12位数字量;
- CPU在第一个特殊模块(K0)的BFM16(K16)中,写入D100中的低8位数据(M100-M107);
- 在BFM17(K17)中,使b2为1(H4=100B);
- ->在BFM17(K17)中,使b2为0,由于b2从1变为0,因此D/A转换的低8位数据保持;
- 在BFM16(K16)中,写入D100中的高4位数据(M108-M111);
- 在BFM17(K17)中,使b1为1(H2=10B);
- ->在BFM17(K17)中,使b1为0,由于b1从1变为0,因此因此通道1D/A转换开始;
在上方菜单的【在线】-【调试】-【软元件测试】的字软元件/缓冲储存区中可对D100中的数据进行修改:
从BFM配置中可推断出同一时间该模块只能设置1个通道工作,因此图中X0和X1在同一时间只能有一个置位,这也是为什么两个通道都将临时数据存储到K4M100却不会造成数据冲突;若二者同时置位,会导致程序不能正常运行。
注意
从X0/X1打开至模拟到数字转换值存储到主单元的数据寄存器之间的时间为4ms,因此两通道的切换时间不得小于该处理时间。