【迪文屏】利用组态键盘实现数据录入功能——全网最详细讲解!

本文章主要实现两个功能:

1.如何制作组态键盘;

2.如何利用组态键盘实现数据录入功能。

1. 功能实现效果

实现功能:

1.在数字键盘上,输入要显示的数字,点击“确定”后,数组将会显示在屏幕要显示数字的地方,同时按键将会退出。

2.在数字键盘上,输入要显示的数字,可以点击“删除”,可以删除数字。

3.在数字键盘上,如果没有有需要输入的数字,点击“退出”,即可退出数字键盘。

功能实现效果如下视频所示。

【迪文屏】利用组态键盘实现数据录入功能演示

2. 组态键盘的制作

组态键盘制作需要迪文提供的Keyboard_UIC.exe软件按键底片(按键底片需要自己设计)。

2.1 按键底片设计的几点说明

1. 按键底片设计说明

按键底片总共需要三个组成部分,一是按键显示界面,二是按键按下显示的数字界面、三是按键按下显示界面。

如下照片所示,照片中上端的按键界面是最终显示在屏幕上的形态,下端的按键界面是按键按下时显示的界面。下端按键界面和上端按键界面完全一样,不一样之处就是按键的颜色。因为要区分按键按下时和按键未被按下两个不同的状态,所以,两者按键颜色不一样。

按键按下后显示的数组界面,这个界面的底色一定要和键盘数字显示处的底色一样!!!该界面中的第一个图标“|”表示的是光标。

2. 像素大小

按键底片的像素最好是和自己所选屏幕的分辨率一致,底片分辨率可以小一些,但是不能超过屏幕分辨率大小。

(我在这里使用的屏幕分辨是360*640的,所以按键底片的像素大小也是设置成了360*640)

2.2 利用Keyboard_UIC.exe软件制作组态按键

1.新建工程

在新建工程时,一定要选择与开发屏对应的分辨率大小。

2.添加照片

选择“添加”,将按键底片添加进去。

3.弹出按键组态设置

选择“按键定义”,将按键界面的所有按键全部框选起来并对其赋予键值,如下所示。

各按键键值:
(1)退出:0xF0
(2)删除:0xF2
(3)确认:0xF1
(4)光标:0xFF
(5)数字0-9:0x30~0x39
(6)小数点 “ . ” :0x2E
(7)+/- :0x2D

4.录入显示字符组态

选择“字符图标设置”,将要显示的字符组态全部框选起来并对其赋予和上面对应键值,如下所示。

各字符键值:
(1)退出:0xF0
(2)删除:0xF2
(3)确认:0xF1
(4)光标:0xFF
(5)数字0-9:0x30~0x39
(6)小数点 “ . ” :0x2E
(7)+/- :0x2D

注意:框选的范围大小将就是显示的大小,建议数字0~9被框住的大小、位置要一致,如果不一致,显示的时候就会出现大小不一、参差不齐的现象。

5.键盘坐标设置

(1)对齐方式设置

在这里我设置为右对齐,数字输入时就从右边显示。

(2)键盘图片区域设置

这个区域的设定关系到我们后续在屏幕上显示键盘的大小形态。

设置完成后退出,键盘图片区域会显示图片的起始坐标和终止坐标,坐标数据可以自己调整。(我使用的开发屏是360*640的分辨率,所以在设置按键显示区域,我设置水平方向宽为360,这样键盘界面显示时他的宽度将和屏幕一样宽)

(3)按压效果图片起始点设置

设置这个区域,在按键按下时,按键显示的颜色将是我们现在设置这个区域的按键颜色。

(4)录入过程显示位置设置

这个设置是一个点,设置好这个点,那么数字显示的起始位置就是从这个点开始显示。(因为我设置的是右对齐,所以这个点就在右边)

(5)剩余设置

后面剩下的三个参数不需要设置,保持默认的即可。

6.最终设置结果

7.生成UIC文件

点击保存,将生成一个UIC文件,注意这个文件的ID建议在400以后,避免存储内存空间冲突。(我命名的是400.UIC)

到此,组态按键制作全部结束!

3.利用组态键盘实现数据录入功能

要实现屏幕显示功能需要利用到DWIN DGUS.exe软件。

1.新建工程

打开DWIN DGUS.exe软件,新建一个工程。要选择和开发屏一样大小的分辨率。

2.导入底片

导入界面显示的底片。

3.配置数据变量控件

配置该控件主要是实现数据的显示。

此处需要注意两点

(1)数据对齐方式和数据显示的宽度

对齐方式中的右对齐不是框的右端,而是计算后的数据长度。数据长度 = 字体大小 * 位数。

如下这个框的宽度我设定的是放置11位数据,所以数据变量显示中的“W”的数值大小为24(字体大小)*11(位数)=308。

如此,在进行数据输入时,数据就会从这个框的最右边开始显示。

(2)变量类型

不同的变量类型对应有不同的取值范围。在按键输入时,如果超出变量的取值范围将会显示错误的数据。

注:照片中的整数位数要改为11,不是5!!!

4.配置数据录入控件

配置该控件主要是实现数据的录入,点击该区域,自动跳出数字键盘进行数据录入。

配置参数说明:

5.生成背景图

屏幕只能显示icl文件,所以我们要将我们导入的底片生成icl文件。不同显示屏的背景文件的ID号不一样,一定要将背景生成的icl文件命名为设备对应的背景ID号。

4.下载

将DWIN DGUS生成的DWIN_SET文件夹拷贝到SD中,此时这个文件夹中没有Keyboard_UIC生成的IUC文件,所以要将这个IUC文件手动拷贝到DWIN_SET,如此才能实现功能。

5.总结

到此,利用组态按键实现数据录入功能全部完成,完结撒花!

内容概要:本文提出了一种基于极端梯度提升(XGBoost)算法的光伏阵列复合故障诊断方法,并提供了完整的Python代码实现。该方法充分利用XGBoost在分类任务中的高性能优势,针对光伏系统中常见的多种复合故障(如阴影遮挡、组件老化、断路与短路等)进行精准识别与分类。通过构建合理的特征工程,结合实际运行监测数据,模型能够有效区分单一故障与多重并发故障,显著提升了诊断的准确性与鲁棒性。研究体现了数据驱动方法在新能源系统智能运维中的关键作用,展示了机器学习技术在光伏系统状态监测、故障预警与健康管理方面的广阔应用前景; 适合人群:具备一定Python编程能力及机器学习基础知识的科研人员、电气工程及相关专业的硕士/博士研究生,以及从事光伏电站运维、智能诊断系统开发的工程技术人才; 使用场景及目标:① 实现对光伏阵列多类型复合故障的自动化、高精度诊断;② 掌握XGBoost在工业故障诊断场景下的建模流程、参数调优与性能评估方法;③ 构建可推广的数据驱动型新能源设备健康管理系统,提升运维效率与系统可靠性; 阅读建议:建议读者结合所提供的Python代码,深入理解从数据预处理、特征提取、模型训练到结果可视化的完整流程,建议在实际光伏监测数据上进行迁移验证,并可进一步对比其他机器学习模型(如随机森林、SVM、深度学习网络),以优化诊断系统的泛化能力与工程适用性。
内容概要:本文围绕“【SCUC】N-1故障集+安全约束机组组合研究”展开,基于Matlab代码实现,深入探讨电力系统在N-1故障场景下的安全约束机组组合(SCUC)优化问题。研究聚焦于保障电网在单一元件故障后仍能安全稳定运行的能力,重点解决机组启停计划、出力分配与系统安全性之间的协调优化,涵盖YALMIP工具包建模、二阶锥规划(SOCP)、鲁棒优化等先进数学方法的应用。文档不仅提供完整的Matlab仿真代码和建模流程,还结合实际电网案例进行求解分析,帮助研究人员高效复现高水平学术成果。此外,文中附带丰富的科研资源列表,涵盖智能优化算法、电力系统调度、机器学习预测、路径规划等多个前沿方向,构成一个综合性科研支持体系。; 适合人群:具备一定电力系统分析基础和Matlab编程能力的研究生、高校科研人员及从事能源系统优化、电网调度等领域的工程师。; 使用场景及目标:①用于电力系统安全约束机组组合(SCUC)与安全约束经济调度(SCED)的教学与科研建模;②支撑N-1准则下的电网鲁棒性评估、故障场景构建与优化算法开发;③为撰写EI/SCI级别学术论文提供可复现的技术路线与代码支持。; 阅读建议:建议读者结合文档提供的网盘资源下载完整代码,关注公众号“荔枝科研社”获取配套资料,优先研读核心算法章节并动手运行与调试Matlab程序以深化理解,同时可参考文中列举的相关研究方向拓展课题选题与创新思路。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

单片机学习之路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值