HMI文本显示器(1) 项目介绍及规划 欢迎踊跃发言交流
记得第一次接触液晶屏的时候,是大学一年级时候,因为对单片机编程感兴趣,所以在入学之后就开始翻阅大量书籍并动手实践。第一块屏是字符液晶,2行16列,当时是为了参加一个电子设计大赛,设计了一个交互式菜单。现在回过头来看,满满一屏幕的switch ,if 跳转,收获最大的大概是摸索出了嵌套状态机的界面设计方式,此是后话,当时并不知晓此种设计模式。只是觉得用什么样最舒适的方式来完成界面的交互开发。再后来便是图形液晶,
也就是大家最常见接触的12864点阵屏幕。在开发这些人机交互界面的时候,我一直在思考,为什么界面开发总是如同绣花一般繁琐细致,有没有办法简化这些操作呢。比如借助于PC上位机来完成界面的开发,很显然在效率上
高了几个等级。于是乎,在网络上查找,有没有类似这样的工具。在这个过程中,发现困惑于此的不仅仅只是我一个人,也不仅仅只是我们,连国外的工程师也同样存在这样的问题。很多人给出的方式是配置界面,生成对应的
C代码,然后编译。对于这样的方式,我一直不大满意,虽然效率已经有了很大的提升。但是有没有一种方式,就是只需要在上位机上面所见即所得,进行配置,然后下位机就可以生成对应的界面。
工作后的第一份工作,是自动化电控开发,在这期间接触到了HMI人机界面,发现这样类似的工具,达到的效果,不正是自己之前在界面开发所想要实现的吗。PC上面配置,所见即所得,大大提升了人机交互界面设计的效率。
惊喜之余,也开始琢磨这类装置的实现方式。通过长时间的摸索,终于有了些许收获。
此为前言。
现在要展开的这个项目,是文本显示器。也属于HMI的一种,不同于常见的触摸屏,它的交互以按键操作为主。要问为什么选择它,大概是因为以前做单片机久了的原因,习惯了按键输入,点阵屏幕显示。在我看来,大多数常
规的电子设备上面,可能配备的输入装置还是以按键和点阵屏幕显示为主。
文本显示器的项目整体组成如下:
主体由上下位机组成。上位机进行所见即所得的画面配置,各类控件属性配置,同时具备离线模拟,在线模拟功能,方便调试。(这一块的功能,是很多商业化的文本显示器设计软件都不具备的。)下位机进行界面解析,通信管理,与外部控制装置,如PLC,各类控制板等进行数据交互。
整体项目规划进度如下:
第一步,完成UI设计器的工作,在进行本工作时候,同时会定义出各类控件元素及其属性。
第二步,完成离线模拟功能。离线模拟功能,在UI设计器可以初步运行时候,会展开设计,离线模拟功能的大部分与硬件无关的代码,后续会直接应用到下位机端。这也是开发离线模拟的目的之一,通过上位机的便捷性,
来完成下位机逻辑代码的调试。避免了下位机不停的编译-烧写的过程。
第三步,完成在线模拟功能。在线模拟功能,相较离线模拟功能,多了通信管理等,可以在PC端模拟实际的文本显示器。即便没有文本显示器,也可以把PC当成一台文本显示器,通过串口等与外部控制装置通信交互。
在线模拟的功能,在设计到通信相关的控件元素的时候,会进行展开。也就是说上位机的几个核心模块,会根据实际进程,会交叉进行。
第四步,上位机端工作开发接近尾声时候,开展下位机的开发。包含电路设计讨论,原理图绘制,PCB Layout,外壳选型,代码编写。下位机的部分功能电路等设计,也会在上位机开发进程中,需要涉及到的时候,进行讨论。
相较其他项目,因为本项目是完成一个实际工控中使用到的装置,涉及到的知识点细节等繁多,同时要求代码质量可靠稳定,希望对此有兴趣的朋友,多参与进来交流讨论。毕竟,只有多交流沟通才能碰撞出更多思想的火花。
我看好多T12焊台上那种OLED+旋转编码器的HMI方案就挺不错的
比如正点原子的
无论是状态显示还是调节内部一些参数配置都直观 好! 我毕业后接手的第一个项目就是工业文本显示器,那会还是挺新的一个概念,现在近20年过去了,彩屏的HMI已经烂大街,运行WINCE/Linux系统的4寸彩屏可以卖300块钱。离线模拟也是标配的。也见过HMI+PLC一体机。 大致懂了,上位机配置生成代码,下位机读取文件解析代码生成文本 我给大家提供外壳,自己刻的模具,价格有优势! would you mind post the picture? 跟着大神学习,我还是停留在switch if的阶段 funnynypd 发表于 2020-6-15 07:07
would you mind post the picture?
另外一个帖子里有外壳图片,25楼!
https://www.amobbs.com/forum.php?mod=viewthread&tid=5734762&page=1#pid11378908 工作量挺大的,期待 一直想做个串口的终端。 几年前,在网上电子论坛中 看见过楼主这样的头像和名字 印象中有一篇入门级状态机 这个项目 要顶,其实这几个步骤有可能一起进行比较好 不错不错,也想搞搞 有前途的项目,强烈支持 大工程,需要考虑的很多,加油 lb0857 发表于 2020-6-15 08:31
几年前,在网上电子论坛中 看见过楼主这样的头像和名字 印象中有一篇入门级状态机 ...
网络流传的,从单片机初学者迈向单片机工程师,就是早年在学校时候写的。 做过这样的产品,可惜程序代码全丢了,界面设计拖拉拽功能是我最满意的{:lol:} 严重支持 支持一下。 支持一下。 最近用步科的比较多,应该跑的是linux,不知道有没有可以借鉴的。 lyping1987 发表于 2020-6-16 08:47
最近用步科的比较多,应该跑的是linux,不知道有没有可以借鉴的。
跑系统的应该是触摸屏,文本屏一般用不到,一般都是裸跑。 这个不错,强烈支持,目前经常使用到这种黑白屏做交互式菜单项目,每次都去修改源码调界面,实在繁琐 这个非常好,可以学习嵌入式的组态HMI设计,二进制配置文件有设计文档吗? citroen988 发表于 2020-6-16 11:26
这个非常好,可以学习嵌入式的组态HMI设计,二进制配置文件有设计文档吗? ...
后续涉及到的时候,会讲出来的。 好东西,一直在用文本显示器 最近做的一个人机交互的项目就是根据楼主回复的帖子和另外一个QT的工具改的,非常感谢! 梨花 发表于 2020-6-22 09:21
最近做的一个人机交互的项目就是根据楼主回复的帖子和另外一个QT的工具改的,非常感谢! ...
上位机也是qt?上位机编译下位机运行? 提供公共窗口功能。类似背景窗口,提高画面编程效率 规划很有条理,一步步实现吧
页:
[1]