基于NB-lot的鱼塘防盗报警系统_第1页
基于NB-lot的鱼塘防盗报警系统_第2页
基于NB-lot的鱼塘防盗报警系统_第3页
基于NB-lot的鱼塘防盗报警系统_第4页
基于NB-lot的鱼塘防盗报警系统_第5页
已阅读5页,还剩34页未读, 继续免费阅读

付费下载

下载本文档

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

文档简介

目录TOC\o"1-3"\h\u26860摘要 I23608Abstract II12251第一章绪论 1114741.1研究背景和动机 133231.2国内外研究现状 1274551.3研究目的和意义 221501.4系统概述 211403第二章系统总体设计及方案论证 489592.1总体设计 4219942.2方案设计论证 4321312.2.1单片机方案选择 4317672.2.2无线传输模块方案选择 5155972.2.3人体传感器方案选择 6119442.2.4入侵检测方案选择 7161192.2.5报警模块方案选择 858822.3本章小结 81997第三章硬件设计与实现 9203993.1主控电路设计 9230813.2BC20NB-IoT模块电路设计 10165853.3热释电传感器模块电路设计 11136783.4激光对射传感器模块电路设计 11281333.5报警模块电路设计 1244763.6本章小结 1320273第四章软件设计与实现 14118644.1系统主程序设计 14212494.1.1主程序开发软件 14158354.1.2主程序设计 15218184.2子程序设计 1681944.2.1BC20NB-IoT程序设计 167494.2.2数据采集模块程序设计 17283104.2.3报警模块程序设计 1850694.3上位机程序设计 19151734.3.1上位机程序开发软件 19205914.3.2上位机程序设计 20152124.4本章小结 2121365第五章系统调试与误差分析 23140975.1硬件调试 2394815.2软件调试 24319775.3误差分析 2529145.4本章小结 2527487第六章结论 2730参考文献 2824306致谢 3031155附录 31第一章绪论1.1研究背景和动机在21世纪的科技潮流中,物联网(IoT)技术的兴起和发展为传统行业带来了革命性的改变。特别是在农业领域,物联网技术的应用已经开始展现出其巨大的潜力和价值,其中“智慧养鱼”便是一个典型的例证REF_Ref30521\r\h[1]。通过将传感器、数据通信技术、云计算等现代信息技术融入养鱼过程,养鱼户能够实现对鱼塘环境的实时监控和管理,极大地提高了养殖效率和经济效益,同时也降低了劳动强度和管理成本REF_Ref30573\r\h[2]。然而,随着智慧养鱼技术的推广和应用,鱼塘的安全管理问题逐渐凸显。鱼塘盗窃事件时有发生,给养鱼户造成了不小的经济损失。传统的防盗措施如人工巡逻、简单的围栏等,已难以满足当前鱼塘管理的需求,既耗费人力物力,又效率低下。在这样的背景下,急需一种新型的解决方案,以更智能、有效的方式保障鱼塘安全REF_Ref30622\r\h[3]。本研究的动机源自于对当前鱼塘管理中存在的安全难题的深刻认识,以及对物联网技术在农业领域应用潜力的充分肯定。我们意在通过物联网技术,构建一个高效、智能的鱼塘防盗报警系统,将“智慧养鱼”的概念进一步拓展到安全管理领域。通过集成先进的传感器技术和NB-IoT通信模块REF_Ref30674\r\h[4],以及开发配套的移动应用程序,该系统能够实时监控鱼塘环境,一旦检测到异常入侵,即能立即启动报警机制,并通过移动应用通知养鱼户,从而实现快速响应和有效防范。通过本研究,我们旨在为养鱼户提供一个全面、智能的鱼塘管理解决方案,不仅能够优化鱼塘的生态环境和提升养殖效率,还能确保鱼塘安全,减少经济损失。这将是物联网技术在“智慧养鱼”领域的又一重要应用,对推动农业智能化、实现农业现代化具有重要的实践意义和广阔的发展前景。1.2国内外研究现状国际上,欧美和亚洲的一些国家在智慧养鱼技术方面已经取得了显著的进展。例如,挪威作为全球最大的三文鱼出口国,其智慧养鱼技术的研究与应用已达到世界领先水平。据报道,挪威的水产养殖业已普遍应用了IoT技术,通过水下无线传感网络监测水质参数(如温度、溶解氧等),实时数据覆盖率达到了95%以上。此外,挪威还开发了基于图像识别技术的鱼群健康监控系统,能够自动识别并记录鱼的生长状况和健康问题,大大提高了养殖效率和产品质量REF_Ref30730\r\h[5]。中国作为一个渔业大国,智慧养鱼的技术研究与应用也在快速发展。近年来,中国的智慧养鱼项目多聚焦于水质监测、鱼群监控以及养殖环境智能调控等方面。例如,江苏省某智慧养鱼平台能够实时监测水温、pH值、溶解氧等十多项水质参数,覆盖了省内上百个养殖基地,平均每个养殖池的数据采集频率高达每分钟一次。此外,该平台通过大数据分析,为养殖户提供精准的养殖方案和管理建议,有效提升了养殖产量,据统计,使用该平台的养殖户年均收益提高了20%以上REF_Ref30782\r\h[6]。无论是国内还是国外,智慧养鱼的核心在于通过高精度的传感器、先进的数据分析技术和用户友好的应用程序等技术手段,实现对养殖环境的精准监控与智能管理。其中,物联网技术的应用使得远程监控成为可能,大数据分析技术则为养殖决策提供了科学依据。更值得一提的是,人工智能、机器学习等技术的融合使用,正逐步推动养殖业向更高效、更环保、更可持续的方向发展。1.3研究目的和意义本研究致力于开发一套结合NB-IoT技术的智慧养鱼防盗报警系统,这是在认识到当前鱼塘管理面临的安全挑战及其对养殖业经济影响的基础上,旨在通过技术创新提升鱼塘的安全监控能力,减少因安全漏洞导致的资源损失。在物联网技术迅速发展的背景下,该研究的进行不仅响应了智慧农业的发展需求,也探索了物联网技术在农业领域,尤其是在水产养殖业中的新应用。通过集成先进的传感技术和通信模块,本项目旨在实现对鱼塘环境的实时监控和管理,确保养殖资产的安全。这种全新的防盗报警系统能够有效识别潜在的安全威胁,及时向养殖户发送警报,大大提高了应对突发事件的速度和效率。此外,与传统防盗手段相比,该系统的智能化设计不仅能够降低人力物力的投入,还能提高防盗措施的准确性和有效性REF_Ref30828\r\h[7]。该研究的实施对促进养鱼行业的科技进步和产业升级具有重要意义。它不仅为养殖户提供了一种高效、便捷的鱼塘管理工具,也为智慧农业的发展贡献了新思路。通过智能化的防盗报警系统,可以有效地提高养殖效率,减少经济损失,进而增强养殖业的整体竞争力和可持续发展能力。本研究还展示了物联网技术在农业领域应用的广阔前景。NB-IoT技术的引入不仅提升了数据传输的效率和稳定性,也为农业生产管理提供了新的解决方案。这种技术的应用,不仅限于养鱼业,其理念和方法同样可以推广到其他农业领域,为实现农业现代化、智能化提供强有力的技术支持。1.4系统概述本设计基于NB-IoT技术的鱼塘盗报警系统,增强鱼塘的安全监控和管理。该系统由数据采集、数据传输、服务器处理及用户交互四大模块组成。数据采集模块通过多种传感器实时监测鱼塘环境和潜在的异常活动,如未授权入侵等。数据传输模块利用NB-IoT技术的低功耗和广覆盖优势,可靠地将采集到的数据发送到云服务器。在服务器处理模块,采集到的数据被分析和处理,一旦检测到异常,系统将立即触发报警机制。用户交互模块通过一个定制的移动应用程序,为用户提供了一个直观的操作界面,用户可以实时查看鱼塘状态,接收报警信息,及时做出响应。整个系统的设计旨在为养鱼户提供一个全面、高效的鱼塘安全管理解决方案,显著提升鱼塘的安全防范能力,降低资源损失,推动智慧鱼塘技术的应用。

第二章系统总体设计及方案论证本章主要从系统的设计思路进行描述,阐述系统设计的整体方案,根据设计任务与要求提出了相应的设计方案,并对系统各模块方案进行选择。2.1总体设计综合本系统设计要求分析得,系统分为主控模块、数据传输模块、传感器感应模块、报警模块、上位机等五个模块,通过模块化的硬件配置和软件开发,系统能自动监测鱼塘内入侵情况的发生。硬件选择侧重于高性能与低功耗,软件开发包括硬件件编程和app编程以及方便的用户界面,实现数据的实时监控、分析和远程控制功能。系统总体设计框图如图1所示。图1系统总体设计框图2.2方案设计论证2.2.1单片机方案选择在设计鱼塘报警系统时,微控制器的选择至关重要,因为它直接影响到系统的性能、稳定性和扩展性。本项目主要考虑了STM32F103C8T6和8051单片机两种方案。STM32F103C8T6芯片是一款高性能、低成本、低功耗的嵌入式应用专门设计的ARMCortex-M内核,具有高性能外设:1μs的双12位ADC、4MB/S的UART、18MB/s的SPI等,内核采用ARM32位Cortex-M3CPU,最高工作频率72MHz,1.25DMIPS/MHz,单周期乘法和硬件除法,存储器片上集成32-512KB的Flash存储器。6-64KB的SRAM存储器,时钟、复位和电源管理为2.0-3.6V的电源供电和IO接口的驱动电压。POR、PDR和可编程的电压探测器(PVD)。4-16MHz的晶振。内嵌出厂前调校的8MHzRC振荡电路。内部40kHz的RC振荡电路,用于CPU时钟的PLL,带校准用于RTC的32kHz的晶振。调试模式有串行调试(SWD)和JTAG接口。最多高达112个的快速O端口、11个定时器和13个通信接口REF_Ref30896\r\h[8]。8051单片机是Intel公司于1981年推出一种8位单芯片微控制器,是MCS-51家族中最早的成员。是一款8位CPU,内置4K字节程序存储器(ROM)以及128字节数据存储(RAM)。4个8位(共32位)双向、可独立寻址I/O通道,2个16位计时器/计数器,全双工UART(UniversalAsynchronousReceiver/Transmitter,通用异步收发传输器),2个外部中断(INT0、INT1),三个内部中断(TF0,TF1和T1/R1),并且内置时钟晶振,使用外部扩展存储器时,最大64K字节程序存储空间和64K字节数据存储空间REF_Ref30988\r\h[9]。详细对比数据如表1所示。表1STM32F103C8T6与8051单片机对比表性能指标STM32F103C8T68051基础型号CPU核心ARMCortex-M38051工作频率72MHz12MHz以下内存容量64KBFlash,20KBSRAM8KBFlash,≤1KBSRAM外设接口I2C,SPI,USART,多通道ADCI2C,SPI,USART能耗表现低功耗设计较高功耗开发支持广泛的库/社区支持基本的支持综合比较STM32F103C8T6和8051单片机的性能、功能和成本等因素,我们选择了STM32F103C8T6作为鱼塘报警系统的核心微控制器。虽然STM32F103C8T6的成本相对较高,但其提供的高性能计算能力、大容量内存、丰富的外设接口和低能耗设计,完全满足智能监控系统的需求。此外,STM32F103C8T6强大的开发资源和社区支持,能够加速开发过程,降低开发难度,使得在项目实施和未来扩展方面具有更大的灵活性和可持续性。因此,基于以上考虑,最终选择STM32F103C8T6单片机作为项目的核心控制单元。2.2.2无线传输模块方案选择在设计鱼塘防盗报警系统时,选择合适的无线传输模块对于保证系统的稳定性和实用性至关重要。本文对比了ESP8266WiFi模块与BC20NB-IoT模块两种流行的无线通信技术,以评估它们在实际应用中的适用性。

ESP8266是一款低成本、高性能的Wi-Fi模块,由EspressifSystems开发。它集成了Wi-Fi功能和TCP/IP协议栈,并可通过串口与主控制器进行通信REF_Ref31037\r\h[10]。ESP8266广泛应用于物联网设备和DIY项目中。ESP8266模块在进行高负载的网络通信时可能会产生一定的热量,因此在设计中需要考虑散热和温度管理。此外,由于ESP8266模块使用串口进行通信,与主控制器之间的数据传输速率可能受限,需要根据应用需求进行性能评估BC20NB-IoT模块是一款高性能、低功耗、多频段、支持GNSS定位功能的NB-IoT无线通信模块。其尺寸仅为18.7mm×16.0mm×2.1mm,限度地满足终端设备对小尺寸模块产品的需求,同时有效帮助减小产品尺寸并优化产品成本。在设计上兼容移远通信GSM/GPRS/GNSS系列的MC20模块,方便客户快速、灵活的进行产品设计和升级。BC20提供丰富的外部接口和协议栈,同时支持中国移动OneNET、中国电信IoT以及阿里云IoT等物联网云平台,为应用提供极大的便利。详细对比数据如表2所示。表2ESP8266WiFi模块与BC20NB-IoT模块对比表性能参数ESP8266WiFiBC20NB-IoT通信范围较短,一般几十米较远,可达数公里功耗较高低数据传输稳定性在开阔地区可能不稳定高,适合远距离和干扰环境成本低中等考虑到鱼塘通常位于开阔地区,可能远离居住区或WiFi热点,ESP8266WiFi模块虽然成本较低且设置方便,但其较短的通信范围和较高的功耗在此应用场景下显得不够理想。因此选择BC20NB-IoT作为本设计的无线通信模块。2.2.3人体传感器方案选择在鱼塘防盗报警系统中,选择合适的人体红外传感器能够及时探测鱼塘范围内是否有人活动。通过对比热释电红外(PIR)传感器和微波雷达传感器两种常用的人体检测技术。选择最适合本设计的人体传感器。热释电红外(PIR)传感器,亦称为热红外传感器,是一种能检测人体发射的红外线的新型高灵敏度红外探测元件。它能以非接触形式检测出人体辐射的红外线能量的变化,并将其转换成电压信号输出。将输出的电压信号加以放大,便可驱动各种控制电路,如作电源开关控制、防盗防火报警、感应水龙头,感应灯等REF_Ref31079\r\h[12]。微波雷达传感器利用多普勒效应,通过发射微波并接收其反射波来检测人体移动。与PIR传感器相比,微波雷达传感器的探测距离更远,探测角度更宽,对环境温度变化的敏感性较低,能够提供更稳定的检测性能REF_Ref31275\r\h[13]。但是,它们的功耗通常比PIR传感器高,成本也相对更高,且在某些情况下可能会因外部移动物体(如树叶、小动物等)引起误报。详细对比数据如表3所示。表3ESP8266WiFi模块与BC20NB-IoT模块对比表性能参数热释电红外(PIR)传感器微波雷达传感器探测原理检测人体发出的红外辐射发射微波并接收反射波探测距离一般5-12米可达20米以上探测角度一般小于180°可达360°环境适应性可能受环境温度影响对环境温度变化影响小功耗低高成本低中等到高误报率可能较高相对较低综合考虑鱼塘防盗报警系统的需求,尤其是对探测范围、稳定性和成本的考虑,热释电红外传感器以其低功耗和低成本的优势,在大多数情况下可能是更经济实用的选择。2.2.4入侵检测方案选择在鱼塘防盗报警系统中,使用激光传感器进行入侵检测是一种有效的方法。激光传感技术的有激光对射传感器和激光时间飞行(ToF)传感器是两种常用的激光传感技术。这两种技术各有特点,在不同的应用场景下具有不同的优势。激光对射传感器激光传感器是利用激光技术进行测量的传感器、它由激光器、激光检测器和测量电路组成。激光传感器工作时,先由激光发射二极管对准目标发射激光脉冲。经过目标反射后激光向各方向散射。部分散射光返回到传感器接收器,被光学系统接收后成像到雪崩光电二极管上。雪崩光电二极管是一种内部具有放大功能的光学传感器,因此它能检测极其微弱的光信号,并将其转化为相应的电信号。常见的是激光测距传感器,它通过记录并处理从光脉冲发出到返回被接收激光传感器是新型测量仪所经历的时间,即可测定目标距离。表,它的优点是能实现无接触远距离测量,速度快,精度高,量程大,抗光、电干扰能力强等REF_Ref31318\r\h[14]。激光时间飞行(ToF)传感器通过发射激光脉冲并测量光线被反射回来所需的时间来检测物体的距离。这使得ToF传感器能够提供关于物体位置的三维信息,适用于更复杂的检测任务。与激光对射传感器相比,ToF传感器在安装上更为灵活,不需要严格的对准,但可能在成本和功耗上较高REF_Ref31363\r\h[15]。详细对比数据如表4所示。表4激光对射传感器与激光时间飞行(ToF)传感器对比表性能参数激光对射传感器激光时间飞行(ToF)传感器探测原理直线路径上的中断检测测量光线反射时间计算距离安装要求需要精确对准发射器和接收器安装灵活,无需严格对准探测距离较长,依赖于发射器和接收器的设计通常较短,受传感器规格限制空间信息仅限于线性路径的中断可提供三维空间信息成本与功耗相对较低相对较高综合考虑鱼塘防盗报警系统的需求,激光对射传感器以其较长的探测距离和较低的成本在简单的入侵检测应用中可能更为适用。本设计将采用激光对射传感器作为入侵检测方案。2.2.5报警模块方案选择在鱼塘防盗报警系统的设计中,选择一个有效且经济的报警方式至关重要。本设计考虑了蜂鸣器配合LED灯的报警方式和短信电话报警。蜂鸣器与LED灯的结合提供了即时且明显的报警信号。蜂鸣器发出的声音可以立即引起人们的注意,而LED灯的视觉信号则确保在视觉上也能迅速识别到报警状态,尤其是在噪音较大或夜间环境中。这种方式简单直接,对于处于可视范围内的管理人员尤其有效。短信电话报警方式通过发送短信或拨打电话来通知管理人员或安全服务提供商。这种方式能够提供更远距离的报警通知,尤其适用于管理人员不常驻现场的情况。然而,它依赖于移动通信网络的稳定性,且在紧急情况下可能因网络拥堵延迟报警。此外,短信电话报警系统的初始安装和运行成本相对较高,还可能涉及定期的服务费用。经过考虑,蜂鸣器与LED灯的报警方式在成本、安装和维护方面具有明显优势,尤其适合于需要即时本地报警的应用场景。因此本设计选择蜂鸣器配合LED灯报警的报警模块方案。2.3本章小结本章深入探讨了鱼塘防盗报警系统中关键技术的选择与方案设计,重点分析了单片机的选型、无线传输模块的比较、入侵检测、人体检测以及报警模块的实现方案。通过对常见方案的对比,最终选择了STM32F103C8T6、BC20NB-IoT、热释电红外传感器、激光对射传感器、以及蜂鸣器和LED灯作为本设计的主要硬件解决方案。通过对技术选择和方案设计的讨论,不仅为鱼塘防盗报警系统的开发提供了坚实的理论基础和技术支持,也确保了系统在实用性、可靠性和经济性方面的综合性能。综合考虑各种因素,本章提出的方案旨在实现一个高效、稳定、成本效益高的鱼塘防盗报警系统,为鱼塘安全管理提供了一种有效的技术解决方案。

第三章硬件设计与实现本章主要介绍系统硬件电路设计与实现,详细的介绍所用器件的功能以及硬件电路设计,并绘制相应硬件电路图。3.1主控电路设计本系统选用了STM32F103C8T6作为核心硬件控制单元,这款由STMicroelectronics生产的微控制器基于ARMCortex-M3内核,以其高效的处理能力、成本效益和广泛的外设兼容性著称。在设计时,对每个引脚的精心规划和连接至关重要,以确保鱼塘报警系统的多功能性和高效性。STM32F103C8T6单片机通过其电源引脚VDD和VSS接收稳定的电源供应,同时配备有外部复位按钮连接的NRST引脚,确保了系统能够在异常状态下快速恢复正常工作状态。为了支持与外部设备如NB-IoT模块的通信,STM32F103C8T6利用USART1接口实现了高效的串行数据传输。此外,其多个GPIO引脚被用作传感器输入,捕获来自人体红外传感器和激光对射传感器等的信号,这些引脚直接读取外部环境和安全监测的关键数据。报警输出通过调节PWM信号占空比的PA8等引脚控制蜂鸣器和LED灯,既调整报警声音的音量也改变LED亮度,以达到显著的报警效果。对于需要模拟信号处理的场景,STM32F103C8T6的ADC引脚如PA0等能够将模拟信号转换为数字形式,便于进行后续的数据处理。STM32F103C8T6电路设计如图3.1所示图3.1STM32F103C8T6电路设计图3.2BC20NB-IoT模块电路设计在鱼塘防盗报警系统中,BC20NB-IoT模块的电路设计关键在于确保其与STM32F103C8T6单片机的高效通信。为实现这一目的,BC20模块的UART接口被用来与单片机的相应串行通信引脚连接BC20NB-IoT模块的TXD(发送)引脚连接到STM32F103C8T6的RXD(接收)引脚,而BC20NB-IoT模块的RXD(接收)引脚则连接到单片机的TXD(发送)引脚,形成了一个全双工的串行通信链路。这样的配置允许数据能够在单片机和BC20NB-IoT模块之间双向传输。此外,为了确保模块的稳定工作,BC20NB-IoT模块的电源引脚需要连接到系统的电源管理模块,提供稳定的电源供应。同时,考虑到BC20NB-IoT模块在启动或工作过程中可能出现的异常情况,其RESET引脚被接到STM32F103C8T6的一个GPIO输出引脚,通过软件控制实现远程复位功能。此GPIO引脚在正常操作时保持高电平,当需要复位NB-IoT模块时,单片机将此引脚拉低一段预定时间后释放,触发模块复位。为了监控BC20NB-IoT模块的工作状态,BC20NB-IoT模块的状态指示引脚也被连接到STM32F103C8T6的一个输入GPIO引脚。通过读取这个引脚的状态,系统软件能够得知模块是否成功连接到网络,从而在必要时采取相应的措施。通过以上的电路设计,鱼塘防盗报警系统中的STM32F103C8T6单片机能够有效地控制BC20NB-IoT模块,实现数据的远程传输,为系统提供了稳定可靠的无线通信能力。这种设计充分利用了BC20模块的功能特性,为鱼塘防盗报警系统的实现提供了坚实的基础。BC20NB-IoT模块电路设计如图3.2所示。图3.2BC20NB-IoT模块电路设计图

3.3热释电传感器模块电路设计在鱼塘防盗报警系统中,热释电红外(PIR)传感器的电路设计至关重要,以确保能够精确检测到人体活动。PIR传感器有三个主要的引脚:VCC(电源)、GND(地)和OUT(信号输出)。VCC和GND引脚分别连接到系统的电源和地线,为PIR传感器提供所需的电源。信号输出引脚OUT是PIR传感器与STM32F103C8T6单片机连接的关键。此引脚输出的是数字信号,当检测到红外辐射变化,即人体移动时,OUT引脚会输出高电平;当没有检测到人体活动时,输出低电平。因此,OUT引脚直接连接到STM32F103C8T6的一个GPIO输入引脚上。选择一个配置为输入模式的GPIO引脚,可以让单片机通过读取该引脚的电平状态来判断是否有人体移动,从而触发相应的报警程序。通过上述电路设计,STM32F103C8T6单片机能够准确地接收来自PIR传感器的信号,实时监控鱼塘环境中的人体活动,为系统的安全防护提供了坚实的基础。这种设计不仅确保了传感器信号的准确读取,还充分考虑了系统的稳定性和可靠性,满足了鱼塘防盗报警系统对高效和灵敏度的要求。热释电传感器模块电路图如图3.3所示图3.3热释电传感器模块电路图3.4激光对射传感器模块电路设计在鱼塘防盗报警系统中,激光对射传感器模块的电路设计是实现精确入侵检测的关键。鉴于STM32F103C8T6单片机工作在3.3V逻辑电平,而激光对射传感器模块常见的工作电压为5V,因此在二者之间引入电平转换芯片是必要的,以保证信号在不同电压水平间的准确传递和系统的稳定运作。激光对射传感器模块主要包括一个激光发射器和一个激光接收器,当检测路径中无障碍物时,接收器能够接收到发射器发出的激光,输出低电平;反之,如果路径中出现障碍物,接收器将失去激光信号,输出高电平。这一变化通过模块的信号输出引脚传递给STM32F103C8T6单片机,由此触发报警。为了实现3.3V与5V之间的电平转换,电路设计中加入了一块电平转换芯片。STM32F103C8T6单片机的GPIO输入引脚通过电平转换芯片连接到激光对射传感器模块的信号输出引脚。这样,当激光路径被阻断时,激光接收器输出的5V高电平信号经电平转换芯片转换为3.3V,由STM32F103C8T6单片机的相应GPIO引脚接收,单片机进而处理这一信号并执行报警程序。此外,激光发射器的电源引脚直接连接到5V电源,而接收器部分则通过电平转换芯片与单片机相连,确保了电路的正确工作并防止了电压不匹配可能导致的损害。电路设计还应考虑到激光对射传感器模块的对准和安装位置,以保证系统的高效检测。通过以上设计,鱼塘防盗报警系统能够利用激光对射传感器模块在特定区域内精确监测入侵行为,同时,引入电平转换芯片确保了不同电压设备间的无缝连接和信号传递的准确性,增强了系统的可靠性和稳定性。激光对射传感器电路和电平转换电路如图3.4和3.5所示。图3.4激光对射传感器电路图图3.5电平转换电路图3.5报警模块电路设计在鱼塘防盗报警系统中,报警模块电路的设计是提供有效警报信号的关键环节。该模块主要由蜂鸣器和LED灯组成,以声光报警的方式提醒管理人员。考虑到STM32F103C8T6单片机的工作电平为3.3V,而蜂鸣器和LED灯通常可以直接支持3.3V的电源,因此可以直接通过单片机的GPIO输出引脚控制这两种报警设备。对于蜂鸣器部分,选择了STM32F103C8T6的一个PWM输出能力的GPIO引脚,如PA8,通过调整PWM信号的占空比,可以控制蜂鸣器的响声大小,从而实现不同的报警音效。蜂鸣器的一个引脚连接到PA8,另一个引脚接地。LED灯则连接到STM32F103C8T6的另一个GPIO输出引脚,如PA9。通过编程控制该引脚的高低电平状态,可以实现LED灯的闪烁报警效果。LED灯的一个引脚连接到PA9,另一个引脚接地。为了保护单片机引脚,可以在LED灯和蜂鸣器的电路中分别串联适当的限流电阻。在设计过程中还考虑了电路的安全性和稳定性,确保在长时间运行或者在恶劣环境下也能保持良好的报警性能。此外,通过软件编程,可以灵活设置报警条件、报警时长和报警模式,增加了系统的实用性和灵活性。通过上述设计,报警模块能够在检测到鱼塘内有非法入侵时,及时通过声光方式发出警报,有效提醒管理人员采取相应措施,是鱼塘防盗报警系统中不可或缺的一个环节。这种设计充分利用了STM32F103C8T6单片机的功能,实现了一个高效、可靠的报警模块电路设计。蜂鸣器与LED灯电路设计如图3.6和3.7所示。图3.6蜂鸣器电路图图3.7LED灯电路图3.6本章小结本章深入探讨了鱼塘防盗报警系统的硬件电路设计,详细阐述了核心控制单元STM32F103C8T6的引脚配置、与各类传感器和模块的连接方法,以及关键模块如BC20NB-IoT模块、热释电红外传感器和激光对射传感器的电路接入方案。通过精心设计,系统实现了高效的数据采集、稳定的无线通信和即时的报警反馈。在电路设计中,我们特别强调了电平转换、信号的稳定传输和电源管理等关键技术,以确保系统在复杂的环境下能够稳定运行。电平转换芯片的引入解决了3.3V与5V设备之间的兼容问题,确保了信号的准确传递。同时,报警模块的设计采用了蜂鸣器和LED灯的组合,提供了可靠的声光报警方式,以适应不同的报警场景。

第四章软件设计与实现4.1系统主程序设计4.1.1主程序开发软件在本系统项目中,硬件程序的开发采用了KeilMDK-ARM软件。Keil公司开发的ARM开发工具MDK,是用来开发基于ARM核的系列微控制器的嵌入式应用程序。它适合不同层次的开发者使用,包括专业的应用程序开发工程师和嵌入式软件开发的入门者。MDK包含了工业标准的KeilC编译器、宏汇编器、调试器、实时内核等组件,支持所有基于ARM的设备。在使用KeilMDK-ARM开发STM32程序的过程中,首先需要完成软件的下载与安装,期间选择适合STM32开发的组件,这包括ARM编译器及相关的中间件。安装完成后,启动Keil并创建一个新项目,为其命名并选择一个存储位置。接下来的步骤是选择目标设备,这一步是通过在设备数据库中找到STM32F103C8T6来完成的,确保了后续开发工作能够针对正确的硬件平台进行。项目创建后,需要配置项目属性,涉及到为项目设置晶振频率、编译选项、调试器选择等。这些配置确保了代码能够针对特定的硬件环境被正确编译和调试。项目属性配置好之后,接下来就是将源代码文件(.c)和头文件(.h)添加到项目中。编写好源代码后,通过点击“Build”按钮或选择菜单中的“BuildTarget”来编译项目,检查编译过程中是否存在错误。编译无误的情况下,就可以通过ST-Link或其他兼容的调试器将程序下载到STM32微控制器上,并进入调试环节。在调试模式下,可以单步执行程序,检查变量值,以及执行其他调试操作来确保程序按预期工作。软件开发界面如下图所示。图4.1程序开发界面4.1.2主程序设计在鱼塘防盗报警系统中,硬件程序设计涉及从上电到初始化、检测以及最终报警的一系列过程。该程序首先在系统上电时执行初始化操作,这包括配置STM32F103C8T6单片机的时钟系统、初始化各外设接口、设置GPIO引脚模式以及启动所需的中断服务程序。初始化过程确保了系统能够在一个预定的、稳定的状态下开始运行。在完成基础的硬件设置之后,程序进入主循环,不断监测连接到单片机GPIO引脚的各类传感器状态。这些传感器包括人体红外传感器和激光对射传感器等,它们负责检测鱼塘区域内的非法入侵活动。当传感器检测到特定的信号时,比如人体红外传感器捕捉到人体热量变化,或激光对射传感器的激光路径被阻断,程序会立即将这一信息作为入侵警报。收到入侵信号后,程序通过控制连接到单片机另一组GPIO引脚的蜂鸣器和LED灯,执行报警指令。蜂鸣器开始发出连续或间断的警报声,而LED灯则闪烁,以视觉和听觉的方式同时向管理人员发出警告。此外,通过无线通信模块T,程序还会通过该模块发送报警信息到管理人员的移动设备,以便于迅速采取相应的安全措施。整个硬件程序设计强调了在异常事件发生时的快速响应和有效报警,同时保证了系统的低功耗和高效运行。通过精心设计的程序逻辑和周密的资源管理,鱼塘防盗报警系统能够在保障鱼塘安全的同时,最小化对环境的影响和系统的维护需求。系统主程序设计流程图如图4.2所示。图4.2系统主程序设计流程图4.2子程序设计4.2.1BC20NB-IoT程序设计在鱼塘防盗报警系统中,BC20NB-IoT模块的程序设计是实现远程通信的关键。程序设计从初始化开始,包括模块的启动、网络注册、数据传输设置,最终实现数据的发送和接收,直到程序结束。程序初始化阶段包括设置BC20模块的工作模式,开启网络注册过程。通过发送AT命令配置模块,检查SIM卡状态,激活网络附着,并等待模块注册到NB-IoT网络直到模块成功注册。一旦网络注册成功,程序进入数据传输设置阶段。这包括配置数据传输的相关参数,设置PDP上下文,启动网络服务,配置数据发送和接收的URL或IP地址和端口号。这些配置确保了数据可以通过NB-IoT网络正确地发送和接收。数据传输阶段,程序利用配置好的参数,通过AT命令触发数据的发送或接收。发送数据时,程序将收集的警报信息封装成数据包,通过NB-IoT网络发送给远端服务器或管理者的移动设备。接收数据时,程序检查网络上是否有下行数据,并进行相应处理,如接收远端服务器的控制命令。BC20NB-IoT程序流程图如图4.3所示。图4.3BC20NB-IoT程序流程图4.2.2数据采集模块程序设计在鱼塘防盗报警系统中,数据采集模块的程序设计是核心环节之一,确保系统能够准确、实时地收集环境和入侵信息。程序从系统初始化开始,涵盖了传感器配置、数据读取和预处理,直至数据的上报。初始化阶段,程序首先配置单片机的GPIO引脚,以适应传感器的输入需求,将引脚配置为数字输入。对于热释电红外传感器可进行预热,程序会执行相应的初始化命令,确保传感器进入正确的工作状态。随后,程序进入主循环,不断地对所有传感器进行轮询,包括热释电红外传感器和激光对射传感器等,实时读取它们的输出值。读取到的数据接着进入预处理阶段,程序根据实际需求对数据进行过滤、去噪声或转换,以提高数据的可靠性和准确性。最后,预处理后的数据被编码并上报。根据系统的设计,这可能涉及将数据发送至主控单元进一步分析,或直接通过无线模块发送到远端服务器或用户设备。在数据上报前,程序还会检查网络连接状态或其他通信前提条件,确保数据能够成功发送。数据采集模块程序流程图如图4.4所示。图4.4数据采集模块程序流程图4.2.3报警模块程序设计在鱼塘防盗报警系统中,报警模块的程序设计是确保在检测到潜在威胁时能够及时通知管理人员的关键环节。程序的设计从初始化开始,确保蜂鸣器和LED灯等报警设备处于正确的初始状态,以便于在必要时能够迅速响应。初始化阶段,程序首先配置用于控制蜂鸣器和LED灯的GPIO引脚为输出模式,并将它们设置为低电平状态,确保报警设备在系统启动时保持关闭状态。此外,还可能包括设置PWM(脉冲宽度调制)参数,以便于后续调整蜂鸣器的响声大小和LED灯的亮度。在完成初始化后,程序进入主监控循环,持续检测是否有来自传感器的报警信号。当检测到报警条件满足(例如,人体红外传感器捕捉到移动信号,或激光对射传感器被中断)时,程序将触发报警。报警模块程序设计流程图如图4.5所示。图4.5报警模块程序设计流程图4.3上位机程序设计4.3.1上位机程序开发软件AndroidStudio是Google发布的用于\t"/item/Andriod%20Studio/_blank"Android的开发平台。系统基于

\t"/item/Andriod%20Studio/_blank"IntelliJIDEA。类似EclipseADT,AndroidStudio提供了集成的Android开发工具用于开发和调试。AndroidStudio的开发环境和模式更加的丰富和便捷,能够支持多种语言,还可以为开发者提供测试工具和各种数据分析。AndroidStudio提供了许多强大的功能,包括代码编辑器、图形界面布局编辑器、模拟器、性能分析工具、以及版本控制等。它提供了高效的代码编辑功能,如代码自动完成、代码分析和一键式代码重构等,极大地提高了开发效率。App开发界面如下图所示。图4.6App开发界面4.3.2上位机程序设计在鱼塘防盗报警系统中,上位机应用程序(App)设计关键在于提供一个用户友好的界面,实现系统状态的实时展示以及远程控制警戒功能。程序启动后首先执行连接过程,通过手机Wi-Fi与硬件连接。一旦连接建立,上位机App便初始化其界面,准备接收和展示数据。初始化包括配置数据显示区域、报警状态指示器以及控制按钮等UI元素。在初始化完成之后,App进入主循环,周期性地从下位机获取数据。这些数据包括但不限于传感器的状态、系统的工作模式及任何报警事件的记录。获取数据的过程中,App通过发送请求到下位机并解析回传的数据包来实现。数据获取后,App程序将根据接收到的数据对系统当前状态进行判断。这涉及解析传感器数据,如人体红外传感器的触发状态和激光对射传感器的阻断事件,以确定是否有非法入侵发生。若判断结果为需要报警,App将触发报警灯UI元素变化,如从绿色变为红色,并发出声音或振动提醒用户。同时,App提供用户操作界面,允许用户根据实时展示的系统状态决定是否开启或关闭警戒模式,以及对报警进行确认或忽略。整个App程序设计旨在确保用户能够轻松监控鱼塘安全状况并迅速响应可能的安全威胁,同时提供直观的操作界面和灵活的控制选项,增强了系统的实用性和用户体验。通过有效的程序逻辑和稳定的通信机制,该App成为鱼塘防盗报警系统中不可或缺的一部分,确保了系统的高效运行和管理的便利性。App程序设计流程图如图4.7所示。图4.7APP程序设计流程图4.4本章小结在本章中,我们深入探讨了鱼塘防盗报警系统的软件设计,覆盖了从底层固件编程到上位机应用程序开发的全过程。重点关注了STM32F103C8T6单片机的软件初始化,包括配置时钟系统、初始化各种外设接口及其中断服务程序,并详细描述了如何通过编程实现数据采集、处理和报警逻辑。软件设计的核心在于确保系统能够高效、准确地执行任务,从监测鱼塘环境、分析数据到最终执行报警。通过使用KeilMDK-ARM开发环境,我们展示了如何编写、编译和调试代码,以及如何利用其强大的调试工具来优化程序。此外,我们还介绍了上位机应用程序的开发,包括用户界面设计、与下位机的通信以及如何在接收到报警信号时向用户发出通知。在整个软件设计过程中,特别强调了代码的可维护性和可扩展性。通过模块化设计和良好的编程实践,确保了软件结构的清晰性和后期维护的便捷性。同时,考虑到系统可能在不同的环境下运行,特别注重了软件的健壮性和错误处理能力,以保证在面临各种异常情况时系统能够稳定运行。

系统调试与误差分析5.1硬件调试硬件调试是确保鱼塘防盗报警系统正确执行其设计功能的关键步骤。在硬件调试阶段,通过一系列有计划的测试和检验过程来识别和解决系统中可能存在的问题。将所有的硬件部分按照硬件电路设计进行焊接,焊接过程中需要注意各个传感器之间与单片机之间引脚的接入,不能接错且不能虚焊。焊接结束后,将单片机代码烧录至单片机中,上电后进行测试。设置硬件部分布防状态为开启,遮挡激光对射传感器,模拟入侵状态,此是蜂鸣器发生报警,LED灯闪烁。将遮挡物拿开后,用手遮挡热释电传感器,模拟人员走动,此时蜂鸣器发生报警,LED灯删闪烁,关闭布防状态后,蜂鸣器停止报警,LED灯熄灭。硬件部分测试成功,焊接实物图如图5.1所示。图5.1硬件焊接实物图5.2软件调试通过AndroidStudio开发上位机APP程序后,打包成APK文件,并安装至安卓手机中。打开软件后,将自动与硬件进行连接,页面展示硬件当前的各个设备的状态,如激光对射传感器状态、热释电传感器状态、布放开关状态以及报警状态。打开布防开关,模拟入侵,APP页面激光对射传感器状态和热释电传感器状态均显示有入侵,报警按钮打开,硬件发出报警,关闭布防开关后,页面入侵显示消失,APP页面如图5.2所示。图5.2APP页面图5.3误差分析在本次设计的实现过程中,需要对整个系统进行误差分析,以保证系统的准确性。误差分析旨在识别和量化可能影响系统性能的因素,确保系统在实际应用中能够达到预期的准确性和可靠性。以下是几个主要的误差来源以及它们可能对系统性能产生的影响。1.传感器误差:传感器是鱼塘防盗报警系统中最关键的部分之一,其准确性直接影响到系统的整体性能。例如,热释电红外传感器可能因环境温度波动或其他热源干扰而产生误报;激光对射传感器则可能因对射路径被小动物或其他非目标物体阻断而触发误报。为了减小这些误差,需要仔细选择传感器的放置位置和角度,同时通过软件算法进行数据滤波和分析,提高判断的准确性。2.通信误差:NB-IoT模块可能因为信号干扰、网络拥堵或信号弱而导致数据传输延迟或丢包。这种误差可能影响报警信号的及时传递,造成延迟报警。采用高质量的通信模块和优化通信协议是降低通信误差的关键。3.电源波动:系统的电源不稳定也可能引入误差,如电池电压下降可能导致传感器灵敏度降低或微控制器工作不稳定。使用稳定的电源和在设计中加入电源管理策略,如电压监测和低功耗模式,能够有效减轻这类问题。4.软件算法误差:软件算法在处理传感器数据和执行报警逻辑时可能引入误差。例如,不恰当的阈值设置可能导致误报或漏报。通过持续的测试和优化,根据实际应用场景调整算法参数,可以提高系统的准确性和稳定性。5.环境因素:外部环境因素,如温湿度变化、光照强度变化等,都可能影响系统组件的性能。在系统设计时考虑这些因素,并进行充分的环境测试,是保证系统在各种条件下都能稳定工作的关键。通过对上述误差源进行系统分析和处理,可以显著提高鱼塘防盗报警系统的准确性和可靠性。这要求在系统设计、实施和测试的每个阶段都细致考虑误差影响,并采取相应措施进行优化和校正。这样,才能确保系统在实际操作中达到最佳性能,有效保护鱼塘安全。5.4本章小结本章中,我们全面探讨了鱼塘防盗报警系统的软件设计和硬件调试过程,以及进行了详细的误差分析,确保系统的高效性和可靠性。通过精心设计的软件架构和代码实现,系统能够实时监控鱼塘环境,及时响应潜在的安全威胁,并通过用户友好的上位机应用程序向管理者提供实时数据和报警通知。硬件调试阶段确保了所有组件和模块的正确安装和功能性,包括对STM32F103C8T6单片机的引脚配置、传感器的准确读取以及无线模块的稳定通信。通过对系统中可能出现的误差源进行深入分析,我们识别并采取措施解决了诸如传感器误差、通信误差、电源波动、软件算法误差以及外部环境因素等问题,以最大程度地提高系统的准确性和稳定性。优化的过程不仅涉及硬件的物理布局和电路设计调整,也包括软件层面的算法调整和参数优化,确保系统在各种环境条件下都能保持高性能运作。

第六章结论本设计成功实现了一个基于STM32F103C8T6单片机和BC20NB-IoT模块的鱼塘防盗报警系统。通过综合应用多种传感器,如热释电红外传感器和激光对射传感器,系统能够实时监测鱼塘环境,有效识别潜在的安全威胁。结合声光报警和远程通信技术,该系统不仅能够及时地在现场发出警报,还可以通过NB-IoT技术将报警信息远程传递给管理者,大大提高了鱼塘的安全管理效率。在软件设计方面,利用Keil和AndroidStudio对硬件程序和上位机应用程序的开发,实现了系统操作的简便性和实时性,保证了用户能够轻松管理和控制报警系统。硬件设计和调试过程确保了系统的稳定性和可靠性,通过精确的电路设计和细致的误差分析,最大限度地降低了系统的误报率和漏报率。本研究提出的鱼塘防盗报警系统在理论和实践层面都显示了其有效性和可行性。它不仅为鱼塘安全提供了一种创新的技术解决方案,还为类似的农业安全监控系统提供了参考和启示。未来的工作可以在提高系统的能源效率、扩展更多功能和优化用户界面等方面进行,以满足更广泛的应用需求,进一步提升系统的整体性能和用户体验。

参考文献张燕凯,章琳志,张朋.基于STM32的嵌入式系统综合实验设计[J].工业控制计算机,2024,37(03):161-163.SharmaG,JütteL,GopaniJ,etal.Monitoringofmultiplefabricationparametersofelectrospunpolymerfibersusingmuellermatrixanalysis[J].JournalofOptics,2024,26(4):HaoW,WangY,WangY,etal.KPI-relatedmonitoringapproachforpowertrainsysteminhybridelectricvehicles[J].EnergyReports,2024,113245-3255.路敬祎,王志桥,彭朝霞,等.基于NB-IoT技术的天然气管道泄漏监测系统[J].化工自动化及仪表,2024,51(02):222-226.DOI:10.20030/ki.1000-3932.202402011.AlvesGM,ChenLG,KangX,etal.ReducedCPUWorkloadforHumanPoseDetectionwiththeAidofaLow-ResolutionInfraredArraySensoronEmbeddedSystems[J].Sensors,2023,23(23):陈雨倩,王明暄,孙梦纯,等.热释电红外传感器的动态稳定传输方法[J].光源与照明,2023,(08):180-182.牛丹丹.基于深度学习和模糊逻辑的智慧鱼塘关键技术及应用[D].河南科技学院,2023.DOI:10.27704/ki.ghnkj.2023.000084.武雪峥,武雪玲,马红进.红外线防盗报警装置设计[J].信息记录材料,2023,24(05):98-101.DOI:10.16009/13-1295/tq.2023.05.068.刘剑.基于热释电红外传感器的静态人体存在感应器设计[J].传感器世界,2023,29(04):28-33.DOI:10.16204/j.sw.issn.1006-883X.2023.04.005.DanaiP,KritS,JitnapaS,etal.Novelnear-infraredAza-BODIPY-basedfluorescentandcolorimetricsensorforhighlyselectivedetectionofAu3+inaqueousmedia,humanskinandbraincells[J].JournalofPhotochemistry&Photobiology,A:Chemistry,2023,441YordankaK,SaraS,YanguoJ,etal.HumanActivityRecognitionforAI-EnabledHealthcareUsingLow-ResolutionInfraredSensorData[J].Sensors,2023,23(1):478-478.徐爽,易东.基于物联网的鱼塘水质监控系统的设计与实现[J].电子制作,2022,30(15):38-40.DOI:10.16589/11-3571/tn.2022.15.019.舒李俊.基于NB-IoT的鱼塘水质参数采集与远程监控系统的设计与实现[D].武汉工程大学,2022.DOI:10.27727/ki.gwhxc.2022.000514.陈文晟.鱼塘水质监控系统的开发与设计[D].大连海洋大学,2022.DOI:10.27821/ki.gdlhy.2022.000141.熊守丽.基于物联网鱼塘智能监控系统的软件设计[J].信息技术与信息化,2021,(04):230-231.

附录附录1硬件总电路图附录2单片机部分程序#include"main_program.h"#include"sensor_hal.h"#include"vibration_sensor.h"/**************************************变量或函数声明**************************************/voidreceive_json_data(void);voidsend_json_data(void);voidboard_sensor_collect(void);voidparse_json_data(uint8_t*json_msg);voidloop_scan(void);/***********************************************************************************************************变量定义***********************************************************************************************************/staticTimertimer_led_blink;staticTimertimer_sensor_collect;staticTimertimer_receive_msg;staticTimertimer_send_msg;staticTimertimer_loop_scan;uint8_talarm_value=0;uint8_thuman_value=0;intbeep_state=0;intred_state=0;intgreen_state=0;intalarm_state=0;/***********************************************************************************************************初始化程序,开机只执行一次***********************************************************************************************************/voidsetup(void){ printf("Hello,World!\r\n"); //*************************传感器和外设初始化********************

温馨提示

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

评论

0/150

提交评论