1 引言 可编程控制器(简称PLC)是以计算机技术为核心的通用自动控制装置。它将传统的继电器控制系统与计算机技术相结合,以其特有的功能强大、可靠性高、编程简单、使用方便、体积小巧等优点,在工业生产的过程控制中得到了广泛的应用。 在以PLC为控制器的工业过程控制系统中,除了大量的逻辑控制和顺序控制,还要对许多连续变化的模拟量信号进行控制,如常见的温度控制、压力控制、流量控制等等。要将这些连续变化的物理量变换成计算机能接受的数字量信号,就必须首先经过传感变送器将物理量转变成电压或电流信号,再经过PLC的A/D转换模块变成数字信号送PLC微处理器,而微处理器输出的数字信号也必须经过PLC的D/A转换模块变成电压或电流信号来作为驱动信号输出。本文介绍的OMRON-PLC模拟量I/O模块MAD01,具有二路A/D输入和二路D/A输出。下面主要说明其使用方法。
2 模拟量I/O模块MAD01的接线方式 MAD01模拟量I/O模块具有二路A/D输入和二路D/A输出,其端子表如图1所示:

模拟量输入信号通过屏蔽双绞线输入到每个通道。如果输入的是电压信号,则将信号两端接到通道的电压输入(+)和(-)端,如果输入的是电流信号,那么须将通道的电流输入(+)与电压输入(+)端短接,然后再将电流信号接到电压输入的(+)和(-)端。 模拟量输出信号一般也通过屏蔽的双绞线将信号输出。如果采用电压输出,则将双绞线接到通道电压输出的(+)、(-)端,如果采用电流输出,则将双绞线接到通道电流输出的(+)、(-)端,其中电压电流输出的(-)端是合一的。
3 输入输出对应关系 3.1 A/D转换的输入/输出关系 MAD01的A/D模拟输入信号可以是电压信号(1~5V,0~10V,-10~10V),也可以是电流信号(4~20mA),其模拟输入量与数字量之间的对应关系如图2所示: 
3.2 D/A转换的输入/输出关系 MAD01的D/A输出信号也可以设置为电压信号(1~5V,0~10V,-10~10V)或电流信号(4~20mA),共4种方式,数字量与模拟输出量的对应关系如图3所示:

4 MAD01模块的参数设置
OMRON-PLC的CPU和模拟I/O模块交换数据是通过存储器的IR(内部继电器)区和DM(数据存储器)区进行的,一个MAD01模块占用IR区和DM区的哪一组地址由模块上的一个旋转开关设置。旋转开关分为16档(0~F),若控制系统中使用多个模拟I/O模块,注意开关位置不可重复,否则会出现I/O单元重叠错误。
4.1 IR区域分配及参数设置
每个模拟量I/O模块根据模块上旋转开关的位置在CPU工作区有对应的单元号(0~F)和IR字地址,一个模拟I/O模块占用10个字的工作区(IRn~IRn+9)。当单元号为0~9时,n=100+10×单元号,当单元号为A~F时,n=400+10×(单元号-10)。 正常模式的IR字和位的分配及参数设置如下: IRn:位5,输入2的峰值保持功能,“0”表示不使用,“1”表示使用。 位4,输入1的峰值保持功能,“0”表示不使用,“1”表示使用。 位1,输出转换2使能,“0”表示停止,“1”表示开始。 位0,输出转换1使能,“0”表示停止,“1”表示开始。 IR(n+1):输出1的设定数据格式,16位二进制。 IR(n+2):输出2的设定数据格式,16位二进制。 IR(n+3),IR(n+4):未使用。 IR(n+5):模拟输入1的转换结果,16位二进制。 IR(n+6):模拟输入2的转换结果,16位二进制。 IR(n+7),IR(n+8):未使用。 IR(n+9):位15~8,两位16进制错误码,“00”表示无错误。 位5,输入2断线检测,“0”表示连接,“1”表示断线(只适用输入信号为1~5V或4~20mA时,下同)。 位4,输入1断线检测,“0”表示连接。 位1,输出2设定错误,“0”表示无。 位0,输出1设定错误,“0”表示无。
4.2 DM区域分配及参数设置
模拟量I/O模块DM区域字地址也由其单元号确定,每个I/O单元占用14个字的固定数据区域(DMm~DM(m+13)),m=1000+100×单元号。
DM区域字及位的分配及参数设置如下: DMm:位11~10,回路2的比例变换。“00”表示不使用,“01”表示使用正梯度变换,“10”或者“11”表示使用负梯度变换。 位9~8,回路1的比例变换(数值及表示的意义同位11~10)。 位5,指定使用输入2。“0”表示不使用。 位4,指定使用输入1。“0”表示不使用。 位1,指定使用输出2。“0”表示不使用。 位0,指定使用输出1。“0”表示不使用。 DM(m+1):位11~10,输入2的信号范围设置。“00”表示-10~+10V,“01”表示0~10V,“10”或者“11”表示1~5V/4~20mA。 位9~8,输入1的信号范围设置(意义同上)。 位3~2,输出2的信号范围设置(意义同上)。 位1~0,输出1的信号范围设置(意义同上)。 DM(m+2):位7~0,输出1在转换停止时输出状态设置。“00”表示清除,“01”表示保持,“02”表示最大值。 DM(m+3):位7~0,输出2在转换停止时输出状态设置(数值及表示的意义同上)。 DM(m+4),DM(m+5):未使用。 DM(m+6):输入1的平均值处理方式设置。 0000表示不进行平均值处理; 0001表示用2个缓冲器的平均值处理; 0002表示用4个缓冲器的平均值处理; 0003表示用8个缓冲器的平均值处理; 0004表示用16个缓冲器的平均值处理。 DM(m+7):输入2的平均值处理方式设置(数值及表示的意义同上)。 DM(m+8),DM(m+9):未使用。 DM(m+10):回路1变换的比例系数A(BCD码,范围0~9999)。 DM(m+11):回路1变换的偏移量B(16位二进制数)。 DM(m+12):回路2变换的比例系数A(BCD码,范围0~9999)。 DM(m+13):回路2变换的偏移量B(16位二进制数)。
4.3 比例变换功能
MAD01模拟量I/O模块为用户提供了模拟输入/输出变换功能。该功能是在模块内部完成的。变换分为正梯度变换和负梯度变换,由DM区域DM(m)字中设置。 l 正梯度变换的模拟输入/输出关系公式为: 模拟输出=A×模拟输入+B 其中: A:比例系数0~99.99(BCD码) B:偏移量8000~7FFF(16位二进制) l 负梯度变换的模拟输入/输出关系公式为: 模拟输出=F-A×模拟输入+B 其中: F:输出最大值 A:比例系数0~99.99(BCD码) B:偏移量8000~7FFF(16位二进制) 回路变换常数A、B在DM区域DM(m+10)到DM(m+13)中设置,其中: DM(m+10):回路1输入常数A; DM(m+11):回路1输入常数B; DM(m+12):回路2输入常数A; DM(m+10):回路2输入常数B。5 应用举例 将0~10V模拟电压通过A/D转换输入1,转变为数字量存放在DM0001单元,再经过D/A转换输出1输出4~20mA电流信号。MAD01上的旋转开关位置是0,所以单元号是0#。 由于MAD01单元号是0#,所以先向DM1000单元写入0011,表示输入1和输出1同时工作,再向DM1001单元写入0110,表示输入1信号范围为0~10V,输出1信号范围为4~20mA。A/D及D/A转换的梯形图如图4。

|