EM2为例讲解 Word 文档 甄选

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

EM2为例讲解Word 文档(优选.)
本文以EM235为例讲解S7-200模拟量编程,主要包括以下内容:
1、模拟量扩展模块接线图及模块设置
2、模拟量扩展模块的寻址
3、模拟量值和A/D转换值的转换
4、编程实例
模拟量扩展模块接线图及模块设置
EM235是最常用的模拟量扩展模块,它实现了4路模拟量输入和1路模拟量输出功能。

下面以EM235为例讲解模拟量扩展模块接线图,如图1。

图1
图1演示了模拟量扩展模块的接线方法,对于电压信号,按正、负极直接接入X+和X-;对于电流信号,将RX和X+短接后接入电流输入信号的“+”端;未连接传感器的通道要将X+和X-短接。

对于某一模块,只能将输入端同时设置为一种量程和格式,即相同的输入量程和分辨率。

(后面将详细介绍)
模拟量输入特性
模拟量输入点数4
输入范围电压(单极性)0~10V 0~5V
0~1V 0~500mV 0~
100mV 0~50mV
电压(双极性)±10V ±5V ±
2.5V ±1V ±500mV ±
250mV ±100mV ±50mV ±
25mV
电流0~20mA
数据字格式双极性全量程范围-32000~
+32000单极性全量程范围0~
32000
分辨率12位A/D转换器
/双极性、增益和衰减。

由上表可知,DIP开关SW6决定模拟量输入的单双极性,当SW6为ON时,模拟量输入为单极性输入,SW6为OFF时,模拟量输入为双极性输入。

SW4和SW5决定输入模拟量的增益选择,而SW1,SW2,SW3共同决定了模拟量的衰减选择。

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转换值的转换
假设模拟量的标准电信号是A0—Am(如:4—20mA),A/D转换后数值为D0—Dm(如:6400—32000),设模拟量的标准电信号是A,A/D转换后的相应数值为D,由于是线性关系,函数关系A=f(D)可以表示为数学方程:
A=(D-D0)×(Am-A0)/(Dm-D0)+A0。

根据该方程式,可以方便地根据D值计算出A值。

将该方程式逆变换,得出函数关系D=f(A)可以表示为数学方程:
D=(A-A0)×(Dm-D0)/(Am-A0)+D0。

具体举一个实例,以S7-200和4—20mA为例,经A/D转换后,我们得到的数值是6400—32000,即A0=4,Am=20,D0=6400,Dm=32000,代入公式,得出:
A=(D-6400)×(20-4)/(32000-6400)+4
假设该模拟量与AIW0对应,则当AIW0的值为12800时,相应的模拟电信号是6400×16/25600+4=8mA。

又如,某温度传感器,-10—60℃与4—20mA相对应,以T表示温度值,AIW0为PLC模拟量采样值,则根据上式直接代入得出:
T=70×(AIW0-6400)/25600-10
可以用T 直接显示温度值。

模拟量值和A/D转换值的转换理解起来比较困难,该段多读几遍,结合所举例子,就会理解。

为了让您方便地理解,我们再举一个例子:
某压力变送器,当压力达到满量程5MPa时,压力变送器的输出电流是20mA,AIW0的数值是32000。

可见,每毫安对应的A/D值为32000/20,测得当压力为0.1MPa时,压力变送器的电流应为4mA,A/D值为(32000/20)×4=6400。

由此得出,AIW0的数值转换为实际压力值(单位为KPa)的计算公式为:
VW0的值=(AIW0的值-6400)(5000-100)/(32000-6400)+100(单位:KPa)
编程实例
您可以组建一个小的实例系统演示模拟量编程。

本实例的的CPU是CPU222,仅带一个模拟量扩展模块EM235,该模块的第一个通道连接一块带4—20mA变送输出的温度显示仪表,该仪表的量程设置为0—100度,即0度时输出4mA,100度时输出20mA。

温度显示仪表的铂电阻输入端接入一个220欧姆可调电位器,简单编程如下:
温度显示值=(AIW0-6400)/256
编译并运行程序,观察程序状态,VW30即为显示的温度值,对照仪表显示值是否一致。

就写这些吧,希望能对您有所帮助,也欢迎您完整转载。

表1. EM231
单极性满量程输入分辨率
SW1 SW2 SW3
ON OFF ON 0 - 10V 2.5mV
ON OFF 0 - 5V 1.25mV
0 - 20mA 5μA
双极性满量程输入分辨率
SW1 SW2 SW3
OFF OFF ON ±5V 2.5mV
ON OFF ±2.5V 1.25mV
评论者:lywts - 新生第1级其他回答
你可以到下载中心/中文资料/自动化系统/自动化系统/下载《S7-200 CN 可编程序控制器产品目录》关于模拟量介绍的也比较详细,/download/;
还有在网上课堂/自动化产品(AS)/ S7-200 · LOGO! · SITOP /下载《6 《西门子 S7-200·LOGO!·SITOP 参考》V0.92版(更新版)(2008.02.15)》,在/S7-200 PLC/输入输出信号IO/模拟量扩展模块这一节中也有详细描述,/service/e-training/list.asp?columnid=3。

我再发一份资料给你。

回答者:ruixm - 中级工程师第10级 2008-4-19 07:52
模拟量扩展模块
S7-200 CPU要附加模拟量扩展模块才能实现模拟量输入/输出的功能。

普通模拟量模块有:
EM231:4通道电流/电压输入模块;
EM232:2通道电流/电压输出模块;
EM235:4通道电流/电压输入,1通道电流/电压输出。

温度测量型模块有:
EM231 TC:4通道热电偶输入模块;
EM231 RTD:2通道热电阻输入模块。

有一款新产品CPU 224 XP在CPU本体上集成了简单的模拟量I/O通道,性能不如模拟量模块。

将模拟量传感器信号连接到S7-200 模拟量输入模块(EM231,EM235)
模拟量输入模块可以通过DIP拨码开关设置为不同的测量方法。

开关的设置应用于整个模块,一个模块只能设置为一种测量范围。

(注:开关设置只有在重新上电后才能生效)
DIP拨码开关的具体设置请参照《S7-200系统手册》。

输入阻抗与连接有关:电压测量时,输入是高阻抗为10 MOhm ;电流测量时,需要将Rx 和 x 短接,阻抗降到250 Ohm 。

下列各图是各种传感器连接到S7-200 模拟量输入模块的示例:
(略)
模拟量模块设置
应用模拟量模块时,需要根据输入信号的规格设置右下角的DIP开关(Configuration开关)。

DIP开关只对输入信号有效,并且对所有的输入通道都是相同的。

EM231、EM235带模拟量输入通道的模块,还分别有电位器用于对输入信号进行校正。

EM231和EM235上的Gain(增益)电位器用于调整输入信号和转换数值的放大关系;EM235上的Offset(偏置)用于对输入信号调零。

如果没有精确的信号源,请不要调整。

详细调整方法请参照《S7-200系统手册》。

注意:
Gain(增益)和Offset(偏置)电位器不能用于调整0 - 20mA和4 - 20mA输入转换!
S7-200模拟量模块没有0 - 20mA与4 - 20mA电流型输入的选择开关,0/4 - 20mA模拟量信号的DIP开
关设置一样,但相应的变换必须用程序实现。

DIP开关设置
表1. EM231
单极性满量程输入分辨率
SW1 SW2 SW3
ON OFF ON 0 - 10V 2.5mV
ON OFF 0 - 5V 1.25mV
0 - 20mA 5μA
双极性满量程输入分辨率
SW1 SW2 SW3
OFF OFF ON ±5V 2.5mV
ON OFF ±2.5V 1.25mV
表2. EM235
单极性满量程输入分辨率
SW1
SW2
SW3
SW4
SW5
SW6
ON OFF OFF ON OFF ON 0 - 50 mV 12.5μV
OFF ON OFF ON OFF ON 0 - 100 mV 25μV
ON OFF OFF OFF ON ON 0 - 500 mV 125μV
OFF ON OFF OFF ON ON 0 - 1 V 250μV
ON OFF OFF OFF OFF ON 0 - 5 V 1.25mV
0 - 20 mA 5μA
OFF ON OFF OFF OFF ON 0 - 10 V 2.5mV
双极性满量程输入分辨率
SW1 SW2 SW3 SW4 SW5 SW6
ON OFF OFF ON OFF OFF ±25 mV 12.5μV
OFF ON OFF ON OFF OFF ±50 mV 25μV
OFF OFF ON ON OFF OFF ±100 mV 50μV
ON OFF OFF OFF ON OFF ±250 mV 125μV
OFF ON OFF OFF ON OFF ±500 mV 250μV
OFF OFF ON OFF ON OFF ±1 V 500μV
ON OFF OFF OFF OFF OFF ±2.5 V 1.25mV
OFF ON OFF OFF OFF OFF ±5 V 2.5 mV
OFF OFF ON OFF OFF OFF ±10 V 5 mV
S7-200模拟量数据格式与寻址
模拟量输入/输出数据是有符号整数,占用一个字长(两个字节),所以地址必须从偶数字节开始。

模拟量的转换精度为12位,但在PLC中表示为-32000-+32000之间的整数值(实际上数值可以是整个16位有符号整数的范围,但标准输入信号如10V/20mA被标定为对应32000,模拟量超过标准值一点也因此可以表示)。

在S7-200中,单极性模拟量输入/输出信号的数值范围是 0 - 32000;双极性模拟量信号的数值范围
是 -32000-+32000。

格式:
输入:AIW[起始字节地址]——如AIW6
输出:AQW[起始字节地址]——如AQW0
每个模拟量输入模块,按模块的先后顺序和输入通道数目,以固定的递增顺序向后排地址。

例如: AIW0、AIW2、AIW4、AIW6、AIW8等。

对于EM231 RTD(热电阻)两通道输入模块,不再占用空的通道,后面的模拟量输入点是紧接着排地址的。

每个有模拟量输出的模块占两个输出通道。

即使第一个模块只有一个输出AQW0,第二个模块的输出地
址也应从AQW4开始寻址(AQW2被第一个模块占用),依此类推。

温度模拟量输入模块(EM231 TC、EM231 RTD)也按照上述规律寻址,但是所读取的数据是温度测量值
的10倍(摄氏或华氏温度)。

如520相当于52.0度。

注意:每一模块的起始地址都可在STEP 7-Micro/WIN中的菜单“PLC > Information”里在线读到。

模拟量比例换算
因为A/D(模/数)、D/A(数/模)转换之间的对应关系,S7-200 CPU内部用数值表示外部的模拟量信号,两者之间有一定的数学关系。

这个关系就是模拟量/数值量的换算关系。

例如,使用一个0 - 20mA的模拟量信号输入,在S7-200 CPU内部,0 - 20mA对应于数值范围0 - 32000;对于4 - 20mA的信号,对应的内部数值为6400 - 32000。

如果有两个传感器,量程都是0 - 16MPa,但是一个是0 - 20mA输出,另一个是4 - 20mA输出。

它们在
相同的压力下,变送的模拟量电流大小不同,在S7-200内部的数值表示也不同。

显然两者之间存在比
例换算关系。

模拟量输出的情况也大致相同。

上面谈到的是0 - 20mA与4 - 20mA之间换算关系,但模拟量转换的目的显然不是在S7-200 CPU中得到
一个0 - 32000之类的数值;对于编程和操作人员来说,得到具体的物理量数值(如压力值、流量值),或者对应物理量占量程的百分比数值要更方便,这是换算的最终目标。

如果使用编程软件Micro/WIN32中的PID Wizard(PID向导)生成PID功能子程序,就不必进行0 - 20mA
与4 - 20mA信号之间的换算,只需进行简单的设置。

通用比例换算公式
模拟量的输入/输出都可以用下列的通用换算公式换算:
Ov = [(Osh - Osl)*(Iv - Isl)/(Ish - Isl)] + Osl
其中:
Ov: 换算结果
Iv: 换算对象
Osh: 换算结果的高限
Osl: 换算结果的低限
Ish: 换算对象的高限
Isl: 换算对象的低限
S7-200模拟量问题的解答
问题:S7-200模拟量输入模块(EM231,EM235)如何寻址?
回答: 模拟量输入和输出为一个字长,所以地址必须从偶数字节开始, 精度为12位,模拟量值为0-32000的数值。

格式: AIW[起始字节地址] AIW6 ;
AQW[起始字节地址] AQW0
每个模拟量输入模块,按模块的先后顺序地址为固定的,顺序向后排。

例: AIW0 AIW2 AIW4 AIW6每个模拟量输出模块占两个通道,即使第一个模块只有一个输出AQW0 (EM235只有一个模拟量输出), 第二个模块模拟量输出地址也应从AQW4开始寻址,依此类推。

(注: 每一模块的起始地址都可在step7 micro/win 中Plc/Information里在线读到)。

问题:如何将传感器连接到S7-200 模拟量输入模块(EM231,EM235)以及有哪些注意事项?
回答: 模拟量输入模块可以通过拨码开关设置为不同的测量方法。

开关的设置应用于整个模块,一个模块只能设置为一种测量范围。

(注:开关设置只有在重新上电后才能生效)
输入阻抗与连接有关:电压测量时,输入是高阻抗为10 MOhm ;电流测量时,需要将Rx 和x 短接,阻抗降到250 Ohm 。

注意:
为避免共模电压,须将M端与所有信号负端连接, 未连接传感器的通道要短接, 如下列各图。

下列各图是各种传感器连接到S7-200 模拟量输入模块的示例
图1: 4线制-外供电-测量
图2: 2线制-测量
为了防止模拟量模块短路,可以串入传感器一个750 Ohm电阻。

它将串接在内部250 Ohm电阻上并保证电流在32 m A以下。

图3: 电压测量
注意:
如果你使用一个4-20mA 传感器, 测量值必须通过编程进行相应的转换.
输入转换: X=32000 *(AIWx – 6400) /(32000 – 6400)
输出转换: Y=计算值*(32000 – 6400)/32000 + 6400
问题:为什么使用S7-200 模拟量输入模块时接收到一个变动很大的不稳定的值?
回答: 1.你可能使用了一个自供电或隔离的传感器电源,两个电源没有彼此连接。

这将会产生一个很高的上下振动的共模电压,影响模拟量输入值。

2.另一个原因可能是模拟量输入模块接线太长或绝缘不好。

补救措施:
1.连接传感器输入的负端与模块上的公共M 端以补偿此种波动。

注意:
事前要确定,这是两个电源间的唯一连接。

如果另外一个连接已经存在了,当再添加公共连接时可能会产生一个多余的补偿电流。

背景:
•模拟量输入模块不是内部隔离的.
•共模电压不能大于12V.
•对于60Hz 的共模干扰是40dB
2.使用模拟量输入滤波器:
在Micro/Win 中进入"View > System block> Tab: Analog Input Filters".
•选择模拟量输入滤波.
•选择"Number of samples" 和"Deadband".
" Number of samples " 区域包含了由几个采样的平均值计算得出的值。

用过去已有的N个采样值计算该值, N 即为" Number of samples "。

死区(Deadband)定义了允许偏离于平均值的最大值
问题: 为什么使用S7-200 模拟量输入模块时接收到信号变化很慢?
回答:因为你使用了滤波器,可以在View > System block> Tab: Analog Input Filters中降低滤波采样数,或取消模拟量滤波。

问题: EM231 RTD(热电阻)模块接线
EM231 RTD模块的详细接线和DIP开关设置请参照《S7-200系统手册》中的附录A。

EM231 RTD模块常见问题
•模块上的SF红灯为何闪烁?
SF红灯闪烁有两个原因:模块内部软件检测出外接热电阻断线,或者输入超出范围。

由于上述检测是两个输入通道共用的,所以当只有一个通道外接热电阻时,SF灯必然闪烁。

解决方法是将一个100 Ohm 的电阻,按照与已用通道相同的接线方式连接到空的通道。

问题:什么是正向标定、负向标定?
回答:正向标定值是3276.7度(华氏或摄氏),负向标定值是-3276.8度。

如果检测到断线、输入超出范围时,相应通道的数值被自动设置为上述标定值。

•热电阻的技术参数不是很清楚,如何在DIP开关上设置类型?
应该尽量弄清除热电阻的参数。

否则可以使用缺省设置。

注意
EM231 RTD模块占用的模拟量通道,在系统块中设置模拟量通道滤波时,应禁止滤波功能。

问题:EM235是否能用于热电阻测温?
回答:EM235不是用于与热电阻连接测量温度的模块,勉强使用容易带来故障。

强烈建议使用EM231 RTD 模块。

问题: EM231 TC(热电偶)模块常见问题,EM231 TC(热电偶)模块是否支持B型热电偶?
回答:EM231 TC支持J、K、E、N、S、T和R型热电偶,不支持B型热电偶。

问题: EM231 TC是否需要补偿导线?
回答:EM231 TC可以设置为由模块实现冷端补偿,但仍然需要补偿导线进行热电偶的自由端补偿。

问题: EM231 TC模块SF灯为何闪烁?
回答:o如果选择了断线检测,则可能是断线。

应当短接未使用的通道。

o输入超出范围
问题:一直想问的一个S7-200模拟量的问题。

就是精度是12位,数值怎么是0~32000啊?12位应该是4096(4000),15位才是32000啊。

解答:此处的12位精度指的是模拟量转换的分辨率,该分辨率指的是A/D模拟量转换芯片的转换精度,即用多少位的数值来表示模拟量。

S7-200模拟量模块的转换分辨率是12位,能够反映模拟量变化的最小单位是满量程的1/4096。

问题:在程序里模拟量信号为什么还要经过I_DI——DI_R转换呢?AIW0处采集的模拟量信号是什么类型的数据?那么和上面的:
注意:
如果你使用一个4-20mA 传感器, 测量值必须通过编程进行相应的转换.
输入转换: X=32000 *(AIWx – 6400) /(32000 – 6400)
输出转换: Y=计算值*(32000 – 6400)/32000 + 6400
这个例子有什么区别呢?
回答:
1、AIW0处采集的数据类型是个1个字长(16位)的有符号整数
若输入信号为双极性(有正负之分):
量程为:-32000---32000
若输入信号为单极性:
量程为:0----32000
2、一般S7-200模拟量模块(如EM231)都有一个DIP的配置开关可选择模拟量的输入范围,基本为0至10V、0-5V、0-20mA(单极性)。

由此可以看出,对于PLC来说0mA是最小值,即实际测量值的0,而对于4-20mA的传感器来说,4mA 对应的是实际测量值的0,20mA是最大值;
举例子:
一个4-20mA的传感器,满量程为16N
如果某时刻传感器输入为5mA,则实际重量为1N
假如不经过量程转换,PLC认为实际重量为
20*5/16=6.25N 相差很大,所以必须进行量程转换。

3、至于I_DI——DI_R转换,则是根据你实际需要的数据处理精度来确定的。

赠人玫瑰,手留余香。

感谢您使用本店文档您的满意是我们的永恒的追求!(本句可删)
------------------------------------------------------------------------------------------------------------。

相关文档
最新文档