打印
[牛人杂谈]

HMI智能串口屏应用心得

[复制链接]
2576|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
deviceplugs|  楼主 | 2016-5-16 22:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
便携式污染源监测系统,由监测平台和一个以上的便携式污染源监测终端组成;监测平台无线连接各便携式污染源监测终端。便携式污染源监测终端包括污染源检测模块、控制器、卫星通信模块、显示模块和指纹识别模块;它的检测位置方便灵活;便于分析污染源的方位和来源;明确检测记录的操作人员,进行绩效统计。
我九月份做污水处理厂PH值超标检测联动报警系统时,用的是淘晶驰的HMI屏,应用中遇到不少的问题,经过十来天的磨合,已经掌握了他的应用规律,尽量来用自己的软硬件来适应HMI屏.

当然存在一些不太完美的地方(在此声明以下,我已经用自己的软件和硬件克服了屏的不完美),所以就在网上找啊找到了迪文的屏,迪文的屏从网上不是很容易索道的。
这是我刚做的一个简单界面,如下图所示:
  
设计的界面



实际运行界面
沙发
deviceplugs|  楼主 | 2016-5-16 22:59 | 只看该作者
先说特点吧:最大的特点是所有的控件都以地址区分,大家注意了是地址(字地址,即一个地址对应两个字节的存储区),类似C51的地址指针,比如我PM2.5后面就有一个数值型变量控件,我把它的地址定义为0x0008,那我如果想让PM2.5的数值238显示在界面上,就得往0x0008地址内写入0x00EE就可以了,简单吧。并且这个地址是对应的存储空间是独占的,分给谁了就是谁的,共享了就会显示出现错。
所有的空间都是用地址来标示!!!!!!
我把它理解成双口RAM,我定义好什么地方放上什么数据或参数,那HMI屏就按照我定义好的来对外提取数据展示在界面上,当然是不同的界面需要的数据是不同的,屏会根据控件分配的地址提取相应的数据展示,我当让可以随时跟新数据,尽管跟新的数据不一定是屏幕现在需要的。这样就不会存在数据串屏等问题。

第二是,自己可以编写程序放到屏的系统了去执行,进行数据处理,数值比较,页面切换等等,就像是在屏里给你了一段程序区,你可以根据自己的需求编写程序代码,唯一的不好就是,这段代码的用汇编语言编写,汇编语言也不是标准的汇编语言,是的按厂家自定义的汇编语言编写,不过对于用过汇编语言做个项目的人来说也是很好理解和使用的,大不了不清楚的地方翻翻厂家的语句说明即可,还好我04到06年一直用汇编语言做了不少项目。下面是我做的一个简单的提取界面登录用户名和密码的一段,让大家见笑了
CALL Change_password  
  END

;===========================================================
Change_password:
  LDWR R0,0X0007       ;
  MOVXR R10,1,1   ;
  IJNE R11,5AH,Go_End ;重建密码码确认键是否按下
     
  LDWR    R0,0X0003      ;读新建密码框
        MOVXR   R10,1,2
        LDBR    R14,0,1
        OR      R14,R10,1
        OR      R14,R11,1
        OR      R14,R12,1
        OR      R14,R13,1
        IJNE    R14,0,DATA1>0   ;密码框不为0  
  
  LDWR    R0,0X0005      ;读再次输入密码框
        MOVXR   R10,1,2
        LDBR    R14,0,1
        OR      R14,R10,1
        OR      R14,R11,1
        OR      R14,R12,1
        OR      R14,R13,1
        IJNE    R14,0,DATA1>0   ;密码框不为0
  
  ;LDWR R0,0x0003  ;
  ;LDBR R240,0,10
  ;MOVXR R240,0,5  ;清空密码输入框 按键
  GOTO    Go_End
  
DATA1>0:  
  LDWR R0,0003H            
  MOVXR R20,1,2         ;将第一次输入的新密码读到R20,R21,R22,R23     
  LDWR R0,0005H
  MOVXR R30,1,2         ;将第二次输入的新密码读到R30,R31,R32,R33
  ;CJNE R20,R30,M_O_ERR ;
  ;CJNE R21,R31,M_O_ERR ;
  ;CJNE R22,R32,M_O_ERR ;
  ;CJNE R23,R33,M_O_ERR ;判断两次密码是否相同,相同则继续执行,不同则跳转
  GOTO SAVE_M
M_O_ERR:      
  LDWR R10,5   ;切换到第5页两次密码不一致。
  MOVRD R10,3,2   ;
  LDWR R0,0x0003  ;
  LDBR R240,0,10
  MOVXR R240,0,5  ;清空密码输入框 清空确认键
  GOTO Go_End
              
SAVE_M:
        LDWR R240,0x5AA5      ;文件头        
        LDBR    R242,0x0E,1      ;数据长度
        LDBR    R243,0x83,1      ;命令字
        LDWR R244,0x0003      ;数据地址
        LDBR    R246,0x05,1      ;数据字数
        LDWR R0,0x0003  ;
        MOVXR R247,1,5        ;数据
        ;LDWR R0,0x0005  ;
        ;MOVXR R244,1,2        ;
        LDWR R10,17
        COMTXD  0,R240,R11      ;
        LDWR R0,0x0003  ;
  LDBR R240,0,17
  MOVXR R240,0,5  ;清空密码输入框 按键  
  ;LDWR R10,10
        ;COMTXD  0,R240,R11      ;
  ;LDWR R10,2   ;切换到第02页
  ;MOVRD R10,3,2     
Go_End:
  RET

还有就是同样尺寸平的价格稍微便宜些比淘金吃的。

具体应用细节我们可以沟通交流,或者你有神马好的HMI屏告诉不要怜惜我啊

我还有个想法,你有什么好的想法或写的心得体会可以发给我,我很乐意为你效劳发布的,当让作者还是你啊!

使用特权

评论回复
板凳
643757107| | 2016-5-17 15:15 | 只看该作者
脸盆里用的是污水吗?能检测污水?

使用特权

评论回复
地板
稳稳の幸福| | 2016-5-17 20:54 | 只看该作者
PH值能判断是否污染吗,不能吧,污水有毒,而PH值不能代表有毒。

使用特权

评论回复
5
yiyigirl2014| | 2016-5-17 21:37 | 只看该作者
做实验的时候加点醋,加点碱面还是可以的。

使用特权

评论回复
6
neeringstu| | 2016-5-18 20:50 | 只看该作者
你这个测噪声的用的是什么样的传感器,怎么分辨是否是噪声呢

使用特权

评论回复
7
Harvard| | 2016-5-19 01:13 | 只看该作者
楼主用的好像是迪文的HMI屏幕嘛

使用特权

评论回复
8
捉虫天师| | 2016-7-30 16:34 | 只看该作者
汇编,高哦手,传感器要好。

使用特权

评论回复
9
luchen66| | 2019-1-27 13:39 | 只看该作者
这种屏还是别用在产品上了,本人用这个屏开发产品,资料上说是有自定义模式的,可真正调试的时候,自定义模式下串口刷新数据会跳动,偶尔出现刷新出错误的数据,质询他们的技术,他们的技术很吊,直接就说他们的屏在这种模式下是没法稳定工作,你说坑人不??????,500MS刷新一次数据,屏幕显示的数据都乱跳,刷新100MS一次就根本没法看了,

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

135

帖子

2

粉丝