西门子S7-200模拟量编程

合集下载

S7-200模拟量编程实例

S7-200模拟量编程实例

程序段 1模拟量输入AIW0减去6400,转换为实数(由于没有直接将整数转换为实数的指令,故先将其转换为双整数,再转换为实数)SUB_I ENO EN OUT IN1IN2I_DI ENO EN OUT IN DI_R ENO EN OUT IN Always_OnAIW0+6400VW0VW0VD4VD4VD8符号地址注释Always_On SM0.0始终接通模拟量输入对应的上限32000减去下限6400,转换为实数;实际温度的上限100度减去下限0度,转换为实数;当然此两步转换可以直接计算出来,这里主要想演示指令的使用SUB_I ENO EN OUT IN1IN2I_DI ENO EN OUT IN DI_R ENO EN OUT IN SUB_I ENO EN OUT IN1IN2I_DI ENO EN OUT IN DI_R ENO EN OUT IN Always_On+32000+6400VW2VW2VD12VD12VD12+1000VW16VW16VD20VD20VD20符号地址注释Always_On SM0.0始终接通实现公式,最终的模拟量转换值存放于VD32中DIV_R ENO ENOUT IN1IN2MUL_RENO ENOUT IN1IN2ADD_RENO ENOUT IN1IN2Always_OnVD8VD12VD24VD24VD20VD28VD280.0VD32符号地址注释Always_OnSM0.0始终接通程序段 4模拟量输入:也可以直接调用库文件的模拟量输入块设置好对应参数就可以了,这里以0~100的量程4~20mA输入为例,输出保存到VD300寄存器。

Scale_I_to_R ENOutput InputIshIslOshOsl Always_OnAIW0320006400VD300100.00.0符号地址注释Always_On SM0.0始终接通模拟量输出:原理同上,只是具体参数倒过来。

S7200 模拟量编程

S7200 模拟量编程

模拟量编程模拟量扩展模块S7-200CPU要附加模拟量扩展模块才能实现模拟量输入/输出的功能。

普通模拟量模块有:•EM231:4通道电流/电压输入模块;配置拨码开关。

其中使用开关3,4,5来选择模拟量输入范围,使用开关1,2来选择电流输入模式(只有通道6和7可以用作电流输入)。

8输入的EM231模块只有第6、7两通道可以用做电流输入,使用拨码开关1、2对其进行设置:当开关1为“ON”时,通道6用做电流输入;开关2为“ON”时,通道7用做电流输入。

反之,当1、2开关为“OFF”时,6、7通道用做电压输入。

表2.新EM2318模拟量输入配置开关表•EM232:2通道电流/电压输出模块;•EM235:4通道电流/电压输入,1通道电流/电压输出。

温度测量型模块有:•EM231TC:4通道热电偶输入模块;•EM231RTD:2通道热电阻输入模块。

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

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

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

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

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

下列各图是各种传感器连接到S7-200模拟量输入模块的示例:1.四线制-外供电-电流型信号接线2.二线制-电流测量接线图中的L+和M属于为模拟量模块供电的CPU传感器电源。

如果使用其他外接电源,只要用相应电源的输出端取代上图中的L+和M,而且要使其M和为模块供电的M连接起来,如图3。

图3.三线制电流信号测量接线图4.四线制电压信号测量为了防止模拟量模块因短路而损坏,可以在传感器回路中串入一个750Ohm电阻。

原创 S7-200采集模拟量 求其最大值最小值及平均值算法附程序

原创 S7-200采集模拟量 求其最大值最小值及平均值算法附程序

程序目的:
通过本实例演示怎么定期采集模拟量求其最大值、最小值和平均值
期间用到西门子S7-200的定时中断定时器SMB34 和指针以及循环指令等
程序要求和思路:
提到最大值和最小值,平均值必须设定在一段时间内,或者以确定多少数据
要不就没什么意义
(1)程序分为部分,第一部分采集,第二部分计算最大值最小值及平均值
(2)首先,启动采集信号I0.1,采集时间T40为10S开始计时,同时设定SMB34为每100MS 采集一次并执行,中断程序里把每次采集的模拟量数值放到指针VD1000地址里,每次采集完毕指针移到下一位,10S定时到采集结束,同时分离中断,要求启动采集后,但采集未结束,如果再次启动采集信号I0.1,那么采集从新开始
(3)采集完毕后,用T40完成位控制启动计算程序,用循环指令FOR-NEXT指令在一个周期内计算出要求的各数值
主程序:
中断程序。

s7-200 smart 模拟量模块用法

s7-200 smart 模拟量模块用法

当我们在实际的应用中需要对当前的温度或是压力进行采集显示的时候,我们需要用到模拟量模块来对模拟量信号进行采集,在这里我们以S7-200smart PLC的EMAE04模拟输入模块为例来说明如何使用这个模块来采集温度或是压力。

例如:现需要实时监控发电机机组的温度,假设变送器输出的信号为0到10V的电压信号,最大温度值为150。

最小温度值为0度。

要完成正确读取实际的温度值,需要进行以下三步操作:第一、正确的接线第二、正确的硬件组态第三、编写正确的程序1、按照变送器提供的信号输出接线方式进行正确的接线,对于EMAE04模块的信号接入如图所示:若变送器为三线制输出的变送器,则接线时,先把变送器的24V 电源接上,变送器上的信号输出接端0+,0-端子接24V电源负。

2、打开S7-200smart的编程软件,打开其系统块对其进行硬件组态。

如图所示:注意:对于信号类型的选择,通道0的设置对通道1的设置也有效,通道2的设置对通道3 也同样有效。

3、编写转换程序S7-200smartPLC来说其最大的数字量为27648。

我们可以根据其得到的数字量的大小转换成我们实际的温度值。

对其转换程序,我们可以使用S7-200中的scaling模拟量转换库,使用库移植的方法把其移植到S7-200smart的软件中。

其移植方法可以参考前面所介绍的内容。

Input :表示需要转换的数字量,即采样所的数字量Ish:换算对象的高限,即最大模拟量所对应的数字量值(27648)Isl: 换算对象的低限,即最小模拟量所对应的数字量值(0)Osh:换算结果的高限,即测量范围最大值Osl:换算结果的底限,即测量范围最小值。

VD100:换算结果所存储的值。

西门子S7-200SMART的模拟量编程及接线方法

西门子S7-200SMART的模拟量编程及接线方法

西门子S7-200SMART的模拟量编程一.模拟量模块接线1.普通模拟量模块接线模拟量类型的模块有三种:普通模拟量模块、RTD模块和TC模块。

普通模拟量模块可以采集标准电流和电压信号。

其中,电流包括:0-20mA、4-20mA两种信号,电压包括:+/-2.5V、+/-5V、+/-10V三种信号。

注意:S7-200 SMART CPU普通模拟量通道值范围是0~27648或-27648~27648。

普通模拟量模块接线端子分布如下图1 模拟量模块接线所示,每个模拟量通道都有两个接线端。

图1模拟量模块接线模拟量电流、电压信号根据模拟量仪表或设备线缆个数分成四线制、三线制、两线制三种类型,不同类型的信号其接线方式不同。

四线制信号指的是模拟量仪表或设备上信号线和电源线加起来有4根线。

仪表或设备有单独的供电电源,除了两个电源线还有两个信号线。

四线制信号的接线方式如下图2模拟量电压/电流四线制接线所示。

图2模拟量电压/电流四线制接线三线制信号是指仪表或设备上信号线和电源线加起来有3根线,负信号线与供电电源M 线为公共线。

三线制信号的接线方式如下图3 模拟量电压/电流三线制接线所示。

图3模拟量电压/电流三线制接线两线制信号指的是仪表或设备上信号线和电源线加起来只有两个接线端子。

由于S7-200 SMART CPU模拟量模块通道没有供电功能,仪表或设备需要外接24V直流电源。

两线制信号的接线方式如下图4 模拟量电压/电流两线制接线所示。

图4模拟量电压/电流两线制接线不使用的模拟量通道要将通道的两个信号端短接,接线方式如下图5 不使用的通道需要短接所示。

图5 不使用的通道需要短接2. RTD模块接线RTD热电阻温度传感器有两线、三线和四线之分,其中四线传感器测温值是最准确的。

S7-200 SMART EM RTD模块支持两线制、三线制和四线制的RTD传感器信号,可以测量PT100、PT1000、Ni100、Ni1000、Cu100等常见的RTD温度传感器,具体型号请查阅《S7-200 SMART系统手册》。

西门子200模拟量模块

西门子200模拟量模块

西门子S7-200模拟量编程PLC 2009-09-16 20:05 阅读77 评论0字号:大中小西门子S7-200模拟量编程韩耀旭本文以EM235为例讲解S7-200模拟量编程,主要包括以下内容:1、模拟量扩展模块接线图及模块设置2、模拟量扩展模块的寻址3、模拟量值和A/D转换值的转换4、编程实例模拟量扩展模块接线图及模块设置EM235是最常用的模拟量扩展模块,它实现了4路模拟量输入和1路模拟量输出功能。

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

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

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

(后面将详细介绍)量的单/双极性、增益和衰减。

模拟量输入为单极性输入,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、必要时,重复偏置和增益校准过程。

S7-200模拟量输入输出实例

S7-200模拟量输入输出实例

对输入、输出模拟量的PLC编程的探讨及编程实例解析3134人阅读| 4条评论发布于:2011-12-29 9:03:42 对于初学PLC编程的人来说,模拟量输入、输出模块的编程要比用位变量进行一般的程序控制难的多,因为它不仅仅是程序编程,而且还涉及到模拟量的转换公式推导与使用的问题。

不同的传感变送器,通过不同的模拟量输入输出模块进行转换,其转换公式是不一样的,如果选用的转换公式不对,编出的程序肯定是错误的。

比如有3个温度传感变送器:(1)、测温范围为0~200 ,变送器输出信号为4~20ma(2)、测温范围为0~200 ,变送器输出信号为0~5V(3)、测温范围为-100 ~500 ,变送器输出信号为4~20ma(1)和(2)二个温度传感变送器,测温范围一样,但输出信号不同,(1)和(3)传感变送器输出信号一样,但测温范围不同,这3个传感变送器既使选用相同的模拟量输入模块,其转换公式也是各不相同。

一、转换公式的推导下面选用S7-200的模拟量输入输出模块EM235的参数为依据对上述的3个温度传感器进行转换公式的推导:对于(1)和(3)传感变送器所用的模块,其模拟量输入设置为0~20ma电流信号,20ma 对应数子量=32000,4 ma对应数字量=6400;对于(2)传感变送器用的模块,其模拟量输入设置为0~5V电压信号,5V对应数字量=32000,0V对应数字量=0;这3种传感変送器的转换公式该如何推导的呢?这要借助与数学知识帮助,请见下图:上面推导出的(2-1)、(2-2)、(2-3)三式就是对应(1)、(2)、(3)三种温度传感变送器经过模块转换成数字量后再换算为被测量的转换公式。

编程者依据正确的转换公式进行编程,就会获得满意的效果。

二、变送器与模块的连接通常输出4~20ma电流信号的传感变送器,对外输出只有+、- 二根连线,它需要外接24V电源电压才能工作,如将它的+、- 二根连线分别与24V电源的正负极相连,在被测量正常变化范围内,此回路将产生4~20ma电流,见下左图。

(完整版)西门子PLC编程模拟量

(完整版)西门子PLC编程模拟量

对输入、输出模拟量的PLC编程的探讨及编程实例解析对于初学PLC编程的人来说,模拟量输入、输出模块的编程要比用位变量进行一般的程序控制难的多,因为它不仅仅是程序编程,而且还涉及到模拟量的转换公式推导与使用的问题。

不同的传感变送器,通过不同的模拟量输入输出模块进行转换,其转换公式是不一样的,如果选用的转换公式不对,编出的程序肯定是错误的。

比如有3个温度传感变送器:(1)、测温范围为 0~200,变送器输出信号为4~20ma(2)、测温范围为 0~200,变送器输出信号为0~5V(3)、测温范围为-100~500,变送器输出信号为4~20ma(1)和(2)二个温度传感变送器,测温范围一样,但输出信号不同,(1)和(3)传感变送器输出信号一样,但测温范围不同,这3个传感变送器既使选用相同的模拟量输入模块,其转换公式也是各不相同。

一、转换公式的推导下面选用S7-200的模拟量输入输出模块EM235的参数为依据对上述的3个温度传感器进行转换公式的推导:对于(1)和(3)传感变送器所用的模块,其模拟量输入设置为0~20ma电流信号 ,20ma对应数子量=32000,4 ma对应数字量=6400;对于(2)传感变送器用的模块,其模拟量输入设置为0~5V电压信号,5V 对应数字量=32000,0V对应数字量=0;这3种传感変送器的转换公式该如何推导的呢?这要借助与数学知识帮助,请见下图:上面推导出的(2-1)、(2-2)、(2-3)三式就是对应(1)、(2)、(3)三种温度传感变送器经过模块转换成数字量后再换算为被测量的转换公式。

编程者依据正确的转换公式进行编程,就会获得满意的效果。

二、变送器与模块的连接通常输出4~20ma电流信号的传感变送器,对外输出只有 +、- 二根连线,它需要外接24V电源电压才能工作,如将它的+、- 二根连线分别与24V电源的正负极相连,在被测量正常变化范围内,此回路将产生4~20ma电流,见下左图。

主题:S7-200模拟量EM235编程实例

主题:S7-200模拟量EM235编程实例

主题:S7-200模拟量EM235编程实例西门子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~10V0~5V0~1V0~500mV0~100mV0~50mV?电压(双极性)±10V±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 SW6ON 单极性?OFF 双极性?OFF OFF X1 ?OFF ON X10 ?ON OFF X100 ?ON ON 无效?ON OFF OFFOFF ON OFFOFF OFF ON由上表可知,DIP开关SW6决定模拟量输入的单双极性,当SW6为ON时,模拟量输入为单极性输入,SW6为OFF时,模拟量输入为双极性输入。

EM235模块手册,s7-200

EM235模块手册,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输入范围电压(单极性)0~10V0~5V0~1V0~500mV0~100mV0~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可选择输入模拟量的单/双极性、增益和衰减。

时,模拟量输入为单极性输入,SW6为OFF时,模拟量输入为双极性输入。

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

6个DIP开关决定了所有的输入设置。

也就是说开关的设置应用于整个模块,开关设置也只有在重新上电后才能生效。

S7-200类型PLC模拟量问题的解答

S7-200类型PLC模拟量问题的解答

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 模拟量输入模块的示例为了防止模拟量模块短路,可以串入传感器一个750 Ohm电阻。

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

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

第5章 西门子S7-200系列PLC模拟量,PID指令及应用

第5章 西门子S7-200系列PLC模拟量,PID指令及应用

输入端子 工作电源
增益电位器 DIP开关
单极性模拟量 SW1 ON SW2 OFF ON SW3 ON OFF
满量程输入
分辨率
0~10V 0~5V 0~20mA
2.5mV 1.25mV 5μA 分辨率
双极性模拟量 SW1 OFF SW2 OFF ON SW3 ON OFF
满量程输入
±5V ±2.5V
M X 1.0 MPn MDn
当 M n 1 .0 时
当 M n 0 .0 时
M X ( MPn MDn )

第N次采样 时的比例项
第N次采样 时的微分项
为了实现平滑切换,系统会作下列调整:
SPn PV n
Mx Mn
//给定值=过程变量
PVn 1 PVn //过程变量前值=过程变量当前值
●从输入通 道 AIW0对 单极性模拟 量进行采样、 转换,并填 入回路参数 表程序。
标准化实数 16位有符号整数 ● 回路输出转化的步骤: 计算公式: R 浮点型 M n offset Span
控制对象不同,对特性要求不同,选择的 PID回路类型也不同。必须根据系统对动态品 质、稳态精度和调节速度的要求来合理选择P、 I、D回路中的一种或多种控制类型。
2.5mV 1.25mV
◆ 模拟量输出模块 EM232的特性
● 模拟量输出模块 EM232 的D/A 转换精度: 提供 12位的D/A转换器 。
(EM232)
输出端子 工作电源
※ 每个输出模块有二路输出(3个端子一组) ※ 可以输出±10V电压或0~20mA电流信号; ◎ 电压负载时:V0端接负载正极、 M0 接负 载负极。 ◎ 电流负载时:I0端接负载正极、 M0 接负 载负极。 ※ 模块需要直流24V工作电源。

西门子s7-200 编程详解

西门子s7-200  编程详解

第三章S7-200的编程软件使用STEP7-Micro/WIN32是SIEMENS公司专为SIMATIC系列S7-200研制开发的编程软件,它是基于Windows平台的应用软件。

STEP7-Micro/WIN32可以使用个人计算机作为图形编辑器,用于联机或脱机开发用户程序,并可在线实时监控用户程序的执行状态。

3.1 STEP7-Micro/WIN32安装与启动一、STEP7-Micro/WIN32软件安装1、系统要求操作系统:Windows 95、Windows 98、Windows ME或Windows 2000。

硬件配置:IBM 486以上兼容机,内存8MB以上,VGA显示器,至少50MB以上硬盘空间,鼠标。

通信电缆:PC/PPI电缆(或使用一个通信处理器卡),用于计算机与PLC的连接。

2、硬件连接典型的单台PLC与PC机的连接,只需要用一根PC/PPI电缆,如图3-1所示。

PC/PPI电缆的两端分别为RS-232和RS-485接口,RS-232端连接到个人计算机RS-232通信口COM1或COM2接口上,RS-485端接到S7-200 CPU通信口上。

3.软件安装(1)将存储软件的光盘放入光驱;(2)双击光盘中的安装程序SETUP.EXE,选择English 语言,进入安装向导;(3)按照安装向导完成软件的安装,然后打开此软件,选择菜单Tools—Options—General—Chinese,完成汉化补丁的安装;(4)软件安装完毕。

文本框: PC/PPI电缆文本框: 计算机文本框: RS-485文本框: RS-232文本框: 图3-1 PLC与计算机的连接4、建立通信联系设置连接好硬件并且安装完软件之后,可以按下面的步骤进行在线连接:(1)在STEP 7-Micro/WIN 32运行时,单击浏览条中通信图标,或从菜单检视(View)中选择元件——通信(Communications),则会出现一个通信对话框,如图3-2所示。

S7-200PLC模拟量编程方法

S7-200PLC模拟量编程方法

1、模拟量值和A/D转换值的转换假设模拟量的标准电信号是A0—Am(如:4—20mA),A/D转换后数值为D0—D (单极性的西门子PLC200系列的0—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举几个例子:例1、以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。

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

例3、某压力变送器,当压力达到满量程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。

S7-200smartPLC模拟量输入模块使用说明

S7-200smartPLC模拟量输入模块使用说明

S7—200smart PLC模拟量输入模块使用说明当我们在实际的应用中需要对当前的温度或是压力进行采集显示的时候,我们需要用到模拟量模块来对模拟量信号进行采集,在这里我们以S7-200smart PLC的EMAE04模拟输入模块为例来说明如何使用这个模块来采集温度或是压力。

例如:现需要实时监控发电机机组的温度,假设变送器输出的信号为0到10V的电压信号,最大温度值为150。

最小温度值为0度。

要完成正确读取实际的温度值,需要进行以下三步操作:第一、正确的接线第二、正确的硬件组态第三、编写正确的程序1、按照变送器提供的信号输出接线方式进行正确的接线,对于EMAE04模块的信号接入如图所示:若变送器为三线制输出的变送器,则接线时,先把变送器的24V电源接上,变送器上的信号输出接端0+,0-端子接24V电源负。

2、打开S7—200smart的编程软件,打开其系统块对其进行硬件组态。

如图所示:注意:对于信号类型的选择,通道0的设置对通道1的设置也有效,通道2的设置对通道3 也同样有效。

3、编写转换程序S7—200smartPLC来说其最大的数字量为27648。

我们可以根据其得到的数字量的大小转换成我们实际的温度值。

对其转换程序,我们可以使用S7—200中的scaling模拟量转换库,使用库移植的方法把其移植到S7—200smart的软件中.其移植方法可以参考前面所介绍的内容。

Input :表示需要转换的数字量,即采样所的数字量Ish:换算对象的高限,即最大模拟量所对应的数字量值(27648) Isl: 换算对象的低限,即最小模拟量所对应的数字量值(0)Osh:换算结果的高限,即测量范围最大值Osl:换算结果的底限,即测量范围最小值。

VD100:换算结果所存储的值。

第二部分:如何引用模拟量的地址在软件中,就可以看到,以上模块量模块的地址就是: AIW16 18 20 22AIW32 34 36 38。

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

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

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

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

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

(后面将详细介绍)量的单/双极性、增益和衰减。

时,模拟量输入为单极性输入,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即为显示的温度值,对照仪表显示值是否一致。

MODBUS RTU通讯协议在S7-200中的应用1 引言工业控制已从单机控制走向集中监控、集散控制,如今已进入网络集约制造时代。

工业控制器连网也为网络管理提供了方便。

Modbus就是工业控制器的网络协议中的一种。

Modbus协议是应用于电子控制器上的一种通讯约规。

通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。

它已经成为主流的工业标准之一。

他为符合Modbus协议的不同厂商生产的控制设备可以连成工业网络,进行集中监控。

2 Modbus RTU协议在S7-200中的应用原理2.1 Modbus RTU协议与S7-200相互关系简介S7-200 CPU上的通讯口Port0可以支持Modbus RTU协议,成为Modbus RTU 从站。

此功能是通过S7-200的自由口通讯模式实现,因此可以通过无线数据电台等慢速通讯设备传输。

如果想在S7-200 CPU与其他支持Modbus RTU的设备使用Modbus RTU协议通讯,需要由有S7-200 CPU做Modbus主站。

S7-200 CPU做主站必须由用户自己用自由口模式,按相关协议编程。

在S7-200控制系统应用中,Modbus RTU从站指令库只支持CPU上的通讯0口(Port0)。

要实现Modbus RTU通讯,需要Step7-Micro/WIN32 V3.2以上版本的编程软件,而且须安装Step7-Micro/WIN32 V3.2 Instruction Library(指令库)。

Modbus RTU功能是通过指令库中预先编好的程序功能块实现的。

2.2 Modbus RTU协议在S7-200中应用的基本过程(1) 首先检查S7-200控制系统中所用Micro/WIN的软件版本,应当是Step7-Micro/WIN V3.2以上版本。

(2) 检查Micro/WIN的指令树中是否存在Modbus RTU从站指令库(图1),库中应当包括MBUS_INIT和MBUS_SLAVE两个子程序。

如果没有,须安装Micro/WIN32 V3.2 Instruction Library(指令库)软件包,如图1所示。

图1 指令树中的库指令(3) 编程时使用SM0.1—调用子程序MBUS_INIT进行初始化,使用SM0.0—调用研究MBUS_SLAVE,并指定相应参数。

关于参数的详细说明,可在子程序的局部变量表中找到。

示例参见图2:图2 调用MODBUS通讯指令库图2中参数意义如下:●模式选择:启动/停止MODBUS,1=启动;0=停止;●从站地址:MODBUS从站地址,取值1~247;●波特率:可选1200,2400,4800,9600,19200,38400,57600;●奇偶校验:0=无校验;1=奇校验;2=偶校验;●延时:附加字符间延时,缺省值为0;●最大I/Q位:参与通讯的最大I/O点数,S7-200的I/O映像区为128/128,缺省值为128;●最大AI字数:参与通讯的最大AI通道数,可为16或32;●最大保持寄存器区:参与通讯的V存储区字(VW);●保持寄存器区起始地址:以&VBx指定(间接寻址方式);●初始化完成标志:成功初始化后置1;●错误代码:0=无错误。

(4) 注意的问题调用Step7-Mciro/WIN32 V3.2 Instruction Library(指令库)需要分配库指令数据区(Library Memory)。

库指令数据区是相应库的子程序和中断程序所要用到的变量存储空间。

如果在编程时不分配库指令数据区,编译时会产生许多相同的错误。

由子程序参数HoldStart和MaxHold指定的保持寄存器区,是在S7-200 CPU 的V数据存储区中分配,此数据区不能和库指令数据区有任何重叠,否则在运行时会产生错误,不能正常通讯。

注意Modbus 中的保持寄存器区按“字”寻址,即MaxHold规定的是VW而不是VB的个数。

3 Modbus RTU协议测试包含Modbus RTU从站指令库的项目编译、下载到CPU中后,在编程计算机(PG/PC)上运行一些Modbus测试软件可以检验S7-200的Modbus RTU通讯是否正常,这对查找故障点很有用。

测试软件通过计算机串口(RS-232)和PC/PPI电缆连接CPU。

(以ModScan32测试软件为例作以检测说明)3.1 测试软件测试软件ModScan32如图3所示。

图3 Modbus RTU测试软件:ModScan32图3中,ModScan32测试软件的画面中相关参数意义如下:Address:ModBus中存储区的起始地址;Device Id:PLC ModBus的端口地址;Length:参与通讯的V存储区字的长度。

3.2 参数设置对ModScan32测试软件的通讯参数进行相关设置,要与S7-200的Modbus RTU 指令库MBUS_INIT中所设定的参数相统一,这样即可进行通讯检测。

相关文档
最新文档