您现在的位置是:首页 > 正文

基于单片机的智能宠物监控设计

2024-04-01 01:12:44阅读 2

收藏和点赞,您的关注是我创作的动力

概要

  本设计采用STM32F103C8T6作为主控芯片。系统上电后,根据所需要求设定好温度值,室温传感器DHT11实时测试室内温度,单片机以采样频率(根据需求定)对室温传感器的温度值进行读取,单片机根据读取的温度值与阈值进行比对,如果温度值高于阈值,则打开风扇,实现降温效果;同时定时开启喂水装置,对宠物进行喂水;根据光照的不同,如果光照较弱则打开LED灯进行补光。在程序设计方面,本设计采用了freeRTOS操作系统,采用了多任务方式,增强了单片机处理的实时性。

一、宠物管理系统原理

1宠物管理系统原理架构

在这里插入图片描述

图2-1宠物管理系统原理

  本系统的总体架构包含如下部分:5.0V及3.3V供电部分,主控微处理器STM32F103C8T6,调试功能接口,存储器部分,传感器信息采集部分,串口通信部分,控制执行部分以及扩展接口功能。

2宠物管理系统总体执行流程

  宠物管理系统启动后,根据用户所养宠物的不同设定好温湿度值,以满足宠物对舒适度的需求。
  室温传感器DHT11实时采集室内温度,微处理器以用户所需的采样频率(即每隔多长时间采集一次温湿度值)读取温湿度传感器的温湿度值,并将读取的温湿度值与预设的温湿度值进行比较。如果温度值高于阈值,则打开风扇,以实现给宠物降温效果。
  根据宠物对水量的不同需求,定时开启喂水装置,对宠物进行喂水。
  微控制器采集光敏传感器的数值,并将所读取的光照强度值与所设阈值进行比对,如果光照强度值小于所设阈值,则打开LED灯进行补光。
  在程序设计方面,我们才用了freeRTOS操作系统,采用了多任务处理方式,将温湿度数据采集,定时喂水,光照强度采集等功能都放到任务重执行,任务的调度等都交由操作系统去实现,保证了业务功能执行的实时性和可靠性,同时简化了用户对程序执行过程的管理,极大的方便了用户对程序操作。

二、宠物管理系统的硬件设计

  主要介绍硬件功能的介绍,硬件功能电路实现,对于硬件电路的设计,我们使用的是Altium Designer V10,主要是设计了系统的原理图和PCB版图。对于硬件电路图的设计,主要有以下流程:原理图器件库的建立,PCB器件的封装库的建立,原理图器件的连接, PCB板图的布线,生成BOM表并根据BOM表购买焊接器件,制板,焊接电路板,调试电路板。

宠物管理系统硬件电路功能介绍

  在本节中宠物管理系统的硬件电路主要包含:供电电路,微处理器最小系统,存储电路,光敏传感器电路,TTL-UART转USB电路,SWD调试及外扩电路接口,按键电路等。

三、系统电路设计

设计电路原理图

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

PCB板设计图

在这里插入图片描述

附录C 程序

#include "bsp_adc.h"

app_adcType a_adcType;

uint32_t app_adcAverage(app_adcType * a_adcType)
{
   
	uint8_t adc_cnt = 0;
	
	for(adc_cnt=0; adc_cnt<ADC_SUM_NUM; adc_cnt++)
	{
   
		a_adcType->adc_sum += a_adcType->adc_dmaBuff[adc_cnt];
	}
	a_adcType->adc_average = a_adcType->adc_sum / ADC_SUM_NUM;
	a_adcType->adc_sum = 0;
	
	return a_adcType->adc_average;
}
void app_adcAverage(app_adcType * a_adcType)
{
   
	uint8_t adc_cnt = 0;
	
	for(adc_cnt=0; adc_cnt<ADC_TOTAL_NUM-1;)
	{
   
		a_adcType->adc_sum2 += a_adcType->adc_dmaBuff[adc_cnt++];
		a_adcType->adc_sum4 +

网站文章

  • ArcGIS批量导出图片

    ArcGIS批量导出图片

    我们在涉及到大量图斑数据或者底图要素需要出图时,就需要借助ArcGIS中的批量出图功能,这样能够减少很多的人力时间。下面是批量导出图斑数据的步骤。所需数据:a.要素数据(矢量的点线面要素数据)b.影像...

    2024-04-01 01:12:36
  • 拼多多的前端面经

    1.说一下vue router的原理 我说了history和hash的原理onhashchange我都说了 原理层说的 他说不对 我整个前后端路由都解释了 他说不对 他问我怎么实现的不刷新 我不知道。2.js、css加载阻塞问题 如果css加载时间长会阻塞后面的渲染吗3.两种图片引用方式? background-image 和 img的区别? 哪个先加载?4.响应式原理...

    2024-04-01 01:12:05
  • 使用MySQL Shell搭建MGR环境

    使用MySQL Shell搭建MGR环境

    更多文章,欢迎关注作者公众号,欢迎一起交流。1)部署 SandBox 环境[root@serverc local]# mysqlshMySQL Shell 8.0.28-commercialCopyr...

    2024-04-01 01:12:01
  • 2022.07.30 Linux矩阵按键驱动笔记1

    这是之前帮客户开发矩阵键盘驱动时记录的笔记。 1. 行GPIO必须为输入,列GPIO必须为输出。 2. 硬件原理图上的引脚与DTS文件中的引脚必须匹配。 3. X30.dts中要配置行,列对应的键值,...

    2024-04-01 01:11:52
  • delphi 判断结构体不为空_数据结构(3)——堆栈的顺序存储实现

    delphi 判断结构体不为空_数据结构(3)——堆栈的顺序存储实现

    堆栈(Stack):顺序存储运算数,需要时倒序输出具有一定操作约束的线性表,只在栈顶做插入删除。插入:入栈删除:出栈后入先出:Last In First Out(LIFO)栈的顺序存储结构通常由一个一...

    2024-04-01 01:11:21
  • docker buildx 构建多平台镜像错误x509: certificate signed by unknown authority

    buildx 构建时,如果去公司内部的仓库拉取镜像时,会遇到下面的这种授权不通过问题。添加到BuildKitd容器中。

    2024-04-01 01:11:15
  • 从"青面兽杨志"护送生辰纲看IT项目管理(不得不转)

    《水浒传》是大家耳熟能详的古典著作之一,我纵然是维吾尔人,但也很早开始接受汉语教育,因此对于该著作也是略知一二。今天这篇文章中,重点讲述下《水浒传》中较为精彩的故事:杨志护送生辰纲前往东京,半路却被晁盖等人劫取。通过这个故事的,可以发现IT团队管理过程中可能出现的若干问题。本篇纯属虚构,若有雷同,那就雷同。开始之前:“青面兽杨志”的出生杨志在《水浒传》中出场是第12回,与刚上梁山不

    2024-04-01 01:10:51
  • 服务器配置vue项目的默认路由,Vue-Router项目设置Nginx伪静态

    Vue-Router项目设置Nginx伪静态使用Vue + Vue-Router的项目,在history模式下,出现了刷新页面404的问题, 服务器为Nginx出现刷新404的原因是Vue-Route...

    2024-04-01 01:10:42
  • ant之build.xml详解

    ant之build.xml详解

    用 Ant 编译 Java 程序,同时产生 javadoc,生成一个 Jar 或 W ar 文件,实现文件的副本

    2024-04-01 01:10:37
  • 跨考计算机还是法硕,2021考研:过来人告诉你法硕如何选择院校?

    近年来,法律硕士一直是备受考研人的青睐,考研择校就是决定你命运的关键一步,小编建议大家在报考法硕前,要先了解法律硕士考研怎么选择院校?一、地理位置有些同学在择校的时候已经考虑到以后工作的问题,因为法硕...

    2024-04-01 01:10:30