尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

DPJ-289基于STM32单片机宠物喂食器设计 嵌入式自动喂食宠物屋系统

DPJ-289基于STM32单片机宠物喂食器设计 嵌入式自动喂食宠物屋系统 1、前言这两年开始毕业设计和毕业答辩的要求和难度不断提升传统的毕设题目缺少创新和亮点往往达不到毕业答辩的要求这两年不断有学弟学妹告诉小洪学长自己做的项目系统达不到老师的要求。为了大家能够顺利以及最少的精力通过毕设小洪学长分享优质毕业设计项目今天要分享的是基于STM32单片机宠物喂食器设计 嵌入式自动喂食宠物屋系统。设计通过单片机实现主要功能有自动喂食系统、自动喂水系统、温度调节系统该装置利用传感器采集食物重量、水温水位、电动机喂食开关、水泵出水开关等信息这些信号经过单片机处理后从而产生相应的模拟量输出。自动喂食系统将圆形的转盘分为不同的区域(该区域可以根据存人食物的种类进行整),利用电机带动转盘上的盛装盒该系统工作过程如下通过压力传感器检测当前食物重量通过LCD液晶 显示当前时间、温湿度和当前食物重量、采用按键进行设置多个投喂时间和投喂的粮食重量。当时间到达投喂时间并且粮食剩余量小于设置的粮食重量电机会正转模拟进行投食重量达到设置标准之后电机反转,模拟停止投喂。或者预先设定时间转盘可以按照设定的时间旋转,从而实现- -天多食的喂食功能。也可让宠物自己按键进行投食。设定不同的模式:主人在家时主人可以手动确定不同的时间喂食的食品和选择食品的类;主人不在家时主人可以提前加入食物,设定固定的时间喂食宠物,也可以根据宠物生长需求填换不同的粮食。设计不同的食物存储空间该存储空间可以存储宠物- -定天数内需要食用的食物,且保持食物的新鲜食物的出口可以调整适用于不同形状和大小的食物.自动喂水系统饮水加热装置可以预先设置想要的水温狗和猫咪喝水的温度在20摄氏度左右比较合适通过温度传感器监测水温并且温度上升到设定值后,机器进入待机状态自动进入保温模式。此外可以增加童锁功能防止宠物不小心触碰到。以及断电保护功能当饮水机在加热过程中由于意外断电也会停止工作。废水清理通过时钟设定时间-天更换一次饮水 通过内置水泵排空旧水,将新水通过过滤器过滤后输送到饮水机,从而实现饮水安全。同时设置单独按钮当主人发现饮水有所污染,可以手动更换饮水。温度调节系统宠物房的温度控制- -般都是通过温度传感器来探测室内的温度再把信号传输到控制系统通过传感器测量出的温度和预设的温度比较,将采集到的温度信息通过LED液晶显示屏进行显示并根据实际温度的变化来实现各种颜色的灯的开、关。如果温度过高则打开风扇降温如果温度过低则启动加热元件加热。可以设置不同的颜色以满足不同宠物的需要。如果想让整个宠物房的温度更舒适可以在每个房间的门上设置出风口。当温度处于0~10°C时,LED1亮表示给宠物通风频率为六小时- -次;当温度处于10 ~20°CLED2亮,表示给宠物通风频率为五小时一-次温度处于20 ~ 30°C时,LED3亮,表示给宠物频率为四小时一次;当温度处于30°C以上时,给宠物通风频率为三小时一次,不同的频段。2、简介设计通过单片机实现主要功能有自动喂食系统、自动喂水系统、温度调节系统该装置利用传感器采集食物重量、水温水位、电动机喂食开关、水泵出水开关等信息这些信号经过单片机处理后从而产生相应的模拟量输出。3、组成本设计由STM32F103C8T6单片机最小系统TFT1.44显示电路超神波模块温湿度模块重力传感器继电器温度模块时钟模块舵机水泵电路风扇电路按键电源电路组成。4、实现效果整体展示哔哩哔哩视频链接https://www.bilibili.com/video/BV1gN4y1S7Gp/?spm_id_from333.1387.list.card_archive.click5、设计原理5.1STM32F103C8T6简介STM32系列处理器是意法半导体ST公司生产的一种基于ARM 7架构的32位、支持实时仿真和跟踪的微控制器。选择此款控制芯片是因为本系统设计并非追求成本的最低或更小的功耗而是在实现本设计功能的前提下能够提供更丰富的接口和功能以便于设计实验系统各实验项目所需的外围扩展电路。此款控制芯片在完成单片机课程的学习后上手较为容易在医疗器械中应用广泛具有很好的学习、实验研究价值。一、STM32的主要优点1使用ARM最新的、先进架构的Cortex-M3内核2 优异的实时性能3 杰出的功耗控制4 出众及创新的外设5 最大程度的集成整合6 易于开发可使产品快速将进入市场二、STM32——最佳的平台选项对于使用同一平台进行多个项目开发而言STM32是最佳的选择1 从仅需少量的存储空间和管脚应用到需要更多的存储空间和管脚的应用2 从苛求性能的应用到电池供电的应用3 从简单而成本敏感的应用到高端应用4 全系列脚对脚、外设及软件的高度兼容性给您带来全方位的灵活性。您可以在不必修改您原始框架及软件的条件下将您的应用升级到需要更多存储空间或精简到使用更少存储空间/ 或改用不同的封装的规格。STM32F103C8T6单片机核心板接口电路图如下图所示。STM32单片机核心板接口原理图6、部分核心代码#include stm32f10x.h #include delay.h #include usart.h #include MENU/menu.h #include GPIO/gpio.h #include MYDATA/mydata.h #include pwm.h #include DHT11/dht11.h #include DS18B20/ds18b20.h #include HCSR/hcsr.h #include TFT.h #include timer.h #include DS1302/ds1302.h #include HX711/HX711.h /****************洪核单片机工作室******************* *** 洪核单片机 *** 项目:STM32自动喂食宠物屋系统 *** BILIBILI:洪核单片机 *** 小红书:洪核单片机 *** 授权IP:洪核单片机 *** 版本:V01.01 *** MCU:STM32F103C8T6 ******************洪核单片机***********************/ uint8_t tempbuc 50; uint16_t titemp 0; uint16_t t_min 18; uint16_t t_max 32; uint16_t w_yz 1000; uint16_t s_yz 100; float csb 0; float rongqishen 250; uint16_t JULI 0; uint8_t year 0; uint8_t month 0; uint8_t day 0; uint8_t time 0; uint8_t minute 0; uint8_t second 0; uint8_t week 0; u8 set_time_flag0; uint8_t setyear 0; uint8_t setmonth 0; uint8_t setday 0; uint8_t settime 0; uint8_t setminute 0; uint8_t setsecond 0; int main(void) { delay_init(); //延时函数初始化 TIM3_Int_Init(499,7199);//50ms InitClock(); ReadDS1302Clock(TM); DS18B20_Init(); GP_IOInit(); TFT_Init();//TFT TFT_Clear(BLACK); TFT_PutString(5,0,READY..... ,RED,BLACK); hcsr_Init();// PWM_Init(); delay_ms(100); Init_HX711pin(); //HX711 Get_Maopi(); delay_ms(100); DHT11_Init(); delay_ms(1000); while(1) { //获取按键值 key_scan(); //进入菜单界面显示处理数据 GetKeylnput(Keystatus); //获取传感器数据 SensorDataGet(); delay_ms(100); } }
返回列表