基于Qt的食用菌栽培环境数据采集控制系统设计.docx

基于Qt的食用菌栽培环境数据采集控制系统设计.docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

?

?

基于Qt的食用菌栽培环境数据采集控制系统设计

?

?

李颖吴琦王宏坡赵新海

摘要:本文基于Qt平台开发了食用菌栽培环境数据采集控制系统,系统实时获取食用菌设施栽培菇房内的温度、CO2、湿度和光照度等参数,利用字符设备驱动程序,控制现场继电器设备,进而控制菇房内的执行设备,为食用菌的生长创造适宜的生长环境,实验测试结果表明系统运行性能稳定,操作方便,具有一定的应用前景。

关键词:Qt;环境数据;设施栽培

DOI:10.16640/j.cnki.37-1222/t.2019.02.115

食用菌是一类有机、营养、保健的绿色食品,食用菌产业已成为中国种植业中的一项重要产业。同时,作为我国大力倡导的“三色”农业中的白色农业,食用菌种植规模空前扩大,前景广阔,发展空间巨大[1]。食用菌生产的智能化与自动化对于提高单位面积的食用菌产量与质量,提高食用菌生产的经济效益,提升我国生产的食用菌的竞争力是非常重要的[2]。本文基于Qt平台设计了食用菌栽培环境数据采集控制系统,对影响食用菌生长的温度、湿度、CO2浓度、光照强度等环境因子进行采集与控制,实现食用菌栽培环境数据的实时采集与最佳生长环境条件的智能控制。

1开发环境与系统架构

图形用户界面(GraphicalUserInterface,GUI)),又称图形用户接口,是指采用图形方式显示的计算机操作用户界面[3]。目前,人机GUI界面大多都是应用微软基础类库(MicrosoftFoundationClasses,MFC)进行制作,但大量的WindowsAPI和消息机制使得其较难理解,而且模板设定了固定的结构,不方便进行编程和维护[4]。Qt是一个1991年由QtCompany开发的跨平台C++图形用户界面应用程序开发框架,Qt最大的不同就在语法结构简单清晰,面向对象的特性体现的比MFC明显[5]。Qt模块之间相互独立,并为用户提供了良好的封装库,特别是使用信号/槽机制来取代回調函数,使用起来非常方便[6]。因此,本系统基于Qt技术开发,系统的软件架构如图1所示。

食用菌栽培环境数据采集控制系统主要有以下7个功能模块:

(1)系统登录界面:使用系统之前需对用户的合法性进行验证,以此保障系统的安全性。

(2)环境采集间隔时间设定:系统的使用者可以通过此功能模块设置采集环境数据的间隔时间,以此控制采集环境数据的频率。

(3)食用菌设施栽培环境数据采集:此模块将按照系统的采集间隔时间定期采集食用菌设施栽培环境数据,并显示在系统的界面上。

(4)食用菌设施栽培条件设置:此模块可以设置食用菌设施栽培条件,包括最低温度、最高温度、最低湿度、最高湿度、开灯时长等信息。

(5)食用菌设施栽培设备控制:系统运行模式为手动的情况下,系统使用者可以通过此模块手动控制食用菌菇房内的执行设备。

(6)系统运行模式设置:系统有手动和自动两种运行模式,当系统运行模式为自动的时候,每次采集完环境数据后都会与系统运行参数比对,不符合要求的情况下会启动相应的设备自动调控食用菌菇房内的环境参数。

(7)IP地址设置:此模块主要用来设定系统通信设备的IP地址,它是一个IPV4的地址。

2系统设计

基于Qt的食用菌栽培环境数据采集控制系统是在友善之臂6410开发板的基础上进行的二次开发。该开发板支持Modbus协议查询,Socket网络传输以及底层继电器的开关控制,与上海搜博公司生产的传感器配套使用。采用232转485转换器实现与支持Modbus协议传感器的串口通信,网线直接连接到交换机。

除了以上这部分之外,模块还要与现场设备进行连接,系统采用的是I/O驱动的方式,通过6个I/O引脚控制升温、风机、降温、加湿器、循环风和LED灯。6个I/O口的分布图如图2所示。其中,采用的I/O引脚是CMOS摄像头连接的接口,只用到了11~16共6个引脚,具体对应的设备如下:11→循环风控制,12→降温控制,13→LED灯控制,14→加湿器控制,15→风机控制,16→升温控制。开启设备时,对应引脚为高电平(电压为3.3V),关断设备时,对应的引脚为低电平(电压为0V)。

3系统实现

3.1基于Qt的串口通信程序设计

ARM11内核的S3C6410嵌入式电路板的“/dev”路径下存有各种设备驱动,其中ttySAC0用于输出开发板的启动配置信息,系统中的串口对应ttySAC3设备号。

完成串口对象及函数声明,定义私有槽函数并完成信号与槽的连接。初始化串口设置(波特率、数据位等),采用Polling(轮询方式)读取串口,轮询机制的读写函数是同步执行的,可以通过创建定时器,实时读取串口的事件内容。

3.2GPIO字符设备驱动设计

GPIO驱动程序中,dev_operations_fops结构是字符设备驱动的核

您可能关注的文档

文档评论(0)

151****8293 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档