基于STM32单片机的智能鱼缸系统设计
创作时间:
作者:
@小白创作中心
基于STM32单片机的智能鱼缸系统设计
引用
CSDN
1.
https://m.blog.csdn.net/2301_79003431/article/details/143055228
本文介绍了一种基于STM32单片机的智能鱼缸系统设计方案,该系统集成了温度监控、浑浊度监控、液位监控、定时喂食等多项功能。文章详细描述了系统的电路设计和程序实现,为硬件设计和嵌入式开发爱好者提供了一个实用的参考案例。
一.系统概述
智能鱼缸系统主要实现以下功能:
- 温度监控:
- 使用温度传感器实时监测鱼缸内的温度,数据通过OLED显示屏进行呈现;
- 当温度低于设定值时,系统会自动开启加热功能。
- 浑浊度监控:
- 通过透光率浑浊度传感器检测鱼缸水质的清澈程度,数据在OLED显示屏上显示;
- 当浑浊度超过设定阈值时,系统会启动换水装置进行清洁。
- 液位监控:
- 运用电阻式水位传感器检测鱼缸的水位高度;
- 当水位低于设定值时,系统自动启动加水功能。
- 定时喂食:
- 使用DS1302时钟芯片进行定时控制,并在OLED显示屏上显示当前时间;
- 到达预设时间后,系统自动进行喂食操作。
- WIFI远程控制:
- 使用ESP8266模块实现WIFI连接,将温度、液位、浑浊度数据上传至APP端;
- 用户可通过手机APP远程控制加热、加水和喂食操作。
- 按键设置与控制:
- 通过按键设定温度、液位、浑浊度的阈值;
- 按键也可用于手动控制加热、加水和喂食功能。
二.电路设计
电路设计采用Altium Designer进行绘制:
- 温度检测:
- 使用DS18B20温度传感器,并通过单总线与单片机通信。
- 数据显示:
- 采用0.96寸OLED12864显示屏,通过IIC总线与单片机连接。
- 时钟定时:
- 使用DS1302时钟芯片,通过SDA、SCK、DAT三个引脚与单片机连接。
- 按键控制:
- 独立按键用于设定阈值和控制系统功能,按键一端接地,另一端接单片机的GPIO口。
- 继电器控制:
- 通过继电器实现加热、加水和喂食功能,继电器的输出端与单片机的GPIO口连接。
- WIFI通信:
- 使用ESP8266-01S模块,将数据通过UART串口上传至服务器。
- 水位检测:
- 使用铜制水位感应板作为电阻式水位传感器,传感器的模拟输出端与单片机的模拟输入端连接。
- 浑浊度检测:
- 红外透光浑浊度传感器用于检测水质,通过模拟输出脚与单片机的模拟输入脚连接。
三.程序设计
#include "sys.h"
#include "delay.h"
#include "adc.h"
#include "math.h"
#include "key.h"
#include "OLED_I2C.h"
#include "Beep_Led_Relay.h"
#include "Control_Report_To_Police.h"
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
delay_init(); //延时函数初始化
Beep_init(); //PC15
Beep=0;//蜂鸣器初始化 系统上电后先让蜂鸣器停止叫
TIM4_Init(300,7200);
KEY_Init(); //PA11 PA12 PA15
OLED_Init(); //OLED初始化
Relay_init(); //PB8
Adc_Init1(); //PB0 水位检测
Adc_Init3(); //PA5 浑浊度检测
while(DHT11_Init()){} //PA12
DS1302_GPIO_Init_Write_Time(); //PA0 CLK PA1 DATA PA4 RST
OLED_CLS(); //OLED清屏
OLED_ShowCN(32,2,0); //小常硬件
OLED_ShowCN(32+16,2,1);
OLED_ShowCN(32+32,2,2);
OLED_ShowCN(32+32+16,2,3);
delay_ms(500);
OLED_CLS();
ALi_ESP8266_GPIO_Init();
MQTT_Buff_Init();
AliIoT_Parameter_Init();
// /*******显示汉字**********/
OLED_ShowCN(0,0,10);
OLED_ShowCN(0+16,0,11);
OLED_ShowCN(0,2,12);
OLED_ShowCN(0+16,2,13);
OLED_ShowCN(64,0,14);
OLED_ShowCN(64+16,0,15);
OLED_ShowCN(64,2,18);
OLED_ShowCN(64+16,2,19);
while(1)
{
OLED_Display_Cotrol(); //显示控制函数
}
}
四.资料内容
24-32-10
热门推荐
美味牛肝菌的化学特性和健康促进作用
什么是车况报告?二手车交易中的重要工具
中国高尔夫行业发展趋势分析与投资前景预测
点燃玩家AI热情的和平精英版DeepSeek,究竟能做哪些事?
同轴电连接器的防水性能如何测试?
风靡欧美的通便神器!黑枣功效不止解便秘,对停经女性有1大好处
全球动漫潮未来|“坐上翼龙的翅膀,有点眩晕!”知乎答主打卡漫博会“黑科技”
游戏化设计(Gamification)如何提升用户粘性?
老峨山:四川自然与文化的瑰宝
10种常见PCR技术,10分钟带你了解它们的区别
10种常见PCR技术,10分钟带你了解它们的区别
对于刘邦来说,萧何韩信张良的功劳如何排序?萧何显然是第一
地震级别的划分标准和威力(地震等级揭秘)
江姓取名唐诗宋词诗经楚辞大气
用微波炉加热泡沫塑料安全吗?
唐代5大有为之君
复刻海南清补凉:椰香四溢的夏日甜品制作指南
这些元素使东京成为米其林指南中星星最多的城市和世界顶级美食城市
智能钻屑监测系统的研发与应用
浴巾怎么裹不会掉,10个实用小技巧让你告别尴尬
采购管理制度及采购流程对供应链的影响有哪些?
Excel怎么绘制高级的图表
深圳“小巨人”企业超1000家 城市创新力竞逐赛加速中
腌制萝卜丝:如何保持脆嫩口感的秘诀
梁衡:乡愁是留不住的回声,是捕捉不到的美丽
70-200mm F4镜头:优势与局限性全解析
全面提升雅思托福成绩的有效策略
春天怎么描述?——诗意、生动、精准的春季描写技巧!
中国医生薪酬待遇调查:高薪背后的隐忧
如何申请志愿服务团队:从准备到加入的完整指南