- 1、本文档共28页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
PAGE1
PAGE1
Proficy脚本编程
脚本编程概述
脚本编程是GEProficySCADA软件中一个非常重要的功能,它允许用户在不修改核心软件代码的情况下,通过编写脚本来实现特定的控制逻辑和功能扩展。脚本编程支持多种语言,包括JavaScript、VBScript和Python。这些脚本可以在数据变化、报警触发、按钮点击等多种事件中运行,从而实现动态的控制和响应。
脚本编程的基本概念
事件驱动编程
在Proficy中,脚本编程是事件驱动的。这意味着脚本只有在特定事件发生时才会执行。常见的事件包括:
数据变化事件:当某个数据点的值发生变化时触发。
报警事件:当系统中的报警状态发生变化时触发。
按钮点击事件:当用户点击某个按钮时触发。
定时器事件:按照预设的时间间隔周期性触发。
脚本执行环境
Proficy提供了丰富的脚本执行环境,包括:
全局脚本:在整个应用程序中可用,可以在任何地方调用。
本地脚本:仅在特定的页面或对象中可用。
事件脚本:与特定事件关联,当事件发生时自动执行。
脚本语言选择
Proficy支持多种脚本语言,用户可以根据自己的喜好和项目需求选择合适的语言。常见的脚本语言包括:
JavaScript:广泛用于Web开发,语法简洁,功能强大。
VBScript:适用于Windows平台,与VBA(VisualBasicforApplications)类似。
Python:支持丰富的库和模块,适合复杂的数据处理和算法实现。
JavaScript脚本编程
数据变化事件
数据变化事件是最常用的事件之一。当某个数据点的值发生变化时,可以触发相应的脚本。以下是一个简单的JavaScript脚本示例,用于在数据点值变化时记录日志。
//当数据点Temperature的值变化时触发
functiononTagValueChanged(tagName,oldValue,newValue){
//检查数据点名称
if(tagName===Temperature){
//记录日志
Proficy.Log(Datapoint+tagName+changedfrom+oldValue+to+newValue);
//如果温度超过阈值,触发报警
if(newValue100){
Proficy.Alarm.raise(HighTemperature,Temperatureexceeded100degrees,Critical);
}
}
}
报警事件
报警事件用于在报警状态发生变化时执行特定的逻辑。以下是一个JavaScript脚本示例,用于在报警状态变为“活动”时发送电子邮件通知。
//当报警状态变为活动时触发
functiononAlarmActivated(alarmName,alarmMessage,alarmSeverity){
//检查报警名称
if(alarmName===HighTemperature){
//发送电子邮件通知
Proficy.Email.send(admin@,HighTemperatureAlarm,Thetemperaturehasexceeded100degreesandisnow+alarmMessage+severity:+alarmSeverity);
}
}
按钮点击事件
按钮点击事件用于在用户点击按钮时执行特定的逻辑。以下是一个JavaScript脚本示例,用于在用户点击按钮时弹出一个消息框。
//当按钮StartButton被点击时触发
functiononButtonClicked(buttonName){
//检查按钮名称
if(buttonName===StartButton){
//弹出消息框
Proficy.Dialog.show(StartProcess,Areyousureyouwanttostarttheprocess?,Proficy.Dialog.BUTTON_OK_CANCEL,function(result){
if(result===Proficy.Dialog.RESULT_OK){
您可能关注的文档
- 危险废物管理系统:Angelia二次开发_(4).需求分析与项目规划.docx
- 危险废物管理系统:EHS Insight二次开发_(8).废物分类与编码规范.docx
- 危险废物管理系统:EHS Insight二次开发_(20).项目管理和实施策略.docx
- 危险废物管理系统:Intelex二次开发_(15).项目管理与实施策略.docx
- SCADA软件:GE Proficy二次开发_(4).Proficy安装与配置.docx
- SCADA软件:GE Proficy二次开发_(18).Proficy最佳实践与优化.docx
- SCADA软件:Honeywell En trafficking二次开发_(10).脚本编程与功能扩展.docx
- SCADA软件:Rockwell Software二次开发_(13).编程语言与脚本技术.docx
- SCADA软件:Rockwell Software二次开发_(19).二次开发项目管理.docx
- SCADA软件:Siemens SIMATIC WinCC二次开发_(3).SIMATICWinCC软件安装与配置.docx
文档评论(0)