摘要:TD400C文本显示器是西门子公司一种低成本的人机界面(HMI),能够使用户与应用程序进行交互,使用TD400C,可以查看、监视和更改应用程序固有的过程变量。TD400C可为特定的菜单以及PLC数据编辑提供密码保护,其密码是在组态时赋予的,组态一旦下载PLC中,密码无法进行修改。对于一些重要的设备或设备,为提高数据的安全性,需要不定期对密码进行动态更新。为使设备能够实现这一功能,本文提供一种思路,即在PLC中编制程序,允许设备在运行过程中对密码进行修改,从而提高设备数据的安全性。
关键词:密码设定 密码重置 文本显示器 TD400C
引言
TD400C文本显示器是西门子公司一种低成本的人机界面(HMI),能够使用户与应用程序进行交互。TD400C文本显示器的组态是通过使用组态软件STEP 7-Micro/WIN 中的“文本显示向导”来创建的,TD400C文本显示器的组态包括设备配置和报警等。配置和创建报警后创建的参数块存储在 V 存储区中,在接通电源时,TD400C 会从 S7-200 CPU 中读取参数块。如果在在配置中勾选使能密码保护选项并在密码输入框中写入密码,则文本显示器可为特定的菜单以及PLC数据编辑提供密码保护。但参数块一旦下载,运行中无法对密码进行修改,且配置中的密码保护只能对数据进行保护,对一些涉密的的页面(如配方数据画面)则无法进行保护。对于一些重要的设备或设备,为提高数据的安全性,需要用户输入密码后进入相应页面和不定期对密码进行动态更新,为使设备能够实现以上功能,可通过在在PLC中编制程序,达到禁止非授权用户使用重要画面和在运行过程中对密码进行修改,从而提高设备数据的安全性。本文使用到的TD400C文本显示器见下图。
图1 TD400C文本显示器
1文本组态
为了实现对变量、画面的保护以及对密码的重置,需要用户先在文本显示向导中进行按键配置和创建报警信息,并按照向导建议为配置分配一个大小合适且未使用的V存储区。在STEP 7 Micro/WIN组态软件中通过调用“文本显示向导”设置按键为置位动作类型,创建的报警信息包括用户欢迎画面,密码输入画面、密码重置画面、密码报错画面,工艺流程画面以及其他按用户需求创建的画面。
2程序设计
编写的程序应能够实现在密码保护状态时提示用户输入密码,在输入错误密码时进行报错、对原先的密码进行修改、密码超时保护以及对密码输入的保密功能。设备上电初始运行TD400C显示用户欢迎画面,在设备运行过程中按下面板按键,如果处于密码有效状态,则用户具有相应权限,可以进行画面切换、数据修改及密码重置。如果设备处于密码保护状态,则文本显示器会跳出密码输入画面,要求用户输入正确密码。密码输入操作中,如果用户输入密码正确,则画面跳转到需求画面;如果用户密码输入错误,则文本显示器显示密码报错画面。为了提高设备的安全性,需定期对密码进行动态更新,本文还提供了密码重置功能设计思路,通过密码重置,对原先的密码进行更新。需要进行密码更新时,按“F7”键跳出密码重置画面。在密码重置画面中,先需要用户输入原先的密码,确保当前用户具有修改密码的权限。更改密码过程中,用户需要保证两次输入的新密码相同,否则设备将报错。为了对输入的密码进行保密,所有与密码输入有关的数据地址在操作完成后会被设备重置为特定的数值,不再显示原先输入的数值。
具体的实现步骤如下:
2.1通过STEP 7 Micro/WIN对TD400C文本显示器进行组态,组态主要包括配置,屏幕和报警。配置完成后,会生成TD_CTRL及TD_ALM子程序、TD符号表和一个自动生成的特定数据存储区域。该数据块下载到CPU中会被TD400C文本显示器进行调用。在TD符号表中,定义了各个报警画面的名称,各个报警的使能位以及各数据的编辑通知位,数据编辑通知位在相应的数据被用户编辑完成后会进行置位。在对文本显示器进行配置时,设置文本显示器面板的按键按下时的动作为置位动作,该按键对应的数据位按下后保持开状态,数据位复位通过程序进行复位。本文中使用到的按键(F1&F7)对应的数据位为V57.0和V57.6,在设备内部程序中按“F1”键对应调用工艺流程画面,按“F7”键对应调用密码修改画面。当按下F1键盘时,数据位V57.0置位。若此时密码有效状态位M10.3为真(“ON”),则将数据16H80000000传送到使能数据VD46中,即将报警使能位V46.7置位,触发显示工艺流程画面,用户可以进行正常的数据监测及对变量进行修改。如果此时密码有效状态位M10.3为假(“OFF”),则将16H10000传送到使能数据VD46中,即将报警使能位V47.0置位,触发显示密码输入画面,提示操作员输入密码。在完成画面跳转后,由数据位V57.0将自身复位,恢复F1按键原先状态。
2.2在密码输入画面中,用户在密码输入变量VD2120中输入数值后,变量VD2120的编辑通知位V79.0置位。如果输入的密码有误或非超级密码(本文中假定为316),则将16H4000传送到使能数据VD46中,即将报警使能位V48.6置位,触发显示密码错误画面进行报错。如果输入值与当前密码VD2136相同或用户输入的是超级密码,则将16H80000000传送到使能数据VD46中,使报警使能位V46.7置位,触发显示工艺流程画面并将密码有效状态位M10.3置位。为了防止输入的密码被他人利用,在以上操作完成后,程序读取变量VD2120的编辑通知位V79.0的状态值,将变量VD2120的数值重置为一个特定的数值(可假定为6666)并复位变量VD2120的编辑通知位V79.0。
2.3为了防止非授权用户对变量的修改,设备应设置密码有效的超时保护。即在密码有效后10分钟内用户有权限对变量进行修改或对重要画面进行调用,超过该时间段后,设备进入密码保护状态,用户需要重新输入正确密码才能再次获得操作权限。程序中先通过读取密码有效状态位M10.3的状态值,如密码有效状态位的逻辑值为真,时间继电器T120开始进行通电延时,延时10分钟后,通过延时继电器T120的常开触点将密码有效状态位M10.3进行复位,并传送16H40000000到使能数据VD46中,将报警使能位V46.6置位,触发显示用户欢迎画面。当然,用户也可以定义功能键中的其他按键用于使M10.3复位并触发用户欢迎画面,使即时失去数据修改权限,防止他人在未输入密码的情况下(例如,在用户输入的密码超时之前)使用TD400C,此功能本文中进行赘述。
2.4为保证密码的安全性,经常对密码进行重新设置非常必要。按下TD400C文本显示器上的“F7”键,将数据位V57.6置位。通过V57.6传送16H8000到使能数据VD46中,用户不需要权限即可将画面跳转到密码重置画面。在画面中必须先输入原先的密码,确认用户具有修改密码的权限,再连续两次输入新的密码才能重新设置新的密码。当用户在密码修改变量VD2124输入完成,其编辑通知位V80.0置位后,如果输入的密码正确或输入的是超级密码,则程序将密码修改允许位M10.4置位,允许用户重置密码。为了防止输入的密码被他人利用,在以上操作完成后,程序读取变量VD2124的编辑通知位V80.0的状态值,将当前变量VD2124的数值重置为一个特定的数值(可假定为7777)并复位变量VD2124的编辑通知位V80.0。
2.5当用户在新密码变量VD2128和重复新密码变量VD2132中输入新的密码后,变量VD2132的编辑通知位V80.2置位。如果输入的新密码和重复新密码相同且用户具有密码修改权限,则设备将变量DV3132的数值传送到当前密码变量VD2136中并传送16H80000000到使能数据VD46中,将报警使能位V46.7置位,触发显示工艺流程画面。如果用户不具有密码修改权限或连续两次输入的新密码不同,则完成两次密码输入后,程序将传送16H4000到使能数据VD46中,将报警使能位V48.6置位,触发显示密码错误画面进行报错。同样的,为了防止输入的密码被他人利用,在以上操作完成后,程序将变量VD2128和变量VD2132的数值重置为一个特定的数值(可分别假定为8888和9999)并进行编辑通知位V80.2和密码修改允许位M10.4的复位。
3结束语
西门子TD400C文本显示器结合S7-200 CPU在现场小型设备中应用较多,通过对TD400C的组态及在CPU中编写密码保护和密码重置程序,对现场设备的操作数据进行有效保护,有效提高了设备运行的安全稳定性。具有密码保护及密码重置功能的设备在多个现场应用后,均获得了满意的效果。
参考文献:
[1]殷洪义 可编程序控制器选择、设计与维护 机械工业出版社 2002年
[2]S7-200可编程控制器设备手册 2004年
[3]文本显示设备TD400C用户手册 2006年
作者简介
朱海建,工程师,2001年毕业于哈尔滨理工大学,一直从事于工厂电气自动化设备的设计与改造工作。
苏州创发人力资源有限公司
论文作者:朱海建
论文发表刊物:《电力设备》2018年第27期
论文发表时间:2019/3/13
标签:密码论文; 画面论文; 数据论文; 变量论文; 用户论文; 设备论文; 文本论文; 《电力设备》2018年第27期论文;