《(完整版)S7-200模拟量输入输出实例》由会员分享,可在线阅读,更多相关《(完整版)S7-200模拟量输入输出实例(12页珍藏版)》请在金锄头文库上搜索。
1、(完整版)S7-200 模拟量输入输出实例 对输入、输出模拟量的 PLC 编程的探讨及编程实例解析 3134人阅读 4条评论 发布于:2011-12-29 9:03:42 对于初学 PLC 编程的人来说,模拟量输入、输出模块的编程要比用位变量进行一般的程序控制难的多,因为它不仅仅是程序编程,而且还涉及到模拟量的转换公式推导与使用的问题.不同的传感变送器,通过不同的模拟量输入输出模块进行转换,其转换公式是不一样的,如果选用的转换公式不对,编出的程序肯定是错误的。比如有3个温度传感变送器:(1)、测温范围为 0200,变送器输出信号为420ma(2)、测温范围为 0200,变送器输出信号为05V(
2、3)、测温范围为 100 500,变送器输出信号为420ma(1)和(2)二个温度传感变送器,测温范围一样,但输出信号不同,(1)和(3)传感变送器输出信号一样,但测温范围不同,这3个传感变送器既使选用相同的模拟量输入模块,其转换公式也是各不相同。一、转换公式的推导 下面选用 S7200的模拟量输入输出模块 EM235的参数为依据对上述的3个温度传感器进行转换公式的推导:对于(1)和(3)传感变送器所用的模块,其模拟量输入设置为020ma 电流信号,20ma 对应数子量=32000,4 ma 对应数字量=6400;对于(2)传感变送器用的模块,其模拟量输入设置为05V 电压信号,5V 对应数字
3、量=32000,0V 对应数字量=0;这3种传感変送器的转换公式该如何推导的呢?这要借助与数学知识帮助,请见下图:(完整版)S7-200 模拟量输入输出实例 上面推导出的(2-1)、(2-2)、(2-3)三式就是对应(1)、(2)、(3)三种温度传感变送器经过模块转换成数字量后再换算为被测量的转换公式。编程者依据正确的转换公式进行编程,就会获得满意的效果。二、变送器与模块的连接 通常输出420ma 电流信号的传感变送器,对外输出只有+、-二根连线,它需要外接24V 电源电压才能工作,如将它的+、-二根连线分别与24V 电源的正负极相连,在被测量正常变化范围内,此回路将产生420ma 电流,见下
4、左图。下右图粉色虚线框内为 EM235 模块第一路模拟输入的框图,它有3个输入端,其 A+与A为 A/D 转换器的+-输入端,RA 与 A-之间并接250 标准电阻。A/D 转换器是正逻辑电路,它的输入是05V 电压信号,A为公共端,与 PLC 的24V 电源的负极相连。那么24V 电源、传感变送器、模块的输入口三者应如何连接才是正确的?正确的连线是这样的:将左图电源负极与传感器输出的负极连线断开,将电源的负极接模块的 A-端,将传感器输出负极接 RA 端,RA 端与 A+端并接一起,这样由传感器负极输出的420ma 电流由 RA 流入250 标准电阻产生05V 电压并加在 A+与 A-输入端
5、.切记:不可从左图的24V 正极处断开,去接模块的信号输入端,如这样连接,模块是不会正常工作的。对第(2)种电压输出的传感変送器,模块的输入应设置为05V 电压模式,连线时,变送器输出负极只连A+,RA 端空悬即可。(完整版)S7-200 模拟量输入输出实例 三、按转换公式编程:根据转换后变量的精度要求,对转换公式编程有二种形式:1、整数运算,2、实数运算。请见下面梯形图:(A)、整数运算的梯形图:该梯形图是第(1)种 温度传感变送器(测温:0200,输出:420ma)按公式(2-1)以整数运算编写的转换程序,它可作为一个子程序进行调用。(B)实数运算的梯形图:(完整版)S7-200 模拟量输
6、入输出实例 该梯形图是对一个真空压力变送器(量程:00。1Mpa,输出:420ma)按公式(21)以实数运算编写的转换程序,可作为一个子程序进行调用.四、编程实例及解析 某设备装有4种传感器:1、真空压力传感器,量程为:00.1Mpa;输出给 PLC 的信号为420ma。2、蒸汽压力传感器,量程为:01.0Mpa;输出给 PLC 的信号为420ma。3、温度传感器,量程为:0200 度;输出给 PLC 的信号为420ma。4、电机转速,量程为:050转/秒;输出给 PLC 的信号为420ma。该设备用蒸汽对其罐体加热,并对温度要求按设定的温度值进行温度控制。控制方式采用自动调整电动阀开门角度的
7、大小来改变加热管道的蒸汽的流量。电动阀的控制信号为420ma,即输入4ma 时,电动阀关门,输入20ma 时,电动阀门全开。为此选用了含有4路模拟输入和一路模拟输出的模块 EM235.其4路模拟量输入信号皆设定为020ma 电流输入模式,一路模拟量输出信号设定为420ma 电流输出模式。要求用触摸屏显示这4种信号的时时状态值,并在触摸屏上设置控制的温度参数,传给 PLC 使 PLC 按此值进行温度控制。由于本文重点是讲述有关模拟量的输入与输出的编程设计,对触摸屏的编程设计不予讲述,只提供触摸屏与 PLC 的通讯变量:VD0:为真空压力显示区,由 PLC 传送给触摸屏。VD4:为蒸汽压力值显示区
8、,由 PLC 传送给触摸屏。VW8:为蒸汽温度值显示区,由 PLC 传送给触摸屏。VW10:为电机转速值显示区,由 PLC 传送给触摸屏。VW12:设定温度值区,由触摸屏传送给 PLC.一、硬件电路的配置:(一)、硬件设置 除上述4种传感器外,选用:1、S7-200PLC 一台,型号为:CPU222 CN。2、选用 EM235模拟量输入模块一块(输入设置:020 ma 工作模式;输出设置:420ma)。3、变频器一台,型号为 PI8100,由 PLC 控制启停,手动调速.4、西门子触摸屏一块。型号:Smart 700 硬件电路图(完整版)S7-200 模拟量输入输出实例 (二)、对传感器输出的
9、420ma 转换为显示量程的公式推导:EM235模拟量输入输出模块,当输入信号为20ma 时,对应的数字=32000,故:输入=4ma 时,对应的数字量=6400,对应显示量程值=0。输入20ma 时,对应的数字量=32000,对应显示量程值最大值=Hm,其输出量与模块的数字量的变化关系曲线如图一所示:(完整版)S7-200 模拟量输入输出实例 这4个转换公式,前二种为实数运算,后二种为整数运算,为简化程序,自定义二个功能块分别用于实数与整数运算,而每个功能块在程序运行中又都调用二次,分别计算不同的物理量。为此功能块设有二个数字输入与一个计算结果输出三个口,以适用于多次调用去计算不同物理量的值
10、。请见下面编程:(三)、实数运算功能块(SBR_0):(完整版)S7-200 模拟量输入输出实例 (四)、整数运算功能快(SBR_1):(五)、将模块的数字量,按对应公式转换为量程显示值的编程 (完整版)S7-200 模拟量输入输出实例 分析以上梯形图可知,该程序编写的特点:1、选用自定义功能块编写转换公式的子程序,2、对多个转(完整版)S7-200 模拟量输入输出实例 换变量的调用采用每个扫描周期对 MB0加1的依次循环调用的方式,这样的编程处理会使编写的程序,简短易读易懂。(六)、对模拟量输出的编程处理 对罐体温度控制是采用渐近比较的控制方式进行编程。设计思路是这样的:当罐体的温度低于设定
11、温度10度时,控制加热蒸汽的电动阀门全打开,当罐体的温度低于设定温度7度时,电动阀门打开3/4,当罐体的温度低于设定温度4度时,电动阀门打开1/2,当罐体的温度低于设定温度2度时,电动阀门打开1/4,当罐体的温度低于设定温度1度时,电动阀门打开1/8,当罐体的温度=设定温度时,电动阀门关闭.(21a)式为温度与数字量的关系式,用它可将设定温度值转换为对应的数字量.如 设定温度 Tz=120度,带入(21a),可得对应数字量 AIW=21760(35)式为数字量与电动阀门打开度 的关系式,可用它输送给模块不同的数字量,来改变模块的模拟量输出值,进而达到改变电动阀门的打开角度。如:=1代入(3-5
12、)可得:AIWx=32000 将32000送入给模块的 AQW0,模块的模拟量输出将产生20ma 电流输入给电动阀的信号输入端,使阀门全打开。=1/2代入(35)式可得:AIWx=19200 将19200送入给模块的 AQW0,模块的模拟量输出将产生12ma 电流输入给电动阀的信号输入端,使阀门打开1/2。下面是利用渐近比较法进行温度控制的梯形图:程序解释见网络上的说明 (完整版)S7-200 模拟量输入输出实例 (完整版)S7-200 模拟量输入输出实例 程序中的 Q0.0为蒸汽电磁阀的输出信号.Q0.0=1即蒸汽电磁阀打开,注入蒸汽加热,程序将对罐体内的温度进行控制。Q0。1 为冷水电磁阀
13、的输出信号.Q0.1=1即冷水发打开,注入冷水进行降温,此时电动阀门全开,加速降温,程序对降温不做控制处理.(七)、PLC 输入输出的控制编程 输入有3个按钮:分别控制变频器、蒸汽电磁阀、水冷电磁阀的通电与关断:1、启动按钮接 PLC 的 I0。0,控制变频器的启动与停止,输出口为 Q0.3。2、蒸汽电磁阀控按钮,控制蒸汽电磁阀的打开与关闭,输出口为 Q0.0 3、冷水电磁阀按钮,控制冷水电磁阀的打开与关闭,输出口为 Q0。1 控制方式选用一个按钮控制启停,用 RS 触发器指令编程。Q0。0与 Q0.1 互锁,即只容许一个电磁阀打开,如蒸汽阀打开时,按水阀控制按钮,水阀不能打开,只有先关断气阀后再按水阀,水阀才能打开。见下面梯形图:(完整版)S7-200 模拟量输入输出实例 本文到此结束,望大家分析探讨,有不对之处请给于指正。谢谢大家!