西门子S7400计时器使用中的问题与改进

(整期优先)网络出版时间:2018-11-21
/ 2

西门子S7400计时器使用中的问题与改进

朱先哲

(本钢浦项冷轧薄板有限责任公司辽宁本溪117000)

摘要:本文主要针对西门子S7400计时器使用展开分析,分析了西门子S7400计时器使用的问题,以及如何针对这些问题进行改进,提出了具体的措施,可供参考。

关键词:西门子;计时器;问题;改进

前言

在西门子S7400计时器使用的每一个环节,都可能会出现问题,所以,一方面我们要积极预防,另一方面,要对出现的问题进行应对,提出更好的改进的措施。

1、可编程序控制器的发展过程

在过去很长一段时间内,工业控制领域中广泛使用继电器接触器控制系统。原来的控制系统都是由继电器构成的,也就是说是由无数根导线、触点和线圈组成的硬布线逻辑系统,一旦生产工艺改动整个生产线就要从新设计建设,改变这种逻辑系统,非常复杂。

1968年美国通用汽车制造公司提出取代继电气控制装置的要求,即要求制成一种通用的控制装置,通过计算机编程来实现工业控制装置的逻辑关系,即利用程序来变更逻辑关系。第二年,美国数字设备公司研制出了基于集成电路和电子技术的控制装置,首次采用程序化的手段应用于电气控制,这就是第一代可编程序控制器。限于当时的元器件条件及计算机发展水平,早期的可编程序控制器主要由分立元件及中小规模集成电路组成,可以完成简单的逻辑控制及定时、计数功能。

20世纪70年代初出现了微处理器。人们很快将其引入可编程控制器,使可编程序控制器增加了数据运算、数据处理、摸拟量控制等功能,完成了真正具有计算机特征的工业控制装置。为了方便熟悉继电器接触器系统的工程技术人员使用,可编程控制器采用和继电器电路图类似的梯形图作为主要编程语言,并将参加运算及处理的计算机存储元件都以继电器命名。此时的可编程序控制器已经成为微机技术和继电器常规控制概念相结合的产物。

20世纪70年代中末期,可编程序控制器进入实用化发展阶段,计算机技术已全面引入可编程序控制器中,使其功能发生了飞跃。更高的运算速度、超小型体积、更可靠的工业抗干扰设计、模拟量运算、PID(比例积分微分)功能及极高的性价比奠定了它在现代工业中的地位。20世纪80年代初,可编程序控制器在先进工业国家中已获得广泛应用。这个时期可编程序控制器发展的特点是大规模、高速度、高性能、产品系列化。这个阶段的另一个特点是世界上生产可编程序控制器的国家日益增多,产量日益上升。这标志着可编程序控制器已步入成熟阶段。

20世纪90年代以来,可编程序控制器已经全面使用16位和32位的微处理器芯片,速度提高了510倍。可编程序控制器的I/O点数从8个到32K个都具有和计算机通信联网的功能。可编程序控制器的发展更加适应于现代工业的需要。从控制规模上来说,这个时期发展了大型机和超小型机;从控制能力上来说,诞生了各种各样的特殊功能单元,用于压力、温度、转速、位移等各式各样的控制场合;从产品的配套能力来说,生产了各种人机界面单元、通信单元,使应用可编程序控制器的工业控制设备的配套更加容易。在这种情况下国际电工委员会(IEC)正式颁布了可编程序控制器标准。

2、西门子S7400计时器使用中的问题

西门子可编程工业控制器PLC(ProgramLogicController)对于很多人来说,都很熟悉。具有良好的通用性和易用性。在冶金、造纸、食品加工、纺织等很多控制领域广泛地使用。加之由西门子倡导的工业控制网络Profibus的网络设备的广泛使用,相对于其它PLC软件来说,更容易使工程人员易于接受。

在使用西门子Simatic软件过程中,和许多同行一样,认为在其PLC的软件中,关于计时器的系统提供了多种定时,由用户选择使用,类型比较完备。但在使用方面,我们也发现了一些小的麻烦。具体体现由下面的分析中可以了解到。

2.1定义时间的格式特殊局限性

必须用西门子指定的时间定时格式,这就给程序设计带来了一定困难,首先定时常数相对固定。其次,就是这样的时间常数不能用变量来替换(本身要求必须是固定值的常量),设定的时间常数只能是S5T#20MS(20毫秒),从而相应的计时器不能因条件更改而改变定时值,对于有限的计时器资源,如果计时器使用过多,必然造成浪费。对于这些计时器的状态一般不容易加以监视、状态值的传递和控制。有关的计时器软件程序段一般都不能具有通用性。

2.2时间常数的固定性

对于较宽的时间常数,比如以分钟或秒为单位的计时长度来说,问题不是很大。但对于相对时间较短的时限,可能会出现一些问题。比如,毫秒为单位的计时长度,可能出现偏差。(当然要求全部软件的运行时间的循环周期要大大小于定时的时限)在以即便在特定的固定的时间常数,也不能随便更改时间的常数值。

3、该类计时器的改进设计思路

基于这些原因,我们参考有关的DANIELIAUTOMATION的设计软件,认为可以通过设计一些通用的带参数的计时器函数块来解决这些问题。当然这些程序代码应该进行充分的优化,来保证系统实现的时事性和可靠性。过程中采用语句表来实现,这样执行速度稍快一些。

在使用时,只要使用相应的函数,给入口参数一定的常值或变量,就可以通过函数出口的返回值得到计数器的相应状态。

设计这些函数的关键在于,利用CPU的最快频率的振动信号,在PLC硬件配置中,可以找到这些信号。来进行运算,经过比较得到相关的运行状态。

4、软件实现的方法

下面是有关控制的设计代码以及相关分析,这里提供了关键程序段的解释,相关的其它软件代码,读者可以自行分析加以解决。

A#START//如果命令位为OFF,则强制时间

JCTIMI//累到预置值同时推出,返回逻辑

CLR//状态:OFF

SAVE

L#PRESET

T#ACCUM

BEU

TIMI:L#ACCUM//从上一次OB1调用开始,按照毫秒单位

L"OB1_TIME_MSEC"//从累加器里减数

-I

T#ACCUM//如果累加器<=0,

L0//那么逻辑状态设为ON

<=I//同时累加器强制为

=L0.0//零来防止负值出现

JCNOUTP//否则,这将导致

T#ACCUM//16位累加器的轮滚

OUTP:AL0.0//和错误计时器的输出

SAVE

注意,OB1_TIME_MSEC,为一字节变量,通过系统OB1的循环执行,再调用系统时钟函数(另外的软件程序块,设计相对简单,本文省去),得到的CPU扫描的间隔时间,单位是毫秒数。我们就是利用这个较为精确的时间,来计算计时器的值。实际应用中,调用函数可以实现特定的功能。按此方法,参照SimaticPLC提供的Timer,我们可以设计出与之相对的灵活使用的Timer函数。注意这个函数是不带复位功能的。

尽管S7400PLC软件如此通用,也不是面面俱到的,也存在着使用中的一些问题。我们通过不断理解其控制原理,加以自行改进,也完全可以作为通用的功能加以使用。就像上述的计时器类的函数,我们可以依此类推来设计出相应于S7400的各类计时器函数,在以后的环境中加以应用,来减少工业软件设计中的一些工作量,提高编程效率。

结束语

综上所述,在西门子S7400计时器使用的过程中,采取更好的措施来避免出现问题是非常关键的,本文总结了西门子S7400计时器使用的问题,并提出了改进措施,可供今后参考。

参考文献:

[1]王兆义主编,可编程序控制器教程北京[M].机械工业出版社2017.26

[2]沈辉,曾祖勤太阳能光伏发电技术化学工业出版社

[3]西门子设备手册.