版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、. 从天空俯瞰荷兰,你会发现奇迹般的景观地面被一块块不同的田地拼凑着,由于荷兰的农业标准,其多数的田地都非常小,并且还会被喧闹的城市与郊区分割开。在荷兰核心的农业种植地,摩天大楼和制造业工厂的附近,就是马铃薯地、蔬菜大棚和猪舍。可以说,荷兰超过一半的国土都被用于了农业与园艺。当然,最显著的就是蔬菜大棚建筑群,有的大棚建筑群占地面积高达175公顷2625亩。他们就像巨型镜子一样蔓延在荷兰国土上,在的照耀下闪闪发光,到了夜晚则会从部发出光辉。. 目录TOC o 1-3 h u HYPERLINK l _Toc9495 1需求分析说明 PAGEREF _Toc9495 1 HYPERLINK l _
2、Toc7902 1.1设计背景 PAGEREF _Toc7902 1 HYPERLINK l _Toc22150 1.2组成局部 PAGEREF _Toc22150 1 HYPERLINK l _Toc12485 1.3功能需求 PAGEREF _Toc12485 1 HYPERLINK l _Toc3543 2概要设计说明 PAGEREF _Toc3543 2 HYPERLINK l _Toc9439 2.1各模块功能描述 PAGEREF _Toc9439 2 HYPERLINK l _Toc16382 2.2模块调用图 PAGEREF _Toc16382 2 HYPERLINK l _To
3、c19758 2.3系统执行流程图 PAGEREF _Toc19758 3 HYPERLINK l _Toc19556 3详细设计说明 PAGEREF _Toc19556 5 HYPERLINK l _Toc21280 3.1温湿亮度检测模块 PAGEREF _Toc21280 5 HYPERLINK l _Toc1990 3.2棚顶异物检测模块 PAGEREF _Toc1990 6 HYPERLINK l _Toc19831 3.3危险区域保护模块 PAGEREF _Toc19831 6 HYPERLINK l _Toc22252 3.4防盗监控模块 PAGEREF _Toc22252 7
4、HYPERLINK l _Toc23202 3.5蓄水罐液面高度监测模块 PAGEREF _Toc23202 8 HYPERLINK l _Toc8234 3.6火灾监控模块 PAGEREF _Toc8234 8 HYPERLINK l _Toc2760 3.7串口控制模块 PAGEREF _Toc2760 9 HYPERLINK l _Toc20931 3.8灯光控制模块 PAGEREF _Toc20931 10 HYPERLINK l _Toc32510 3.9遮阳网控制模块 PAGEREF _Toc32510 14 HYPERLINK l _Toc27828 3.10灌溉模块 PAGER
5、EF _Toc27828 15 HYPERLINK l _Toc3987 4调试分析 PAGEREF _Toc3987 17 HYPERLINK l _Toc15971 4.1终端节点与协调器之间通信测试 PAGEREF _Toc15971 17 HYPERLINK l _Toc6484 4.2协调器与开发板之间通信测试 PAGEREF _Toc6484 18 HYPERLINK l _Toc2383 5用户使用说明 PAGEREF _Toc2383 19 HYPERLINK l _Toc21032 6课程设计总结 PAGEREF _Toc21032 19. 1需求分析说明1.1设计背景智能化
6、控制系统应用到大棚种植上,利用最先进的生物模拟技术,模拟出最适合棚植物生长的环境,采用温度、湿度、CO2、光照度传感器等感知大棚的各项环境指标,并通过微机进展数据分析,由微机对棚的水帘、风机、遮阳板等设施实施监控,从而改变大棚部的生物生长环境。 智能大棚是自动化控制程序用于在温室大棚智能控制的结果: 比拟人工的控制来说,智能控制最大的好处就是能够相对恒定的控制大棚部的环境,对于环境要求比拟高的植物来说,更能防止因为人为因素而造成生产损失。 相对生产来说,将智能化控制系统应用到大棚生产以后,产量与质量比人工控制的大棚都有极大的提高,对于不同的种植品种而言,提高产量与质量相对不同,对于档次较高的经
7、济作物来说,生产效率可以提高30%以上。 相对运行本钱来的核算,对于有一定规模的种植企业来说,极大的降低了劳动力本钱,设备的投入与运行,可以完全由节约下来的劳动力本钱中核算出来,使用时间越长,光节约的劳动力本钱就是一笔巨大的利润。1.2组成局部现代化经济的迅速开展,促使了人们对机械智能化的强烈认知。现代化智能温 室也称作自动化温室,是指配备了由计算机控制的可移动天窗、遮阳系统、保温、湿窗帘/风扇降温系统、喷滴灌系统或滴灌系统、移动苗床等自动化设施,基于农业温室环境的高科技智能温室。智能温室的控制一般由信号采集系统、中心计算机、控制系统三大局部组成。1.3功能需求对大棚温度、湿度、光照情况等根本
8、信息的采集并显示。实现灌溉远程化、自动化,大大节省人力本钱。对大棚整体构造情况的监测、火灾等突发事件的检测并发出警报。实现大棚灯等根本电器的远程化、自动化控制,使系统更加智能,用户体验感更好。实现遮阳网等蔬菜保护机制的远程化、自动化控制。6对于监测到的大棚的各种信息输出到客户端的显示屏上。2概要设计说明2.1各模块功能描述主函数模块:初始化系统界面,调用各个模块实现各种功能。协调器模块:接收各个节点发送的数据并通过串口进展转发到客户端,通过串口接收客户端发送的指令并转发给各个节点。温、湿、亮度监测模块:使用温湿度光电传感模块对智慧农业大棚的温度、湿度、亮度进展监测并实时显示到控制系统界面上。棚
9、顶异物监测模块:使用震动传感器模块对智慧农业大棚的棚顶进展实时监测并实时显示到控制系统界面上。危险区域保护模块:使用触摸传感器模块对存放药品等危险区域、仓库进展监测,一旦监测到有人触摸门把手,立刻在控制系统界面上给出警报。防盗监控模块:使用红外热释电传感器模块对智慧农业大棚进展实时监测,有人进入,控制系统界面立刻显示警报。蓄水罐液面高度监测模块:使用超声波测距模块对智慧农业大棚的蓄水罐中水的剩余量进展监测,实时显示在控制系统界面上。火灾监控模块:使用烟雾传感器模块对智慧农业大棚进展实时监测,一旦检测到烟雾,控制系统界面上立刻给出警报。串口控制模块:控制1串口的开启和关闭。遮阳网控制模块:使用电
10、机控制模块实现智慧农业大棚遮阳网的收起、放下、紧急停顿功能。灌溉模块:使用继电器控制模块实现开场智慧农业大棚的开场灌溉和停顿灌溉功能。灯光控制模块:使用电机控制模块的灯光局部实现对智慧农业大棚A、B、C、D四个区的灯光控制。2.2模块调用图图1.1 模块调用图2.3系统执行流程图图1.2 系统执行流程图3详细设计说明3.1温湿亮度检测模块/*mainwindow.c*/void MainWindow:updateTempHumiLig()/温湿亮度 ui-lcd_temp-display(temp_humi_light-getTemperature(); ui-lcd_humi-display
11、(temp_humi_light-getHumidity(); ui-lcd_lig-display(QString:number(temp_humi_light-getLight(), f, 1);void MainWindow:processMsgFromSerial(QByteArray msg)/协调器消息解析 if(msg.length() setValue(msg); updateTempHumiLig(); /*temp_humi_light*/void Temp_Humi_Light:setValue(QByteArray& byte) unsigned char adc_va
12、lue2; temperature = (byte5 8) + byte6; humidity = (byte7 2; light = (adc_value1*256 + adc_value0) * 3.3 / 8192; light = light / 4; light = light * 913;使用温湿度光电传感模块对智慧农业大棚的温度、湿度、亮度进展实时监测,温湿度光电传感模块把监测的信息发送给协调器,协调器把信息通过串口发送到运行着智慧农业大棚监控系统的开发板,监控系统void MainWindow:processMsgFromSerial(QByteArray msg)对接收到的信
13、息进展解析并实时显示在监控系统的界面上。3.2棚顶异物检测模块/*mainwindow.c*/振动事件 else if(msg3 = 0*03 & msg4 = 0*01) if(msg5 = 0*01) shake-setState(1); ui-label_shake-setPalette(pe_red); ui-label_shake-setTe*t(棚顶有异物); else if(msg5 = 0*00) shake-setState(0); ui-label_shake-setPalette(pe_black); ui-label_shake-setTe*t(棚顶平安); 使用震动传
14、感模快对智慧农业大棚的棚顶进展异物检测,震动传感模块不断向协调器发送消息,协调器通过串口向运行着智慧农业大棚监控系统的开发板发送消息,监控系统对消息进展解析。未检测到震动,在监控系统界面上显示棚顶平安;检测到震动,在监控系统界面上显示棚顶有异物。3.3危险区域保护模块/*mainwindow.c*/触摸模块else if(msg3 = 0*07 & msg4 = 0*01) if(msg5 = 0*01) touch-setState(1); ui-label_touch-setPalette(pe_red); ui-label_touch-setTe*t(有人进入危险区域); else if
15、(msg5 = 0*00) touch-setState(0); ui-label_touch-setPalette(pe_black); ui-label_touch-setTe*t(无人进入危险区域); 使用触摸传感模块对存放药品等危险房间进展保护,触摸模块可安装在房间门把手上。一旦有人触碰该模块,监控系统会立刻从协调器发送的消息中解析出,并显示有人进入危险区域在监控系统的界面上;没有人触碰该模块,监控系统界面上显示无人进入危险区域。3.4防盗监控模块/*mainwindow.c*/热释红外传感模块 else if(msg3 = 0*05 & msg4 = 0*01) if(msg5 =
16、0*01) infray-setState(1); ui-label_inf_ray-setPalette(pe_red); ui-label_inf_ray-setTe*t(者进入); else if(msg5 = 0*00) infray-setState(0); ui-label_inf_ray-setPalette(pe_black); ui-label_inf_ray-setTe*t(平安); 使用热释红外传感模块对智慧农业大棚进展防盗监控,热释红外传感模块通过协调器不断向智慧农业大棚监控系统发送消息,当监测到有人进入大棚时,监控系统界面上显示者进入;没有检测到周围有人时,监控系统界
17、面上显示平安。3.5蓄水罐液面高度监测模块/*mainwindow.c*/超声波测距模块 else if(msg3 = 0*08 & msg4 = 0*01) int len = 1000 - msg5 * 256 + msg6;/应用于液面检测 ui-label_ultra-setTe*t(QString:number(len); ultra-setState(len); emit addLog(msg.toHe*();使用超声波测距模块对智慧农业大棚蓄水罐液面高度进展监测,假定蓄水罐高度1000mm10m,液面高度即为1000mm减去安装在蓄水罐顶部的超声波测距模块测出的距离,并实时显示在
18、监控系统的界面上。3.6火灾监控模块/*mainwindow.c*/烟雾模块 else if(msg3 = 0*04 & msg4 = 0*01) if(msg5 = 0*01) smoke-setState(1); ui-label_fire-setPalette(pe_red); ui-label_fire-setTe*t(发生火灾); else if(msg5 = 0*00) smoke-setState(0); ui-label_fire-setPalette(pe_black); ui-label_fire-setTe*t(没有火灾); 使用烟雾模块对智慧农业大棚的火灾情况进展监测,
19、并通过协调器向智慧农业大棚监控系统发送消息。没有检测到烟雾时,监控系统界面上显示没有火灾;当检测到烟雾时,监控系统界面上显示发生火灾。3.7串口控制模块/*mainwindow.c*/void MainWindow:changeSerial(int state)/串口翻开关闭操作 /对传入的参数取反操作 if(1 = state) if(serial_server-close() ui-btn_serial-setTe*t(翻开); ui-btn_serial-setStyleSheet(BACKGROUND_COLOR_WHITE); emit addLog(closesuccess); e
20、lse emit addLog(warning!closefailed); else if(0 = state) if(serial_server-open() ui-btn_serial-setTe*t(关闭); ui-btn_serial-setStyleSheet(BACKGROUND_COLOR_GREEN); emit addLog(opensuccess); else emit addLog(warning!openfailed); 控制协调器与运行智慧农业大棚监控系统间的通信,只有在翻开串口的状态下,用户才可以通过监控系统控制各个模块。3.8灯光控制模块/*mainwindow.
21、c*/void MainWindow:on_btn_light_1_clicked()/A区灯光翻开 if(-1 = serial_server-writeToSerial(Motor:MSG_LIGHT_AON) emit addLog(warning!lightA onfailed); return; ui-btn_light_1-setStyleSheet(BACKGROUND_COLOR_GREEN); emit addLog(lightA onsuccess); lighta=1;void MainWindow:on_btn_light_5_clicked()/A区灯光关闭 if(l
22、ighta = 0) emit addLog(warning!lightA offalready); return; if(-1 = serial_server-writeToSerial(Motor:MSG_LIGHT_AOFF) emit addLog(warning!lightA offfailed); return; ui-btn_light_1-setStyleSheet(BACKGROUND_COLOR_GREEN); emit addLog(lightA offsuccess); lighta = 0;void MainWindow:on_btn_light_2_clicked(
23、)/B区灯翻开 if(-1 = serial_server-writeToSerial(Motor:MSG_LIGHT_BON) emit addLog(warning!lightB onfailed); return;ui-btn_light_2-setStyleSheet(BACKGROUND_COLOR_GREEN);emit addLog(lightB onsuccess);lightb=1;void MainWindow:on_btn_light_6_clicked()/B区灯关闭 if(lightb = 0) emit addLog(warning!lightB offalread
24、y); return; if(-1 = serial_server-writeToSerial(Motor:MSG_LIGHT_BOFF) emit addLog(warning!lightB offfailed); return; ui-btn_light_6-setStyleSheet(BACKGROUND_COLOR_GREEN); emit addLog(lightB offsuccess); lightb = 0;void MainWindow:on_btn_light_3_clicked()/c区灯翻开 if(-1 = serial_server-writeToSerial(Mot
25、or:MSG_LIGHT_CON) emit addLog(warning!lightC onfailed); return;ui-btn_light_3-setStyleSheet(BACKGROUND_COLOR_GREEN);emit addLog(lightC onsuccess);lightc=1;void MainWindow:on_btn_light_7_clicked()/c区灯关闭 if(lightc = 0) emit addLog(warning!lightC offalready); return; if(-1 = serial_server-writeToSerial
26、(Motor:MSG_LIGHT_COFF) emit addLog(warning!lightC offfailed); return; ui-btn_light_7-setStyleSheet(BACKGROUND_COLOR_GREEN);emit addLog(lightC offsuccess);lightc = 0;void MainWindow:on_btn_light_4_clicked()/D区灯翻开 if(-1 = serial_server-writeToSerial(Motor:MSG_LIGHT_DON) emit addLog(warning!lightD onfa
27、iled); return;ui-btn_light_4-setStyleSheet(BACKGROUND_COLOR_GREEN);emit addLog(lightD onsuccess);lightc=1;void MainWindow:on_btn_light_8_clicked()/D区灯关闭 if(lightd = 0) emit addLog(warning!lightD offalready); return; if(-1 = serial_server-writeToSerial(Motor:MSG_LIGHT_DOFF) emit addLog(warning!lightD
28、 offfailed); return; ui-btn_light_8-setStyleSheet(BACKGROUND_COLOR_GREEN);emit addLog(lightD offsuccess);lightd = 0;void MainWindow:on_btn_light_9_clicked()/一键翻开 on_btn_light_1_clicked(); on_btn_light_2_clicked(); on_btn_light_3_clicked(); on_btn_light_4_clicked();void MainWindow:on_btn_light_10_cli
29、cked()/一键关闭 on_btn_light_5_clicked(); on_btn_light_6_clicked(); on_btn_light_7_clicked(); on_btn_light_8_clicked();3.9遮阳网控制模块/*mainwindow.c*/void MainWindow:changeMotor(int state) if(0 = state)/电机停顿 if(-1 = serial_server-writeToSerial(Motor:MSG_MOTOR_STOP) emit addLog(warning!emergency stopfailed);
30、return; motor-setState(0); ui-btn_motor_stop-setStyleSheet(BACKGROUND_COLOR_GREEN); ui-btn_motor_b-setStyleSheet(BACKGROUND_COLOR_WHITE); ui-btn_motor_f-setStyleSheet(BACKGROUND_COLOR_WHITE); emit addLog(emergency stopsuccess); else if(1 = state)/电机正转 if(-1 = serial_server-writeToSerial(Motor:MSG_MO
31、TOR_FORE) emit addLog(warning!light cover pack upfailed); return; motor-setState(1); ui-btn_motor_f-setStyleSheet(BACKGROUND_COLOR_GREEN); ui-btn_motor_b-setStyleSheet(BACKGROUND_COLOR_WHITE); ui-btn_motor_stop-setStyleSheet(BACKGROUND_COLOR_WHITE); emit addLog(light cover pack upsuccess); else if(2
32、 = state)/电机反转 if(-1 = serial_server-writeToSerial(Motor:MSG_MOTOR_BACK) emit addLog(warning!light cover put downfailed); return; motor-setState(2); ui-btn_motor_b-setStyleSheet(BACKGROUND_COLOR_GREEN); ui-btn_motor_f-setStyleSheet(BACKGROUND_COLOR_WHITE); ui-btn_motor_stop-setStyleSheet(BACKGROUND_
33、COLOR_WHITE); emit addLog(light cover put downsuccess); 使用电机控制模块的灯光局部对智慧农业大棚的A、B、C、D四个区进展灯光控制,用户在智慧农业大棚监控系统界面上的灯光控制区通过点击开启、关闭等按钮发送控制指令,指令通过串口发送到协调器并由协调器进展播送。添加一键开灯、一件关灯按钮。3.10灌溉模块/*mainwindow.c*/void MainWindow:changeRelay(int state)/继电器模块操作 /对传入的参数取反操作 if(1 = state) if(-1 = serial_server-writeToSerial(Relays:MSG_RELAY_CLOSE) emit addLog(warning!stop irrigatefailed); return; relays-setState(0); ui-btn_relay-setStyleSheet(BACKGROUND_COLOR_WHITE); ui-btn_relay-setTe*t(开场灌
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《电路分析基 础》课件-西电第2章电路分析的基本方法
- 《大学英语听力应用教程(第1册)》课件-Unit 12 What is Intelligence
- 杭州开创非融资性担保有限公司的担保合同
- 天津航道局劳务派遣合同
- 2025年三明货运从业资格证考试题库
- 2025年太原货运资格证试题答案
- 2025年海西下载货运从业资格证模拟考试系统试题
- 2025年三亚货运从业资格证模拟考试下载
- 水电工程项目招标疑问
- 水果中心配电房施工合同
- 河北省沧州市2022-2023学年高一年级上册期末考试英语试题(解析版)
- 太常引建康中秋夜为吕叔潜赋课件
- 韩国豪华游轮7日游课件
- 高中数学成绩分析报告
- 自来水厂安全教育课件
- 关爱自己从心开始课件
- 智慧航天物联网
- RM60实用操作课件
- 2024历史建筑测绘建档规程
- 工地水电仓库管理制度
- 2024上海高校大学《辅导员》招聘考试题库及答案
评论
0/150
提交评论