西门子S7-200模拟量编程
西门子S7-200模拟量编程韩耀旭本文以EM235为例讲解S7-200模拟量编程,主要包括以下内容:1、模拟量扩展模块接线图及模块设置2、模拟量扩展模块的寻址3、模拟量值和A/D转换值的转换4、编程实例模拟量扩展模块接线图及模块设置EM235是最常用的模拟量扩展模块,它实现了4路模拟量输入和1路模拟量输出功能。下面以EM235为例讲解模拟量扩展模块接线图,如图1。图1图1演示了模拟量扩展模块的接线方法,对于电压信号,按正、负极直接接入X和X;对于电流信号,将RX和X短接后接入电流输入信号的“”端;未连接传感器的通道要将X和X短接。对于某一模块,只能将输入端同时设置为一种量程和格式,即相同的输入量程和分辨率。(后面将详细介绍)EM235的常用技术参数:模拟量输入特性模拟量输入点数4输入范围电压(单极性)010V 05V 01V 0500mV 0100mV 050mV 电压(双极性)±10V ±5V ±2.5V ±1V ±500mV ±250mV ±100mV ±50mV ±25mV电流020mA数据字格式双极性 全量程范围-32000+32000单极性 全量程范围032000分辨率12位A/D转换器模拟量输出特性模拟量输出点数1信号范围电压输出 ±10V电流输出020mA数据字格式电压-32000+32000电流032000分辨率电流电压12位电流11位下表说明如何用DIP开关设置EM235扩展模块,开关1到6可选择输入模拟量的单/双极性、增益和衰减。EM235开关 单/双极性选择增益选择衰减选择SW1SW2SW3SW4SW5SW6 ON单极性 OFF 双极性 OFF OFF X1 OFF ON X10 ONOFF X100 ONON 无效 ONOFF OFF 0.8OFF ONOFF 0.4OFF OFF ON 0.2由上表可知,DIP开关SW6决定模拟量输入的单双极性,当SW6为ON时,模拟量输入为单极性输入,SW6为OFF时,模拟量输入为双极性输入。SW4和SW5决定输入模拟量的增益选择,而SW1,SW2,SW3共同决定了模拟量的衰减选择。根据上表6个DIP开关的功能进行排列组合,所有的输入设置如下表:单极性满量程输入分辨率SW1 SW2SW3 SW4 SW5 SW6 ONOFFOFFONOFFON0到50mV 12.5V OFFONOFFONOFFON0到100mV 25V ONOFFOFFOFFONON0到500mV125uA OFFONOFFOFFONON0到1V 250VONOFFOFFOFFOFFON0到5V1.25mV ONOFFOFFOFFOFFON0到20mA 5AOFFONOFFOFFOFFON0到10V 2.5mV 双极性满量程输入分辨率SW1 SW2SW3SW4SW5SW6ONOFF OFF ONOFF OFF ±25mV 12.5V OFF ONOFF ONOFF OFF ±50mV 25VOFF OFF ONONOFF OFF ±100mV 50V ONOFF OFF OFF ONOFF ±250mV 125VOFF ONOFF OFF ONOFF ±500 250VOFF OFF ONOFF ONOFF ±1V 500V ONOFF OFF OFF OFF OFF ±2.5V 1.25mV OFF ONOFF OFF OFF OFF ±5V 2.5mV OFF OFF ONOFF OFF OFF ±10V 5mV 6个DIP开关决定了所有的输入设置。也就是说开关的设置应用于整个模块,开关设置也只有在重新上电后才能生效。输入校准模拟量输入模块使用前应进行输入校准。其实出厂前已经进行了输入校准,如果OFFSET和GAIN电位器已被重新调整,需要重新进行输入校准。其步骤如下:A、 切断模块电源,选择需要的输入范围。B、 接通CPU和模块电源,使模块稳定15分钟。C、 用一个变送器,一个电压源或一个电流源,将零值信号加到一个输入端。D、 读取适当的输入通道在CPU中的测量值。E、 调节OFFSET(偏置)电位计,直到读数为零,或所需要的数字数据值。F、 将一个满刻度值信号接到输入端子中的一个,读出送到CPU的值。G、 调节GAIN(增益)电位计,直到读数为32000或所需要的数字数据值。H、 必要时,重复偏置和增益校准过程。EM235输入数据字格式下图给出了12位数据值在CPU的模拟量输入字中的位置图2可见,模拟量到数字量转换器(ADC)的12位读数是左对齐的。最高有效位是符号位,0表示正值。在单极性格式中,3个连续的0使得模拟量到数字量转换器(ADC)每变化1个单位,数据字则以8个单位变化。在双极性格式中,4个连续的0使得模拟量到数字量转换器每变化1个单位,数据字则以16为单位变化。EM235输出数据字格式图3给出了12位数据值在CPU的模拟量输出字中的位置:图3数字量到模拟量转换器(DAC)的12位读数在其输出格式中是左端对齐的,最高有效位是符号位,0表示正值。模拟量扩展模块的寻址每个模拟量扩展模块,按扩展模块的先后顺序进行排序,其中,模拟量根据输入、输出不同分别排序。模拟量的数据格式为一个字长,所以地址必须从偶数字节开始。例如:AIW0,AIW2,AIW4、AQW0,AQW2。每个模拟量扩展模块至少占两个通道,即使第一个模块只有一个输出AQW0,第二个模块模拟量输出地址也应从AQW4开始寻址,以此类推。图4演示了CPU224后面依次排列一个4输入/4输出数字量模块,一个8输入数字量模块,一个4模拟输入/1模拟输出模块,一个8输出数字量模块,一个4模拟输入/1模拟输出模块的寻址情况,其中,灰色通道不能使用。图4模拟量值和A/D转换值的转换假设模拟量的标准电信号是A0Am(如:420mA),A/D转换后数值为D0Dm(如:640032000),设模拟量的标准电信号是A,A/D转换后的相应数值为D,由于是线性关系,函数关系Af(D)可以表示为数学方程:A(DD0)×(AmA0)(DmD0)A0。根据该方程式,可以方便地根据D值计算出A值。将该方程式逆变换,得出函数关系Df(A)可以表示为数学方程:D(AA0)×(DmD0)(AmA0)D0。具体举一个实例,以S7-200和420mA为例,经A/D转换后,我们得到的数值是640032000,即A04,Am20,D06400,Dm32000,代入公式,得出:A(D6400)×(204)(320006400)4假设该模拟量与AIW0对应,则当AIW0的值为12800时,相应的模拟电信号是6400×162560048mA。又如,某温度传感器,1060与420mA相对应,以T表示温度值,AIW0为PLC模拟量采样值,则根据上式直接代入得出:T=70×(AIW06400)2560010可以用T 直接显示温度值。模拟量值和A/D转换值的转换理解起来比较困难,该段多读几遍,结合所举例子,就会理解。为了让您方便地理解,我们再举一个例子:某压力变送器,当压力达到满量程5MPa时,压力变送器的输出电流是20mA,AIW0的数值是32000。可见,每毫安对应的A/D值为32000/20,测得当压力为0.1MPa时,压力变送器的电流应为4mA,A/D值为(32000/20)×46400。由此得出,AIW0的数值转换为实际压力值(单位为KPa)的计算公式为:VW0的值(AIW0的值6400)(5000100)/(320006400)100(单位:KPa)编程实例您可以组建一个小的实例系统演示模拟量编程。本实例的的CPU是CPU222,仅带一个模拟量扩展模块EM235,该模块的第一个通道连接一块带420mA变送输出的温度显示仪表,该仪表的量程设置为0100度,即0度时输出4mA,100度时输出20mA。温度显示仪表的铂电阻输入端接入一个220欧姆可调电位器,简单编程如下:温度显示值(AIW0-6400)/256编译并运行程序,观察程序状态,VW30即为显示的温度值,对照仪表显示值是否一致。就写这些吧,希望能对您有所帮助,也欢迎您完整转载。