『7x24小时有问必答』
在实际工程刚开始运行的时候,我们希望在程序刚开始加载的时候就给变量赋一个初始值,并且在运行过程中我们可以对这个初始值修改后,下次上电初始值就是我们修改后的数值,这种初值保存的功能在昆仑通态的组态软件中如何来实现呢???
首先,我们要了解昆仑通态组态软件有哪几种初值保存方式
1)通过配置开启初值保存功能来实现自动初值保存
2)通过脚本函数方式来实现手动初值保存
接下来,我们将通过这两种方式进行初值保存进行组态。
方式一:配置自动保存初值功能
首先我们在实时数据库中新建一个本地变量,并命名为“A”,设置对象类型为“整数”,同时在对象定义中设置初值并开启自动保存初值功能.
这样我们就开启了自动保存初值功能,通过模拟运行我们会发现刚开始运行的时候A显示的值为11.
很多刚使用的人,在运行的时候修改后,重新断电重启后,发现修改的值没有生效还是原来的值,这种是怎么回事??
昆仑通态组态中对设置初值保存的值修改要60秒才会写入磁盘,否则还是保存上一个初值,这样是不是就明白了,60秒是关键,这样修改等待60秒后再断电重启就修改成功了。
方式二:通过脚本方式实现手动初值保存。
首先,我们在实时数据库中新建一个本地变量B,我们可以设置一个初值为1,但是不启动自动保存初值功能。
2、接下来,我们需要使用以下两个函数,他们分别是
a、!SaveSingleDataInit(DataName),设置当前值为初值。
b、!FlushDataInitValueToDisk()把所有需要保存初值的数据对象的设定初值写入磁盘。
这两个函数的工作逻辑为:函数a将当前值写入到内存当中进行缓存,在调用函数b后将缓存中的值写入到磁盘当中,这样便实现了断电数据存储的需求。
3、在用户窗口中,增加一个输入框并关联变量B,在输入框的afterwrite事件中执行以下函数脚本
4、将工程下载到触摸屏实际运行或者是在模拟器中运行,我们将B的值修改为23后马上关闭模拟器或断电重启触摸屏,我们会看到B的初始值会从1变换为23,
5、有人会问,我修改了这个,但是我要不停更新程序,需要程序按照我最原始的初值运行,总不能再手动改回去,这样多麻烦。这个时候我们就需要使用下载清除初值的功能即可恢复最原始的初值。
工程实现初值加载和修改的方法已组态完成,如有问题欢迎大家在评论区留言讨论。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码