摘要
随着互联网的发展,物联网的时代己经到来。无线控制技术的应用已经普及到了我们生活中的各个角落。节能环保的意识也在不断的加强,隧道照明作为隧道建设的一个主要的环节,一个好的隧道照明系统不仅仅能保障隧道车辆的正常通行,减少交通事故的发生,而且当没有车辆时能自动关闭灯具减少能源的浪费。节约了隧道运营的成本。因此设计一款隧道灯光智能控制系统是非常有必要的。
本文设计了一种基于STM32主控芯片的隧道灯光远程控制系统,包括无线传感节点的硬件和软件设计。系统使用传感器采集数据,并通过无线传输方式将数据传输到协调器节点,上位机可实时显示隧道照明情况并发送控制命令,实现灯具开关控制和故障检测。硬件部分包括选取传感器、设计串口接口和选择微控制器。软件部分在IAR软件平台中设计,包括与主机通信的程序设计和处理终端传感器数据的程序设计。上位机监控界面可实时显示灯具状态、切换控制模式和调节监控频率。故障时报警并在上位机上显示,便于维护和修理,保障隧道照明安全。系统成本低廉,可组建完善的无线网络。
关键词:故障报警;远程控制;STM32单片机
ABSTRACT
With the development of the Internet, the era of the Internet of Things has arrived. The application of wireless control technology has been popularized in all corners of our lives. Awareness of energy conservation and environmental protection is also constantly strengthening, tunnel lighting as a major link of tunnel construction, a good tunnel lighting system can not only ensure the normal passage of tunnel vehicles, reduce the occurrence of traffic accidents, but also when there is no vehicle can automatically turn off the lamps to reduce energy waste. Cost savings in tunnel operation. Therefore, it is very necessary to design an intelligent control system for tunnel lighting.
In this paper, a tunnel lighting remote control system based on STM32main control chip is designed, including the hardware and software design of wireless sensor node.
The system uses sensors to collect data and transmit the data to the coordinator node through wireless transmission, and the host computer can display the tunnel lighting in real time and send control commands to realize lamp switch control and fault detection. The hardware section includes selecting sensors, designing serial interfaces, and selecting microcontrollers. The software part is designed in the IAR software platform, including programming to communicate with the host computer and programming to process terminal sensor data. The host computer monitoring interface can display the status of the luminaire in real time, switch the control mode and adjust the monitoring frequency. The alarm is alarmed and displayed on the host computer, which is convenient for maintenance and repair and ensures the safety of tunnel lighting. The system cost is low, and a complete wireless network can be formed.
Keywords: fault alarm; long-range control ; STM32microcontroller
目 录
第1章 绪论
1.1 研究目的及意义
1.2 国内外研究现状
1.3 章节安排及内容
第2章 系统总体结构
2.1设计方案
2.2功能需求分析
2.2.1技术路线:
2.2.2预期结果:
2.3总体方案设计
2.4单片机型号优势
第3章 系统的硬件部分设计
3.1系统总体设计
3.2系统的主要功能模块设计
3.2.1 光照值状况模块设计
3.2.2 显示模块设计
3.2.3 故障监测模块设计
第4章 系统的软件设计
4.1 软件主流程图
4.2光照值状况模块软件的设计
4.3显示模块软件的设计
4.4 故障监测模块软件的设计
第5章 系统测试
5.1 系统实物图
5.2自动灯光功能测试
5.3手动灯光功能测试
5.4自检功能测试
5.5电能监测测试
第6章 总结与展望
参考文献
致 谢
附 录
第1章 绪论
1.1 研究目的及意义
随着科技的飞速发展和互联网的普及,物联网时代已经到来。物联网是指将各种设备与物品通过网络连接起来,实现智能化的数据传输和信息交互,可以实现无缝衔接、高效便捷的智能化生活方式。其中,无线控制技术的应用已经普及到了我们生活的各个角落,如智能家居、智能医疗、智能物流等等,其便捷性和高效性得到了广泛的认可。[1]
随着人们环保意识的不断加强,节能减排已经成为当下的一个热门话题。隧道照明作为隧道建设的一个主要环节,其节能环保效果不容小觑。一款好的隧道照明系统不仅能够保障隧道车辆的正常通行,减少交通事故的发生,而且当没有车辆通过时,[2]能够自动关闭灯具,减少能源的浪费,节约了隧道运营的成本。因此,设计一款隧道灯光智能控制系统是非常有必要的。
智能控制系统可以实现隧道照明的自动化控制和调节,根据环境亮度的变化,智能地调节灯光亮度,达到节能环保的目的。同时,智能控制系统能及时发现故障并进行修复,提高了隧道的运行效率和安全性。因此,研发一款智能隧道照明控制系统是非常有前景和意义的。[3]
1.2 国内外研究现状
国外相比于国内,隧道照明技术发展得比较早,早在80年代,欧洲各国为了统一隧道照明设计和施工标准制定了一系列的隧道照明的标准,其中以欧洲和日本的隧道技术发展得最快,根据相应的隧道灯光照明标准,高校研究人员将理论算法与实际的照明需求相结合,研究出了一系列的隧道灯光的智能控制系统。并得到了推广使用。
2019年,冯浩瀚在《基于Zigbee的隧道灯光控制系统》文中就提到,控制程序通过接收到的信号判断隧道内有无车辆,据此判断是否打开隧道灯。对单片机编程,在单片机里设置两个计数器a、b,初始值均设为0。控制程序接收到Ai的信号为1时,计数器a加一,接收到Ai的信号为0时不进行操作;当接收到Bi的信号为1时,计数器b加一,接收到Bi的信号为0时不进行操作。[4]
2020年,徐理政在《基于深度学习的高校教室智能照明系统的研究》文中,隧道出入口放置环形车辆检测器,车辆经过检测器引起检测器内部线圈的磁场变化,从而检测器中LC 震荡电路的频率发生变化,通过信号处理模块将频率信号转化为数字信号,将数字信号传输到控制程序,控制程序根据数据判断隧道内部有无车辆行驶,并发送指令到继电器驱动电路,使继电器驱动电路开关灯光。[5]
2021年,洪远泉在《隧道灯光照明耗电分析与节能控制系统设计》文中介绍了,手动人工模式在现代照明控制中己经逐渐被淘汰,多数情况下都采用自动控制的方式。自动控制又分为实时的自动控制和分时段的自动控制。分时段的自动控制往往采用定时的方式,当到了一定的时段时,灯具会自动打开或者关闭或者调节光照的强弱程度。[6]
2020年,Li Qin、Lili Dong、Wenhai Xu在《A “vehicle in, light brightens;vehicle out, light darkens” energy-saving controlsystem of highway tunnel lighting》文章中早在20世纪60年代,就有研究人员将自动控制技术与隧道照明控制相结合,即意,法之间有名的万宝龙隧道。主要将隧道外的车流量,车速,和亮度作为参考值来实现动态的调光。从而达到即保证了隧道内的正常的照明,也减少了能源的消耗。[17]
2020年,S. D. Poppitt在《Obesity and WeightControl: Is There Lightat the End of the Tunnel?》文中产品的设计光照度检测节点的功能是测量隧道口光照的强度。本系统中使用的光照度传感器的测量范围为0~4000勒克斯,对应的输出量为0~20mA电流,使用时在其输出引脚上接一个250Ω的电阻,可将电流信号转换为0~5V的电压以便于AD转换器采样。[18]
2019年,JaeckerVera、BrozatBenedikt、Banerjee Marc、Otchwemah Robin在《Fluoroscopiccontrol allowsfor precise tunnel positioning in MPFL reconstruction》文中应用车辆检测器模块、信号处理模块、控制程序和继电器驱动电路来智能的控制隧道灯的开关,使隧道内无车辆行驶时关闭照明灯光,有车辆行驶时打开照明灯光。[19]
当今社会科学技术发展迅速,隧道的灯光控制系统发展越来越先进,并且采用智能隧道灯光控制系统可以降低能源的消耗,对于当前形式是较好的,可以促进社会的发展。
1.3 章节安排及内容
第一章绪论,主要讲解研究目的、研究意义,国内外研究现状以及章节安排。
第二章系统总体设计,讲解了设计方案、功能需求以及单片机型号的选择。
第三章系统硬件设计,介绍了系统的各个部分的硬件设计以及原理图。
第四章系统软件设计,介绍了系统的总体流程和各模块的软件设计及流程。
第五章系统测试,讲解了系统完后的实物功能演示以及测试;
第2章 系统总体结构
2.1设计方案
本系统主要可以分为两个部分:无线传感节点的硬件部分和软件部分的设计。硬件部分中采用的核心芯片为STM32。利用该芯片,能够以最小的花费,组建一个功能完善的无线网络。硬件的设计主要包括:传感器的选取,串口接口的设计,微控制器的选择。软件功能程序的设计主要是在IAR软件平台中进行的,主要包括用于与主机通信的程序设计和用于接收和处理终端传感器数据的程序设计。上位机利用平台进行设计。监控界面具有实时显示灯具状态,控制模式切换,自由监控频率调节的功能,当隧道灯具出现故障的时候能够及时报警并在上位机上进行显示,方便工作人员的日常的维护和修理,保障了隧道照明的安全。
2.2功能需求分析
2.2.1技术路线:
(1)硬件部分需要单片机STM32、光照传感器、舵机、蓝牙远程APP模块
(2)软件平台程序用keil5;
(3)画原理图用AD;
(4)编程语言用C语言;
(5)用户信息显示查看;
2.2.2预期结果:
通过对系统的布设和完善,最终完成的隧道灯光远程控制系统预期有如下成果:
上位机:
1.可切换自动模式与手动模式;
2.手动模式下,控制下位机区域灯光开启与关闭;
3.接收下位机参数,并显示,周期性记录到数据库,可查看历史记录;
4.接收到下位机发来的警告信号,上位机弹窗警告提醒管理员及时处理;
下位机:
1.自动模式:(1)系统实时监测当前隧道光照值状况,并发送上位机;(2)若亮度值小于设定值,开启灯光进行照明,反之不开启灯光;(3)根据亮度值自行开启灯光亮度,营造舒适的驾驶环境;
2.手动模式(1)受上位机控制,由管理人员确定该区域灯光是否开启;
3.自检模式:(1)若该区域灯光已开启,单灯光未点亮,发送上位机故障警告信号提示管理员及时处理;
4.电能监测(1)监测设备用电状况,并发送上位机显示;
2.3总体方案设计
第一:理论知识准备阶段,理解设计课题,认真研究课题所涉及到的内容,能够较好的掌握有关题目的知识;
第二:确定系统各个模块,理清各个模块之间的关系,收集相关得到软硬件资料;
第三:规划课题,确定系统组成结构,勾画出大体系统框架并在结构框架的基础上提出原理框图;
第四:利用软件完成硬件电路部分设计并画出各部分电路图,将系统部件通过接口电路集合在一起,并画出电路图;
第五:根据系统控制过程完成软件设计部分,绘制出主流程图;
第六:进行模拟测试,检查系统是否能够按照要求实现控制功能,整理论文。
2.4单片机型号优势
STM32可构成真正的单片机最小应用系统,缩小系统体积,增加系统的可靠性,降低系统的成本。只要程序长度小于4K,四个I/O口全部提供给用户。可用5V电压编程,而且擦写时间仅需10毫秒,仅为8751/87C51的擦除时间的百分之一,与8751/87C51的12V电压擦写相比,不易损坏器件,没有两种电源的要求,改写时不拔下芯片,适合许多嵌入式控制领域。工作电压范围宽(2.7V~6V),全静态工作,工作频率宽在0Hz~24MHz之间,比8751/87C51等51系列的6MHz~12MHz更具有灵活性,系统能快能慢。STM32芯片提供三级程序存储器加密,提供了方便灵活而可靠的硬加密手段,能完全保证程序或系统不被仿制。P0口是三态双向口,通称数据总线口,因为只有该口能直接用于对外部存储器的读/写操作。[20]
第3章 系统的硬件部分设计
3.1系统总体设计
本文设计了一种以STM32为主控芯片的隧道灯光远程控制系统设计。本系统的主要工作流程是利用传感器采集相应的数据,并采用无线传输的方式将采集的数据通传递到协调器节点,而且能在上位机的界面进行显示,能够实时了解隧道照明的情况,并能够发送相应的控制命令,通过无线网络根据实际的情况对灯具进行开关的控制,并且具有灯具故障检测功能。本系统主要可以分为两个部分:无线传感节点的硬件部分和软件部分的设计。硬件部分中采用的核心芯片为STM32。利用该芯片,能够以最小的花费,组建一个功能完善的无线网络。硬件的设计主要包括:传感器的选取,串口接口的设计,微控制器的选择。软件功能程序的设计主要是在IAR软件平台中进行的,主要包括用于与主机通信的程序设计和用于接收和处理终端传感器数据的的程序设计。上位机利用平台进行设计。监控界面具有实时显示灯具状态,控制模式切换,自由监控频率调节的功能,当隧道灯具出现故障的时候能够及时报警并在上位机上进行显示,方便工作人员的日常的维护和修理,保障了隧道照明的安全。
该系统应完成的主要功能有:
上位机:
1.可切换自动模式与手动模式;
2.手动模式下,控制下位机区域灯光开启与关闭;
3.接收下位机参数,并显示,周期性记录到数据库,可查看历史记录;
4.接收到下位机发来的警告信号,上位机弹窗警告提醒管理员及时处理;
下位机:
1.自动模式:(1)系统实时监测当前隧道光照值状况,并发送上位机;(2)若亮度值小于设定值,开启灯光进行照明,反之不开启灯光;(3)根据亮度值自行开启灯光亮度,营造舒适的驾驶环境;
2.手动模式(1)受上位机控制,由管理人员确定该区域灯光是否开启;
3.自检模式:(1)若该区域灯光已开启,单灯光未点亮,发送上位机故障警告信号提示管理员及时处理;
4.电能监测(1)监测设备用电状况,并发送上位机显示;
总体原理图如下所示:
图3-1 总体原理图
3.2系统的主要功能模块设计
3.2.1 光照值状况模块设计
BH1750是一种用于两线式串行总线接口的数字型光强度传感器集成电路。这种集成电路可以根据收集的光线强度数据来调整液晶或者键盘背景灯的亮度。利用它的高分辨率可以探测较大范围的光强度变化。BH1750的内部由光敏二极管、运算放大器、ADC采集、晶振等组成。对应广泛的输入光范围(相当于1-65535lx),最小误差变动在土20%,而且受红外线影响很小。[7]
1.采用ROHM原装BH1750FVI芯片
2.供电电源:3-5v
3.数据范围:0-65535lx
4.传感器内置16bitAD转换器
5.直接数字输出,省略复杂的计算,省略标定
6.不区分环境光源,接近于视觉灵敏度的分光特性
7.可对广泛的亮度进行1勒克斯的高精度测定
8.标准NXP 1IC通信协议
9.模块内部包含通信电平转换,与5v单片机IO直接连接
原理图如3-2-1所示。
图3-2-1 光照传感器原理图
3.2.2显示模块设计
0.96寸4针OLED屏模块是一种显示屏模块,它包括一个0.96英寸的OLED显示屏和4个引脚。这种OLED屏幕模块通常用于嵌入式系统和小型电子设备中,可以显示文本、图像和其他类型的信息。由于其小尺寸和低功耗,它们也常用于智能手表、健康追踪器和其他便携式设备中。此类模块通常使用SPI或I2C接口进行通信,并且支持多种分辨率和颜色模式。[8]
该模块有4个引脚,分别为VCC、GND、SCL和SDA。VCC是电源引脚,用于提供模块的电源,一般是3.3V或5V电源。GND是地引脚,用于提供模块的接地。需要接到负极电源上。SCL是时钟引脚,用于传输数据时的时钟信号。通常需要连接到主控芯片的时钟引脚。SDA是数据引脚,用于传输数据。通常需要连接到主控芯片的数据引脚。在使用I2C接口时,这个引脚也可以被称为SDA(串行数据线)。[9]
原理图如3-2-2所示。
图3-2-2 显示屏原理图
3.2.3故障监测模块设计
故障监测模块的作用是监测隧道中的灯光是否正常工作。当隧道中的灯光正常工作时,该区域的灯光会开启,故障检测上的两个灯都会点亮,表示灯光正常。如果灯光中有任何一个灯泡或电路出现故障,其中一个灯就会熄灭,提示相关人员进行检修或更换故障的灯泡。因此,该设计有助于确保隧道中的灯光始终保持正常工作状态,提高行车安全性。[10]
原理图如下图。