基于STM32档案仓库管理系统设计_第1页
基于STM32档案仓库管理系统设计_第2页
基于STM32档案仓库管理系统设计_第3页
基于STM32档案仓库管理系统设计_第4页
基于STM32档案仓库管理系统设计_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

第1章绪论1.1研究的目的及意义社会在发展,人民生活水平也在稳步提高,对于物质品质的要求也与此同时必定会日益增长,因此仓库管理的质量也必须跟上时代发展的步伐。监测温度,湿度和防火灾是仓库监控工作的重要内容,为了弥补人工监管的不足之处,基于单片机的温湿度监测系统开始进入人们的视线,其不断的发展也逐渐被大部分人所接受。伴随时代和科技的进步,单片机技术也在逐渐走向成熟,单片机技术涉及范围广泛,可以普及到诸多领域,如生活,工作,科研等,其本身就具有高集成度、低功耗、体积小、价格低廉等特点。单片机技术已经走进了我们的工作和生活,在最初的时候,单片机主要用于工业控制以及交通领域。现如今,随着时代的发展,该技术也逐渐向家用产品和医疗设备方面普及。单片机技术的飞速发展和卓越进步推动着人类社会的发展变革,我们理应适应潮流,充分利用单片机技术,研发出各种新型且智能的系统,为我们的生产生活提供便利。此次毕设采用STM32系列单片机作为下位机,外接温湿度传感器模块来获取仓库内部的实时环境信息。这样的好处在于不用通过人工手动测量的方法来进行数据采集,方便我们操作,提高工作效率,节省了人员成本。同时我们可以预先设置一个适宜仓库存储的数据范围,一旦监测到数据超出合理范围之后,系统可以自动通过点亮LED灯或者蜂鸣器响来及时提醒监管人员,促使我们及时采取相应的措施,规避风险,避免不必要的损失。1.2国内外研究现状2017年朱亚东,周益军,孙国通三位学者在《基于PLC的智能仓库控制系统的研究与设计》一文中写到在早期,仓储管理人员一般都是采用温湿度计对仓库的当前环境进行信息采集,其方式为测试人员会先设置几个计量点,然后放置温湿度计[1]。之后每隔一段时间读取温湿度计读数,通过数值的高低变化来决定下一步如何处理储藏档案;在2019年吴缙峰,龚结龙两位学者在《一种基于无源RFID的智能仓库物联网关设计》一文中系统采用无源RFID技术,将档案袋贴上无源RFID标签,在仓库关键卡口设置无源RFID阅读器,实时读取经过的档案以提高管理效率[2]。阅读器读取到的数据通过LoRa节点传输到网关,完成整个仓库的档案的进出管理;2022年高瑞丽,张爱荣,刘霞在《基于STM32嵌入式系统四种编程方法的探究》中记录在早期,仓储管理人员一般都是采用温湿度计对仓库的当前环境进行信息采集。其方式为测试人员会先设置几个计量点,然后放置温湿度计[3],之后每隔一段时间读取温湿度计的读数,通过数值的变化范围来决定下一步如何处理储藏物资。这种方式不仅劳动强度大,获取到的数据精确性也往往无法得到保障,更是难以满足于一些精度要求比较高的场合,比如科学实验研究所,由于结果的不确定性以及精度问题会使得实验难以得到一个可靠且令人信服的结论;2022年宋世伟,王霞,朱方娥在《嵌入式系统中数据库信息管理技术的应用研究》中提出在过去的几年里,国内的研究机构也一直都在努力的研究传感器测量装置[4]。仓库的监测系统在科技迅速发展的带领下有了很大幅度的改进与提升,比如根据以传统电子仪器设计为设计基础的多种动态测试系统等等,诸多的研究课题及其领域的相继成功都代表了国内在传感器领域中不断发展与进步。2013年,ScottMoody在《Designofanintelligentembeddedsystemforconditionmonitoringofanindustrialrobot》中写到智能仓库最先诞生在美国,到了20世纪80年代,其成长迅速,使用范围触及几近全部行业,它的呈现标志着当代工业技术步入了一个加快成长的阶段。智能仓库手艺的钻研对优化资源配置、进步企业生产率,下降生产成本有着非常重要的意义搬运装配是智能仓库究竟主要的其重堆垛装备,它可以或许在仓库巷道中往返穿梭运行,将位于巷道口的货色存入货格;2014年,MaXiaoge《TheDesignofSTM32EmbeddedDataGatheringControlSystemBasedonGP-RSNetwork》提出同样的,在国内仓库监控技术不断发展完善的同时,国外传感器领域也受到了广泛的关注与支持,始终在进行不断地发展与完善,科技的不断进步与创新使得传感器领域得到了持续大力的推动与发展。由此可见,不断研发和完善一个符合新时代人们需求的智能仓库监控系统是人类共同的追求;2019年,CommonProblemsandCountermeasuresintheManagementofEducationalAdministrationFilesinCollegesandUniversities结合实际调研,分析了当前档案管理中存在的问题,并提出了解决方案;2020年NadyaAmandaIstiqomah,AmandaIstiqomahNadya,FaraSansabillaPutri,HimawanDoddy,RifniMuhammad.TheImplementationofBarcodeonWarehouseManagementSystemforWarehouseEfficiency该文章建议在仓库管理系统中实施条形码,条形码还有助于整合仓库管理系统中的每个流程,提高仓储效率;2022年,AnalysisofthePathofUtilizingBigDatatoInnovateArchiveManagementModetoEnhanceServiceCapability文中写到传统的人工监测手段无法满足实时性和全面性的要求,分析了大数据背景下档案管理工作的特点,针对当前档案管理工作中存在的问题,提出了提升档案管理工作质量的具体路径,设计了基于大数据的档案管理结构,以提升档案管理工作质量。档案管理系统的设计是具有很大的可行性与必要性的。1、学科交叉融合发展的必然结果。随着时代发展及档案工作实践不断丰富,档案学研究的触角也逐渐伸向档案工作的各个领域。档案学作为一门实践性较强的综合性学科,其发展必然会同有关学科发生一定交叉,档案社会学、档案心理学的发展已经向我们展现了这一趋势。由于档案学研究的对象是档案和档案工作,而档案是在人类各种实践活动中形成的,档案工作的最终目的又是为各种实践活动服务的,我们的方法只能是兼收并蓄,博彩众长。引入系统工程方法是档案学在发展过程中,根据自身理论及实践需要,为解决档案工作中遇到的复杂系统问题,亟需系统工程理论的指导,从而产生了档案学与系统工程学的交叉融合。两者的交叉说明了档案学与档案工作的发展以及人们对档案工作的多角度认识,也反映了档案学者和实际工作者希望通过这种认识来解决档案工作中的复杂系统问题,但其解决的仍是档案领域的现象和问题,即其研究对象仍是档案工作及其子系统。2、档案事业改革与发展的内在要求。档案工作中引入系统工程方法是新时期档案事业发展的内在要求和根本动力。长期以来,传统档案管理方法只在本专业内徘徊,对于档案工作中遇到的复杂项目及问题,或在行业内部,或借鉴相邻学科的方法,尚未形成自身独立的解决问题与处理问题的方法及思路。在档案工作中引入系统工程方法,是根据新时期档案事业改革与发展的要求,力求使档案工作中的重大问题得到科学合理地解决,为档案事业改革与发展的跨越式发展起到推动作用。档案存储建设作为档案事业改革与发展的重要内容,档案研究界均将其视为一项全局性、长期性的系统工程,并摆在优先发展的战略位置,需要系统工程方法的理论指导。引入系统工程方法,不仅是档案存储建设的必然选择,也是档案工作现代化不可缺少的重要内容,更是档案事业改革与发展应对信息时代挑战的必由之路。3、档案工作实践发展的客观需要。首先,信息技术的发展对档案工作产生了全方位的影响。早期信息技术的影响仅仅局限于用现代化的管理手段和方式代替传统的手工管理,现在信息技术则对档案本身也产生了根本性的影响,引入系统工程方法是应对信息时代档案工作面临问题的最佳途径之一。其次,“成本”逐渐成为档案工作中不可忽视的重要因素。各单位档案的管理工作不再不计投入,而是要求以最小的投入,产生最大的效益,传统的档案管理方法无法解决这一问题,而讲究低成本高效益的系统工程管理方法的引进则能够使这一问题很好地解决。1.3主要研究内容本课题是一种基于STM 32档案仓库管理系 统设计,系统采用S TM32单片机对信号进行分析处理,该设计通过手机软件对仓库温湿度进行监控,使用无线通信模块与STM32单片机 通信,实现时间的存储,并且设置火灾报 警系统进行温度监控。该系统主要完成的功能如下:①通过输出数字信号的DHT11数字复合型传感器实现对温度的实时监控,显示在OLED液晶显示屏上,并发送到上位机,DHT11预设两个,放置在档案仓库;②湿度传感器实现对湿度的实时监控,保持仓库的湿度在正常范围,湿度过低,自行开启加湿设备;湿度过高,自行开启通风设备;③远程监控物联网WIFI连接手机端APP远程查看,用C语言进行编程;④条形码扫描利用光电转换器,设置储存时间;⑤设置烟雾传感器监测气体浓度,确认是否有火灾发生,火灾报警系统,温度超过规定值会报警。设置GPS定位系统,精准确定仓库的位置。

第2章系统的总体结构2.1设计方案本课题是一种基于STM32档案仓库管理系统设计,系统采用STM32单片机对信号进行分析处理,硬件部分需要单片机STM32模块,温湿度传感器模块,GPS定位模块,WIFI远程模块,蜂鸣器报警模块;使用C语言编程,在keil5平台编译;该设计通过手机软件对仓库温湿度进行监控,使用无线通信模块与STM32单片机通信,实现时间的存储,并且设置火灾报警系统进行存储安全的保证。图2-1总体结构框图2.2单片机型号选择方案一:主控制芯片选择51单片机。MCS-51单片机是一种集成的电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上从而形成的一个小型而完美的计算机系统。但是51单片机也存在不少缺点,比如:速度过慢,导致拖慢了进程;没有足够的自我保护功能,芯片很容易被烧毁;在功能上受到限制,如EEPROM、AD等必须进行扩展其功能,这就给软硬件带来了更大的负担;51单片机I/O脚的使用非常简单,但是在高电平是却没有输出能力。方案二:主控制芯片选择STM32F103C8T6。STM32F103C8T6是由意法半导体集团基于STM32系列ARMCortex-M内核开发的一款具有64KB的程序存储器的32位微控制器,其工作时需要2V~3.6V的电压和-40℃~85℃环境温度。STM32单片机的优点很多,比如:1、易于学习和使用,资料各方面都很丰富;2、处理能力强,STM32单片机的内核基于ARMCortex-M,具有高性能、低功耗的特点,搭载高速的处理器和内存,能够轻松处理复杂的应用;3、丰富的外设接口,STM32单片机支持多种外设接口和通信协议;4、易于调试和测试,STM32单片机配备了多种调试和测试接口;5、开发生态丰富,STM32提供了大量的开放源码开发工具与类库,如CMSIS、HAL库等,可以加快开发时间和减少开发成本;6、封装类型丰富,STM32系列微控制器的封装非常丰富,适用于不同的应用需求和制造工艺;7、成本效益低,STM32单片机价格相对较低,能够提供高性价比的解决方案,适合各种应用场景。综合比较,STM32单片机比51单片机更加适合应用,因此本文选择STM32单片机。图2-2STM32单片机的最小系统原理图图2-3STM32单片机的实物图2.3无线通讯模块选型方案一:蓝牙是一种设备之间进行无线通讯技术,它可以在固定装置、移动装置和建筑物内的局域网络之间实现近距离的数据交换,蓝牙可连接多个设备。蓝牙使用短波特高频(UHF)无线电波,经由2.4至2.485GHz的ISM频段来进行通信,通信距离从几米到几百米不等。但是缺点也有很多,续航能力比较短,连接稳定性差。方案二:ZigBee是一种低速低功耗,短距,自组网的无线局域网通信技术,于2003年被正式提出,目的是为了弥补蓝牙通信协议中存在的高复杂度、高功耗、近距离、网络规模过小等缺点。但其本身也存在着诸多不足,比如:通信距离较短;通信速率较低;兼容性较差。方案三:WIFI是一种无线局域网通信技术,全称Wireless-Fidelity,无线保真,IEEE组织的IEEE802.11标准制定了以太网的技术标准。WIFI终端指使用高频无线电信号发送和接收数据,使用以太网通信协议,通信距离通常在几十米。它是一种新型的通讯技术,它的优点有很多,比如:1、WIFI网络方便,允许多个用户连接;2、工作灵活性方便;3、可以提高生产力;4、WIFI提供移动性;5、WIFI具有很好的成本效益,节省时间,布线成本;6、WIFI部署在基础设施上比较容易安装;7、可以随时扩展和添加新用户;8、无线局域网易于维护和搬迁。综合比较,蓝牙和ZigBee存在的缺点比较多,因此本文选择WIFI作为无线通讯模块的选型。图2-4WIFI实物图第3章系统的硬件部分设计3.1系统的总体设计本课题是一种基于STM32档案仓库管理系统设计,系统采用STM32单片机对信号进行分析处理,该设计通过手机软件对仓库温湿度进行监控 ,使用无线通信模块与STM32单片机 通信,实现时间的存储,并且设置火灾报警系统进行温度监控。最终实现的结果:(1)升温降温实现对温度的实时监控;(2)除湿通风实现对湿度的实时监控;(3)远程监控物联网WIFI云平台APP远程查看;(4)条形码扫描,设置储存时间;(5)烟雾报警系统,气体浓度超过规定值会报警,设置GPS定位系统,精准确定位置。3.2系统的主要模块设计3.2.1温湿度传感器模块设计在温度精确测量中,关键有工作压力温度计、热电阻式温度计、双金属温度计、热电阻温度计、电子光学高温计、辐射源高温计和红外线温度计。DHT11数字温湿度感应器是一种包含了经过校正的数字信号输出的温湿度复合传感器,它应该使用特殊的温湿度感应器和数字模块采集技术,来保证产品具有非常高的可靠性和优异的长期稳定性。传感器包括一个NTC测温元件和一个电阻式感湿元件,并与一个高性能8位单片机相连接。因此该产品具有抗干扰能力强、品质卓越、超快响应、性价比极高等优点。在本系统的设计中,传感器有湿度传感器和温度传感器,所以需要对两种类型的传感器进选择。其特点是体积小,灵敏度高,根据当时的温湿度情况进行降温升温除湿通风的预警,提醒管理人员采取相应的措施。图3-1DHT11温湿度传感器原理图3.2.2烟雾传感器模块设计烟雾传感器又称烟雾报警器或烟感报警器,能够探测火灾时产生的烟雾。其内部采用了光电感烟器件,可广泛应用于商场、宾馆、商店、仓库、机房、住宅等场所进行火灾安全检测。烟雾传感器内置蜂鸣器,报警后可发出强烈声响。烟雾传感器主要有三个类型:气敏式烟雾传感器;燃气探测器;红外光束感烟式。在本设计系统中,本文采用气敏式烟雾传感器进行检测。其特点是制造简单,灵敏度高,响应速度快,寿命长等。如果有烟雾产生,会发出声音报警,提醒工作人员采取相应的措施。图3-2烟雾传感器模块原理图3.2.3ESP8266WIFI模块设计ESP8266是曾经缔造了以低成本的一段佳话,ESP8266模块是单核32位mcuwifi芯片为主。其特点是拥有高性能无线系统级芯片,是一个完整且自成体系的WIFI网络方案,能够独立运行,也可以作为工具搭载其他主机运行。ESP8266WIFI串口通信模块应该是使用最广泛的一种WIFI模块之一了,因为ESP8266模块是一款高性能的WIFI串口模块,WIFI模块是将有线网络信号转换成无线信号,其传输速度非常迅速。图3-3ESP8266模组原理图3.2.4GPS模块设计本模块使用中科微电子AT6558R定位芯片,可在99个信道上接收卫星讯号,具有较低的功率消耗;G-MOUSE的高灵敏度,可以在城市里,山谷里,高架桥,信号微弱的地方,以及在汽车里的任何一个位置,都可以快速准确的找到。该系统由STM32F103C8T6单片机最小系统+GPS模块+ESP8266构成,该系统可以通过ESP8266无线传输模块,将GPS传回的数据在ONENET界面上进行显示。GPS的主要功能是:①全天不会受任何气候的影响;②全球覆盖面积广(高达98%);③定点、定速、定时精度高;④快速、省时、高效率;⑤应用广泛、功能齐全;⑥可进行移动定位。图3-4GPS模块原理图3.2.5条形码扫描模块设计当GM65模块被使用时,使用者可以通过主机发出的串行指令来设置其识读模块。出厂时模块默认为USB接口,可以通过扫描二维码进行设置,将输出接口改为串口输出。扫描过后,模块的串口通讯参数:波特率9600bps,无校验,8位数据位,1位停止位,没有流量控制。当切换到串行接口后,全部的数据都由串口输出,也可以直接发送命令控制模块。条形码扫码模块的作用让库存单据通过扫码生成,不需要人工录入,确保单据录入的及时性、准确性及便捷性。图3-5扫码模块原理图3.2.6蜂鸣器报警电路模块设计蜂鸣器是一种以直流电源为电源的集成式电子信号发生器。其广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等其他电子产品的声音装置。其结构一般为:蜂鸣器;续流二极管;滤波电容;三极管。蜂鸣器的主要功能是一种能将音频信号转化为声音信号的发音器件,有提示或报警的作用。在达到或超过设置的预定范围的时候发出声音提醒人们,以达到减少损失的效果。图3-6蜂鸣器报警电路原理图3.2.7继电器模块设计继电器是一种电控制器件,它是一种当输入量的变化达到一定的要求时,在电器输出电路中所用的被控量发生预定的阶跃变化的一种电器。它是由受控系统与被受控系统相互影响而构成的,一般用于自动控制回路。其实际上是用小电流去控制大电流运作的一种“自动开关”故在电路中起着自动调节、安全保护、转换电路等作用。图3-7继电器动作原理图3.2.8OLED显示屏模块设计OLED显示屏是利用有机电自发光二极管制成的显示屏。它的基本工作原理是在通电后有自发光的有机半导体基板上形成彩色图像,其特点是对比度高、厚度薄、视角广、反应速度快等。图3-8OLED显示屏模块原理图第4章系统的软件部分设计4.1软件的主要流程STM32单片机对信号进行分析处理,该设计通过手机软件对仓库温湿度进行监控,使用无线通信模块与STM32单片机进行通信,实现数据的存储,并且设置火灾报警系统进行温度监控。最终实现:加热降温实现对温度的实时监控,增湿除湿实现对湿度的实时监控,可以远程监控物联网WIFI云平台APP远程查看,条形码扫描,设置储存时间,火灾报警系统,度超过规定值会报警,设置GPS定位系统,精准确定位置。图4-1系统总体流程图4.2温湿度传感器模块软件设计当单片机初始化完成后系统开始正常工作,温湿度传感器将检测仓库内实时的温湿度并上传至单片机和WIFI模块,WIFI模块上传至云端,便于查看和远程管理,单片机可以对数值和阈值进行分析,进行相应操作。图4-2温湿度传感器流程图

4.3烟雾传感器模块软件设计当单片机初始化完成后系统开始工作,烟雾传感器将对周围环境是否有烟雾进行检测,若检测到烟雾则发送给单片机,随后单片机控制蜂鸣器报警。图4-3烟雾传感器工作流程图

4.4ESP8266WIFI模块软件设计当系统初始化完成后开始正常工作,各个传感器的实时监测数据以及仓库内档案的信息都将通过ESP8266WIFI模块上传至云端,上位机可从云端获取实时信息,实现远程监控。图4-4WIFI模块流程图

4.5GPS模块软件设计当系统初始化完成后开始正常工作,单片机可以收到GPS发送来的所有档案仓库的位置信息,并通过WIFI模块上传至云端实现远程监控。图4-5GPS模块流程图

4.6条形码扫描模块软件设计当系统初始化完成后开始正常工作,档案在进出仓库以及每一次位置调整都需要经过条码扫描,以获取档案的实时信息,便于监控管理。图4-6条形码扫描模块流程图

4.7蜂鸣器模块软件设计当系统初始化完成后开始正常工作,各个传感器将检测仓库内的实时数据,若烟雾传感器检测到烟雾,则发信息给单片机,单片机控制蜂鸣器模块工作以报警;若温湿度超过阀值,也会发信息给单片机,单片机控制蜂鸣器模块工作以报警。图4-7蜂鸣器模块流程图4.8继电器模块软件设计当系统初始化完成后开始正常工作,各个传感器将检测仓库内的实时数据,若检测到湿度过高,则发信息给继电器,单片机控制继电器工作进行通风除湿。图4-8继电器模块流程图4.9OLED显示屏模块软件设计当系统初始化完成后开始正常工作,各个传感器将检测仓库内的实时数据,并将其实时传送到OLED显示屏上。图4-9OLED显示屏模块流程图第5章系统测试5.1系统实物图通过上机位与下机位连接进行操作,本文选择stc-isp-15xx-v6.85作为上机位,进行档案编号的存储。在手机下载档案管理APP作为下机位,打开软件,进入界面后可以在液晶显示屏看到档案的存储时间,温湿度,烟雾值,经纬度和档案的编号。图5-1系统成品实物图5.2手机APP模块测试连接串口,打开stc-isp-15xx-v6.85后,选择连接的串口,进行档案编号的传输。此时下机位的WIFI打开,连接WIFI,档案管理系统APP登录,连接服务器,界面出现当时的温湿度,时间,烟雾,档案编号的数值,设置好阈值,超过阈值蜂鸣器会报警。图5-2档案管理系统APP5.3温度模块测试用手抓温度传感器或在烟雾传感器旁打火,观察到上位机和显示屏上数值发生同步变化。图5-3温度变化实物图5.4湿度模块测试在湿度传感器周围加湿或者呼一口气,观察到上位机和显示屏上数值发生同步变化,实现对湿度的实时监控,保持仓库的湿度在正常范围。湿度过低,自行开启加湿设备;湿度过高,自行开启通风设备。图5-4湿度变化实物图5.5蜂鸣器模块测试当此时的温湿度,烟雾的数值超过设定的阈值时,蜂鸣器发出报警。图5-5蜂鸣器报警实物图5.6档案存储模块测试档案进出时可以通过条码扫描记录信息,上位机上可以观察到档案的存储时间。图5-6上位机可查看存储记录5.7GPS模块测试通过GPS可以准确定位到档案仓库的位置,上位机上可以观察到档案仓库的位置。图5-7上位机可查看位置记录第6章总结在整个设计过程中,硬件设计方面主要包括STM32单片机的最小系统、继电器电路、烟雾传感器电路、温湿度传感器电路、GPS模块电路、条码扫描输入电路、WIFI模块电路。软件方面借助各个渠道的资料,主要设计了传感器数据检测程序、检测分析用户信息程序、GPS定位程序。系统的调试主要是通过一块STM32开发板,再借助于Keil以及自己搭建的电路实现的,分部调试时偶尔会出现一些问题但解决方案都有迹可循。此智能仓库管理系统能够实现检测后不需要过多的人为干预,可以自动进行操作,节省了大量人力资源,方便了人们的生活。本文设计的档案仓库管理系统很好的解决了传统档案仓库管理存在的一系列问题,让档案的存储更加便利,同时节省了大量的人力物力,查询档案更快捷,更准确,可以更好的解决人们的需求。但还是存在一些不足之处,比如:很多地方没有认识到档案仓库管理存在的问题;STM32单片机的稳定性不能达到完全稳定,同时一些STM32单片机的系统启动时间较长等都需要我们进一步探索改进这些问题。

参考文献[1]朱亚东,周益军,孙国通.基于PLC的智能仓库控制系统的研究与设计[J].自动化应用,2017(11):147-148.[2]吴缙峰,龚结龙.一种基于无源RFID的智能仓库物联网关设计[J].物联网技术,2019,9(01):44-45.[3]高瑞丽,张爱荣,刘霞.基于STM32嵌入式系统四种编程方法的探究[J].软件,2022,43(4):158-161.[4]宋世伟,王霞,朱方娥.嵌入式系统中数据库信息管理技术的应用研究[J].电脑编程技巧与维护,2022(001):000.[5]牛慧佳.基于单片机的步进电机控制系统设计研究[J].数字技术与应用,2018,36(07):11-12.[6]刘咏华.单片机应用系统的可靠性设计.电子制作.2019,(7).[7]薛劭节,韩飞,宋纪恩.基于物联网技术的智能仓库研究[J].物流工程与管理,2016,38(11):70-71.[8]尚宗健,李绍铭,王勇.基于32单片机的智能仓库设计与实现[J].工业控制计算机,2021,34(11):23-25.[9]杨五忠.基于单片机的仓库温湿度智能测控系统的设计与实现[D].电子科技大学,2014.[10]杨洁,王洪波,储天,陈东立,陈倩.面向智能仓库的中小型物料分拣系统的设计[J].机电技术,2019(06):26-29+94.[11]张国武,丁闪峰.智能仓库安防报警系统设计[J].铁路通信信号工程技术,2019,16(12):46-50.[12]刘瑞龙.基于STC单片机智能仓库车的设计[D].齐鲁工业大学,2015.[13]张晴,刘青正,林智鸣.基于单片机的仓库温湿度智能测控系统[J].电子世界,2019(21):136-137.[14]高明亮.药品仓库智能监控系统的研究[J].沈阳工程学院学报(自然科学版),2019,15(01):93-96.[15]周文军.基于AI和VI的智能仓库教学模型的研究[J].广西民族大学学报(自然科学版),2019,25(03):96-101.[16]刘士立.基于Linux的智能仓库引导系统[D].苏州大学,2012.[17]刘军.基于单片机的仓库温湿度智能控制系统设计[J].哈尔滨铁道科技,2016(01):9-11.[18]黄建荣.智能仓储管理及系统设计[J].信息通信,2018(06):58-59.[19]ComputerEngineeringJournalofElectricaland.Retracted:ApplicationofIntelligentArchivesManagementBasedonDataMininginHospitalArchivesManagement[J].JournalofElectricalandComputerEngineering,2022,2022.[20]RaghuramP,ArjunanMaheshKumar.Designframeworkforaleanwarehouse–acasestudy-basedapproach[J].InternationalJournalofProductivityandPerformanceManagement,2022,71(6).[21]ShivaniMeher,RuchitaNar,SadichhaJagadale,GautamiKalal,VirenChandanshive.DesignofIndustrialWarehouse[J].InternationalJournalofEngineeringResearchand,2018,V7(02).[22]Tufano,Alessandro,Accorsi,Riccardo,Manzini,Riccardo.Amachinelearningapproachforpredictivewarehousedesign[J].TheInternationalJournalofAdvancedManufacturingTechnology,2021(prepublish).[23]Prof.G.S.Patil,Dr.Prof.M.B.Chougule.WarehouseDesign[J].JournalofTrendinScientificResearchandDevelopment,2020,4(4).注释电路图源代码////////////////////////////////////////////////////////////////////////////////// #include"delay.h"#include"sys.h"#include"oled.h"#include"bmp.h"#include"key.h"#include"usart.h"#include"usart2.h"#include"usart3.h"#include"led.h"#include"adc.h"#include"DHT11.h"#include"timer.h"u8temperature; u8humidity;u8shidu[15];u8tem[15];u8temperature1; u8humidity1;u8shidu1[15];u8tem1[15];u8temperaturedyu=25; u8temperaturehyu=32; u8humidityyu=30;u8shiduyu[15];u8humiditgyyu=60;u8shidugyu[15];u8temgyu[15];u8temdyu[15];u16yan;u8yans[15];unsignedintyanyu=200;u8yanyus[15];intfragment=0;u8weidu[15];u8jingdu[15];u8send[50];intbf=0;intbeepnum=0;intbiaozhi=0;intbiaozhi1=0;intbiaozhi2=0;intbiaozhi3=0;intbiaozhi4=0;intbiaozhi5=0;intbiaozhi6=0;intbiaozhi7=0;voidUSART1_Puts(char*str){while(*str){USART1->DR=*str++;while((USART1->SR&0X40)==0);}}voidUSART3_Puts(char*str){while(*str){USART3->DR=*str++;while((USART3->SR&0X40)==0);}}voidESP8266_Init(){ USART3_Puts("AT\r\n"); delay_ms(1000); USART3_Puts("AT\r\n"); delay_ms(1000);// USART3_Puts("AT+CWMODE=2\r\n");//sta// delay_ms(1000);// delay_ms(1000);// USART3_Puts("AT+RST\r\n");//wifi//AT+UART=9600,8,1,0,0 delay_ms(1000);USART3_Puts("AT+CIPMUX=1\r\n");// delay_ms(1000); delay_ms(1000); USART3_Puts("AT+CIPSERVER=1,8080\r\n"); delay_ms(1000); delay_ms(1000); }u8bh[13];intmain(void){u16adcx; u8temp[9]; inti,j; int32_tn_brightness; floatf_temp; delay_init(); delay_ms(1000); delay_ms(1000); NVIC_Configuration(); OLED_Init(); OLED_ColorTurn(0);//0正常显示,1反色显示OLED_DisplayTurn(0);//0正常显示1屏幕翻转显示 OLED_Refresh(); OLED_Clear(); KEY_Init(); LED_Init(); beep_Init(); beep=0; Adc_Init(); //ADC初始化 uart_init(9600);usart2_init(9600);usart3_init(115200); JDQ1=1;OLED_ShowChinese(0,0,0,16);// OLED_ShowChinese(18,0,1,16);// OLED_ShowString(36,0,":",16); OLED_ShowChinese(0,16,2,16);// OLED_ShowChinese(18,16,3,16);// OLED_ShowString(36,16,":",16); OLED_ShowChinese(0,32,6,16);// OLED_ShowChinese(18,32,7,16);// OLED_ShowString(36,32,":",16); OLED_Refresh();LED1=0;LED2=0;LED3=0; while(DHT11_Init()) //DHT11初始化 { delay_ms(200);} while(DHT11_Init1()) //DHT11初始化 { delay_ms(200);} weidu[0]='3'; weidu[1]='4'; weidu[2]='.'; weidu[3]='3'; weidu[4]='8'; weidu[5]='1'; weidu[6]='7'; weidu[7]='6'; weidu[8]='6'; weidu[9]=0; jingdu[0]='1'; jingdu[1]='2'; jingdu[2]='2'; jingdu[3]='.'; jingdu[4]='2'; jingdu[5]='4'; jingdu[6]='5'; jingdu[7]='0'; jingdu[8]='1'; jingdu[9]='6'; jingdu[10]=0; KEY_Init();ESP8266_Init(); temgyu[0]=temperaturedyu/10+'0'; temgyu[1]=temperaturedyu%10+'0'; OLED_ShowString(100,0,temgyu,16); shiduyu[0]=humidityyu/10+'0'; shiduyu[1]=humidityyu%10+'0'; OLED_ShowString(85,16,shiduyu,16); shidugyu[0]=humiditgyyu/10+'0'; shidugyu[1]=humiditgyyu%10+'0'; OLED_ShowString(103,16,shidugyu,16); yanyus[0]=yanyu/100+'0'; yanyus[1]=yanyu%100/10+'0'; yanyus[2]=yanyu%10+'0'; OLED_ShowString(90,32,yanyus,16); OLED_Refresh(); while(1) { if( USART_RX_STA==1){ USART_RX_STA=0; bh[0]=USART_RX_BUF[0]; bh[1]=USART_RX_BUF[1]; bh[2]=USART_RX_BUF[2]; bh[3]=USART_RX_BUF[3]; bh[4]=USART_RX_BUF[4]; bh[5]=USART_RX_BUF[5]; bh[6]=USART_RX_BUF[6]; bh[7]=USART_RX_BUF[7]; bh[8]=USART_RX_BUF[8]; bh[9]=USART_RX_BUF[9]; bh[10]=USART_RX_BUF[10]; bh[11]=USART_RX_BUF[11]; bh[12]=USART_RX_BUF[12]; OLED_ShowString(54,48,bh,16); OLED_Refresh(); send[0]='w';send[1]='2'; send[2]=USART_RX_BUF[0]; send[3]=USART_RX_BUF[1]; send[4]=USART_RX_BUF[2]; send[5]=USART_RX_BUF[3]; send[6]=USART_RX_BUF[4]; send[7]=USART_RX_BUF[5]; send[8]=USART_RX_BUF[6]; send[9]=USART_RX_BUF[7]; send[10]=USART_RX_BUF[8]; send[11]=USART_RX_BUF[9]; send[12]=USART_RX_BUF[10]; send[13]=USART_RX_BUF[11]; send[14]=USART_RX_BUF[12]; send[15]='z'; USART3_Puts(send); USART3_Puts("AT+CIPSEND=0,15\r\n"); } if(USART2_RX_STA==1) //确定是否收到"GNRMC"这一帧数据 { USART2_RX_STA=0; if(USART2_RX_BUF[1]=='G'&&USART2_RX_BUF[2]=='N'&&USART2_RX_BUF[3]=='R'&&USART2_RX_BUF[4]=='M'&&USART2_RX_BUF[5]=='C'){ if(USART2_RX_BUF[30]=='N'){ weidu[0]=USART2_RX_BUF[20]; weidu[1]=USART2_RX_BUF[21]; weidu[2]='.'; weidu[3]=USART2_RX_BUF[22]; weidu[4]=USART2_RX_BUF[23]; weidu[5]=USART2_RX_BUF[25]; weidu[6]=USART2_RX_BUF[26]; weidu[7]=USART2_RX_BUF[27]; weidu[8]=USART2_RX_BUF[28]; weidu[9]=0; jingdu[0]=USART2_RX_BUF[32]; jingdu[1]=USART2_RX_BUF[33]; jingdu[2]=USART2_RX_BUF[34]; jingdu[3]=USART2_RX_BUF[37]; jingdu[4]=USART2_RX_BUF[35]; jingdu[5]=USART2_RX_BUF[36]; jingdu[6]=USART2_RX_BUF[38]; jingdu[7]=USART2_RX_BUF[39]; jingdu[8]=USART2_RX_BUF[40]; jingdu[9]=USART2_RX_BUF[41]; jingdu[10]=0; } } } if(USART3_RX_STA==1){ USART3_RX_STA=0; if(USART3_TX_BUF[1]=='1'){ temperaturedyu=(USART3_TX_BUF[2]-'0')*10+USART3_TX_BUF[3]-'0'; humidityyu=(USART3_TX_BUF[4]-'0')*10+USART3_TX_BUF[5]-'0'; humiditgyyu=(USART3_TX_BUF[6]-'0')*10+USART3_TX_BUF[7]-'0'; yanyu=(USART3_TX_BUF[8]-'0')*100+(USART3_TX_BUF[9]-'0')*10+USART3_TX_BUF[10]-'0'; temgyu[0]=temperaturedyu/10+'0'; temgyu[1]=temperaturedyu%10+'0'; OLED_ShowString(100,0,temgyu,16); shiduyu[0]=humidityyu/10+'0'; shiduyu[1]=humidityyu%10+'0'; OLED_ShowString(85,16,shiduyu,16); shidugyu[0]=humiditgyyu/10+'0'; shidugyu[1]=humiditgyyu%10+'0'; OLED_ShowString(103,16,shidugyu,16); yanyus[0]=yanyu/100+'0'; yanyus[1]=yanyu%100/10+'0'; yanyus[2]=yanyu%10+'0'; OLED_ShowString(90,32,yanyus,16); OLED_Refresh(); }else if(USART3_TX_BUF[1]=='2'){ JDQ1=0; }else if(USART3_TX_BUF[1]=='3'){ JDQ1=1; }else if(USART3_TX_BUF[1]=='4'){ JDQ2=0; }else if(USART3_TX_BUF[1]=='5'){ JDQ2=1; } } yan=Get_Adc_Average(ADC_Channel_0,10)/10; DHT11_Read_Data(&temperature,&humidity); //读取温湿度值 DHT11_Read_Data1(&temperature1,&humidity1); //读取温湿度值 tem[0]=temperature/10+'0'; tem[1]=temperature%10+'0';tem[2]=0; shidu[0]=humidity/10+'0'; shidu[1]=humidity%10+'0';shidu[2]=0; OLED_ShowString(45,0,tem,16); OLED_ShowString(45,16,shidu,16); tem1[0]=temperature1/10+'0'; tem1[1]=temperature1%10+'0';tem1[2]=0; shidu1[0]=humidity

温馨提示

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

评论

0/150

提交评论