- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
长时报警历史记录按天查询样例
样例满足客户如下需求
1.要求存储的时间很长,本例中为180天。
2.报警记录存储之后,可以按天查询
3.选择记录中任意几天的数据导出到U盘。
由于当前VJD软件的报警查询机制,这些功能很难直接满足。
样例实现的思路。
1.通过配方机制存储报警,每天的记录存储在一个配方中,一个配方最多可以存储1024
条记录,本例中实现的是每天最多200条记录。
本例创建了一个配方组,配方组中有180个配方,每个配方200个成分变量以存储数据。
当报警产生时,在掉电保持型数组AlarmDate1[]中添加一条报警记录,格式为“时戳+
报警消息数组索引号+报警产生还是复归标识”
2.当触摸屏检测到跨天之后,将前一天的记录数组AlarmDate1[]赋值到配方数组
AlarmDate[]中并且进行配方保存,同时在掉电保持型内部数组AlarmIndex[]中存储索
引记录,格式为“时戳+配方号”。
3.当检索报警记录时,输入查询日期,在AlarmIndex[]内部数组中检索到最接近的一条记
录,将时戳信息显示出来供确认,同时下拉菜单中列出该日期再往前的5个记录的日期,
提供选择。当点击“确定”按钮之后,从选择好的记录中提取出时戳后面记录的配方号,
从相应的配方中装载数据到配方数组AlarmDate[]中,并显示出来。
4.当执行导出功能时:同样依据查询选择显示出来的日期,在AlarmIndex[]内部数组中检
索到最接近的一条记录,导出按钮右边的输入框可以输入连续导出几天的数据,本例最
多10天。
当点击“导出”按钮后,如果选择的是10天数据,程序自动循环10次,从选择的那天
开始,往前依次从10个配方中提取数据,然后将数据一条一条的填充到记录组中,所
以本例中还创建了一个记录组,配置为2000条以存储10*200条记录数据。当10次循
环结束之后,用记录组导出的功能,在U盘中将记录组数据导出成CSV文件。
如果日期记录不足10天,当遇到空记录时,循环自动终止。
注意点:
1.由于本例的报警显示需要按颜色区分是报警产生还是复归,所以本例用到文本部件来显
示信息,而文本部件在同一时刻只能选择一种字体,当进行多语言切换时可能会遇到问
题,比如中文简体和繁体的字库是不完全一致的,所以如果文本部件字体是中文简体,
那么系统切换为繁体时,简体中文字库中没有的繁体字必然不会正常显示,但简体中文
字库中是有英文字符的,英文显示没有问题。
所以本例中使用了两组完全重叠的显示部件,一个是简体字体显示中文和英文,一个设
定为繁体字体当语言切换为繁体中文时可以正常显示。两组部件随语言的选择控制可见
或者不可见。
2.事件组用于报警导出时临时存储数据,在事件组属性中选择“SRAM文件”,SARM中记
录数一定设定为“1”。
使用本样例注意事项:
1.本样例有四个变量设定基本参数,数值是直接在变量的初始值中设定的
AlarmScriptControl.SettingNumAlarm:
系统中总共有多少个报警,本例设定为80
AlarmScriptControl.SettingNumRecord:
每天存储多少条报警记录,本例设定为200
AlarmScriptControl.SettingNumIndex
总共存储多少天的记录,本例为180
AlarmScriptControl.SettingNumLine.
报警显示框显示多少行的数据,本例为8
1如果系统中的报警数目不是80,
a.更改变量AlarmScriptControl.SettingNumAlarm的初始值
b.更改报警变量数组及标志数组AlarmPLC[]和AlarmPLCSig[]的大小
c.更改报警消息数组大小AlarmMessEn[],AlarmMessSC[],AlarmMessTC[]
您可能关注的文档
最近下载
- 湖南省张家界市慈利县2023-2024学年五年级上学期期末考试综合(道德与法治、科学)试题.docx VIP
- 机械制造技术基础 第三版答案.pdf VIP
- 喜迎建队日,争做好少年班会课件.pptx
- DBJ33T 1003-2024 住宅通信基础设施建设技术标准.docx
- 2025至2030中国氯雷他定片行业市场深度研究与战略咨询分析报告.docx VIP
- 船舶建造生产组织模式及工艺流程7.pdf VIP
- 中心卫生院整治殡葬领域乱象专项行动廉洁从业承诺书.docx VIP
- 2019销售提成管理制度方案.doc.pdf VIP
- 居家养老服务中心运营方案.docx VIP
- iN10-基本操作手册.pdf VIP
文档评论(0)