版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要随着我国城市建设的发展,在建筑照明中提出智能化照明解决方案的呼声越来越高。目前市场上的室内照明大多使用的发光体为荧光灯管,而且照度不能随环境变化而自动调节,不够智能。随着物联网技术的快速发展,IOT三层架构为设计出智能型照明方式提供了可能。本系统是基于IOT架构设计的一款新型室内照明控制系统。使用树莓派作为主控模块,系统具有办公室、走廊、电梯间三种照明区域,每个照明区域都由ESP8266终端节点、人体红外传感器或声音传感器以及LED照明电路组成。不同区域的传感器检测到人员后,其将对ESP8266发送触发信号。然后ESP8266将数据发送给树莓派。树莓派根据不同照明区域的用户设定处理数据后,对ESP8266发送数据包,ESP8266终端接收到数据包后对相应区域照明电路发出PWM信号,结合电源调节灯板亮度实现自动控制功能。用户还可通过web界面远程对所有照明区域进行点亮、熄灭或改变亮度等操作,实现手动控制功能,并且可以通过web界面查看历史状态等信息。在特殊情况下用户还可以在室内通过旋钮调节照明亮度。关键词:IOT架构;树莓派;ESP8266模块;智能控制AbstractWiththedevelopmentofurbanconstructioninourcountry,thecallforintelligentlightingsolutionsinbuildinglightingisgrowing.Atpresent,mostoftheindoorlightinginthemarketusesfluorescenttubes,andtheilluminancecannotbeadjustedautomaticallywiththechangeofenvironment,whichisnotintelligentenough.WiththerapiddevelopmentofInternetofthingstechnology,IOTthree-tierarchitectureprovidesthepossibilitytodesignintelligentlightingmode.ThissystemisanewindoorlightingcontrolsystembasedonIOTarchitecture.UsingRaspberryPiasthemaincontrolmodule,thesystemhasthreekindsoflightingareas:office,corridorandelevator.EachlightingareaiscomposedofESP8266terminalnode,humaninfraredsensororsoundsensorandLEDlightingcircuit.Whensensorsindifferentareasdetectaperson,theywillsendatriggersignaltoesp8266.Esp8266thensendsthedatatoRaspberryPi.Raspberrysendsdatapacketstoesp8266afterprocessingdataaccordingtousersettingsindifferentlightingareas,andesp8266terminalsendsPWMsignalstolightingcircuitsincorrespondingareasafterreceivingthedatapackets,andrealizestheautomaticcontrolfunctionbycombiningthepowersupplytoadjustthebrightnessoflightboard.Theusercanalsoremotelylight,extinguishorchangethebrightnessofalllightingareasthroughthewebinterfacetorealizethemanualcontrolfunction,andcanviewthehistoricalstatusandotherinformationthroughthewebinterface.Underspecialcircumstances,theusercanalsoadjusttheilluminationbrightnessthroughtheknobintheroom.Keywords:IOTarchitecture;RaspberryPi;ESP8266module;intelligentcontrol第4章系统的软件设计本章主要介绍智能照明系统的软件设计。软件设计将实现用户所需要的各种功能,而且会使系统逻辑具有相当强的分析能力,使系统稳定的工作。软件的设计应该尽量采用模块化的方式,这样能够方便后期的测试。4.1系统软件的总体设计本系统的软件设计应用主要在ESP8266开发、树莓派开发以及物联网平台上。ESP8266上的软件设计包括采集传感器信息、控制无线传输通信、控制LED照明。树莓派开发的软件都包含数据传输处理、算法处理、与物联网平台搭建连接用户交互界面。物联网平台上用户可通过网页或微信小程序访问控制界面。写字楼智能照明系统软件总体结构框图如图4-1所示。图4-1写字楼智能照明系统软件总体结构框图4.2软件开发平台的搭建和配置4.2.1树莓派系统的安装本系统选择安装的镜像为Mossbian镜像,Mossbian镜像是Hassbian镜像的中文本地化改版。并且Mossbian自带图形化操作界面和必要系统依赖文件,剔除Minecraft、Libreoffice等不常用应用,较原生Hassbian更丰富,较官方树莓派系统更精简;自带汉化版Hassbian-scripts工具包,与官方Hassbian同步,支持OTA更新,快速安装使用Homebridge、Appdaemon、Cloud9IDE等服务;自带Pypi阿里云源,npm淘宝源与Debianapt中国源,显著提升国内软件包下载速度;自带中文系统、中文输入法与中文字体,方便中国用户使用。首先需要准备烧录工具,使用烧录工具是Etcher。通过官网下载官方镜像进行安装软件。在安装过程中,树莓派使用一张16GB的SD卡,为树莓派系统的安装提供所需的存储空间。使用Etcher将官方系统烧录到SD卡之前,对SD卡进行格式化处理。下载并烧录Mossbian镜像时。由于需要使用无线网,所以在初次启动前,将SD卡接入电脑。修改根目录boot下的wpa_supplicant.conf文件,填写无线网SSID和密码:country=CN;并且由于系统SSH服务默认开启,需要确认根目录boot下是否存在名为ssh的空白文件,如无需要手动新建;SD卡系统烧录完成后将其插入树莓派的SD卡槽内,Etcher正常情况下会自动识别插入的USB设备和SD卡。插卡后便可以正常启动树莓派。镜像默认开机联网状态下将自动联网下载安装HomeAssistant。安装需要一定时间,安装成功后HomeAssistant将自动启动。初次启动后HomeAssistant后台还将会耗时一定时间下载大量文件。安装成功后,使用局域网内设备打开http://raspberryIP:8123即可进入HomeAssistant页面。之后还需要确认HomeAssistant自动安装服务是否启动,显示“inactive(dead)”表示安装脚本已经执行完毕,具体成功或失败会在反馈的日志中显示。如果安装失败,需要强制手动安装;最后确认HomeAssistant运行状态,显示“active”表示正在运行。系统默认用户名:pi,默认密码:raspberry;HomeAssistant服务用户:homeassistant,默认密码为空。配置文件夹位置:/home/homeassistant/.homeassistant/。服务名:home-assistant@homeassistant.service。最终就可以进入HomeAssistant,当与树莓派处于同一局域网时,输入树莓派ip:8123,即可进入如图4-2所示的HomeAssistant交互界面。具体系统安装步骤如图4-3所示。图4-2HomeAssistant交互界面图4-3系统安装流程图4.2.2树莓派开发环境虽然树莓派的程序最终都要在本机上运行,但是对于开发者开发便捷性来说,在系统内直接进行开发是非常不便捷的。在Windows上有很多开发软件都可以进行开发,而且可以在PC机上进行更复杂的程序模拟和相关试验。本系统的树莓派开发环境是在PC机上使用Windows系统,并且通过PyCharm集成开发环境从而方便开发者进行基于python的相关开发。后期系统的模拟工作也都将通过PC机进行,这样无需树莓派本机上复杂的开发方式就可以进行开发,最终没有问题后再将程序烧录进树莓派上。这一过程中PC机需要和树莓派同在一个路由器组成的局域网下,以便于相关开发。4.2.3NodeMCU开发环境搭建NodeMCU开发环境搭建基于Arduino编译器,版本1.6以上即可,首先需要官网下载最新的版本以补足功能,NodeMCU有一个优点也是缺点就是没有固定的IDE,需要用VisualStudio,Eclipse,Sublime等各种编辑器加上指定编译器进行开发,然而目前并没有什么所谓单步调试的方法,因此调试上主要依赖于AT指令以及串口。在安装完毕ArduinoIDE后,打开文件->首选项,在窗口中的附加开发板管理器网址界面复制“http://wechat.doit.am/package_esp8266com_index.json”网址,确定后关闭Arduino再打开。然后在菜单栏选择工具->开发板->开发板管理器,打开后等待下载平台索引,接着对搜索进行过滤一栏填写ESP8266,选择过滤后得到的唯一一个包并进行安装,安装过程会有失败的情况,需要多尝试,由于白天失败次数过多,所以选择在夜间9-11点网络使用量较低的时间进行下载。安装成功之后,将在工具->开发板菜单下将显示如图4-4所示的内容。然后使用USB线连接NodeMCU,若端口没有发现USB-UART选项,则需下载相应的驱动。电脑默认是没有CP2102USB-UART驱动,因此如果连接到电脑在端口一栏不会显示。在工具菜单进行配置。点击文件->示例,选择Blink后将打开一个LED闪烁示例,在窗口上方点击下载按钮下载到开发板上,如果成功就能看到LED灯按照程序设定进行闪烁,则代表了开发环境配置的完成。图4-4菜单界面4.3环境采集程序设计4.3.1环境采集主程序设计环境参数采集的软件设计包括初始化硬件,待延时各种传感器稳定后采集信号,ESP8266终端将数据汇总然后通过Mptt通信协议将发送到树莓派上,实现数据的采集和传输功能。流程图如图4-5所示。图4-5环境参数采集主程序流程图环境采集主程序的主要工作如下:人体红外与声音传感器采集室内有无人员情况。ESP8266终端将采集数据汇总。ESP8266终端将汇总数据上传至树莓派。4.3.2光照强度采集子程序设计光照传感器模块需要在传感器稳定的进入工作状态后再记录数据,每次数据传输都会判断采集到的模拟量数值是否正确,每次采集数据发送后传感器都会在固定时间后再次发送数据。由于发送的数据为模拟信号,需要经过单片机处理,光照强度参数采集流程图如图4-6所示。图4-6光照强度参数采集流程图4.3.3人体红外与声音参数采集子程序设计人体红外以及声音传感器模块通过检测周围环境的参数强度是否满足出发调节来进行触发。模块在环境参数强度达不到设定阈值时,传感器OUT输出高电平并判断当前区域内无人;当外界环境参数强度超过设定阈值时,传感器OUT输出低电平并判断当前区域内有人,人体红外与声音参数采集子程序流程图如图4-7所示。图4-7人体红外与声音参数采集子程序流程图4.4数据处理子程序设计本系统数据处理程序在运行的时候,首先对硬件平台进行初始化设置,并进行组网操作建立局域网,组网成功后判断主控模块是否接收到ESP8266终端上传的传感器采集汇总信息,主控模块会根据数据包的内容解析并作出对应的命令以及数据,之后将指令通过数据传输传递给ESP8266终端进行各种功能的实现,数据处理子程序流程图如下图4-8所示。图4-8数据处理子程序流程图数据处理子程序的主要工作如下:树莓派接收ESP8266终端上传的数据。树莓派对ESP8266终端上传的数据进行分析处理,并作出相应的指令。树莓派将指令数据传递给ESP8266终端。4.5照明控制程序设计本系统LED照明控制由ESP8266控制,当传感器检测到有人员进入该区域发出触发信号,ESP8266接收到触发信号根据光敏传暗器采集的光照参数,分析当前室内的光照强度,并输出相应PWM信号来调节LED照明亮度;无人员进入该区域时,判断本区域是否为走廊,不是则直接熄灭LED灯。若当前区域是走廊,则调节LED照明为10%亮度,这样满足人们对于走廊照明人性化的需求。照明控制程序流程图如图4-9所示。图4-9照明控制程序流程图照明控制程序的主要工作如下:ESP8266终端接收树莓派发送的指令数据。ESP8266终端根据当前室内照明强度调节LED照明亮度。若当前照明区域为走廊则在无人时将LED照明亮度调整为10%亮度。4.6交互界面的设计4.6.1B/S架构本系统采用B/S架构设计,即浏览器/服务器结构。它是C/S架构的一种改进,可以说属于三层C/S架构。主要是利用了不断成熟的WWW浏览器技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。B/S架构图如图4-10所示。图4-10B/S架构图第一层浏览器,即客户端,由于客户不需要安装客户端,只需浏览器就能上网浏览。客户端进行输入输出功能,并处理少部分的事务逻辑。第二层Web服务器,进行信息传送。当用户访问数据库时,会首先向Web服务器发送请求,Web服务器统一请求后会向数据库服务器发送访问数据库的请求。第三层数据库服务器,当数据库服务器收到了Web服务器的请求后,会对其进行处理,并将返回的结果发送给Web服务器,接下来,Web服务器将收到的数据结果转换为HTML文本形式发送给浏览器,此时用户打开浏览器就可以看到交互界面。4.6.2交互界面UI设计交互界面采用B/S架构,用户无需安装任何软件,系统支持大部分浏览器,如IE、Firefox等。用户在浏览器中键入地址即可访问用户界面,首先显示如图4-11所示的系统用户登陆界面,用户正确输入用户名和密码后即可成功登录,若用户名和密码其中有一项输入错误将无法登录,由于系统以web网页形式呈现给用户,任何人都可以进行访问,所以此系统为安全起见不支持用户注册,系统的用户和密码直接录入数据库中,若要让人进行登录,需将预先设定的用户名和密码告知其他用户。图4-11用户登录界面用户登录成功后即可进入系统主界面,主界面如图4-12所示。用户主界面将办公室、走廊、楼梯间等区域分开显示,在此界面可以直接控制所有区域的照明开关。同时主界面还可以显示天气信息等根据用户需求定制的信息。图4-12用户主界面点击相应区域链接进入区域控制界面,如图4-13所示办公室控制界面,在此界面可以查看历史的开关状态,并调节照明亮度。图4-13办公室控制界面用户还可以点击左侧历史图标进入如图4-14所示的历史界面,在此界面可以查看所有区域的历史状态,还可以根据用户需求定制一些功能,如室内的温度和湿度状态,在历史界面也可将这些信息汇总显示出来。图4-14历史界面4.7本章小结本章主要介绍了智能照明系统的软件设计,详细描述了软件开发平台的搭建与配置、环境采集程序设计、照明控制程序设计,最后介绍了交互界面所采用的B/S架构以及UI界面设计。第5章智能照明控制系统测试系统的测试能够发现硬件电路和软件的一些隐性问题和一些组合问题。测试过程是一个理论与实践结合的过程,也是一个逐渐完善系统功能的过程。本系统的分为硬件设计和软件设计,所以测试也是需要分开测试以检验系统功能是否实现,能否满足预期的设计要求。5.1系统硬件测试5.1.1旋钮调节LED照明测试通过对旋转旋钮调节阻值来达到调节LED照明亮度的效果,首先旋转旋钮到90%,此时LED照明亮度应达到50%。但上电以后并没有出现预期的效果,LED照明电路旋钮调节没有反应。经过对电路单独进行测试发现,电源连接本身没有存在问题,LED各个引脚电却没有接错,同时对旋钮进行检测也没有出现问题。之后通过对环境参数采集和LED照明电路之间电源连接进行分析,发现电压与预定的数值不匹配,传输到LED照明电路的电压过大数据。通过用万用表对整个电路进一步测试,因为两个模块之间手工焊接过程中的残存焊锡,使得两个电路之间发现间歇性导通,导致电压出现问题。发现电路存在的问题之后,将两个模块的供电分开单独供电,用万用表测量之后两个电源都没有问题。再次测试后,确认问题确实解决,通过三次测试获得如表5-1所示结果。—第一次测试第二次测试第三次测试旋钮旋转度数90度45度180度LED照明亮度50%25%100%表5-1旋钮调节LED照明测试5.1.2感应LED照明测试首先人体红外传感器模块进行检测,无论是否遮挡红外传感器输出的电压都没有变化,通过万用表检测红外传感器是电源接线正确,发现电源正负极是有电压,因此红外传感器安装正确。然后进行整个模块电路的检测,因为设定的对比值过高,通过调节电位器降低对比值,本模块就可以进行正常输出。测试结果为有遮挡时LED照明点亮;无遮挡时LED照明熄灭声音传感器模块测试结果正常,未出现问题。测试结果如表5-2所示。—第一次测试第二次测试第三次测试第四次测试人体永外传感器触发无触发——声音传感器——触发无触发LED照明点亮熄灭点亮熄灭表5-2感应LED照明测试5.1.3节点通信距离测试节点传输距离测试分为有遮挡物测试和无遮挡测试,测试地点为中煤龙华办公楼,其中无遮挡物测试结果如表5-3所示。—第一次测试第二次测试第三次测试遮挡物无无无通信距离55.0m46.0m47.0m表5-3无遮挡物通信距离测试有遮挡物测试为隔墙以及隔楼层测试,其有遮挡物测试结果如表5-4所示。—第一次测试第二次测试第三次测试遮挡物有有有通信距离11.0m13.0m14.0m表5-4有遮挡物通信距离测试从上述两个表中可以看到,在室内约10~40米的传输距离,节点通信的往返响应时间大是31ms,通信时间也是满足本系统要求,在关门的情况下并没有比开门情况下的通信传输距离偏差过多。测试存在的不足地方,没有对系统搭建大规模的节点网络,比如几十个节点的规模,但是在这种通信的环境下,响应时间是可以接受的。5.2系统软件测试软件测试通过用户界面控制个节点的LED照明状态。首先再夜间进行远程手动调节LED照明亮度。通过Web浏览器打开网页,并调节相应区域亮度,就可以判断设备工作是否满足预期效果。调节界面如图5-1所示,LED照明电路的工作状态对比图如图5-2所示,测试结果如表5-5所示。图5-1调节界面图图5-2LED照明电路的工作状态对比图—第一次测试第二次测试第三次测试界面调节亮度50%25%100%LED照明亮度50%25%100%表5-5界面调节LED照明亮度测试然后再对夜间自动照明进行测试,在自动照明模式下,办公室区域、走廊区域、电梯间楼梯区域在有人时自动点亮以及无人时的熄灭以及低亮状态进行演示,三个区域对比效果如图5-3、图5-4、图5-5所示。测试结果如表5-6所示。图5-3办公室的照明状态对比图图5-4走廊的照明状态对比图图5-5电梯间的照明状态对比图—人员进入人员离开办公室100%亮度熄灭走廊100%亮度10%亮度电梯间100%亮度熄灭表5-6界面调节LED照明亮度测试通过测试LED照明在夜间的工作状态,可以判断设备工作基本满足系统的预期效果。5.3本章小结本章主要介绍了本系统的测试过程,通过硬件测试和软件测试,寻找并解决了系统存在的问题,也验证了系统的的稳定性,将智能照明系统的夜间控制效果进行了测试和分析。最后对节点通信距离进行了测试,从调试结果中可以看到系统功能基本实现,满足预期的设计要求。结论近些年,随着IOT技术新兴发展,人们对于室内照明的要求越来越高,如:自动化控制、智能化管理等功能。基于IOT架构整体感知、传输可靠、智能处理的特点,非常适合用于智能室内照明的建设,更响应了国家“节能减排”、“绿色照明”的号召。室内智能照明控制系统的将会给整个社会减少大量的能源消耗,如果能够得到普及应用,也将为社会的室内智能化发展提供了平台,所以室内智能照明控制系统研究和确定具有极大的意义。本系统在了解国内外基于IOT架构的室内智能照明写字楼智能照明系统发展现状的基础上,根据人们生活中的实际需求对写字楼智能照明控制系统这一课题进行研究。结合Wi-Fi无线通信技术,树莓派嵌入式开发,物联网平台以及各种传感器和照明的智能控制,最终实现了本课题最初的设计要求,能够对根据不同区域的环境条件自动调节LED照明状态,也能通过网页或微信小程序远程调节不同区域的照明状态等。同时智能照明系统的硬件电路还具有所占面积小、功耗低等要求;软件设计上更能够方便系统后期的改善更新;最重要的是通过软件与硬件测试的结果可以看出该系统能够稳定可靠的运行。在开发该系统的主要成果如下:分析现阶段室内照明系统的特点,确立本课题智能照明系统选取树莓派作为系统的主控模块,用户可通过其进入交互界面,并且负责环境数据处理;选取ESP8266作为终端节点进行数据传输和传感器的控制。设计了写字楼智能照明控制系统,能在各区域实现指定的局域网连接,实现用户通过微信小程序、网页对LED照明进行远程控制。针对区
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 房屋装修清包合同范本
- 学校消毒合同补充协议
- 执行院长工作合同范本
- 安居架管租赁合同范本
- 承包支架工程合同范本
- 白桦林的低语公开课教案
- 化工安装工程施工安全安全培训教案(2025-2026学年)
- 章节总结❶提升结构分析能力教案
- 小学六年级语文为人民服务二教案
- 工程分部分项检验批划分方案土建部分已修改试卷教案
- 盘州市教育局机关所属事业单位2025年公开考调工作人员备考题库完整答案详解
- 辽宁省鞍山市2025-2026学年八年级上学期1月期末语文试卷
- 2025湖南常德芙蓉烟叶复烤有限责任公司招聘拟录用人员笔试历年参考题库附带答案详解
- 中央空调多联机节能施工方案
- 2026年失智症患者照护协议
- 骨科护理标准操作流程手册
- 产品推广专员培训
- DB65T 3119-2022 建筑消防设施管理规范
- 书黄筌画雀文言文课件
- 文体局非遗传承人评选方案
- 陪诊师医学知识培训总结课件
评论
0/150
提交评论