毕业设计 基于stm32的智能快递仓库环境监控系统 - 物联网 嵌入式

2023-10-27

本次设计的快递仓库的火灾报警系统通过主控单元将各个传感器的参数值采集回来,包括与消防安全相关的温度、湿度、烟雾等,主控制器。

数据采集回来之后通过无线的方式将数据上传到远端的上位机上,由于这些参数都是有一个安全阈值的,当达到这个阈值的时候很可能就已经发生危险或者是已经发生危险。

该快递仓库的火灾报警系统设置了远程设置安全阈值的功能,管理人员可以在上位机端对各个参数的阈值进行设置,当数据采集端检测到实时采集到的数据已经超过阈值的时候,就会控制继电器开关,以便模拟相应的调节装置。

当温度超过阈值的时候,通过控制小灯报警。另外该报警系统设置了GPS定位功能,当超过阈值的时候,会将其GPS位置信息上传到上位机端。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

// [主函数代码]
#include "led.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "hmi.h"
#include "adc.h"
#include "stdio.h"
#include "string.h"
#include "dht11.h"
#include "stdlib.h"
   
u8 table1[20];   
u8 table2[20];
u8 table3[20];
u8 table4[20];
u8 table5[20];
u8 table6[20];

DHT11_Data_TypeDef DHT11_Data;

 int main(void)
 { 
	u16 adcx;
	float temp;
	float value=2.5;
	delay_init();	    	 //延时函数初始化	  
	uart_init(9600);	 	//串口初始化为9600
	LED_Init();		  		//初始化与LED连接的硬件接口
 	Adc_Init();		  		//ADC初始化	
    DHT11_GPIO_Config();	 
	HMISendstart();
	while(1)
	{
		adcx=Get_Adc_Average(ADC_Channel_1,10);
		sprintf((char*)table1,"%d",adcx);		
		HMISends("t3.txt=\"");    //向串口屏发送电压值
		HMISends(table1);
		HMISends("\"");
		HMISendb(0xff);
		temp=(float)adcx*(3.3/4096);
		sprintf((char*)table2,"%f",temp);
		HMISends("t4.txt=\"");   //向串口屏发送电压值
		HMISends(table2);
		HMISends("\"");
		HMISendb(0xff);
		if( Read_DHT11(&DHT11_Data)==SUCCESS)
		{
			LED0=!LED0;
			sprintf((char*)table3,"%d",DHT11_Data.humi_int);
			HMISends("t6.txt=\"");   
			HMISends(table3);
			HMISends("\"");
			HMISendb(0xff);
			sprintf((char*)table4,"%d",DHT11_Data.temp_int);
			HMISends("t8.txt=\"");   
			HMISends(table4);
			HMISends("\"");
			HMISendb(0xff);
		}
		if(USART_RX_STA&0x8000)
		{
			if(strcmp((char*)USART_RX_BUF,"moist")==0)
			{
				JDQ=0;
				delay_ms(1000);
			}
			else
			{
				value=atof((char*)USART_RX_BUF);
			}
			memset(USART_RX_BUF,0,sizeof(USART_RX_BUF));
			USART_RX_STA=0;
		}
		if((temp>value)||(temp>2.5))
		{
			JDQ=0;
			BEEP=0;
		}
		else
		{
			JDQ=1;
			BEEP=1;
		}
		delay_ms(250);	
	}											    
}


源码:
https://blog.csdn.net/m0_71369066/article/details/126415022

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

毕业设计 基于stm32的智能快递仓库环境监控系统 - 物联网 嵌入式 的相关文章

  • 达梦数据库调优组合索引的使用

    调优工程中对组合索引的使用的一个小总结 一 组合索引的执行计划 首先关于几个概念 等值条件和范围条件 1 等值条件 C1 X C1 X OR C1 Y 会被优化成C1 IN X Y C1 IN X Y 这种形式的我们都叫做等值条件 2 范围
  • Linux 安装Xrdp,实现RDP连接

    linux 安装xrdp RDP 连接 安装前提 root 权限 root server 76 conf yum install xrdp root 权限 安装 yum install xrdp Loaded plugins fastest
  • Eigen不同的方法来求矩阵的逆的效率

    背景 不同尺寸的矩阵 求逆使用不同的方法 会有不同的效率的 16x16矩阵的直接求逆与PartialPivLU的效率对比 本人亲测 1 实现代码 GetSystemTimeInMacroSecond的实现 boost posix time
  • 自适应卡尔曼滤波_【导师论坛】

    复杂噪声情况下的新型卡尔曼滤波器研究 主讲 黄玉龙 副教授 哈尔滨工程大学 时间 2019年1月17日 周四 14 30 16 30 地点 智能科学学院主楼401会议室 主讲人介绍 黄玉龙 博士 哈尔滨工程大学自动化学院副教授 2018年1
  • 远程代码执行漏洞的利用与防御

    什么是RCE漏洞 全称 remote command code execute 分为远程命令执行和远程代码执行 1 命令执行漏洞 直接调用操作系统命令 2 代码执行漏洞 靠执行脚本代码调用操作系统命令 一般出现这种漏洞 是因为应用系统从设计
  • 第十届蓝桥杯省赛Java B组 数的分解

    试题 D 数的分解 本题总分 10 分 问题描述 把 2019 分解成 3 个各不相同的正整数之和 并且要求每个正整数都不包 含数字 2 和 4 一共有多少种不同的分解方法 注意交换 3 个整数的顺序被视为同一种方法 例如 1000 100
  • mysql 数据恢复 binlog

    被删库勒索的一次记录 项目在云服务器运行了一年多了 中间迁移过一次 从阿里迁到华为了 迁移的时候把数据库文件 test sql 用完了之后就扔在了服务器上 最近访问系统的时候 忽然系统崩溃 表不存在了 数据库连接工具也连不上了 到服务器上的

随机推荐

  • torch.fx介绍

    Node Node类构造函数的各项参数如下 参考torch fx下的node py graph 指明实例化的Node属于哪个Graph op 节点的类型 一共有如下的几种类型 placeholder 占位符 一般代表输入 call meth
  • 【LeetCode刷题】169 多数元素

    给定一个大小为 n 的数组 找到其中的多数元素 多数元素是指在数组中出现次数 大于 n 2 的元素 你可以假设数组是非空的 并且给定的数组总是存在多数元素 方法一 HashMap 每个值初始value都为1 每重复一次 value 1 最后
  • 深度学习部署:Triton(Triton inference server)【旧称:TensorRT serving,专门针对TensorRT设计的服务器框架,后来变为Triton,支持其他推理后端】

    triton作为一个NVIDIA开源的商用级别的服务框架 个人认为很好用而且很稳定 API接口的变化也不大 我从2020年的20 06切换到2022年的22 06 两个大版本切换 一些涉及到代码的工程变动很少 稍微修改修改就可以直接复用 很
  • Java导出数据库查询结果为excel和csv的简易实现

    转载请注明来源 作者 loongshawn http blog csdn net loongshawn article details 53457953 建议读者阅读原文 确保获得完整的信息 1 背景 最近在应对一个数据查询导出模块 总体要
  • 使用ESP32开发LVGL

    基础概念 LVGL 在ESP32上使用版本差别是比较大的 主要有V7和V8的区别 具体应该是适配性以及一些比较高级的控件 相较而言感觉V7会更加稳定 在ESP32移植的话可以参考这个链接 但是其中也有一些小细节需要注意 具体注意点 首先如果
  • Python Selenium其他使用方法

    知识点 掌握selenium控制标签页的切换 掌握selenium控制iframe的切换 掌握 利用selenium获取cookie的方法 掌握 手动实现页面等待 掌握 selenium控制浏览器执行js代码的方法 掌握selenium开启
  • EDA笔记(1)--VHDL语言

    目的 摘录点自己容易忘的知识点 也可以供读者参考学习 EDA技术的概念 工作平台 计算机 开发环境 EDA软件 设计语言 硬件描述语言 HDL 试验载体 可编程逻辑器件 PLD 目标器件 ASIC芯片 应用方向 电子系统设计 EDA应用领域
  • LVM磁盘挂载&扩容

    磁盘不够了怎么使用逻辑卷的方式扩充磁盘呢 因为之前踩过坑 用混了fdisk和mount挂载 这次梳理下LVM挂盘和扩容方式 下载lvm2 预先下载程序包 若已下载则忽略 yum y install lvm2 离线下载可上腾讯软件源把rpm包
  • mysql数据库

    索引相当于字典的目录 用于查找数据 一般用B Tree索引 用该种数据结构来存储索引 InnoDB mysql的存储引擎 支持事务安全的引擎 支持外键 行锁 事务是他的最大特点 如果有大量的update和insert 转载于 https w
  • 玩转ChatGPT:Code interpreter (vol. 1)

    一 写在前面 喜大普奔 GPT 4传说中的Code interpreter插件已经可以用了 二 什么是Code interpreter 代码解释器 Code Interpreter 是一个工具 它能够读取和执行编程代码 这里有几个主要的功能
  • 如何将项目部署到服务器:从选择服务器到维护应用程序的全流程指南

    将项目部署到服务器是一个重要的技能 对于开发人员来说 它是必不可少的 在本文中 我将介绍一些关于如何将项目部署到服务器的最佳实践 一 选择服务器 在部署项目之前 你需要先选择一个适合你的服务器 如果你已经有一个可用的服务器 你可以直接使用它
  • 对象服务器文件服务器,传送对象到服务器

    h 文件中 h文件 png 代码如下 import interface LBNetWorkManager NSObject LBNetWorkManager netManager void Post NSString urlStr obj
  • nmap 操作系统探测

    1 操作系统探测原理 nmap 最著名的功能之一是用 TCP IP 协议栈 fingerprinting 进行远程操作系统探测 Nmap 发送一系列 TCP 和 UDP 报文到远程主机 检查响应中的每一个比特 在进行一打测试如 TCP IS
  • 【java】数组反转 已知一个数组 arr = {19, 28, 37, 46, 50}; 用程序实现把数组中的元素值交换,交换后的数组 arr = {50, 46, 37, 28

    public class Test05 public static void main String args 定义一个数组 用静态初始化完成数组元素的初始化 int arr 19 28 37 46 50 循环遍历数组 这一次初始化语句定义
  • 正则表达式校验邮箱

    正则表达式是一种用于匹配字符串的模式的工具 它可以用于验证邮箱地址的有效性 要用正则表达式校验邮箱地址 需要使用以下正则表达式 a zA Z0 9 a zA Z0 9 a zA Z0 9 0 61 a zA Z0 9 a zA Z0 9 a
  • ESP32的开发环境SDK4.3.1版本和编译环境搭建

    首先 到乐鑫的官网下载一个最完整的安装包 地址为 https dl espressif com dl esp idf idf 4 3 在这分为两种 在线安装和离线安装 在线安装与离线安装的区别 在线安装程序非常小 可以安装 ESP IDF
  • Mysql建表出现错误:ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that correspo

    Mysql命令行sql语句建表报错 这里是你的SQL语法有错误 查看与MySQL服务器版本对应的手册 以确定使用 我的问题是sql语句里反引号用成了单引号 我这里用的是英文中的单引号 所以会有语法报错 正确的应该是键盘ESC键下的反引号 此
  • Python, Numpy求 list 数组均值,方差,标准差

    代码如下 import numpy as np array 1 3 5 7 9 求均值 arr mean np mean array 求方差 arr var np var array 求标准差 arr std np std array dd
  • 第二十八篇 SeNet模型解析

    文章目录 一 SENet概述 二 SENet 结构组成详解 三 详细的计算过程 SE模块代码详解 SENet 在具体网络中应用 代码实现SE ResNet 第一个残差模块 第二个残差模块 SEResNet18 SEResNet34模型的完整
  • 毕业设计 基于stm32的智能快递仓库环境监控系统 - 物联网 嵌入式

    本次设计的快递仓库的火灾报警系统通过主控单元将各个传感器的参数值采集回来 包括与消防安全相关的温度 湿度 烟雾等 主控制器 数据采集回来之后通过无线的方式将数据上传到远端的上位机上 由于这些参数都是有一个安全阈值的 当达到这个阈值的时候很可