终极 DIY 智能啤酒机:从组件选型到云端监控的完整构建指南
项目目标
打造一台功能完善的智能啤酒机,实现:
- 精准恒温控制,防止饮料过热或冻结
- 监控 CO₂ 压力,保持最佳碳酸化口感
- 实时称重每桶余量,聚会前一眼知晓是否充足
- 监测 CO₂ 钢瓶重量,预警气体不足或泄漏
核心硬件架构
| 模块 | 关键组件 | 功能说明 |
|---|---|---|
| 制冷箱体 | 10.6 cu.ft 卧式冷冻柜 | 提供制冷与结构框架 |
| 主控 | Raspberry Pi 2 Model B (Win 10 IoT Core) | 运行 Web 服务、云上传、业务逻辑 |
| 称重子系统 | 5× 智能邮政秤 (内置 HX711 + Arduino Pro Mini 3.3V) + 1× CO₂ 瓶秤 | I²C 总线上报重量,经标定换算余量 |
| 温度监测 | 5× DHT11/DHT22 + 1× 环境温度 | 箱底、箱顶、双龙头塔、环境温度全覆盖 |
| 压力监测 | Honeywell ABPMANN030PG2A3 (0-30 PSI, I²C, 3.3V) | 实时读取碳酸化压力 |
| 执行器 | 5V 继电器模块 | 控制压缩机通断实现温控 |
| 电源 | AC-DC 5V/6A 30W 开关电源 | 供电 Pi、Arduino、LED 灯带 |
| 人机交互 | Rii K12 无线键盘、红外动作传感器 | 本地配置与唤醒 |
通信拓扑
- 所有 Arduino 子节点(称重、温度)挂载在同一 I²C 总线,地址 0x40~0x44
- Pi 通过 I²C 轮询采集数据,本地运行 REST API (端口 9500) 与 Web 服务 (端口 9501)
- 数据上传至 Azure Event Hub,使用 AzureSBLite 库
- Stream Analytics 进一步处理:温度越限报警、CO₂ 重量趋势分析泄漏检测
软件核心类设计
Keg 类 (桶管理)
- 属性:桶索引、关联秤对象、容器重、满重、杯容量、安装/生产日期
- 计算属性:剩余重量、剩余百分比、剩余杯数、显示用高度
- 持久化:键值存储到本地设置
- 命令:
SaveFullWeightCommand一键标定满桶重量
Scale 类 (秤驱动)
- I²C 通信封装:初始化、读取原始值、零点标定、重量标定
- 多次采样平均滤波,异常值丢弃
- 状态机:离线 / 未标定 / 已归零 / 就绪
- 持久化零点偏移与标定系数
Kegerator 类 (总控单例)
- 聚合 4 个 Keg、CO₂ 罐、温度控制器、压力传感器、Event Hub 客户端
- 250ms 定时器轮询刷新所有设备
- REST 端点处理远程归零、标定指令
- 压缩机开关切换命令
组装实录
从冷冻柜开孔安装双龙头塔、塔内循环风扇、秤体嵌入、传感器布线、Pi 与电源固定、外观木工包装等完整过程图片见原文。
云端监控预览
免责声明
本项目不鼓励酗酒,饮料内容完全由使用者自行决定。
制造工艺
- Arduino 强化学习避障小车:Q-Learning 让机器人自主学会“右转”
- 互动陀螺仪 LED 显示:NeoPixel Ring + Arduino Pro Mini
- DIY Arduino USB 游戏手柄 — 自制高性能游戏手柄
- DIY 云朵发光服装 — LED 灯带 + Arduino Nano + SparkFun 元件
- 工业级循线搬运机器人 — 物料自动化传输方案
- Pixie:基于 Arduino Pro Mini 的 NeoPixel 智能腕表 - 极简 DIY LED 时钟
- 智能 Arduino 水杯:实时监测饮水量与智能提醒
- DIY 节日影子剧场:Arduino 与可寻址 LED 灯条打造光影秀
- 便携式远程监控摄像头机器人系统
- 智能手语手套:柔性传感器 + 加速度计 + 蓝牙将手势转文字/语音
- IoT4Car车载遥测系统:Arduino MKR1000 + OBD-II 采集车辆数据上云分析
- 台湾顶级线切割EDM机:精密切割解决方案领航者