0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一种APF系统信息的显示方案 基于拓普微智能显示模块

Topway_LCD 2022-03-11 11:12 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一种APF系统信息的显示方案

基于拓普微智能显示模块

一、引言

科技的进步影响了所有产业的发展,其中电力发展速度是前所未有的,基本所有行业都需要电力支持。目前用电安全、节能、环保、经济等关键词不断被重申,这使得APF有源滤波器的应用更加普遍。

与此同时,随着APF应用广泛,市场拓展,需要面对的使用场景也更复杂。其中用户对机器的界面交互体验尤为重视。迫使我们对APF产品的交互设计有新的要求。目前接触了拓普微的智能显示模块HMT070ETD-1D,是一款高分辨率,高性能组态设计的串口屏。我们将通过该屏幕优化APF系统信息交互,提升用户体验。

二、目标

基于HMT070ETD-1D的APF系统的界面开发,我们将优化所有参数的显示,让数据更迅速、直观且准确的呈现在用户面前。不同于传统项目开发,此次设计仅针对界面交互进行优化,因此我们需要缩短常规开发周期,加快开发速度,并且有利于后续升级管理。主要实现以下目标:

1、实时显示APF各项参数的数据

在有源滤波器运行过程中,系统的运行状态以及各项参数信息需要进行实时上报供用户查阅。屏幕可以根据信息类别、重要程度,优先等级等,调整显示格式。

2、便捷交互,方便控制、切换、修改参数

用户可以通过屏幕控制切换显示APF中不同种类的参数信息,并且可以对某些参数进行设置,例如开关切换、长按赋值、滑动切换、滑动赋值、键盘输入修改等操作。

3、部分数据信息需要有图形化显示

为了给用户更直观的显示效果,屏幕可以支持将数据以柱状图、趋势曲线图、饼状图、表盘的形式显示出来。

4、支持远程数据查询,远程显示工程更新

APF系统上屏幕显示的数据信息,可以支持远程查询,或者远程控制。同时屏幕中显示工程也可以通过远程进行更新升级。


三、功能需求分析

此次设计将通过智能显示模块HMT070ETD-1D和官方提供的上位机软件SGTools。开发设计APF系统信息的显示部分。将所有界面信息显示,交互操作都集中在屏幕中实现。为了实现以上目标功能,APF系统信息显示部分有如下功能需求:

1、变量数据刷新与数据格式化显示

通过上位机开发工具SGTools,可以预先定义APF中各项参数的数字变量地址,添加数字控件到页面中进行显示。数字控件通过关联数字变量后,底层通过协议指令,将数据发送到屏幕显示。同时数字控件支持设置显示的字体类型,显示字体的大小,显示字体的颜色,格式化显示如小数点、浮点数等进行显示。示意图如下:

pYYBAGIqvAuAc7bgAAA9IBlONi4906.png

图3-1 变量数据刷新与数据格式化显示示意图

2、屏幕便捷控制与控制数据下发

智能显示模块HMT070ETD-1D自带电容触摸屏,在开发工具SGTools中,有不同功能的触摸键控件,通过添加这些控件可以在屏幕中实现相应的功能,例如切换页面、开关切换、长按赋值、滑动切换、滑动赋值、键盘输入等。触摸键进行的变量赋值,数据操作,弹出键盘(菜单)的数据输入会实时下发到串口中,供APF底层MCU判断执行对应任务。示意图如下:

pYYBAGIqvCiAOaFEAABA6dZbaKs464.png

图3-2 屏幕便捷控制与控制数据下发示意图

3、屏幕对数据的图形化显示

SGTools开发工具中,有进度条,曲线,表盘这三个我比较常用的控件。三类控件都可以在属性栏中进行显示模式的配置,进度条支持颜色模式,图标模式,图标填充模式;曲线控件支持显示点、线、顶部、底部、区域填充模式;表盘控件支持环形变色、混色、变盘指针、表盘旋转等模式。以上控件可以更直观的体现APF中的相关数据。实现方式与变量数据刷新一致。

poYBAGIqvEWAC5_PAAA6YkwOtCA380.png

图3-3 屏幕对数据的图形化显示

4、远程屏幕的数据控制与访问,工程更新升级

智能显示模块HMT070ETD-1D支持网络TCP/IP通信,在开发工具中可以定义屏幕的IP地址信息,TCP端口TFTP端口号等信息。下载到屏幕中后IP信息会自动生效,然后可以在局域网内连接相应的IP进行APF远程协议的数据交互。并且可以通过IP信息对远程屏幕进行TFTP文件上载,从而实现远程APF系统界面升级。

pYYBAGIqvHSATF_2AABKZRP7Br4964.png

图3-4 远程屏幕的数据控制与访问以及工程更新升级


四、设计实现

1、变量数据刷新与数据格式化显示

APF的系统参数信息在我们底层有相应的寄存器的进行存储,因此刷新到屏幕中的数据可以直接通过底层调用获取。定义数据指针“Buf”。

构建底层数据刷新函数“topway_value()”;

说明:函数可以根据传入的APF变量地址(Address)、参数类型(Type)、数据长度(Length)、寄存器数据指针(Buf),将信息实时通过串口刷新至屏幕对应位置进行显示。

/*******************************************************************************

* Function Name : topway_value

* Description : 刷新变量数据

* Input : Address 变量地址Type变量类型Length数据长度Buf数据指针

* Output : None

* Return : None

*******************************************************************************/

void topway_value(uint16_t Address,uint8_t Type,uint8_t Length,uint16_t *Buf)

{

uint16_t len;

if(Type == TOPWAY_VALUE_ADRESS)//16位数据地址

{

topway_buf[0] = TOPWAY_DATA_START;// AA头数据帧

topway_buf[1] = TOPWAY_VALUE_FNCCODE;// 82 功能码

topway_buf[2] = TOPWAY_PARAMETER_ID1;// 00 地址ID高8位

topway_buf[3] = TOPWAY_PARAMETER_ID0;// 08 地址ID低8位

topway_buf[4] = (Address & 0xff00) >> 8;//地址高8位

topway_buf[5] = Address & 0xff; //地址低8位

topway_buf[6] = Length;//数据长度

for(len=0;len

{ topway_buf[len + 7] = (*Buf & 0xff00) >> 8;//数据高8位

topway_buf[len + 8] = (*Buf & 0xff);//数据低8位

Buf++;

}

topway_buf[7+Length*2] = TOPWAY_DATA_END_1;//尾数据帧1:0xCC

topway_buf[8+Length*2] = TOPWAY_DATA_END_2;//尾数据帧2:0x33

topway_buf[9+Length*2] = TOPWAY_DATA_END_3;//尾数据帧3:0xC3

topway_buf[10+Length*2] = TOPWAY_DATA_END_4;//尾数据帧4:0x3C

BufPut(&topway,topway_buf,11+Length*2);

}

else if(Type == TOPWAY_VALUE_POINT)//图标地址

{

for(len=0;len

{ uint16_t Write_value = *Buf + len;

topway_buf[0] = TOPWAY_DATA_START;// AA头数据帧

topway_buf[1] = TOPWAY_VALUE_FNCCODE_1;// 3D 功能码

topway_buf[2] = TOPWAY_PARAMETER_ID1;// 00 地址ID高8位

topway_buf[3] = TOPWAY_PARAMETER_ID0;// 08 地址ID低8位

topway_buf[4] = (Address & 0xff00) >> 8;//地址高8位

topway_buf[5] = Address & 0xff; //地址低8位

topway_buf[6] = (Write_value & 0xff00) >> 8;//数据高8位

topway_buf[7] = (Write_value & 0xff);//数据低8位

topway_buf[8] = TOPWAY_DATA_END_1;//尾数据帧1:0xCC

topway_buf[9] = TOPWAY_DATA_END_2;//尾数据帧2:0x33

topway_buf[10] = TOPWAY_DATA_END_3;//尾数据帧3:0xC3

topway_buf[11] = TOPWAY_DATA_END_4;//尾数据帧4:0x3C

Address+=0x2;//取下一个地址

BufPut(&topway,topway_buf,12);

}

}

else if(Type == TOPWAY_VALUE_32BIT)//32位数据地址

{topway_buf[0] = TOPWAY_DATA_START;// AA头数据帧

topway_buf[1] = TOPWAY_VALUE_FNCCODE;// 82 功能码

topway_buf[2] = TOPWAY_PARAMETER_ID1;// 00 地址ID高8位

topway_buf[3] = TOPWAY_PARAMETER_ID0;// 08 地址ID低8位

topway_buf[4] = (Address & 0xff00) >> 8;//地址高8位

topway_buf[5] = Address & 0xff; //地址低8位

topway_buf[6] = Length/2;//数据长度

for(len=0;len

{ topway_buf[len+7] = (*Buf & 0xff);//数据低8位

Buf++;

}

topway_buf[7+Length] = TOPWAY_DATA_END_1;//尾数据帧1:0xCC

topway_buf[8+Length] = TOPWAY_DATA_END_2;// 尾数据帧2:0x33

topway_buf[9+Length] = TOPWAY_DATA_END_3;// 尾数据帧3:0xC3

topway_buf[10+Length] = TOPWAY_DATA_END_4;//尾数据帧4:0x3C

BufPut(&topway,topway_buf,11+Length);

}

}

测试屏幕数据刷新如下显示,其中有对部分参数进行格式化显示,控制字符间距。

poYBAGIqvKKATiW4AATc7UwPx1o996.png

2、屏幕便捷控制与控制数据下发

APF系统的屏幕通过触摸键进行的VP控制操作,按键信息返回操作都会下发数据到串口,因此我们需要对屏幕发出的串口数据进行甄别,获取目标数据实现APF的控制。

构建串口的协议解析函数“queue_find_cmd()”

说明:函数用于监视串口的数据接收,并将接收的信息筛选获取符合协议的指令,返回有效指令数组(buffer),供控制程序进行判断处理,执行相应功能。

/******************************************************************************

* 函数名称: queue_find_cmd

* 函数功能: 获取串口接收队列中一个完整的帧

* 输入参数: 缓存地址和大小

* 输出参数: 无

* 返 回 值: 无

*******************************************************************************/

INT16U queue_find_cmd(INT8U *buffer,INT16U buf_len)

{

INT16U cmd_size = 0;

INT8U _data = 0;

while(queue_size()>0)//判断队列是否为空

{

queue_pop(&_data);//非空则提取数据

if(cmd_index==0&&_data!=CMD_HEAD)//帧头出错,跳过

{

continue;

}

if(cmd_index

{

buffer[cmd_index++] = _data;

}

if(_data==CMD_TAIL_CC)//判断是否为0xCC

{

//如果检查0xCC成功,则下一步检查0x33 //否则重新检查

if(cmd_state==CMD_CHECK_TAIL_CC)

{

cmd_state=CMD_CHECK_TAIL_33;

}

else{cmd_state=CMD_CHECK_TAIL_CC;}

}

else if(_data==CMD_TAIL_33)

{

//如果检查0x33成功,则下一步检查0xc3 //否则重新检查

if(cmd_state==CMD_CHECK_TAIL_33)

{

cmd_state=CMD_CHECK_TAIL_C3;

}

else{cmd_state=CMD_CHECK_TAIL_CC;}

}

else if(_data==CMD_TAIL_C3)

{

//如果检查0xC3成功,则下一步检查0x3C //否则重新检查

if(cmd_state==CMD_CHECK_TAIL_C3)

{

cmd_state=CMD_CHECK_TAIL_3C;

}

else{cmd_state=CMD_CHECK_TAIL_CC;}

}

else if(_data==CMD_TAIL_3C)

{

//如果检查0x3C成功,则帧尾正确,否则重新检查

if(cmd_state==CMD_CHECK_TAIL_3C)

{

cmd_state=CMD_CHECK_TAIL_OK;

}

else{cmd_state=CMD_CHECK_TAIL_CC;}

}

else

{

cmd_state = CMD_CHECK_TAIL_CC;

}

//得到正确的一帧指令

if(cmd_state==CMD_CHECK_TAIL_OK)

{//重置标志位,返回数据长度

cmd_size = cmd_index;

cmd_state = CMD_CHECK_TAIL_CC;

cmd_index = 0;

que._head = 0;

que._tail = 0;

return cmd_size;

}

}

return 0;

}


3、屏幕对数据的图形化显示

屏幕对数据的图形化显示与数据显示实现的方式一致,主要通过底层实时刷新数据,屏幕接收变量数据后将会依据控件的属性设置显示对应效果的图形。

底层的数据刷新类似第1点。这里不作设计解析。图形化显示效果如图:

poYBAGIqvLqAJlYJAAbVggPKQ7Y060.png

图4-2 曲线显示

pYYBAGIqvMqAYN9AAAgCZGIxerk550.png

图4-3 功率状态显示


4、远程屏幕的数据控制与访问,工程更新升级

屏幕的网络IP、TCP端口、TFTP端口、网关设置如图:

poYBAGIqvPGAPhNaAArRkO1to-s409.png

图4-4 网络设置

①屏幕支持RJ45网口,可以通过该接口实现TCP/IP协议通信,网络的通信设计类似第1点的串口设计。以下不作详细解析,根据屏幕的IP信息,网络端口做以下设置。测试如图:

poYBAGIqvOaATArGAAxEzvav8mQ120.png

图4-5 TCP/IP协议通信测试


②远程文件更新测试,首先远程通过TCP/IP协议发送屏幕复位指令,让屏幕进入远程更新模式。然后通过命令行“cmd”执行tftp应用的相关上载命令,进行显示工程升级,我的测试结果如图4-6。期间工程文件传输都成功完成,在网络连接正常的情况下没有出现错误。

pYYBAGIqvPyAa3oiAAxPmxr0C9c635.png

图4-6 远程TFTP文件传输测试1

另外也可以通过拓普微官方提供的“远程升级工具”进行TFTP文件上载。测试如图:

pYYBAGIqvQWABFmUAAthjXtFX5Q892.png

图4-7 远程TFTP文件传输测试2

五、总结

智能显示模块HMT070ETD-1D显示方案综合测试下来比较顺利,期间进行的测试都能通过。图像数据显示流畅,按键反馈迅速,功能测试正常。在官方提供的上位机软件SGTools中,可以很方便的设计出数据相关的UI显示效果。上位机软件也很直观,资源栏、属性栏、控件区、工具栏、输出栏视图排布接近主流软件使用习惯,个人比较容易上手。

此次基于拓普微平台的智能模块开发还算比较成功,满足了我们开发的设计需求。并且官方提供的技术支持也非常及时,加速了我们整个项目组的开发进程。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • lcd
    lcd
    +关注

    关注

    36

    文章

    4578

    浏览量

    175800
  • HMI
    HMI
    +关注

    关注

    9

    文章

    687

    浏览量

    51531
  • 串口屏
    +关注

    关注

    8

    文章

    599

    浏览量

    39220
  • 智能模块
    +关注

    关注

    0

    文章

    32

    浏览量

    6627
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【实测分享】智能显示模块图片乱码 / 模糊?用联发科 MTK 芯片方案避坑!

    最近看到不少朋友问 “智能显示模块导入图片乱码、模糊”(比如楼上的问题),刚好我们用联发科 MTK 显示模块芯片做了
    发表于 11-27 21:49

    智能显示模块导入图片显示乱码是什么原因?显示图片模糊是为什么?

    智能显示模块导入图片显示乱码是什么原因?显示图片模糊是为什么?
    发表于 11-27 18:22

    FZH120 一种存储器交换LED显示控制的驱动芯片

    型号:FZH120 厂商:深圳市方中禾科技有限公司(Premier Chip Limited)FZH120是一种存储器交换LED显示控制的驱动芯片,可以选择多重的ROW/COM模式(32ROW
    发表于 11-20 11:40

    智能显示模块支持掉电保存数据吗?智能模块支持操作Flash吗?

    智能显示模块支持掉电保存数据吗?智能模块支持操作Flash吗?
    发表于 11-14 08:41

    智能显示模块怎么使用?使用起来方便吗?

    智能显示模块怎么使用?使用起来方便吗? 有没有什么指导手册可以查看?
    发表于 10-21 15:17

    串口智能液晶(HMT043ATA-2C),如何让modbus在液晶中循环发出报文

    串口智能液晶(HMT043ATA-2C),如何让modbus在液晶中循环发出报文
    发表于 10-18 09:43

    联科大电流扭簧端子:赋能新能源时代的电力连接革新

    在新能源产业蓬勃发展的今天,电力连接技术的可靠性直接关系到整个系统的安全与效率。联科凭借在电气连接领域的前沿技术,推出新代大电流端子扭簧产品,以突破性的性能表现重新定义行业标准,
    的头像 发表于 09-01 14:50 507次阅读
    <b class='flag-5'>拓</b><b class='flag-5'>普</b>联科大电流扭簧端子:赋能新能源时代的电力连接革新

    联科充电端子冠簧:以高性能连接技术,驱动电气化未来

    随着新能源汽车和大功率设备的快速发展,高效与可靠的电力连接已成为保障系统安全和性能的核心要素。联科基于在连接器领域的持续深耕,推出新代充电端子冠簧产品,以多项领先技术指标为高需求
    的头像 发表于 08-22 16:30 771次阅读
    <b class='flag-5'>拓</b><b class='flag-5'>普</b>联科充电端子冠簧:以高性能连接技术,驱动电气化未来

    联科大电流端子扭簧:赋能新能源时代的电力连接革新

    在新能源产业蓬勃发展的今天,电力连接技术的可靠性直接关系到整个系统的安全与效率。联科凭借在电气连接领域的前沿技术,推出新代大电流端子扭簧产品,以突破性的性能表现重新定义行业标准,
    的头像 发表于 08-15 09:54 2098次阅读
    <b class='flag-5'>拓</b><b class='flag-5'>普</b>联科大电流端子扭簧:赋能新能源时代的电力连接革新

    硅基OLED显示器:在扩展现实(XR)中的应用

    基于OLED的显示器作为一种先进的显示技术,有时被称为硅基OLED(OLEDoS),它突出了OLED技术与基于半导体(CMOS)的硅片的
    的头像 发表于 08-11 14:27 1115次阅读
    硅基OLED<b class='flag-5'>微</b><b class='flag-5'>显示</b>器:在扩展现实(XR)中的应用

    智能家居加枝添叶,华Matter over Wi-Fi模块HM-MT7201新品上市!

    推出Matter over Wi-Fi模块,助力智能家居统生态,解决设备割裂问题。
    的头像 发表于 07-23 10:53 2050次阅读
    为<b class='flag-5'>智能</b>家居加枝添叶,华<b class='flag-5'>普</b><b class='flag-5'>微</b>Matter over Wi-Fi<b class='flag-5'>模块</b>HM-MT7201新品上市!

    重新定义行业标杆:联科大电流端子的温升解决方案

    在电力传输系统中,连接器件的热稳定性是保障大电流传输安全的关键参数。传统连接器件在持续大电流工况下普遍存在热点集中、绝缘性能衰退等技术瓶颈。联科通过系统性的热力学优化和严格的验证流
    的头像 发表于 05-08 16:40 465次阅读
    重新定义行业标杆:<b class='flag-5'>拓</b><b class='flag-5'>普</b>联科大电流端子的温升解决<b class='flag-5'>方案</b>

    从精密制造到智能未来:联科202联海电子展演绎产业升级新范式

    、无线技术、嵌入式系统等核心领域,并联通智能穿戴、新能源汽车、绿色能源等热门应用场景,吸引了全球顶尖企业与行业精英齐聚上海新国际博览中心。在W4馆643展位,联科
    的头像 发表于 04-17 14:54 851次阅读
    从精密制造到<b class='flag-5'>智能</b>未来:<b class='flag-5'>拓</b><b class='flag-5'>普</b>联科202<b class='flag-5'>拓</b><b class='flag-5'>普</b>联海电子展演绎产业升级新范式

    光电推出全新ICE冰灯显示解决方案

    在户外LED显示屏领域,高亮度、高可靠性、低功耗的平衡始终是行业难题。深耕户外显示24年的齐光电,基于长期技术积累,推出全新ICE冰灯显示解决方案
    的头像 发表于 04-15 16:22 826次阅读
    齐<b class='flag-5'>普</b>光电推出全新ICE冰灯<b class='flag-5'>显示</b>解决<b class='flag-5'>方案</b>

    集团斥资2亿元成立子公司

    日前,宁波驱动有限公司(简称“驱动”)成立,注册资本2亿元,法定代表人为邬好年。
    的头像 发表于 02-08 10:22 1236次阅读