【Raspberry Pi 3 开发板 试用体验】农业远程温湿度监测系统

  • 农业
  • 开发
  • 静水竹林
  • LV5工程师
  • |      2017-05-13 23:10:50
  • 浏览量 1520
  • 回复:2
该设计主要是根据前面比赛上进行进一步完善得来的,为了更好的实现农业远程温湿度监测系统,将上位机运行再嵌入式板卡上更加方便,因此这里采用Qt开发,设计一个能够实现温湿度监控系统的主控程序,能够实时读取下位机采集到的温湿度数据,并对数据进行分析处理,基本功能有:定时采集,定时记录,分类查询,参数设置,异常处理。 软件功能图: 程序流程: a.加载驱动:系统会自动加载串口网络驱动。 b.创建mainwindow对象:首先定义mainwindow的一个对象。这是整个显示界面的类,里面包含整个程序运行的所有资源,在创建这个类时会先创建一个telnet类,这个类主要用于TCP/IP连接,用于下位机 网络通讯,同时会创建CSerial类,在CSerial类内打开一个串口,当采用ESP8266则通过串口转wifi实现通信。除此之外还会创建report类用于显示报警日志管理,runstate类用于显示当前采集到的信息状态,而 usermanager 主要用于上位机软件的用户管理如增添删除用户,warningset类可以用来设置温湿度报警上下限。 c.创建Temp对象:这部分是在创建一个Temp对象,在创建这个对象时还会,添加两个lineEdit对象用来输入用户名和密码,然后添加两个pushButton对象,这是两个按键一个用来当登陆按钮,一个用来清除输入的账号密码。创建完成后显示这个登陆界面。 d.进入Qt循环事件:执行完以上步骤以后程序就进入Qt循环事件,同时还有两个进程再运行,这两个进程分别是Wifi对象和串口对象创建的,用来接收串口ESP8266或是wifi发送来的数据。 e.进行事件处理:当ESP8266或是wifi对象接受到数据,然后执行他们各自的数据处理,并发出事件,该事件与mainwindow对象的一个槽函数相连接,所以会转到该事件进行执行。同时也有可能是点击按键事件,每个按键都对应一个槽函数,当点击该案件时就会转到该按键对应的槽函数去执行相应的处理。 程序流程图 项目工程代码截图 系统将采集的温湿度信息上传到上位机进行实时显示,并且可以通过阈值设置报警警戒线。当超过设定限制会产生相应的报警动作,下面对真个系统进行介绍。 系统登录界面: 系统登录时会查询是否为注册用户,通过查找user_log中用户信息来判断是否允许登录,如下图所示 系统主界面: 当系统成功登录后会显示如下主界面,该界面包括了系统的主要功能如:当前运行状态、报警控制、远程控制、记录报警日志、用户信息权限管理,通过菜单的信息进行设计,方便操作,效果如下: 运行状态: 这里状态主要指当前下位机采集到的温湿度情况,和当前的系统时间 报警控制: 这里主要通过设置温湿度的上限和下限来控制报警 远程控制: 系统采用ESP8266串口转WiFi或是wifi直连的方式进行通信,需要设置IP后进行连接访问 报警日志管理: 该部分会记录系统运行过程中,温湿度超上下限时的值以及报警时的时间等信息 84077 用户管理: 该界面可以用来新添加用户或是删除用户信息,同时可以修改用户的权限等操作 总结: 通过系统测试可以发现,项目目前已实现预先想到的功能,之前采用Windows作为运行平台,这了借助raspberry pi这块小巧的板卡,可以更加方便操作和管理,运行状态界面可以清楚查看由采集到的温湿度情况;报警部分能够控制温湿度的上下限,来控制报警;远程控制模块可以控制远程的温湿度服务器;报警日志管理模块可以查看和清空记录的报警日志;用户信息管理模块可以控制用户信息。
  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:2
chen0000009 2017-05-22
楼主很熟悉Qt啊
0   回复
举报
发布
黄莨元 2017-05-14
学习学习
0   回复
举报
发布
x
收藏成功!点击 我的收藏 查看收藏的全部帖子