三菱plc的模拟量 输入输出程序怎么写

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了三菱plc的模拟量 输入输出程序怎么写相关的知识,希望对你有一定的参考价值。

用d/a模块,通过写入寄存器的值来改变输出模块的电压或电流。以三菱fx1n为例子,可以使用fx1n-2ad-bd扩展板,通过写入寄存器的值改变模拟量输出,具体参考http://wenku.baidu.com/view/5d466e3f5727a5e9856a610f.html 参考技术A 根据你选用的模拟量模块来确认程序的编写
基本的框架是不变的
使用
TO
来写入你模块的缓冲存储器的BFM值
使用FROM
来读取模块的BFM值
当前值
、通道选择等一些你需要的参数
自己看看三菱特殊模块手册就好了

模拟量编程详解——三菱FX2N系列

 

技术图片

 

前几期,我们发表过西门子PLC的模拟量手把手教学文,发现大家很感兴趣,也有不少朋友给我们留言需要我们发表些三菱PLC的,苦于事多,力不从心!今天熬夜,把这空缺补上!(熬夜伤身,记得多给我们鸡腿补补)

先用例子来引导

有一个压力变送器,量程为0~20MPa,输出信号为0~10V。PLC借助FX2N-2AD的模拟量输入模块,将压力值传送给上位机显示。

其中的FX2N-2AD模块的量程为0~10V,转换后的数字量为0~4000,(这个0~4000,是FX2N-2AD模块的输出特性,也就是线性比的数据值,跟西门子的0~32000和0~27648是一个道理)。

 

 

 所需主要软硬件配置

① 1套GX DEVELOPER V8.86;

 

② 1个FX2N-2AD模块;

 

 1台FX2N-16MT PLC。

 

第一步——FX2N-2AD 了解

FX2N-2AD模块只有两个通道,也就是说最多只能和两路模拟量信号连接,其转换精度为12位。FX2N-2AD模块并不需要外接电源供电,其电源直接由PLC供给。

技术图片

 

 第二步——FX2N-2AD 接线

FX2N-2AD模块可以转换电流信号和电压信号,但其接线有所不同,外部电压信号与FX2N-2AD模块的连接如下图所示,传感器与模块的连接最好用双绞线,当模拟量的噪声或者波动较大时,在图中连接一个00.1~4.7μF的电容,VIN1和VIN2与电压信号的正信号相连,COM1和COM2与信号的低电平相连。FX2N-2AD模块的供电直接由PLC通过扩展电缆提供,并不需要外接电源。

技术图片

 

外部电流信号与FX2N-2AD模块的连接如下图所示,传感器与模块的连接最好用双绞线,IIN1和IIN2与电流信号的正信号相连,COM1和COM2与信号的低电平相连。VIN1和IIN1短接,VIN2和IIN2短接。

技术图片

此模块的不同的通道只能同时连接电压或者电流信号,如通道1输入电压,那么通道2的输入只能是电压信号。

 

【关键点】

① FX2N-2AD不能将一个通道作为模拟电压的输入,而另一个作为电流输入,这是因为两个通道使用相同的偏值量和增量值。

 

 模块的转换位数为12位,对应的数字为2的12次方减1=4095,但实际应用时,为了计算方便,通常情况下都将最大模拟量输入(DC 10V或20mA)所对应的数字量设定为4000,A/D转换的输出特性见下表1。

 

④ 输入信号只能是单极性的。

技术图片

表1 A/D转换的输出特性

 

第三步——FX2N-2AD 模块的编程

相对于其他的PLC(如西门子S7-200),FX2N-2AD模块的使用不是很方便,要使用FROM/TO指令。使用TO指令启动A/D转换,用FROM指令将A/D转换结果读入PLC。

 

转换结果数据在模块缓冲存储器(BFM)中的存储地址如下。

BFM#0的bit0~bit7:转换结果数据的低8位。

BFM#1的bit0~bit3:转换结果数据的高4位。

 

A/D转换控制信号在模块缓冲存储器(BFM)中的存储地址如下:

BFM#17的bit0:通道选择,为0时,选择通道1;为1时,选择通道2。

BFM#17的bit1:A/D转换的启动信号,上升沿启动A/D转换。

 

说了以上三步,回到文章开篇的例子(我知道你肯定已经忘记什么内容,赶紧往上翻~~),如何对例子进行编程呢?

 

直接看程序:

技术图片

借助:第三步——FX2N-2AD 模块的编程的内容。我们对上面程序进行讲解:

1:BFM#17的bit0 写入0值,代表我们选择FX2N-2AD 模块的第一个通道来采取压力变送器的信号。

2:BFM#17的bit1 写入1值,代表我们要启动通道1的A/D转换功能。

3:PLC获取FX2N-2AD 模块的数据,写到M100~M131。

4:数据优化,将数据传送至D0,为了后期处理准备。

 

别以为就这样完事了,D0的数值只是转换后的数字,并非真实压力值!我们还要进行线性化计算:

压力表量程:0~20MPa(0~20000kPa)对应于转换后的数字:0~4000,转换公式为:

P=(20000*D0)/4000=5*D0

 

因此还需要加上第五步:

技术图片

D2的数值就是检测到的压力值啦~

 

是不是很简单?赶紧点赞吧!

记得给我们加  鸡腿  ,谢谢!

以上是关于三菱plc的模拟量 输入输出程序怎么写的主要内容,如果未能解决你的问题,请参考以下文章

三菱Q系列PLC模拟量输入输出地址是怎样编号的

请教个三菱模拟量处理程序

请问这个西门子PLC的输入和输出是怎么看的?我学过三菱plc,西门子刚接触,这上面有贴纸。哪个是输

三菱 Q系列PLC的地址是怎么分配的? 有6个16点的输入模块,4个输出模块,最后有一个Q64AD模块!!

三菱q系列plc输出怎么分配的?

谁知道S7200扩展模块地址怎么输入