西门子200模拟量的编程案例,请参考学习。 点击:3891 | 回复:9



PKSKY

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 26回
  • 年度积分:0
  • 历史总积分:108
  • 注册:2008年12月22日
发表于:2009-06-04 13:59:23
楼主
西门子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
输入范围 电压(单极性)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转换器
模拟量输出特性
模拟量输出点数 1
信号范围 电压输出 ±10V
电流输出0~20mA
数据字格式 电压-32000~+32000
电流0~32000
分辨率电流 电压12位
电流11位
下表说明如何用DIP开关设置EM235扩展模块,开关1到6可选择输入模拟量的单/双极性、增益和衰减。

EM235开关 单/双极性选择 增益选择 衰减选择
SW1 SW2 SW3 SW4 SW5 SW6
ON 单极性
OFF 双极性
OFF OFF X1
OFF ON X10
ON OFF X100
ON ON 无效
ON OFF OFF 0.8
OFF ON OFF 0.4
OFF OFF ON 0.2
由上表可知,DIP开关SW6决定模拟量输入的单双极性,当SW6为ON时,模拟量输入为单极性输入,SW6为OFF时,模拟量输入为双极性输入。
SW4和SW5决定输入模拟量的增益选择,而SW1,SW2,SW3共同决定了模拟量的衰减选择。
根据上表6个DIP开关的功能进行排列组合,所有的输入设置如下表:
单极性 满量程输入 分辨率
SW1 SW2 SW3 SW4 SW5 SW6
ON OFF OFF ON OFF ON 0到50mV 12.5μV
OFF ON OFF ON OFF ON 0到100mV 25μV
ON OFF OFF OFF ON ON 0到500mV 125uA
OFF ON OFF OFF ON ON 0到1V 250μV
ON OFF OFF OFF OFF ON 0到5V 1.25mV
ON OFF OFF OFF OFF ON 0到20mA 5μA
OFF ON OFF OFF OFF ON 0到10V 2.5mV
双极性 满量程输入 分辨率
SW1 SW2 SW3 SW4 SW5 SW6
ON OFF OFF ON OFF OFF ±25mV 12.5μV
OFF ON OFF ON OFF OFF ±50mV 25μV
OFF OFF ON ON OFF OFF ±100mV 50μV
ON OFF OFF OFF ON OFF ±250mV 125μV
OFF ON OFF OFF ON OFF ±500 250μV
OFF OFF ON OFF ON OFF ±1V 500μV
ON OFF OFF OFF OFF OFF ±2.5V 1.25mV
OFF ON OFF OFF OFF OFF ±5V 2.5mV
OFF OFF ON OFF 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转换值的转换
假设模拟量的标准电信号是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的值为128



liqr105

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 51回
  • 年度积分:0
  • 历史总积分:42
  • 注册:2008年11月12日
发表于:2009-06-06 09:15:30
1楼
好文,收藏,受教,谢谢。

wang_chao_008

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 8回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2009-06-06 10:08:20
2楼
好文,收藏,受教,谢谢。

bangsi409

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 9回
  • 年度积分:0
  • 历史总积分:13
  • 注册:2005年6月29日
发表于:2009-06-17 23:29:02
3楼
?bjhhjhjhjhjhjh

袁泉

  • 精华:2帖
  • 求助:23帖
  • 帖子:209帖 | 1789回
  • 年度积分:54
  • 历史总积分:3170
  • 注册:2005年4月26日
发表于:2009-06-18 11:24:37
4楼
学习。。。。。。。。。。。。。。。。。。

macsun37

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:5
  • 注册:2008年11月23日
发表于:2010-03-25 10:12:42
5楼

好东西,值得学习。.......

长江码头

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 2回
  • 年度积分:0
  • 历史总积分:0
  • 注册:2010年3月22日
发表于:2010-03-25 10:55:01
6楼
引用wang_chao_008 的回复内容:好文,收藏,受教,谢谢。



thatis19

  • 精华:3帖
  • 求助:1帖
  • 帖子:78帖 | 213回
  • 年度积分:0
  • 历史总积分:1758
  • 注册:2008年11月02日
发表于:2010-03-26 12:35:46
7楼
学习。。。。。。。。。。。。。。

sinofan

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:11
  • 注册:2011年6月17日
发表于:2011-06-17 15:42:03
8楼

为什么有的用27000 而不是32000 原因 是什么 谢谢

一品黄山

  • 精华:11帖
  • 求助:0帖
  • 帖子:754帖 | 9779回
  • 年度积分:0
  • 历史总积分:48262
  • 注册:2004年3月31日
发表于:2012-01-17 14:11:30
9楼

http://wenku.baidu.com/view/f18fea3d0912a216147929eb.html

大家去这个地址免费下载一下,也是这篇文章。但更直观一些。


热门招聘
相关主题

官方公众号

智造工程师