当前位置: 首页 > news >正文

电子萌新的第一个“活”项目:用Arduino+DS18B20,花50块自制智能鱼缸温控器(附代码与接线图)

电子萌新的第一个“活”项目:用Arduino+DS18B20,花50块自制智能鱼缸温控器(附代码与接线图)

养鱼爱好者都知道,水温稳定是鱼类健康的关键。市面上的成品温控器动辄几百元,而今天我们要用50元预算和一块Arduino开发板,打造一个会自主思考的鱼缸温控系统。这个项目特别适合刚接触硬件的编程爱好者——不需要电路基础,只要会插线就能完成。

1. 硬件清单与成本控制

我们先来算一笔经济账。整套系统核心部件只有4个:

元器件型号单价(元)采购平台
主控板Arduino Nano12.8淘宝/拼多多
温度传感器DS18B20防水款5.9华强北商城
继电器模块5V单路光耦隔离3.5立创商城
加热棒50W不锈钢18.0本地水族店
合计40.2

注:实际花费可能更低,很多元件可以复用其他项目剩余材料

DS18B20这个传感器堪称电子界的瑞士军刀:

  • 防水封装可直接浸入鱼缸
  • ±0.5℃精度远超普通NTC热敏电阻
  • 单总线协议只需一根数据线连接
  • 原生支持Arduino有现成库文件

2. 开发环境闪电搭建

别被"开发环境"这个词吓到,整个过程比安装手机APP还简单:

  1. 下载Arduino IDE(官方完全免费)
    # Windows用户直接运行安装包 # Mac用户拖拽到Applications文件夹
  2. 插入Arduino Nano,设备管理器中确认COM端口号
  3. 安装DS18B20的库文件:
    工具 -> 管理库 -> 搜索"OneWire"和"DallasTemperature" -> 安装

提示:如果遇到驱动问题,CH340芯片的板子需要单独安装驱动,卖家通常提供下载链接。

3. 电路连接:乐高式接线法

所有连接都采用防呆设计,根本不可能接错:

[DS18B20] [Arduino Nano] VCC --------- 5V GND --------- GND DATA ------- D2 (需接4.7K上拉电阻) [继电器] [加热棒] VCC --------- 5V GND --------- GND IN ---------- D3 COM --------- 火线 NO ---------- 加热棒

实际接线时建议使用面包板过渡测试,正式使用时可以用热熔胶固定接头防水

4. 代码解析:智能温控逻辑

核心代码不到30行,但实现了完整的PID控制思想:

#include <OneWire.h> #include <DallasTemperature.h> #define RELAY_PIN 3 #define TEMP_PIN 2 OneWire oneWire(TEMP_PIN); DallasTemperature sensors(&oneWire); float targetTemp = 26.0; // 设置目标温度 void setup() { pinMode(RELAY_PIN, OUTPUT); sensors.begin(); Serial.begin(9600); } void loop() { sensors.requestTemperatures(); float currentTemp = sensors.getTempCByIndex(0); Serial.print("当前水温: "); Serial.print(currentTemp); Serial.println("°C"); if(currentTemp < targetTemp - 0.5) { // 0.5℃回差防止频繁开关 digitalWrite(RELAY_PIN, HIGH); Serial.println("加热棒启动"); } else if(currentTemp > targetTemp) { digitalWrite(RELAY_PIN, LOW); Serial.println("加热棒关闭"); } delay(5000); // 每5秒检测一次 }

进阶技巧:在setup()函数里添加这段代码,可实现开机自检:

for(int i=0; i<3; i++) { digitalWrite(RELAY_PIN, HIGH); delay(200); digitalWrite(RELAY_PIN, LOW); delay(200); }

5. 系统优化与扩展可能

基础版已经能用,但还有更多玩法值得尝试:

  • OLED显示模块(+8元):实时显示水温曲线
    #include <U8g2lib.h> U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0);
  • 手机监控(+0元):利用旧安卓手机+串口蓝牙模块
  • 双重保护:在代码中加入超温报警
    if(currentTemp > 32.0) { while(1) { // 死循环报警 digitalWrite(BUZZER_PIN, HIGH); delay(500); digitalWrite(BUZZER_PIN, LOW); delay(500); } }

我的热带鱼缸运行这个系统三个月后,温度波动始终保持在±0.8℃以内。最惊喜的是某天加热棒故障,系统通过串口日志及时发现了异常——这比普通温控器只能被动响应高明多了。

http://www.cnnetsun.cn/news/1871356.html

相关文章:

  • APK Installer终极指南:在Windows上无缝运行安卓应用的免费解决方案
  • 使用Spring AI Alibaba构建智能体Agent仗
  • PAA负极胶市场:15.55亿规模下的22.9%CAGR增长
  • 信息论基础:从香农熵到互信息的核心概念解析
  • Meshroom终极指南:从零开始掌握免费3D重建的完整教程
  • 终极TensorFlow Probability指南:从零开始掌握深度学习中的概率推理
  • 提交的学问:原子提交、语义化消息与CHANGELOG生成
  • 3步搭建浏览器游戏模拟器:EmulatorJS完全指南
  • 通义千问2.5-7B-Instruct部署教程:Open-WebUI可视化操作详解
  • MySQL 架构、存储引擎、库表操作一站式掌握
  • 别再凭感觉估算!用ADS的EBOND库精确仿真Bonding线寄生电感(附完整参数设置指南)
  • 你的网卡支持PTP吗?手把手教你用ethtool和Wireshark诊断Linux硬件时间戳与同步精度
  • Linux上免费运行Photoshop CC的终极解决方案:3个简单步骤实现专业图像编辑
  • 终极Cursor Pro破解指南:三步免费解锁AI编程无限体验
  • Moonlight安卓端阿西西修改版:15个实用功能完整指南,打造极致游戏串流体验
  • 【OpenClaw】通过 Nanobot 源码学习架构---()总体频
  • 如何用Fay AI Agent框架构建智能数字人助手的完整指南
  • 哥本哈士奇(aspnetx)唤
  • 终极飞书文档批量导出工具:25分钟完成700+文档迁移的完整指南
  • Qwerty Learner终极指南:如何用打字练习提升英语肌肉记忆与编程技能
  • BiliTools哔哩哔哩工具箱:2026年跨平台B站视频下载终极指南
  • 如何快速实现GitHub界面全面中文化:终极汉化插件使用指南
  • 【AIAgent迁移学习权威白皮书】:基于17个真实产线案例的策略分级矩阵(含LLM→Agent微调阈值表)
  • 2026届最火的十大降AI率方案推荐榜单
  • 信捷PLC驱动的七轴伺服插补联动设备——XD5-48T6-E的配方喷涂机程序及中文注释详解,具...
  • PyBroker量化交易框架终极指南:从零构建机器学习交易策略
  • 【化工】基于端点模型预测控制器(MPC)控制青霉素和CHO细胞生产多变量,目标是通过优化饲料来减少变异性附matlab代码
  • Guohua Diffusion从安装到出图:完整部署流程,体验纯正国风水墨绘画生成
  • 科研降本增效:Pixel Epic智识终端替代传统研报外包的实证分析
  • 【EB tresos 与 Mcal】深入解析S32K14x芯片的DIO模块配置