智能小区环境监测系统_第1页
智能小区环境监测系统_第2页
智能小区环境监测系统_第3页
智能小区环境监测系统_第4页
智能小区环境监测系统_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

北京理工大学珠海学院2020届本科生毕业设计智能小区环境监测系统摘要20世纪末到如今社会,科学技术正在飞速发展,智能化话题也越来越突出。智能小区作为智能化的重点,已经成为了当今社会的基础设施。智能化小区系统又分多个子系统,智能家居和智能安防是其较为广为人知的两个部分。其中,环境监测是其重要的组成部分。本设计基于嵌入式技术和ZigBee技术,建立智能化小区环境监测系统。首先协调器建立ZigBee组网,终端节点根据协议加入组网;加入成功后将采集的传感数据发送给协调器,协调器分析后再将数据传给嵌入式系统,即6818开发板;开发板通过C++程序将其转化成日常生活中人们一眼就能看懂的信息,显示到开发板屏幕上。如果程序检测接收的数据数值超过了正常的范围,开发板就会发出警报,提醒用户此处危险。本系统的宗旨就是为小区用户提供安全、高效、便捷的居住环境。关键词:嵌入式;ZigBee;智能化;环境监测EnvironmentmonitoringsystemofIntelligentCommunityAbstractSincetheendofthe20thcentury,thelevelofsocialcivilizationandscienceandtechnologyisdevelopingrapidly,andthetopicofintelligenceisbecomingmoreandmoreprominentinmodernsociety.Asthefocusofintelligence,intelligentcommunityhasbecomeoneoftheinfrastructureofmodernsociety.Intelligentcommunitysystemisnotasinglesystem,itisdividedintomanysub-systems,amongwhichsmarthomeandintelligentsecurityarewellknown.Amongthem,environmentalmonitoringisanimportantpart.BasedontheembeddedtechnologyandZigBeetechnology,thedesignestablishestheintelligentcommunityenvironmentmonitoringsystem.First,thecoordinatorestablishesZigBeenetwork,andtheterminalnodejoinsthenetworkaccordingtotheprotocol;afterjoiningsuccessfully,thecollectedsensordataissenttothecoordinator,andthecoordinatoranalyzesandthentransmitsthedatatotheembeddedsystem,i.e.6818developmentboard;thedevelopmentboardtransformsitintoinformationthatpeoplecanunderstandindailylifethroughC++program,anddisplaysitonthedevelopmentboardscreen.Iftheprogramdetectsthatthereceiveddatavalueexceedsthenormalrange,thedevelopmentboardwillgiveanalarmtoremindtheuserofthedanger.Thepurposeofthissystemistoprovidesafe,efficientandconvenientlivingenvironmentforcommunityusers.Keywords:Embedded;ZigBee;Intelligent;Environmentalmonitoring目录TOC\o"1-3"\h\u1前言 谢辞毕业设计完成了,也就意味着我们即将毕业了。光阴如梭,回想大一当年,刚进学校时虽然茫然,却很兴奋能够接触新的事物,结识新的朋友。四年大学生活就要结束了,首先,我要感谢那些战斗在疫情前线的医护人员、志愿者以及各行各业的工作人员,你们舍弃与家人亲友团聚的美好时光,肩负起抗击疫情的神圣使命,勇做“最美逆行者”,筑牢了守护人民健康的防护线。在此,向奋战在抗击新冠肺炎前线的工作人员致敬!其次我要感谢我的老师们,谢谢你们四年的陪伴和帮助,在我困惑的时候指引我,在我不懂事的时候教导我,是你们在我遇到困难的时候帮助我、鼓励我,给予我奋斗下去的动力。接着我要感谢我的同学们,我们一起学习、一起聊天,学习上给了我很大的帮助,和你们待在一起让我受益匪浅,祝你们都能找到心仪的工作。接下来我要感谢我的舍友们,四年的大学时光,我们曾一起欢笑、打闹,生日的时候一起庆生,难过的时候互相安慰。当然,我们也有吵架的时候,但吵过之后又会和好如初,一直以来你们无论在生活上还是在学习上,都给了我很大的帮助,我们互相鼓励,一起进步,彼此包容,你们就像我的家人一样。最后我要感谢我的毕设老师,是他在我做毕设期间给予我指导,帮助我克服难题,成功完成毕业设计。再次感谢舍友、同学、老师们,与你们相遇是我的幸运,和你们一起的时光是我珍贵的回忆。祝你们身体健康、全家幸福!附录附录1主要代码程序源代码1、温湿度模块功能代码unsignedcharDHT11_ReadByte(void){ unsignedcharbit_value; unsignedcharvalue=0; unsignedcharcount; for(count=0;count<8;count++) { if(!DHT11) { while(!DHT11);//等待低半周期过去 Delay_10us(); Delay_10us(); Delay_10us(); if(DHT11)//判断是0还是1 bit_value=1; else bit_value=0; } value<<=1; value|=bit_value; while(DHT11); } returnvalue;}//读取温湿度数据voidDHT11_Read(unsignedchar*pTemp,unsignedchar*pHum){//设置P0_4输出P0SEL&=~(0x1<<4);P0DIR|=(0x1<<4);//CC2530主机启动读写信号DHT11=0;//拉低Delay_ms(19);//保持19msDHT11=1;//拉高//设置P0_4输入P0DIR|=(0x1<<4);//等待DHT11应答while(DHT11);//DHT11响应if(!DHT11){//DHT11响应信号while(!DHT11);//等待低周期结束while(DHT11);//等待高周期结束//读取40bit数据*pHum=DHT11_ReadByte();//读取湿度的整数值DHT11_ReadByte();//读取湿度的小数值,暂不使用*pTemp=DHT11_ReadByte();//读取温度的整数值DHT11_ReadByte();//读取温度的小数值,暂不使用DHT11_ReadByte();//读取校验值,忽略DHT11=1;}}2、烟雾报警模块功能代码//中断触发终端执行点播函数一次voidSampleApp_SendPointToPointMessage(void){uint8L;inti;L=1;//有毒气P1_0=1;P1_1=1;for(i=0;i<3500;i++) MicroWait(10);P1_0=0;P1_1=0;HalUARTWrite(0,"gas\n",4);//提醒烟雾传感器在触发if(AF_DataRequest(&Point_To_Point_DstAddr, &SampleApp_epDesc, SAMPLEAPP_POINT_TO_POINT_CLUSTERID, 1, &L, &SampleApp_TransID, AF_DISCV_ROUTE, AF_DEFAULT_RADIUS)==afStatus_SUCCESS){}else{//Erroroccurredinrequesttosend.}}3、UI界面部分代码MainWindow1::MainWindow1(QWidget*parent):QMainWindow(parent),ui(newUi::MainWindow1){ui->setupUi(this);//获取当前时间定时器QTimer*timer=newQTimer(this);connect(timer,SIGNAL(timeout()),this,SLOT(read_time()));timer->start(1000);//创建http请求管理类QNetworkAccessManager*manager=newQNetworkAccessManager(this);//关联请求完毕信号connect(manager,SIGNAL(finished(QNetworkReply*)), this,SLOT(read_data(QNetworkReply*)));//发出请求manager->get(QNetworkRequest(QUrl("/api/weather/city/101280201")));//设置需要初始化的串口my_port=newQSerialPort("/dev/ttySAC1");//打开串口设备my_port->open(QIODevice::ReadWrite);//设置串口的属性my_port->setBaudRate(QSerialPort::Baud115200);//设置波特率115200my_port->setDataBits(QSerialPort::Data8);//设置数据位8位my_port->setStopBits(QSerialPort::OneStop);//设置停止位为1my_port->setParity(QSerialPort::NoParity);//无奇偶校验位my_port->setFlowControl(QSerialPort::NoFlowControl);//无数据流控制//关联可读信号connect(my_port,SIGNAL(readyRead()),this,SLOT(read_data()));}//处理ZigBee数据voidMainWindow1::read_data(){//qDebug()<<"ZigBee..."<<endl;//读取zigBee传输的数据QStringmsg=my_port->readLine();//qDebug()<<msg<<endl;if(msg.contains('T',Qt::CaseSensitive)){QByteArrayth=msg.toLocal8Bit().data();qDebug()<<th<<endl;//切割字符串QStringt=th.mid(1,2);QStringh=th.mid(4,2);ui->label_3->setText("室内湿度"+h);ui->label_13->setText("室内温度"+t);}if(msg.contains('G',Qt::CaseSensitive)){qDebug()<<"Gas..."<<endl;}}//实时时钟voidMainWindow1::read_time(){ui->lcdNumber->display(QTime::currentTime().toString());}附录2实物图

捷键与一些电脑小技巧HYPERLINKwinkey+d:

这是高手最常用的第一快捷组合键。这个快捷键组合可以将桌面上的所有窗口瞬间最小化,无论是聊天的窗口还是游戏的窗口……只要再次按下这个组合键,刚才的所有窗口都回来了,而且激活的也正是你最小化之前在使用的窗口!

--这个就是winkeywinkey+f:

不用再去移动鼠标点“开始→搜索→文件和文件夹”了,在任何状态下,只要一按winkey+f就会弹出搜索窗口。

winkey+r:

在我们的文章中,你经常会看到这样的操作提示:“点击‘开始→运行’,打开‘运行’对话框……”。其实,还有一个更简单的办法,就是按winkey+r!

alt+tab:

如果打开的窗口太多,这个组合键就非常有用了,它可以在一个窗口中显示当前打开的所有窗口的名称和图标●,选中自己希望要打开的窗口,松开这个组合键就可以了。而alt+tab+shift键则可以反向显示当前打开的窗口。

winkey+e:

当你需要打开资源管理器找文件的时候,这个快捷键会让你感觉非常“爽”!再也不用腾出一只手去摸鼠标了!

小提示:

winkey指的是键盘上刻有windows徽标的键●。winkey主要出现在104键和107键的键盘中。104键盘又称win95键盘,这种键盘在原来101键盘的左右两边、ctrl和alt键之间增加了两个windwos键和一个属性关联键。107键盘又称为win98键盘,比104键多了睡眠、唤醒、开机等电源管理键,这3个键大部分位于键盘的右上方。

再补充点

F1显示当前程序或者windows的帮助内容。

F2当你选中一个文件的话,这意味着“重命名”

F3当你在桌面上的时候是打开“查找:所有文件”对话框

F10或ALT激活当前程序的菜单栏

windows键或CTRL+ESC打开开始菜单

CTRL+ALT+DELETE在win9x中打开关闭程序对话框

DELETE删除被选择的选择项目,如果是文件,将被放入回收站

SHIFT+DELETE删除被选择的选择项目,如果是文件,将被直接删除而不是

放入回收站

CTRL+N新建一个新的文件

CTRL+O打开“打开文件”对话框

CTRL+P打开“打印”对话框

CTRL+S保存当前操作的文件

CTRL+X剪切被选择的项目到剪贴板

CTRL+INSERT或CTRL+C复制被选择的项目到剪贴板

SHIFT+INSERT或CTRL+V粘贴剪贴板中的内容到当前位置

ALT+BACKSPACE或CTRL+Z撤销上一步的操作

ALT+SHIFT+BACKSPACE重做上一步被撤销的操作

Windows键+D:最小化或恢复windows窗口

Windows键+U:打开“辅助工具管理器”

Windows键+CTRL+M重新将恢复上一项操作前窗口的大小和位置

Windows键+E打开资源管理器

Windows键+F打开“查找:所有文件”对话框

Windows键+R打开“运行”对话框

Windows键+BREAK打开“系统属性”对话框

Windows键+CTRL+F打开“查找:计算机”对话框

SHIFT+F10或鼠标右击打开当前活动项目的快捷菜单

SHIFT在放入CD的时候按下不放,可以跳过自动播放CD。在打开wo

rd的时候按下不放,可以跳过自启动的宏

ALT+F4关闭当前应用程序

ALT+SPACEBAR打开程序最左上角的菜单

ALT+TAB切换当前程序

ALT+ESC切换当前程序

ALT+ENTER将windows下运行的MSDOS窗口在窗口和全屏幕状态间切换

PRINTSCREEN将当前屏幕以图象方式拷贝到剪贴板

ALT+PRINTSCREEN将当前活动程序窗口以图象方式拷贝到剪贴板

CTRL+F4关闭当前应用程序中的当前文本(如word中)

CTRL+F6切换到当前应用程序中的下一个文本(加shift可以跳到前

一个窗口)

在IE中:

ALT+RIGHTARROW显示前一页(前进键)

ALT+LEFTARROW显示后一页(后退键)

CTRL+TAB在页面上的各框架中切换(加shift反向)

F5刷新

CTRL+F5强行刷新1.打开“我的电脑”-“工具”-“文件夹选项”-“查看”-在“显示所有文件和文件夹”选项前打勾-“确定”

2.删除以下文件夹中的内容:

x:\DocumentsandSettings\用户名\Cookies\下的所有文件(保留index文件)

x:\DocumentsandSettings\用户名\LocalSettings\Temp\下的所有文件(用户临时文件)

x:\DocumentsandSettings\用户名\LocalSettings\TemporaryInternetFiles\下的所有文件(页面文件)

x:\DocumentsandSettings\用户名\LocalSettings\History\下的所有文件(历史纪录)

x:\DocumentsandSettings\用户名\Recent\下的所有文件(最近浏览文件的快捷方式)

x:\WINDOWS\Temp\下的所有文件(临时文件)

x:\WINDOWS\ServicePackFiles(升级sp1或sp2后的备份文件)

x:\WINDOWS\DriverCache\i386下的压缩文件(驱动程序的备份文件)

x:\WINDOWS\SoftwareDistribution\download下的所有文件

3.如果对系统进行过windoesupdade升级,则删除以下文件:x:\windows\下以$u...开头的隐藏文件

4.然后对磁盘进行碎片整理,整理过程中请退出一切正在运行的程序

5.碎片整理后打开“开始”-“程序”-“附件”-“系统工具”-“系统还原”-“创建一个还原点”(最好以当时的日期作为还原点的名字)

6.打开“我的电脑”-右键点系统盘-“属性”-“磁盘清理”-“其他选项”-单击系统还原一栏里的“清理”-选择“是”-ok了

7、在各种软硬件安装妥当之后,其实XP需要更新文件的时候就很少了。删除系统备份文件吧:开始→运行→sfc.exe/purgecache近3xxM。(该命令的作用是立即清除"Windows文件保护"文件高速缓存,释放出其所占据的空间)

8、删掉\windows\system32\dllcache下dll档(减去200——300mb),这是备用的dll档,只要你已拷贝了安装文件,完全可以这样做。

9、XP会自动备份硬件的驱动程序,但在硬件的驱动安装正确后,一般变动硬件的可能性不大,所以也可以考虑将这个备份删除,文件位于\windows\drivercache\i386目录下,名称为driver.cab,你直接将它删除就可以了,通常这个文件是74M。

10、删除不用的输入法:对很多网友来说,WindowsXPt系统自带的输入法并不全部都合适自己的使用,比如IMJP8_1日文输入法、IMKR6_1韩文输入法这些输入法,如果用不着,我们可以将其删除。输入法位于\windows\ime\文件夹中,全部占用了88M的空间。

11、升级完成发现windows\多了许多类似$NtUninstallQ311889$这些目录,都干掉吧,1x-3xM

12、另外,保留着\windows\help目录下的东西对我来说是一种伤害,呵呵。。。都干掉!

13、关闭系统还原:系统还原功能使用的时间一长,就会占用大量的硬盘空间。因此有必要对其进行手工设置,以减少硬盘占用量。打开"系统属性"对话框,选择"系统还原"选项,选择"在所有驱动器上关闭系统还原"复选框以关闭系统还原。也可仅对系统所在的磁盘或分区设置还原。先选择系统所在的分区,单击"配置"按钮,在弹出的对话框中取消"关闭这个驱动器的系统还原"选项,并可设置用于系统还原的磁盘空间大小。

14、休眠功能会占用不少的硬盘空间,如果使用得少不妨将共关闭,关闭的方法是的:打开"控制面板",双击"电源选项",在弹出的"电源选项属性"对话框中选择"休眠"选项卡,取消"启用休眠"复选框。

15、卸载不常用组件:XP默认给操作系统安装了一些系统组件,而这些组件有很大一部分是你根本不可能用到的,可以在"添加/删除Windows组件"中将它们卸载。但其中有一些组件XP默认是隐藏的,在"添加/删除Windows组件"中找不到它们,这时可以这样操作:用记事本打开\windows\inf\sysoc.inf这个文件,用查找/替换功能把文件中的"hide"字符全部替换为空。这样,就把所有组件的隐藏属性都去掉了,存盘退出后再运行"添加-删除程序",就会看见多出不少你原来看不见的选项,把其中那些你用不到的组件删掉(记住存盘的时候要保存为sysoc.inf,而不是默认的sysoc.txt),如Internat信使服务、传真服务、Windowsmessenger,码表等,大约可腾出近50MB的空间。

16、清除系统临时文件:系统的临时文件一般存放在两个位置中:一个Windows安装目录下的Temp文件夹;另一个是x:\DocumentsandSettings"用户名"\LocalSettings\Temp文件夹(Y:是系统所在的分区)。这两个位置的文件均可以直接删除。

17、清除Internet临时文件:定期删除上网时产生的大量Internet临时文件,将节省大量的硬盘空间。打开IE浏览器,从"工具"菜单中选择"Internet选项",在弹出的对话框中选择"常规"选项卡,在"Internet临时文件"栏中单击"删除文件"按钮,并在弹出"删除文件"对话框,选中"删除所有脱机内容"复选框,单击"确定"按钮。

18、清除预读文件:WindowsXP的预读设置虽然可以提高系统速度,但是使用一段时间后,预读文件夹里的文件数量会变得相当庞大,导致系统搜索花费的时间变长。而且有些应用程序会产生死链接文件,更加重了系统搜索的负担。所以,应该定期删除这些预读文件。预计文件存放在WindowsXP系统文件夹的Prefetch文件夹中,该文件夹下的所有文件均可删除。

19、压缩NTFS驱动器、文件或文件夹:如果你的硬盘采用的是NTFS文件系统,空间实在紧张,还可以考虑启用NTFS的压缩功能。右击要压缩的驱动器-"属性"-"常规"-"压缩磁盘以节省磁盘空间",然后单击"确定",在"确认属性更改"中选择需要的选项。这样可以节省约20%的硬盘空间。在压缩C盘的时候,最好在安全模式下压缩,这样效果要好一些。

20、关闭华医生Dr.Watson:要关闭Dr.Watson可打开注册表编辑器,找到"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\AeDebug"分支,双击其下的Auto键值名称,将其"数值数据"改为0,最后按F5刷新使设置生效,这样就取消它的运行了。也在"开始"->"运行"中输入"drwtsn32"命令,或者"开始"->"程序"->"附件"->"系统工具"->"系统信息"->"工具"->"Dr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论