西门子PLC在数字信号处理当中的应用探究

2014-02-24 08:59:28赵银玲李治国西安职业技术学院机电工程系西安7003中航工业西安飞行自动控制研究所陕西西安70065
电子测试 2014年23期
关键词:用户程序模拟量指针

赵银玲,李治国(.西安职业技术学院机电工程系,西安,7003;.中航工业西安飞行自动控制研究所,陕西西安,70065)

西门子PLC在数字信号处理当中的应用探究

赵银玲1,李治国2
(1.西安职业技术学院机电工程系,西安,710032;2.中航工业西安飞行自动控制研究所,陕西西安,710065)

文章介绍了西门子S7-300PLC的硬件组成,研究了其在DCS控制系统中的应用,从实际应用来看,控制的效果是令人满意的。

工业控制系统;DCS;PLC

0 引言

可编程序控制器PLC是一种进行数字运算的电子系统,是专为在工业环境下的应用而设计的工业控制器。具有数学运算、数据传送、数据转换、排序、查表、位操作等功能,可以完成数据的采集分析及处理。因其具有编程简单、使用方便,功能完善且对环境适应性强等特点,数据处理一般用于大型控制系统,如无人控制的柔性制造系统;同时也被广泛应用于钢铁、石油、化工、电力、造纸、环保以及文化娱乐等各行各业。

1 PLC概述

1.1 S7-300 PLC系统结构

S7-300PLC功能强、速度快、扩展灵活、它具有紧凑的、无槽位限制的模块化结构。他的主要组成部分有导轨(Rack)、电源模块(PS)、CPU模块、接口模块(IM)、信号模块(SM)和功能模块(FM)。可通过MPI网的接口(5611卡)直接与编程器PG,操作员面板OP和其它S7PLC相连。其工作过程为:CPU首先扫描输入模块状态,并更新输入过程映像寄存器,然后执行用户程序,最后从输出过程映像寄存器中将值输出到输出模块,以此循环。

1.2 S7-300 PLC工作原理

循环扫描工作过程:与其它计算机系统一样,PLC的CPU采用分时操作原理,每一时刻执行一个操作,随着时间的延伸一个动作接一个动作顺序地进行扫描。CPU从第一条指令开始,顺序逐条地执行用户程序,直到用户程序转来,然后返回到第一条指令开始新一轮扫描。扫描周期一般为1-100ms。

1.3 S7-300 PLC程序结构

STEP 7 有三种编程方法可供选用,它们是线性编程、分部式编程和结构化编程。线性编程将整个用户程序写在一个指令连续的块中,处理器线性地或顺序地扫描程序的每条指令。该方法适用于比较简单的控制任务。分部式编程将用户程序分成相对独立的指令块,每个块包含给定的部件组或作业组的控制逻辑。

2 S7-300 PLC在数字信号处理中的应用与实现

2.1 模拟量信号的采样

在工业控制现场,被控变量往往分布在生产现场的各个地方,因而计算机的工作环境恶劣,遭受干扰频繁。这些干扰将会影响控制系统的测控精度,因此必须将其滤除,以下以对工业现场信号采样并进行平滑处理的实例来具体说明S7-300PLC的具体应用。该实例从两方面入手,先是采样现场受干扰的信号,然后通过在程序中设置对其进行平滑处理。

一些S7-300 PLC的控制系统中,使用八通道模拟量模块采集信号,当模块数量较多时,读模拟输入量就很繁琐。但是我们可以通过软件设计,方便地把模拟量读回并顺序存入数据块中。我们可以定义:FC1——采样子程序。

表1 FC1的变量声明表如下:

(1) FC1的变量声明表如下:

(2) S7-300 PLC的语句表(STL)编写的采样程序如下:

L #DB_No //传送数据块块号

T LW 0 //保存数据块块号

OPN DB [LW 0] //打开存储数据块

L #PIW_Addr //模入模块通道起始地址

SLD 3 //左移三位形成地址指针

T LD 4 //保存地址指针

L #DBW_Addr //存储在数据块中的起始地址

SLD 3 //左移三位形成地址指针

T LD 8 //保存地址指针

L #DB_LEN //要读入的通道数作为循环次数

Next: T LW 0 //保存通道数

L LD 4 //将地址指针送入累加器

LAR1 //将地址指针送入AR1

L PIW [AR1, P#0.0] //地址指针加上偏移量

T LW 12

L LD 8

LAR1

L LW 12

T DBW [AR1, P#0.0]

L LD 4

+ L#16

T LD 4

L LD 8

+ L#16

T LD 8

L LW 0

LOOP Next

在调用这个程序时还要注意以下几个问题:(1)读模拟量输入模块数据通道是否从数据字的第零位开始;(2)过程量的最大测量范围;(3)数字量的有效值范围。

2.2 PLC对信号的平滑处理

惯性滤波法的数字表达式为: Y (k)=a*x (k)+(1-a)*y (k-1) 式中,a为滤波系数,且0

FC2的变量声明表如下:

(2)下面是以西门子S7300 PLC的语句表(STL)编写的惯性滤波子程序。

L 1.000000e+000

L #a //a为惯性滤波系数

-R

T LD 16

L #DB1_No

T LW 22

OPN DB [LW 22] //打开存储数据块

L LD 0

LAR1

L DBW [AR1, P#0.0]

L LD 16

*R

T LD 24

L #DB2_No

T LW 28

OPN DB [LW 28] //打开存储数据块

L LD 4

LAR1

L DBW [AR1, P#0.0]

L #a

*R

L LD 24

+R

T LW 30

L #DB_No

T LW 34

OPN DB [LW 34] //打开存放数据块

L LD 8

LAR1

L LW 30

T DBW [AR1, P#0.0]

3 总结

以上程序已成功应用于实际的DCS控制系统中,上位机监控软件用西门子WinCC,下位机控制用西门子PLC-S7300。在实际应用中,先利用上述所给模拟量信号的采样和滤波程序获得有效的采样值,然后将它们用于对现场的过程量如压力、液位、流量等模拟量信号进行控制,从实际应用情况来看,控制的效果是令人满意的。

[1] 田瑞庭.可编程控制器应用技术.北京:机械工业出版社,1994.

赵银玲, 1982年12月出生,女,硕士研究生,助教,研究方向控制理论与控制控制工程

Application and research Of PLC in Digital signal processing

Zhao Yinling1,Li Zhiguo2(
1.Xi'an Vocational and Technical College Department of mechanical and electrical engineering,Xi'an,
710032;
2.AVIC Xi'an Flight Automatic Control Research Institute,Shaanxi Xi'an,710065)

This paper discussed the hardware composition of Siemens PLC,researched of application in DCS Control system。And the control effect is perfect through the practical application

Industrial control systems;digital contral system;Programmable Logic Controller

猜你喜欢
用户程序模拟量指针
变速箱控制系统Bootloader设计与实现
偷指针的人
娃娃画报(2019年5期)2019-06-17 16:58:10
基于FPGA的多通道模拟量采集/输出PCI板卡的研制
测控技术(2018年12期)2018-11-25 09:37:42
嵌入式设备远程升级方案设计
为什么表的指针都按照顺时针方向转动
关于600MW火电机组模拟量控制系统设计和研究
电子制作(2016年21期)2016-05-17 03:53:12
模拟量输入式合并单元测试仪的研制
基于改进Hough变换和BP网络的指针仪表识别
电测与仪表(2015年5期)2015-04-09 11:30:42
C8051F410单片机BootLoader的实现
ARM Cortex—MO/MO+单片机的指针变量替换方法