S7-300 PLC系统时间的应用技巧
孙淑惠,黄东强(秦皇岛燕大汽车附件厂,066004
摘要:针对西门子S7-300系列PLC CPU系统时间在使用方面具有一定的难度,尤其在与TP170A触摸屏连机时,存在系统时间参数读取不正常,系统时间无法设置,系统时间无法正确实时显示等诸多问题,本文以在触摸屏上实现设置和读取CPU系统时间为例,介绍了S7-300PLC系统时间的使用技巧及其高级应用。
关键词:S7-300;触摸屏;系统时间
中图分类号TM571.6+1       文献标识码B      文章编号:1004-0420(2008)05-0019-03
Application skills of system time in S7-300 PLC
SUN Shu hui, HUANG Dong qiang  (Qinghuangdao Yanda Automotive Components CO., Ltd, 066004)
AbstractAim at the system time of Siemens S7 300 series PLC CPU, it is has some difficulty in using the system time, especially when the TP170A touch screen machines links to PLC, Includes the system time parameters cannot read normally; the system time cannot be set; the system time cannot be displayed correctly, and so on. This paper introduces how to set and read the system time on the touch screen, and some advanced application skills for S7 300 PLC as an example.
Key wordsS7-300; HMI; system time
0引言
西门子S7-300 PLC是模块化微型PLC系统,完全满足中、小规模的性能要求,以其简单的导轨安装,使得硬件维护相当方便。另外,人机界面(HMI)服务已经集成在S7-300操作系统Step7内,用户只需在人机界面(HMI)中输入数据,S7-300就会自动地按用户指定的刷新速度传送与处理这些数据。在工业生产中,时间是最为常用的参数,如设定工作的起始时间、结束时间;统计完成各生产批次的时间;设备自动关机时间;系统时间显示,试用期限设定等等。但在实际设备调试当中,系统时间经常出现问题,其中包括时间功能块难以使用、时间参数不能被识别、设定时间不能实时显示、时间参数不能被其它程序调用等等。本文利用时间功能块编程,在触摸屏TP170A上实现设置和读取CPU系统时间,并举例介绍了系统时间在设备自动化关机方面的高级应用技巧。
1  S7-300 PLC编程
1.1编程软件安装
首先在个人计算机上安装S7-300的编程软件Step7 V5.4,接着安装TP170A触摸屏编辑工具Protool pro 6.0。安装完毕后,触摸屏编辑软件开发环境将集成在Step7的工程内。
1.2建立新工程
1.2.1Step7的开发环境中新建一个工程,利用新建工程向导,在工程的模块中选择CPU313C-2DP,插入OB1模块,保存工程名。打开软件后,在Block下插入数据块,系统默认命名为DB1。首先在DB1模块中建立用于设置和读取系统时间的数据类型及其参数,如图1所示。
1 DB1数据块设置
1.2.2Symbol Editor中,定义DB1,本文中定义DB1Symboltime,地址为DB1,数据类型为DB1。其它如SFC0SFC1不需要人为定义,系统会自动定义。
1.2.3双击并打开OB1,进行系统时间设置的编程,梯形图程序如图2所示。
2设置系统时间
    html获取input输入的数据2中,当M0.0到达上升沿时,输出Q=1,程序依次执行调用系统时钟功能模块SFC0SET_CLK),将新时间数据(从触摸屏上输入)设定到PLC CPU中,紧接着复位M0.0,从而实现M0.0到达上升沿时,仅调用一次SFC0。如果不对M0.0及时复位,系统将一直调用SFC0,那样系统时间将一直不断地被设置,从而会导致时间实时刷新失败。
1.2.4编写系统读取时间的程序,如图3所示。
3读取系统时间
    3中,SFC1READ_CLK)模块前不需要增加任何其它的条件,否则可能会导致读取时间不准确或有误差现象。若不需要动态显示时间,只想看一下现在的时间,可以按照上述方法,采用执行一次读取系统时间即可。
2触摸屏界面设置
2.1配置触摸屏系统
 在先前建立的Step7工程中,插入一个新的“Object”,然后选择“SIMATICop”,系统默认命名为op1
    双击打开op1,运行触摸屏设置向导,首先到TP170A装置,再输入PLC的名字,并选择PLC类型。
    点击“Parameters”,进一步配置触摸屏的各参数。包括连接OP到网络的硬件配置,可设置为MPIRS232串口连接;设置OP参数中的界面类型为IF1B,设置OP地址为1,其它情况可根据需要自行设置。
2.2设置系统时间画面
设置两个画面,分别用于设置和显示系统时间。在设定画面时,有一个问题需要注意,那就是字体问题。因为系统默认的是英文字体,Tahoma,而且不能选择其它的。虽然也可以输入汉字,但是一旦输入到触摸屏中,就会出现乱码。
    要想解决这个难题,有两种办法解决,第一种是将需要显示的汉字,转换成图片,再导入到开发环境中。另外一种方法是,增加另外的汉字字体,如宋体。点击“System”菜单下的“Language Assignment”,点击“New”,新增加一种语言,选择“中文(中国)”,最后按“确定”,系统就会默认增加宋体。但目前只能增加宋体,不可以增加如仿宋、楷体等字体。要想解决这个问题,只能采用第一种方法。
4时间设定画面
系统时间设置窗口为“Input Field”,“确定”的类型为“StateButton”,标签设为“sure”。设置方法如图5所示。
5确定按钮设置对话框
双击“Parameters”,在打开的窗口中配置“sure”按钮,将其指向图2中的M0.0
    类似的方法,增加一个“Screen”,用于显示系统时间。触摸屏上的画面如图6所示。
6时间显示画面
系统时间显示画面可以单独使用一个画面,也可以在每个画面中引用。最后需要注意的是在触摸屏上输入系统时间的问题。一般情况下,我们采用的输入格式为年//日,或者采用国标标准为日//年,在触摸屏中,却只能采用月//年格式,否则系统不认。
3系统时间的高级应用
系统时间对于许多自动化程度高的设备,起着关键的作用,如系统需要自动关机、根据每天不同时刻,采用不同的工艺控制方案,以达到最优化效果等。系统时间的应用,能够大大地提高生产效率,降低生产成本。本文举例说明系统时间在设备自动关机的应用。梯形图程序如图7所示。
7自动关机程序
其中M10.0为允许自动关机;DT1为系统时间;DT2为设定自动关机时间;M10.1为设定时间到时的返回值;Q0.0PLC输出点,Q0.0可接到一中间继电器KA的线圈上。再由KA的常开触点分别去控制外部急停回路,延时断开时间继电器及PLC的供电回路。
程序不断地调用时间比较模块FC09EQ_DT),进行比较DT1DT2的值。当设定时间到时,首先执行返回RET_VAL值等于1,即M10.1等于1。这样Q0.0失电,KA失电,断开外部急停电路,即外部负载电路,经过短暂延时后,延时断开时间继电器动作,断开PLC供电回路,从而使得整个系统断电关机。
4结论
通过对系统时间的灵活运用,可以完成许多难以完成的工作,进一步强化了自动化设备的功能,提高了生产效率。