版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
声明本人郑重声明:所呈交的设计是本人在指导教师的指导下进行的研究工作及取得研究结果。设计在引用他人已经发表或撰写的研究成果时,已经作了明确的标识;除此之外,设计中不包括其他人已经发表或撰写的研究成果,均为独立完成。其他同志对本文所做的任何贡献均已在设计中做了明确的说明并表达了谢意。学生签名:___________年月日导师签名:___________年月日
摘要II-摘要随着科技的发展,人们对于饮水机的水质问题有了更深入的关注,为了更好的实现对于饮水机水质的智能监控,提高对于饮水安全的重视。通过STM32F103单片机作为核心控制器,TDS浊度检测模块、DS18B20温度采集模块、RFID射频模块和供电电路作为数据采集输入端,以OLED显示屏、加热继电器、蜂鸣器和WIFI模块,用于显示信息、控制加热,以及远程监控和操作等功能。系统的设计旨在提供智能化的饮水解决方案,通过实时监测浊度和水温,以及远程控制功能,提高了用户对饮水机的便捷性和安全性。同时,采用物联网技术和通信技术,使得用户可以通过手机等设备随时随地监控和操作饮水机,实现了智能化的远程管理。该设计不仅提高了饮水机的智能化水平,也为用户提供了更加便捷、安全的饮水体验。关键词:饮水机控制;无线传输;传感器采集;继电器控制
Abstract绪论1.1项目背景与意义1.1.1项目背景随着科技的快速发展,智能化、自动化已经成为校园管理的重要趋势。校园饮水机作为学生们日常饮水的必备设施,其安全性和可靠性直接关系到学生的健康和生活质量。从安全性的角度来看,传统的饮水机往往缺乏有效的监控和报警机制。一旦饮水机出现故障或水质问题,往往难以及时发现和解决,给学生的饮水安全带来潜在威胁。因此,开发一套校园饮水机监控报警系统,能够实时监测饮水机的运行状态和水质情况,一旦发现异常,立即发出报警信号,提醒管理人员及时处理,从而保障学生的饮水安全REF_Ref21719\r\h[1]。研发的智能校园饮水机监控报警系统通过集成先进的传感技术、通信技术和智能算法,为校园饮水机带来了革命性的变革。通过浊度与温度传感器,系统能够实时监控水质和水温,确保学生饮用的水安全、健康。同时,利用WiFi、蓝牙等无线通信技术,学生可以随时随地通过手机或其他智能设备查看并控制饮水机,实现了真正的智能化和远程控制REF_Ref21886\r\h[2]。校园智能校园饮水机监控报警系统不仅解决了传统饮水机存在的众多问题,还为学生提供了更加便捷、安全、智能的饮水体验。这一系统的推广与应用,无疑将为校园生活带来更多的便利与健康保障,同时也为智能家居产业的持续发展注入了新的活力。1.1.2项目意义校内智能校园饮水机监控报警系统的研究意义与应用价值,校内智能饮水机,作为一种结合了智能化技术的饮水设备,其监控报警系统不仅为学生和教职工提供了更为便捷、安全的饮水服务,还蕴含着深远的研究意义和实际应用价值。学校是大量学生聚集的场所,饮水安全至关重要。智能饮水机的监控报警系统能够实时监测水质和水温,一旦发现水质不达标或水温异常,会立即触发报警机制,确保师生饮用的水安全无污染,从而有效维护校园内的饮水健康REF_Ref22160\r\h[3]。在智能化日益普及的今天,校内智能饮水机通过连接智能手机等设备,使师生能够随时随地查看饮水机的状态、调整水温、水量等参数。这种智能化的操作方式,不仅提升了校园生活的便利性,还大大增强了用户的使用体验REF_Ref22291\r\h[4]。传统的饮水机在无人使用时往往仍会消耗大量能源,而智能饮水机则能通过其监控报警系统实现智能管理,如定时开关、节能模式等,有效降低能源消耗,响应节能环保的号召,为绿色校园建设贡献力量REF_Ref22425\r\h[5]。作为智能校园建设的重要组成部分,智能饮水机的推广和应用有助于推动校园整体智能化水平的提升。通过研究和完善智能校园饮水机监控报警系统,可以进一步丰富智能校园的产品线,提升其整体竞争力。智能校园饮水机监控报警系统的研发涉及传感技术、通信技术等多个领域。这一系统的不断完善和优化,不仅推动了相关技术的进步,还为科研人员提供了一个实践和创新的平台。随着健康意识和智能化需求的提升,智能饮水机在校园市场的需求日益增长。研发和推广智能校园饮水机监控报警系统,不仅满足了市场需求,还有望带动相关产业的发展,创造可观的经济效益REF_Ref22559\r\h[6]。综上所述,校内智能校园饮水机监控报警系统的研究与应用,在保障健康饮水、提升校园生活智能化水平、促进节能环保、推动科研技术创新以及满足市场需求等方面均展现出重要价值,对推动智能校园建设和提升师生生活质量具有积极意义。1.2国内外研究现状1.2.1国外研究现状分析国外在校园饮水机监控报警系统的研究方面已经取得了显著的进步。借助物联网、高精度传感器等尖端技术,这些系统如今能够实时监控饮水机的水温、水位和水质等核心参数,确保用户能随时享用到安全、健康的水。更为值得一提的是,通过先进的智能算法和数据分析技术,系统不仅能预测饮水机的运行状态,还能在故障发生前进行预警,从而大大降低了饮水机的维护成本和使用风险REF_Ref22640\r\h[7]。国外的研究还非常注重系统的集成性和兼容性,这使得校园饮水机监控报警系统能够与其他智能家居系统无缝对接,为用户提供更加便捷、智能的家居体验。同时,严格的法规和标准要求也确保了这些系统的安全性和可靠性,进一步增强了消费者对产品的信任度。然而,尽管国外在校园饮水机监控报警系统的技术上有着不俗的表现,但也存在一些不可忽视的缺陷。首要的问题就是安全漏洞风险。由于这些系统高度依赖无线网络和智能设备,因此它们很容易成为黑客攻击的目标。一旦遭受攻击,不仅用户的隐私可能泄露,整个系统的稳定性也会受到严重影响REF_Ref22722\r\h[8]REF_Ref23022\r\h。国外在校园饮水机监控报警系统的研究方面既有值得称赞的成就,也存在一些亟待解决的问题。未来,随着技术的不断进步和市场需求的变化,校园饮水机监控报警系统也将为用户提供更加全面、高效的服务REF_Ref22797\r\h[9]。1.2.2国内研究现状分析在国内,校园饮水机监控报警系统的研究正日益受到重视。过去,传统的监控方式主要依赖人工巡检,这种方式效率低下,难以实现实时监控。然而,随着科技的进步,尤其是物联网和传感器技术的发展,校园饮水机监控报警系统正朝着智能化、自动化的方向迈进REF_Ref22888\r\h[10]。现代校园饮水机监控报警系统通常采用各种传感器,如温度传感器、水位传感器等,实时监测饮水机的各项关键参数。一旦这些参数出现异常,系统能够立即触发报警机制,通过多种方式如短信、APP推送等及时通知管理人员,以便他们迅速采取应对措施REF_Ref23022\r\h[11]。2020年,北京工业大学曾引入了一款的智能饮水机管理系统,该系统不仅实现了对饮水机的实时监控,还通过大数据分析优化了饮水机的维护和管理。这种智能化的管理方式,不仅提高了饮水机的运行效率,也为保障师生的饮水安全提供了有力支持。可以说,国内校园饮水机监控报警系统的研究正在不断深入,科技手段的应用使得监控更为准确和高效。1.2.3现状分析在国内外校园饮水机监控报警系统的研究与发展中,我们可以观察到显著的进步与一些共存的挑战。国内在校园饮水机监控报警系统的研究上正逐步向智能化、自动化方向迈进,通过引入物联网和传感器技术,实现对饮水机的实时监控与数据管理,从而提升了系统的安全性和运行效率。然而,国内系统在某些方面仍面临挑战,如网络安全防护的加强、误报率的降低以及系统功能的多样化等,同时缺少对于水质的监测和应用性功能。此外,国内在法规和标准建设方面还需进一步完善,以确保产品的质量和安全性REF_Ref23163\r\h[12]。相比之下,国外在校园饮水机监控报警系统的技术创新和系统集成方面走在了前列。其利用先进的传感器技术、智能算法和数据分析工具,能够精准监控饮水机的运行状况,实现故障的预警与自动处理。同时,国外在网络安全防护、降低误报率以及提高系统应对能力等方面也取得了显著的成效。但是,这些先进系统的成本往往较高,且对于复杂环境的适应性还需进一步提升。综合分析,国内外在校园饮水机监控报警系统的研究中均表现出了优势与不足。国内系统在逐步向智能化、自动化方向发展的同时,还需降低误报率并丰富系统功能。而国外系统虽在技术创新和系统集成方面领先,但成本较高且对复杂环境的适应性和应用领域有待加强。1.3章节内容安排本文对校园饮水机监控报警系统的章节安排如下:第一部分,查阅并学习与本课题相关基础知识,通过对本课题相关的论文的研读,陈述本课题项目产生背景以及对项目进行相关研究的意义,并对校园饮水机监控报警系统作出的突出贡献或关键性技术突破进行介绍。认真学习上述资料中的内容,将得出的问题和结论做好笔记从而能够完成对问题的分类工作,提出问题并在相关实验中解决对应问题。第二部分,对本次设计中的关键模块进行构思,对其工作原理作进行一步宏观的叙述。在设计的构思和设计的原理了解后,将系统的各个组成部分相关信息进行一下比较详细的介绍。第三部分:针对第二章的方案讨论进行系统的硬件设计,将方案构思落实至硬件电路设计。第四部分:对本系统的软件代码思路进行阐述,对于介绍系统硬件的软件驱动方案。在设计好的硬件系统上进行软件程序的测试优化,与预期的设计成果相对比,验证本次毕业设计是否满足预期的设计需求。第五部分:总结本设计中取得的优秀成果,对实物制作调试中遇到的问题进行分析反思并提供行之有效的解决方案。阐述现阶段在课题研究上所存在问题以及现实局限性,对设计方案中的局限因素的产生提出了理论性假设,为后来者的研究提供了解决方向。2系统方案设计毕业设计2系统方案设计2.1设计方案选择针对基于校园饮水机监控报警系统的设计,主要的方案选择如下:单片机选择:目前选择了STM32F103单片机作为核心控制器,这是一种常用的低功耗、高性能的微控制器,具有丰富的外设接口和强大的计算能力,适合于本系统的需求。传感器选择:需要选择适合的浊度检测模块和温度采集模块,建议采用稳定可靠、精度高的传感器,例如浊度传感器和DS18B20数字温度传感器。用户界面选择:OLED显示屏可以实现信息的实时显示。通信模块选择:WIFI模块可以实现远程监控和操作。电源供电:电源供电部分需要稳定可靠,建议采用适配器供电或者锂电池供电,并考虑电池充电管理功能。加热控制:使用继电器确保能够稳定可靠地控制加热功能。综上所述,方案选择应该根据系统的实际需求、技术可行性、成本和市场需求等因素进行综合考虑,确保设计方案能够满足用户的需求并具有较高的性能和可靠性。2.2总体设计方案本设计采用STM32F103单片机作为核心控制器,配合其他模块构建了校园饮水机监控报警系统。系统包括中控部分、输入部分和输出部分。中控部分采用STM32F103单片机,负责获取输入数据,并经过内部处理后控制输出。主机输入部分包括浊度检测模块、DS18B20温度采集模块和RC522无线射频识别(RFID)模块。浊度检测模块用于检测当前浊度,DS18B20温度采集模块用于监测当前水温,而RC522无线射频识别(RFID)模块于用户操作,如实现自助式的刷卡计费和余额管理等功能。供电电路为整个系统提供电源。输出部分包括OLED显示屏、加热继电器、加水继电器、蜂鸣器和WIFI模块。加热继电器用于控制加热功能,加水继电器用于控制加水功能,蜂鸣器在温度超过设定阈值时进行报警。WIFI模块实现远程监控和操作,用户可通过手机等设备查看水温、浊度,设置阈值,切换模式,以及控制加热和加水等功能。这一系统设计旨在提供智能化的饮水解决方案,通过实时监测和远程控制功能,提高了用户对饮水机的便捷性和安全性。整体系统框图如下:图2.1系统框图根据上述框图部分,进行总结分析,主要如下:(1)温度的检测与控制:通过温度传感器和加热棒实现对于饮水机温度的检测和控制。(2)水质的检测与报警:通过TDS浊度检测实现对于水箱内水质的检测,当超过设定的参数值的时候可以进行远程的报警。(3)手动消毒:通过控制臭氧消毒系统和紫外消毒,可以实现对于水箱内水的清洁和消毒功能。(4)通过RFID可以实现对于校园卡的识别和消费功能,学生可以刷卡取水,根据出水量计算费用。(5)通过设计通信模块,实现远程通信,管理者可以通过APP查看相关的数据,并且可以通过APP接收报警信息。(6)OLED主要用于人机交互,显示相关的信息,同时蜂鸣器用于报警,MOS的作用与三极管作用相似,起到驱动的能力。2.3设计思路校园饮水机监控报警系统的设计思路主要包括以下几个方面:(1)功能需求分析:首先对校园饮水机监控报警系统的功能需求进行分析和明确,包括实时监测水质、水温等参数、远程监控和控制、异常情况报警等功能。根据用户需求和实际应用场景确定系统需要具备的功能。(2)硬件选型分析:根据功能需求,选择适合的硬件设备和传感器,如浊度传感器、温度传感器、WiFi模块、液晶显示屏、继电器等。确保硬件设备具有稳定性、可靠性和高性能,能够满足系统的要求。(3)系统架构分析:设计系统的整体架构,包括中控部分、输入部分和输出部分。中控部分采用STM32等单片机作为核心控制器,负责数据处理和控制逻辑;输入部分包括浊度传感器、温度传感器、RFID射频模块,用于采集环境参数和用户操作;输出部分包括液晶显示屏、继电器、蜂鸣器等模块,用于显示信息和执行控制命令。(4)传感器数据采集:编写相应的程序,实现对浊度、温度等参数的实时采集和处理。通过传感器将环境参数转换成数字信号,并通过中控部分进行处理和存储。(5)通信部分分析:系统可以集成WiFi模块,实现与智能手机或其他智能设备的连接,搭建远程监控和控制平台。通过手机App或Web页面,用户可以实时监测饮水机的状态、调节水温、浊度等参数,远程控制加热、加水等操作。设计直观友好的用户界面,包括液晶显示屏上的操作界面和手机App或Web页面。用户可以通过界面直观地了解饮水机的工作状态和参数,并进行相应的操作和调节。(6)异常情况报警:设计异常情况检测算法,实现对水质异常、温度异常等情况的实时监测和报警。当检测到异常情况时,系统会触发报警机制,通过蜂鸣器、液晶显示屏等方式向用户发出警报,并同时将报警信息发送至远程监控平台。(7)系统集成和测试:将各个模块进行集成,进行整体系统的调试和测试。通过模拟实际使用场景,验证系统的稳定性、可靠性和性能,确保系统能够正常工作并满足用户需求。综上所述,校园饮水机监控报警系统的设计思路是基于功能需求分析和硬件选型分析和通信部分分析进行分析,验证系统具备一定的可行性。2.4实现功能本次设计的校园饮水机监控报警系统主要具有以下功能:(1)实时监测温度:通过DS18B20温度采集模块和加热棒实现对于饮水机温度的检测和控制。(2)水质监测功能:使用浊度传感器,安装在水箱内。设定一个浊度阈值,当浊度超过这个阈值时,触发报警,同时将浊度数据实时上传到云端,以便进行数据分析和管理。(3)本系统采用RFID读写器模块,集成到饮水机系统中,学生可以通过校园卡实现取水,并从其账户中扣除相应的费用。(4)远程报警功能:当浊度超过阈值或其他异常情况发生时,系统通过无线网络发送报警信息到云端服务器。(5)设计手机APP,接收并显示报警信息,确保管理者可以及时收到报警。(6)自动清洁功能:在饮水机系统中设计臭氧消毒系统和水循环系统,设计一个自动清洁模式,当饮水机处于该模式时,启动臭氧消毒系统和水循环系统,通过紫外照射实现自动清洁,确保饮用水质量。本次设计校园饮水机监控报警系统主要实现了实时监测水质和温度、RFID模块、信息显示、温度异常报警、远程监控和控制以及加热和加水功能等多项实用功能,提升了用户的使用体验和便利。2.5相关技术理论分析2.5.1传感器采集技术本次利用到的传感器技术是温度采集和浊度采集,温度采集和浊度采集是在许多工程和应用中常见的传感器技术,它们在许多领域中都发挥着重要作用,从工业生产到环境监测都有广泛的应用。温度采集传感器技术:温度采集是指通过传感器对环境或物体的温度进行检测和记录的过程。常见的温度采集传感器技术原理如利用热敏电阻来对温度进行采集,热敏电阻是一种电阻随温度变化而变化的电阻。随着温度的升高,其电阻值呈指数变化,通过串联一个固定阻值的电阻,然后采用ADC采集分压,就能根据对应的采集值与温度REF_Ref23587\r\h[14]。热敏电阻的优点是价格低廉、响应速度快,但在一定温度范围内精度较高。还有热敏电容利用不同材料的热电效应来测量温度。它们的优点包括高温度范围和良好的线性性能,但精度相对较低。浊度采集传感器技术:浊度采集是指通过传感器对浊度的高度进行检测和记录的过程。常见的浊度采集传感器技术包括:浮子式浊度传感器,浮子式浊度传感器利用浮子的浮沉来检测液体的浊度。随着液体的涨落,浮子的位置改变,传感器通过检测浮子的位置来确定浊度REF_Ref23731\r\h[15]。超声波浊度传感器:超声波浊度传感器通过发射超声波脉冲并测量其回波时间来确定液体表面到传感器的距离,从而确定浊度高度。这种传感器具有非接触式测量、测量范围广等优点。电阻式浊度传感器:电阻式浊度传感器利用液位高度与电阻值的相关性来测量浊度。它们通过测量电阻值的变化来确定浊度高度,但需要考虑液体的导电性和环境条件对电极的影响。压力式浊度传感器:压力式浊度传感器通过测量液体表面施加在传感器上的压力来确定浊度高度。传感器的底部与液体接触,液体的重力将在传感器上产生一个压力,通过测量这个压力来确定浊度REF_Ref23960\r\h[16]。温度采集和浊度采集传感器技术在各种应用中发挥着重要作用,如工业自动化、环境监测、农业灌溉等。它们的不同原理和特点使得用户可以根据具体应用需求选择合适的传感器来实现精确、稳定的温度和浊度监测。本次主要应用在家用电器的饮水机方面。2.5.2无线通信技术本次使用WIFi实现无线通信,Wi-Fi技术是一种无线局域网技术,允许电子设备之间进行无线互联和通信。它已成为现代生活和工作中不可或缺的一部分,被广泛应用于家庭、企业、学校、公共场所等各种场景。Wi-Fi技术原理和工作方式:Wi-Fi技术基于IEEE802.11系列标准,采用了无线电波在2.4GHz和5GHz频段的通信。它使用了CSMA/CA(载波侦听多路访问/碰撞避免)协议,通过Wi-Fi路由器或接入点(AP)来连接无线设备。Wi-Fi设备包括无线网卡、智能手机、平板电脑、笔记本电脑、智能家居设备等。Wi-Fi通信的工作方式主要包括以下步骤:扫描:Wi-Fi设备扫描周围的Wi-Fi网络,寻找可用的接入点。关联:设备选择一个接入点,并与其建立连接。DHCP获取IP地址:设备通过DHCP(动态主机配置协议)获取IP地址,以便在网络上进行通信。数据传输:设备通过Wi-Fi网络与其他设备或互联网进行数据传输。Wi-Fi技术的优点:便捷性,Wi-Fi技术消除了使用有线连接时的限制,使设备之间的连接更加便捷和灵活。灵活性:Wi-Fi网络可以轻松覆盖大范围的区域,适用于各种场景,如家庭、办公室、商场等。高速度:Wi-Fi技术支持高速数据传输,满足了现代人对快速互联网访问的需求。兼容性:Wi-Fi设备兼容性广泛,可以连接各种类型的设备,无论是智能手机、平板电脑还是智能家居设备。Wi-Fi技术的应用:家庭网络:Wi-Fi技术是家庭网络的主要组成部分,支持多个设备同时连接互联网,并实现设备之间的数据共享和媒体播放。企业网络:Wi-Fi网络在企业中广泛应用于办公室、会议室和生产车间等场所,提高了员工的工作效率和生产效率。公共场所:Wi-Fi网络覆盖了商场、餐厅、咖啡馆、机场等公共场所,为用户提供了便捷的上网体验。物联网应用:Wi-Fi技术也被广泛应用于物联网领域,实现智能家居、智能城市、智能医疗等各种应用场景REF_Ref24090\r\h[17]。随着技术的不断发展,Wi-Fi技术的速度也在不断提高,未来可能会出现更高速的Wi-Fi标准。更广的覆盖范围:Wi-Fi技术正在不断改进,以覆盖更广泛的区域,包括室外、城市和农村地区。随着物联网的发展,对低功耗的Wi-Fi技术需求日益增加,未来Wi-Fi技术可能会更加注重功耗优化。Wi-Fi技术作为一种高效、便捷的无线通信技术,将继续在各个领域发挥重要作用,推动着数字化社会的发展和智能化生活的普及。本次运用WIFI模块的过程也是学习的过程,为未来投入电子行业打下基础。2.5.3PID温度控制技术本次采用PID控制实现对设定温度的恒温控制,PID控制是一种常用的闭环控制方法,它通过不断地调整控制量,使系统的输出值与期望值尽可能接近,从而实现对系统的稳定控制。PID控制由比例(P)、积分(I)和微分(D)三个部分组成,分别对应控制器的三个调节参数REF_Ref24335\r\h[18]。下面详细介绍PID控制的工作原理和各个参数的作用:比例(Proportional)控制:比例控制器根据当前误差的大小,以一定的比例对控制量进行调节。其调节量与误差成正比,即误差越大,调节量越大。比例控制主要用于消除稳态误差,提高系统的静态性能。积分(Integral)控制:积分控制器根据误差的累积值对控制量进行调节。它的作用是消除系统的稳态误差,通过积累误差,逐渐使系统达到稳定状态。积分控制主要用于消除稳态误差和提高系统的动态性能。微分(Derivative)控制:微分控制器根据误差的变化率对控制量进行调节。它的作用是抑制系统的振荡和提高系统的响应速度。微分控制器通过检测误差的变化率,预测系统未来的趋势,从而对控制量进行适当的调整。PID控制的工作原理:PID控制器通过不断地调节比例、积分和微分三个参数,使系统的输出值尽可能接近期望值。具体工作原理如下:比例部分根据当前误差大小对控制量进行调节,消除稳态误差;积分部分根据误差的累积值对控制量进行调节,消除系统的稳态误差;微分部分根据误差的变化率对控制量进行调节,提高系统的响应速度和稳定性。PID控制根据系统的动态特性和控制要求,通过调节比例、积分和微分三个参数来优化系统的控制效果。通常情况下,需要通过试验和调试来确定合适的PID参数,以满足系统的控制要求。本次主要实现对温度的PID自动控制。下面是PID控制在温度自动控制中的实现步骤:1.设置目标温度:首先,需要设定系统的目标温度。这个目标温度可以是预先设定的固定值,也可以是动态变化的值,根据具体的控制需求来确定。这个我们通过按键设置。2.获取当前温度:系统通过温度传感器实时获取当前的温度值。这个值将作为反馈信号,用于和目标温度进行比较,计算出温度误差。3.计算温度误差:根据目标温度和当前温度的差值,得到温度误差。温度误差通常定义为目标温度与当前温度之差。4.PID计算:PID控制器根据比例、积分和微分三个部分计算出控制量。5.调节控制量:根据PID计算得到的控制量,系统调节继电器,通过加热或者制冷实现达到目标温度。6.实时监测和调整:系统持续地监测温度变化和控制效果,实时调整PID控制器的参数,以确保系统的稳定性和响应性。通过不断地调整PID参数,使系统的温度稳定在目标值附近。通过以上步骤,PID控制器能够实现对温度的自动控制。它可以适用于各种温度控制场景,包括恒温箱、加热器、冷却器等。PID控制器具有调节灵活、控制精度高的优点,因此在工业生产和实验室等领域得到了广泛的应用。2.6可行性分析本次设计校园饮水机监控报警系统具有一定的可行性,主要体现在以下几个方面:技术可行性:采用STM32F103单片机作为核心控制器,结合各种传感器模块和通信模块,构建了系统的硬件平台。STM32F103单片机具有强大的计算和控制能力,能够满足系统对数据采集、处理和控制的需求。同时,各种传感器模块和通信模块的应用也基于成熟的技术,具有可靠性和稳定性。功能可行性:系统涵盖了浊度检测、温度监测、界面交互、信息显示、远程控制等多项功能,这些功能是智能饮水机的基本需求,能够满足用户对智能饮水机的实际需求。用户体验可行性:通过OLED显示屏实时显示信息、独立按键进行界面切换和操作、WIFI模块实现远程监控和操作,提高了用户的使用便捷性和体验感。用户可以随时随地通过手机等设备监控和控制饮水机,实现了智能化的远程管理。市场可行性:随着人们对智能家居的需求不断增加,智能饮水机作为智能家居的一部分,具有较大的市场潜力。尤其是在一些办公场所、学校、商场等公共场所,智能饮水机能够提供更加便捷、安全的饮水服务,具有较高的市场需求。综上所述,校园饮水机监控报警系统具有较高的技术可行性、功能可行性、用户体验可行性和市场可行性,有望成为智能家居领域的一种创新产品,为用户提供智能化、便捷、安全的饮水解决方案。3硬件设计毕业设计3硬件设计3.1STM32单片机最小系统板本设计采用STMF103单片机为主控芯片,STM32单片机的最小系统通常由四个基本部分组成:主芯片、时钟电路、复位电路和电源电路。主芯片(MicrocontrollerUnit,MCU):主芯片是整个系统的核心,通常采用STM32系列的单片机。STM32单片机集成了CPU、存储器、外设和各种接口,能够完成各种控制任务。时钟电路:时钟电路提供了单片机需要的时钟信号,以驱动单片机内部的各种时序操作。它包括晶振、晶振负载电容和时钟源选择电路等组成部分。在STM32最小系统中,晶振的频率通常为8MHz或16MHz,提供了单片机运行时的时钟信号REF_Ref24492\r\h[19]。复位电路:复位电路用于在系统上电或发生异常情况时将单片机复位到初始状态,保证系统的可靠启动和运行。它包括复位按键、复位电路和复位源选择电路等部分。电源电路:电源电路为整个系统提供稳定的电源供应。它通常包括稳压器、电容滤波器和电源选择开关等组成部分。STM32单片机通常工作在3.3V或5V的电压下,因此需要通过稳压器将输入电压(如5V)转换为合适的工作电压。这些部分共同构成了STM32单片机的最小系统,为单片机的正常运行提供了必要的支持和保障,该芯片是系统的控制核心。在本系统中,STM32F103C8T6单片机的部分引脚被用于连接和控制各个功能模块。STM32F103c8t6单片机的PA6和PA7引脚接到MOS管控制电路的接口,主要实现出水和加热的功能。STM32F103C8T6单片机的PA8接口接到DS18B20温度传感器的DQ(数字信号)接口,主要实现的是数据通信的功能。STM32F103C8T6单片机的PA15接口接到蜂鸣器的NPN接口,通常用于控制蜂鸣器的开关和发声。通过PA12控制这个三极管实现系统功能,完成对弈继电器的控制,间接的控制水泵的开启。PB0接口作为STM32F103C8T6单片机的一个通用I/O引脚,可以配置为输入或输出模式。当配置为输出模式时,单片机可以通过PB0接口向TDS浊度传感器发送控制信号或命令;当配置为输入模式时,单片机可以读取TDS浊度传感器通过I/O接口输出的测量数据或状态信息。STM32F103c8t6单片机的PB1引脚接到MOS管控制电路的接口,主要实现紫外线消毒的功能。当STM32F103C8T6的PB3接口接到RFID-RC522模块的RST(复位)接口时,其主要功能是用于控制RFID-RC522模块的复位操作。STM32F103C8T6单片机的PB4接口接到RFID-RC522模块的MISO(MasterInSlaveOut,主入从出)接口,主要用于SPI(SerialPeripheralInterface,串行外设接口)通信。当STM32F103C8T6单片机的PB5接口接到RFID-RC522的MOSI(MasterOutSlaveIn,主出从入)接口时,PB5接口将作为SPI(SerialPeripheralInterface,串行外设接口)通信中的一个输出引脚。当STM32F103C8T6单片机的PB6接口接到RFID-RC522的SCK(SerialClock,串行时钟)接口时,PB6接口将用于产生SPI(SerialPeripheralInterface,串行外设接口)通信所需的时钟信号。STM32F103C8T6单片机的PB14接口是一个通用I/O引脚,具有多种功能,包括输入/输出、外部中断等。而OLED显示屏的SDA接口在I²C通信中作为数据管脚,用于传输数据。STM32F103C8T6单片机的PB15接口接到OLED显示屏的SCL接口,其主要功能是用于时钟信号传输。在I²C总线通信协议中,SCL(SerialClock,串行时钟)线用于同步数据传输的时钟信号。图3.1最小系统图3.2TDS浊度传感器TDS即总溶解固体,是衡量水体浊度的重要指标。浊度反映了水体中悬浮物的含量,直接影响到水质的清洁卫生程度。TDS传感器能够准确检测出水体的浊度值,在系统中用于检测校内饮水机内的浊度数值。该传感器的工作原理是利用红外线发射和接收电路。红外发射管发出一束光线穿过被测水体,在另一侧的光电二极管接收未被遮挡的光线。发射光和接收光的强度之比,就反映了水体的透光率,可以很好地估测出溶解物的浓度REF_Ref24596\r\h[20]。TDS传感器具有测量精度高、防护性强、无污染、寿命长等优势。该系统的TDS传感器输出为模拟电压信号,对应于一定的浓度范围。通过STM32的ADC将模拟信号转换为数字量,经过计算处理后,即可获得水体浊度的准确数值。当浊度超过设定的阈值时,单片机将启动报警,同时控制臭氧发生器对水体进行消毒处理,确保饮用水的清洁卫生。STMF103c8t6单片机的GND(接地)接口接到TDS浊度传感器的GND接口,主要功能是为电路提供一个共同的参考电位或基准点。STM32F103C8T6单片机的+5V接口接到TDS浊度传感器的VCC接口,主要是为TDS浊度传感器提供所需的工作电压。在电子电路中,VCC通常表示电源的正极,而GND表示电源的负极或地线。STM32F103C8T6的+5V接口是一个电源输出引脚,其功能是提供5V的电压供外部设备使用。当这个接口接到TDS浊度传感器的VCC接口时,它就是在为TDS浊度传感器提供稳定的5V工作电压,以确保传感器能够正常工作并进行浊度测量。PB0接口作为STM32F103C8T6单片机的一个通用I/O引脚,可以配置为输入或输出模式。当配置为输出模式时,单片机可以通过PB0接口向TDS浊度传感器发送控制信号或命令;当配置为输入模式时,单片机可以读取TDS浊度传感器通过I/O接口输出的测量数据或状态信息。接口电路图如图3.2:图3.2浊度传感器接口电路图3.3温度传感器温度传感器DS18B20是一种数字式温度传感器,通过单总线接口通信,通过一个端口进行输出,能够实时测量环境温度并将其以数字形式输出。本次采用温度传感器对饮水机内系统的温度进行监测。STM32F103C8T6单片机的+3V3接口接到DS18B20温度传感器的VDD接口,主要是为DS18B20温度传感器提供工作电压。在DS18B20温度传感器中,VDD是一个外接供电电源输入端,它接收的电压范围通常在3V到5.5V之间。因此,STM32F103C8T6单片机的+3V3接口提供的3.3V电压是符合DS18B20的工作电压要求的。这个连接确保了DS18B20温度传感器能够正常工作,并准确地测量温度。DS18B20温度传感器会将测量到的温度数据通过其DQ(数字信号)引脚传输给STM32F103C8T6单片机,然后由单片机进行相应的处理或控制。STM32F103C8T6单片机的PA8接口接到DS18B20温度传感器的DQ(数字信号)接口,主要实现的是数据通信的功能。DS18B20温度传感器是一种一线式数字温度传感器,它只使用一根数据线(DQ)与微处理器进行通信。在STM32F103C8T6单片机与DS18B20连接时,DQ接口通常被连接到STM32F103C8T6的一个GPIO(通用输入输出)引脚上。当STM32F103C8T6需要读取DS18B20测量到的温度数据时,它会通过PA8接口向DS18B20发送一系列的控制命令。DS18B20在接收到这些命令后,会根据命令的内容执行相应的操作,例如启动温度转换、读取温度数据等。然后,DS18B20会将测量到的温度数据以数字信号的形式通过DQ接口发送回STM32F103C8T6。STM32F103C8T6在接收到这些数据后,会对其进行解析和处理,从而得到当前的温度值。通过这种方式,STM32F103C8T6可以实时地获取DS18B20测量到的温度数据,并根据需要进行相应的控制或显示等操作。STM32F103C8T6单片机的GND接口接到DS18B20温度传感器的GND接口,主要是为了提供统一的参考地电平。接口电路图如下图3.3:图3.3温度传感器接口电路图三个引脚中,VDD和GND用于对系统进行供电,I/O用于进行数据的传输。3.4MOS管控制电路MOS管是一种场效应管,具有体积小、功率密度高、响应速度快等优点,非常适合于功率控制和开关控制应用。该系统采用三个MOS管分别控制出水、加热和紫外线消毒三个主要功能。MOS管作为一种电压控制型器件,其漏源极之间的开通和关断完全由栅极电压决定。当栅极施加一个高电压时,MOS管处于导通状态;当栅极电压为0V时,MOS管截止。由于控制端与功率端是完全隔离的,无需输入电流,所以MOS管的控制回路功耗极低。该系统单片机的GPIO端口直接驱动MOS管的栅极,通过高低电平控制MOS管导通或截止。当MOS管导通时,就可以使相应的电器设备通电工作,比如出水电磁阀、加热管、UV灯管等。反之,断开MOS管就能切断设备的电源。MOS管的开关便捷可靠。特别需要指出的是,为了满足各功能部件的功率需求,该系统采用了大功率MOS管,能够承受几安培甚至几十安培的大电流。同时,MOS管还具有耐高压的优点,在控制脉冲电源和高频变压器等容易出现高压条件的场合也表现良好。MOS管以其控制简单、承受能力强的优势,成为了该系统控制功率型负载的理想选择。与之相比,机械继电器存在寿命短、抗震性差等缺陷,已经很难满足现代智能控制的要求。电路图如下:图3.4MOS管控制电路图3.5继电器控制电路本次使用继电器实现单片机小信号对外围大电流器件的控制,通过NPN三极管实现对单片机输出电流的放大,三极管(晶体管)可以用来控制继电器,实现对电路的开关控制。三极管具有放大和开关功能,通过在其基极施加控制电压,可以控制其集电极和发射极之间的电流流动。在三极管的工作中,一般会有三个极端:发射极(Emitter)、基极(Base)和集电极(Collector)。继电器是一种电控开关,通过控制小电流输入来实现对大电流电路的开关控制。继电器通常由线圈、触点和机械开关组成,当线圈通电时,产生磁场,使触点吸合或断开,从而实现对电路的控制,本系统中通过PA12控制这个三极管实现系统功能,完成对弈继电器的控制,间接的控制水泵的开启。三极管控制继电器原理:在电路中,将三极管的基极连接到控制信号端,集电极连接到继电器的线圈,发射极连接到地(GND)。当控制信号施加在三极管的基极上时,将导通基极和集电极之间的电流,使得继电器的线圈通电,产生磁场,吸引触点闭合或断开,从而实现对电路的开关控制。通过三极管控制继电器,可以实现对各种电路的开关控制,接口电路图如下3.5:图3.5继电器控制电路图3.6显示电路液晶显示模块通过控制液晶分子在电场作用下的排列变化来影响光线的透过,从而实现对监测的温度浊度值的显示。液晶是一类介于固态和液态之间的有机化合物,在常温条件下具有液体的流动性和晶体的光学各向异性。通过在液晶层中施加电场,可以改变液晶分子的排列方向,从而调节透光性,进而实现对像素的控制。在液晶显示模块中,STM32控制对应的电平信号输入,通过改变电场的作用,使液晶分子的排列状态发生变化,从而控制像素的透明度。具体而言,当电场作用于液晶时,液晶分子会重新排列,使得光线透过时的偏振方向发生改变,从而实现像素的亮度调节。通过控制不同区域的电场强度和方向,可以实现图像的显示效果。本模块通过I²C与单片机进行通信,通过SDA和SCL实现对于OLED的控制,其中VCC和GND用于给系统进行稳定的供电。STM32F103C8T6单片机的PB14接口是一个通用I/O引脚,具有多种功能,包括输入/输出、外部中断等。而OLED显示屏的SDA接口在I²C通信中作为数据管脚,用于传输数据。当STM32F103C8T6单片机的PB14接口接到OLED显示屏的SDA接口时,其主要功能是实现单片机与OLED显示屏之间的数据通信。具体来说,单片机可以通过PB14引脚向OLED显示屏发送数据,以控制OLED显示屏的显示内容。同时,由于SDA是数据线,因此它也可以接收来自OLED显示屏的数据,实现双向通信。STM32F103C8T6单片机的PB15接口接到OLED显示屏的SCL接口,其主要功能是用于时钟信号传输。在I²C总线通信协议中,SCL(SerialClock,串行时钟)线用于同步数据传输的时钟信号。当STM32F103C8T6单片机与OLED显示屏通过I²C总线进行通信时,PB15接口(作为SCL线)会提供时钟信号给OLED显示屏,确保数据在正确的时刻进行传输。时钟信号是I2C通信中的关键组成部分,它控制着数据传输的速率和同步性。STM32F103C8T6单片机的+5V接口接到OLED显示屏的VCC接口主要是为OLED显示屏提供工作电压。OLED显示屏的GND接口是为了建立公共的参考电平,即地线连接。这一连接在电路设计中具有至关重要的功能。接口电路如下所示:图3.6液晶显示接口电路图3.7蜂鸣器控制电路本次使用三极管实现对喇叭的控制,三极管可以用来控制电流的流动。在这个电路中,三极管将被用作开关。当三极管处于导通状态时,它允许电流流过,从而使蜂鸣器发声。当三极管处于截止状态时,它阻止电流通过,蜂鸣器停止发声。通过单片机的PA15引脚实现对于蜂鸣器的控制,控制NPN三极管进行工作,当输出的电压为高电平的时侯,系统导通,蜂鸣器开始工作。以此实现对蜂鸣器的控制,STM32F103C8T6单片机的PA15接口接到蜂鸣器的NPN接口,通常用于控制蜂鸣器的开关和发声。在电路中,NPN三极管通常被用作开关元件来控制蜂鸣器的振动。NPN三极管的集电极连接到蜂鸣器的正极,发射极连接到STM32F103C8T6的PA15引脚(或其他I/O引脚),而基极通过一个限流电阻连接到单片机的另一个I/O口(或固定的电源/地线)。当STM32F103C8T6的PA15引脚输出高电平时,NPN三极管的基极接收到正向偏置的电压,从而导通三极管,使蜂鸣器的正极与负极之间形成一个闭合回路。此时,电流通过蜂鸣器,在振动器的作用下产生声音。反之,当PA15引脚输出低电平时,NPN三极管截止,蜂鸣器的回路断开,蜂鸣器处于静音状态。在电路设计中,STM32F103C8T6单片机的GND(接地)接口连接到蜂鸣器的NPN三极管接口的功能主要是为电路提供稳定的参考电位,确保电路的正常工作。电路图如下图所示:图3.7蜂鸣器驱动电路图3.8WIFI通信控制电路本次通过WIFI实现远程通信,WIFI与单片机之间的通信原理主要基于串行通信协议,例如UART(通用异步收发传输)。UART是一种简单而常用的串行通信协议,它通过传输数据的方式实现设备之间的通信。WIFI模块通过UART接口与单片机进行连接。UART接口包括发送(TX)和接收(RX)两根线,通过这两根线实现数据的双向传输。WIFI模块将需要发送的数据通过UART发送到单片机,而单片机也可以通过UART将需要发送的数据传输给WIFI模块。首先单片机将需要发送的数据通过UART发送到WIFI模块。首先,单片机将数据发送到UART的发送引脚(TX),然后WIFI模块接收到数据,并进行相应的处理。WIFI模块接收到UART发送过来的数据后,会进行解析和处理。根据接收到的数据内容,WIFI模块可能会执行不同的操作,例如发送数据到远程服务器、执行相应的控制指令等。某些情况下,WIFI模块可能需要向单片机发送数据,例如发送传感器数据或者控制指令。在这种情况下,WIFI模块将需要发送的数据通过UART发送到单片机的接收引脚(RX),单片机接收到数据后进行相应的处理。单片机接收到UART发送过来的数据后,会进行解析和处理。根据接收到的数据内容,单片机可能会执行相应的操作,例如更新显示、控制外围设备等。总的来说,WIFI与单片机之间的通信原理是通过UART串行通信协议实现的,单片机和WIFI模块之间可以双向传输数据,实现了信息的交互和控制。该模块通过TXD和RXD实现与单片机实现数据的交互,同时通过EN进行使能,低电平的时侯,系统是有效的,其他的两个引脚用于供电。当STM32F103C8T6单片机的TX2接口(通常用于串行通信的发送端)接到ESP8266WiFi模块的RXD接口(数据的接收端)时,它们之间建立了一个串行通信链路。这样的连接使得STM32F103C8T6单片机能够通过ESP8266模块发送数据,而ESP8266模块则能够接收这些数据。当STM32F103C8T6单片机的TXD(发送数据)接口接到ESP8266Wi-Fi模块的RX2(接收数据)接口时,它们之间建立了一个串行通信连接。这种连接的主要功能是允许STM32F103C8T6单片机与ESP8266Wi-Fi模块之间进行数据交换。在STM32F103C8T6单片机与ESP8266Wi-Fi模块的连接中,将两者的GND接口连接在一起,可以确保它们之间的信号和电源都有一个共同的参考点,从而避免由于电位差引起的干扰或损坏。功能:EN接口通常用于控制ESP8266Wi-Fi模块的使能状态。当EN接口为高电平时,ESP8266模块通常处于工作状态;当EN接口为低电平时,ESP8266模块可能进入低功耗模式或关闭状态。ESP8266Wi-Fi模块需要一定的电压来驱动其内部电路和组件,以实现无线通信和其他功能。通过连接STM32F103C8T6的+5V接口到ESP8266的VCC接口,可以为ESP8266模块提供稳定的5V电压,确保其正常工作。接口电路图如下:图3.8WIFI通信接口电路图3.9RC522射频模块为了实现自助式的刷卡计费和余额管理等功能,该系统采用了RC522无线射频识别(RFID)模块。RFID技术可以对移动物品进行无线自动识别,操作方便,使用成本低。RC522模块是一款完整的无线射频读写器,内置RF收发器、编解码电路、天线电路、MCU主机等关键模块,与MCU之间通过SPI总线接口进行高速数据传输。RC522采用了13.56MHz的工作频率,属于非接触式近距离通信,感应范围约10cm。该模块遵循ISO14443A/MIFARE协议,支持多种非接触式卡片,如MifareS50/S70、Ultralight、DESFire等。用户可充值写入RF卡,手持卡片接近读卡区域,即可自动识别用户身份,完成扣费消费。系统管理员可利用RC522模块,对卡片进行添加、删除、余额查询等操作。通过简单方便的手持式无线操作,即可完成各种后台管理功能,提高了系统的用户友好性和管理效率。RC522模块体积小巧,成本低廉,与单片机配合使用,可轻松实现一套完整的非接触式射频识别系统。该RFID模块的应用,大大提升了本系统的智能化水平和用户体验。STM32F103C8T6单片机的+3V3接口接到RFID-RC522的3.3V接口,主要是为RFID-RC522模块提供工作所需的稳定电源电压。在RFID(无线射频识别)系统中,RFID-RC522是一个常用的非接触式读写器模块,用于与RFID标签进行通信。为了确保RFID-RC522模块能够正常工作,需要提供稳定的工作电压。STM32F103C8T6单片机的+3V3接口输出的3.3V电压是RFID-RC522模块常用的工作电压之一。STM32F103C8T6单片机的PB3接口是一个通用I/O引脚,它具有多种功能,包括输入/输出、外部中断、模拟输入等。当STM32F103C8T6的PB3接口接到RFID-RC522模块的RST(复位)接口时,其主要功能是用于控制RFID-RC522模块的复位操作。具体来说,RST是RFID-RC522模块的一个引脚,用于模块的复位和断点输入。当STM32F103C8T6的PB3引脚向RFID-RC522的RST引脚发送一个低电平信号时,RFID-RC522模块将进行复位操作,这通常包括关闭振荡器、输入引脚和串口外围接口等。复位操作可以将RFID-RC522模块的状态恢复到初始状态,以便重新进行配置和使用。当STM32F103C8T6单片机的GND(Ground,即地线)接口接到RFID-RC522模块的GND接口时,这主要是为了确保两者之间的电路有共同的参考电位。STM32F103C8T6单片机的PB4接口接到RFID-RC522模块的MISO(MasterInSlaveOut,主入从出)接口,主要用于SPI(SerialPeripheralInterface,串行外设接口)通信。在SPI通信中,RFID-RC522模块作为从设备,而STM32F103C8T6单片机作为主设备。MISO是SPI接口中的一个引脚,用于从设备向主设备发送数据。当RFID-RC522模块需要从其内部存储器或其他寄存器中读取数据并发送给STM32F103C8T6单片机时,它会通过MISO引脚将数据串行地发送给单片机。当STM32F103C8T6单片机的PB5接口接到RFID-RC522的MOSI(MasterOutSlaveIn,主出从入)接口时,PB5接口将作为SPI(SerialPeripheralInterface,串行外设接口)通信中的一个输出引脚。在SPI通信中,MOSI接口用于主设备(即STM32F103C8T6单片机)向从设备(RFID-RC522)发送数据。因此,PB5接口的主要功能是将STM32F103C8T6单片机内部的数据通过MOSI接口传输给RFID-RC522模块。这些数据可能包括控制命令、配置参数或其他需要发送给RFID-RC522模块的信息。RFID-RC522模块接收到这些数据后,会根据指令进行相应的操作,如读取RFID标签、配置RFID模块参数等。当STM32F103C8T6单片机的PB6接口接到RFID-RC522的SCK(SerialClock,串行时钟)接口时,PB6接口将用于产生SPI(SerialPeripheralInterface,串行外设接口)通信所需的时钟信号。在SPI通信中,SCK接口用于传输时钟信号,该信号由主设备(STM32F103C8T6单片机)产生并发送给从设备(RFID-RC522)。时钟信号用于同步主设备和从设备之间的数据传输,确保数据在正确的时刻被发送和接收。接口电路图如下:图3.9RC522接口电路图3.10总体电路设计本次设计采用的电路设计软件是AltiumDesigner,简称AD,是一款功能强大的电子设计自动化软件,广泛应用于PCB设计、原理图设计和系统级设计等领域。AltiumDesigner提供了全面的设计工具,包括原理图设计、PCB布局、仿真、调试、制造准备等,为电子设计提供了全方位的支持。具有直观的用户界面,使用户能够轻松快速地进行电路设计和布局。用户可以通过简单的拖放操作和快捷键完成设计任务。同时,内置了丰富的元件库,包括各种模拟和数字元件、器件、芯片和模型等。用户可以从库中选择所需的元件,并将其添加到设计中进行使用。总的来说,AltiumDesigner是一款功能丰富、易于使用的电子设计软件,适用于各种规模的电子设计项目,为工程师和设计团队提供了强大的设计工具和资源,帮助他们快速、高效地完成电路设计任务。本次采用AltiumDesigner完成电路图和PCB图的设计,电路整体原理图设计如下:图3.10总体电路原理图在电路设计完成后,将原理图里面的器件导入PCB设计中,然后进行PCB的设计,对PCB进行合理的布局布线后,设计成PCB图如下:图3.11整体PCB设4软件设计毕业设计4软件设计4.1主程序流程设计系统主流程如下所示(见图4-1)。在main.c中,先写入其他.c的头文件,接着是定义用到的全局变量和用到的函数,然后就进入到主函数中。在主函数中,先进行初始化,然后按顺序循环while中的四个函数:监测函数、显示函数、处理函数和WIFI接收函数。在监测函数中,则每500毫秒获取一次浑浊度和水温,同时上传数据至云平台;在显示函数中,则根据不同显示界面显示不同内容,例如:显示系统名称、浊度、浑浊度,账户金额和消费,以及充值和对卡管理等;在处理函数中,主要对卡进行操作,还对饮水机清洁/消毒/浑浊报警等。最后一个WIFI接收函数,通过WIFI模块将获取的数据上传至云平台并设置阈值、卡管理和充值等。其部分主程序源码如下所示:intmain(void){HAL_Init();SystemClock_Config();MX_GPIO_Init();MX_TIM1_Init();MX_USART2_UART_Init();MX_ADC1_Init();HAL_TIM_Base_Start_IT(&htim1); //定时器1中断使能OLED_Init(); //显示屏初始化Ds18b20_GPIO_Init(); //温度传感器初始化RC522_GPIO_Init();PcdReset();PcdAntennaOff();HAL_Delay(5);PcdAntennaOn();M500PcdConfigISOType('A'); ESP8266_init();while(1){(部分代码省略)……} }图4.1程序总体流程图4.2显示函数流程设计显示函数子流程图如图4-2所示;根据显示界面显示内容;主界面,显示系统名称,水温和浑浊度值;支付界面,显示账户、余额和扣款;充值界面,显示请刷卡确认充值、金额(显示是否成功);添加/删除卡界面,显示添加卡号或确认删除。其部分程序源码如下所示:chardis_buf[30];voidDisplay_function(void){switch(flag_card) //根据不同的显示模式标志位,显示不同{caseMainDisplay:Oled_ShowCHinese(24,0,(uint8_t*)"智能饮水机");Oled_ShowCHinese(0,3,(uint8_t*)"水温:");OLED_Show_Temp(48,3,temp);Oled_ShowCHinese(0,6,(uint8_t*)"浊度:");sprintf(dis_buf,"%.2f",TDS);Oled_ShowString(48,6,(uint8_t*)dis_buf);break;}(部分代码省略)…… }}}图4.2显示函数子流程图4.3处理函数流程设计根据图4-3所示的处理函数子流程,在处理函数中,进行寻卡,进行卡片充值/添加/删除等。如果自清洁模式打开,则开启臭氧和紫外线消毒,否则关闭消毒。若浑浊度超标,蜂鸣器报警,否则不报警。若温度小于温度最小值,进行加热,否则关闭加热。软件部分程序源码如下所示:uint8_tFLAG_CLEAN;voidManage_function(void){if(PcdRequest(0x52,Temp)==MI_OK) //寻卡,成功后Temp数组为卡类型{if(PcdAnticoll(UID)==MI_OK) //防冲突,UID数组数据为卡序列号{if(PcdSelect(UID)==MI_OK)//选择该序列号卡{if(PcdAuthState(0x60,2,(unsignedchar*)DefaultKey,UID)==MI_OK)//校验卡密码{if(PcdRead(2,RC522_Buf)==MI_OK) //读取块2中当前数据{switch(flag_card){caseMainDisplay:if(RC522_Buf[8]==1||RC522_Buf[8]==2) //数组的第8位是1或2,表示是录入卡片{ if((RC522_Buf[0]/255+RC522_Buf[1]%255)>1) { flag_water=5000; RC522_Buf[0]-=1/255; RC522_Buf[1]-=1%255; memcpy(RC522_Buf+9,&cnt,6); User_Num=0; PcdWrite(2,RC522_Buf); Display_Jump(Pay); //跳转到支付界面,5s后自动返回主界面 } else { Succ_Type=Not_Enough; Display_Jump(Succ); }图4.3处理函数子流程图4.4温度采集函数流程设计DS18B20温度传感器能够精确测量环境温度,并将其以数字信号的形式发送给单片机。其工作流程简短来说,首先是单片机初始化与DS18B20的通信,随后发送开始温度转换的命令。DS18B20接收到指令后,会立即开始测量环境温度。测量完毕后,温度数据被存储在传感器内部。接着,单片机发送读取温度值的指令,DS18B20则将测量得到的温度数据通过数据线传送给单片机。这个传输过程需要严格遵循通信协议,以确保数据的准确传输。单片机获取温度数据后,可以根据实际需求进行处理,如显示、记录或用于其他控制逻辑。这样,DS18B20就完成了环境温度的采集,并将数据有效地传递给了单片机。整个过程设计到了DS18B20的复位和相关寄存器关系如图4.4所示:图4.4温度采集函数子流程图4.5通信函数流程设计单片机需要与WiFi模块建立连接,这通常通过串口实现。一旦连接成功,单片机就可以通过串口向WiFi模块发送AT指令,配置网络连接参数,如SSID和密码,以连接到WiFi网络。连接WiFi网络成功后,单片机可以通过串口向WiFi模块发送数据,再由WiFi模块将数据无线发送到网络上的指定服务器。同样,当WiFi模块接收到来自网络的数据时,也会通过串口将数据转发给单片机。这样,单片机就能利用WiFi模块实现与互联网的无线通信,从而可以远程监控、控制设备或传输数据。整个通信过程中,单片机需要编写相应的串口通信程序,以确保数据的正确发送和接收,整个流程图如图4.5所示:图4.5通信函数子流程图4.6PID温控流程设计PID温度控制流程是一个精准调控温度的过程。流程始于启动,随后进行测温设备的初始化,确保温度读数的准确性。接着,设定目标温度和PID控制参数。之后,启动PID自整定,以找到最佳的控制参数,优化调控效果。随后进入控制主循环,通过继电器调节加热或冷却设备的输出,不断逼近设定温度。当测量温度与设定温度一致时,系统会停止或降低调控力度,维持当前温度状态。若温度有偏差,系统会持续进行PID计算和调控,直至达到设定温度。整个过程中,自整定子程序发挥着关键作用,它通过不断学习和调整,使PID控制更加精准有效,从而实现温度的稳定控制,整个流程图如图4.6所示:图4.6PID温控流程图主要部分的程序如下所示:ypedefstruct{floatKp;//比例系数floatKi;//积分系数floatKd;//微分系数floatprevious_error;//上一次的误差floatintegral;//误差的积分}PIDController;//PID更新函数floatpid_update(PIDController*pid,floatsetpoint,floatmeasured_value){floaterror=setpoint-measured_value;pid->integral+=error;floatderivative=error-pid->previous_error;pid->previous_error=error;floatoutput=pid->Kp*error+pid->Ki*pid->integral+pid->Kd*derivative;returnoutput;}intmain(){PIDControllerpid={1.0f,0.1f,0.01f,0.0f,0.0f};//初始化PID参数floatsetpoint=25.0f;//设定温度floatoutput;boolheater_state=false;while(1){floatcurrent_temperature=read_temperature();//读取当前温度output=pid_update(&pid,setpoint,current_temperature);//更新PID输出if(output>0){if(!heater_state){heater_on();//打开加热器heater_state=true;}}else{if(heater_state){heater_off();//关闭加热器heater_state=false;}}4.7APP的设计本系统采用阿里云平台进行APP的设计,通过通信技术实现数据的交互。采用阿里云进行APP设计与开发,可以为开发者带来多重优势,阿里云具备出色的弹性扩展与高性能特性。阿里云是一个云平台,它基于强大的云计算操作系统,为APP提供了强大的后端支持。无论是在用户量激增或是数据量大幅增加的情况下,阿里云都能轻松应对,确保APP始终能够稳定、流畅地运行。这种弹性扩展的能力,让开发者无需担心APP在面对大流量时的稳定性问题。阿里云拥有遍布全球的云服务网络。这一网络确保了无论APP的用户身处何地,都能获得低延迟、高可用的服务体验,阿里云还拥有一个开放与兼容的生态系统。它支持多种开发语言和操作系统,让开发者可以根据自己的喜好和需求选择合适的开发环境。同时,阿里云还与其他阿里云产品和第三方服务有着良好的集成性,这使得开发者可以轻松地构建出全面的解决方案,满足用户的各种需求。阿里云平台可以通过注册账号和密码实现登录。如图4.6为系统的阿里云平台。图4.7阿里云平台(1)进入阿里云平台点击产品,然后通过物联网的产品界面进入“物联网生活平台(飞燕平台)”,在这个平台上可以进行设计与开发,在平台上可以建立自己的项目。该平台的入口如图4.7所示:、图4.8阿里云物联网平台(2)建立一个项目下面在云平台上建立一个项目如下,需要给这个项目命名,同时对于系统的链接方式、品类进行设置,这样才能设置出一个完整的系统项目,建立的系统项目如图4.8所示:图4.9阿里云物联网平台(3)设置标识名和范围点开这个系统之后,需要设置参数值,程序通过通信进行数据的传输,但是需要设置相同的标识,因此需要设置不同的标识,例如温度参数,设置标识名为Temp,设置接收数据的类型为单精度浮点型,设置好取值的范围为0℃-100℃。设置界面如图4.9如图所示:图4.10设置标识和范围(4)设计APP通过物联网平台的直观开发界面,可以轻松地进行系统APP部分的详细设计。在这个过程中,需要综合考虑多个方面,如APP的整体色调和配色方案,这不仅关乎美观,更影响着用户的使用体验。按键的形状也是一个重要的设计元素,它要便于用户理解和操作,同时也要符合人体工学的原则,确保用户在使用过程中能够轻松触达并点击。在设计APP的各个功能模块时,要确保每个模块都被精确地放置在界面上,这样既保证了用户界面的整洁性,也使得用户可以直观地找到所需功能。此外,对于数据展示的需求,可以通过细致地设置和调节APP中相关标识的显示范围来实现。这样一来,无论是图表、数字还是其他形式的数据,都可以清晰、准确地展示在APP上,为用户提供实时、有价值的信息反馈。整个设计过程不仅需要注重细节,更要有全局观念,确保APP在视觉上吸引人,在功能上实用、好用,从而为用户提供一个既美观又高效的应用体验。设计如图4.10所示:图4.11设计APP界面设计好的APP界面如图4.11所示:图4.12设计APP界面5实机效果演示
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 耐酸胶鞋市场需求与消费特点分析
- 电镀参数测试仪市场需求与消费特点分析
- 2024年度安居客大连二手房地产广告发布合同
- 2024年度信息技术产品购买与维护合同
- 2024年度影视作品制作与发行权转让合同
- 2024年度汽车制造设备采购与安装合同
- 2024年度房产买卖合同模板
- 2024年度教育信息化建设与维护合同
- 椎间盘修复用医疗设备市场发展现状调查及供需格局分析预测报告
- 2024年度版权购买合同版权购买合同
- 国家开放大学《可编程控制器应用实训》形考任务6参考答案
- 地基与基础工程(5篇)
- 化工基础习题库+答案
- 赔偿树苗协议书范本
- 国家开放大学本科《纳税筹划》在线形考(形考任务三)试题及答案
- 财政投资工程项目评审面临的问题及其对策
- 周围神经病变(课件)
- CR300BF型动车组网络设备及列车控制讲解
- 2024年全国中小学教师职业道德知识竞赛试题库及答案
- 【110kv水电站电气一次部分设计17000字(论文)】
- 2024医疗机构重大事故隐患判定清单(试行)学习课件
评论
0/150
提交评论