返回首页

Arduino 分体系统控制 +7°C

本文描述基于分体系统与 Arduino 控制器的制冷室创建。逐步安装、抽真空、防液击保护和 IR 控制。ESP8266 代码示例。

Arduino 和分体自制冰箱:+7°C 稳定
Advertisement 728x90

Arduino控制分体式空调:打造专业制冷室

分体式空调由室内机和室外机通过铜管连接制冷剂组成。室内机包含风扇、蒸发器和控制板。室外机则容纳压缩机和风扇。开关式机型采用离散操作:压缩机要么开启要么关闭。安装时,通常使用预制的、长度不超过5米且带有扩口端的套件。

安装所需工具:

  • 切管器、扩口工具、弯管器(杠杆式或弹簧式)。
  • 歧管压力表组、真空泵。
  • R410A接口适配器(使用5/16英寸而非1/4英寸)。

铜管(细管为液管,粗管为气管)需穿过墙壁并保持坡度以排出冷凝水。连接时使用螺母,无需垫片。必须进行抽真空以去除空气和水分,防止压缩机机油中形成酸性物质。操作流程:将蓝色软管连接到室外机的维修口,抽真空30-60分钟,检查是否泄漏。

Google AdInline article slot

抽真空后,用六角扳手打开制冷剂阀门,迅速断开软管。

电气连接图

机组触点:1 — 压缩机(220V),2N — 零线,3 — 四通阀(制冷/制热模式),4 — 室外风扇。

  • 制冷:1 + 4。
  • 制热:1 + 3 + 4。

室内机负责逻辑控制,但最低温度限制为16°C。如需实现+7°C,需要基于Arduino或ESP8266的外部控制器。

Google AdInline article slot

Arduino控制器:基本逻辑

使用DS18B20监测室内温度和铜管温度(入口/出口)。问题:压缩机关闭后,液管压力上升过快,导致重启时产生液压冲击。

解决方案:

  • 压缩机关闭与开启之间设置3分钟延迟。
  • 压缩机关闭后,室外风扇继续运行3分钟。
  • 使用独立继电器:压缩机(1)、风扇(4)、阀门(3)。

ESP8266示例伪代码:

Google AdInline article slot
#include <OneWire.h>
#include <DallasTemperature.h>

OneWire oneWire(2);
DallasTemperature sensors(&oneWire);

void setup() {
  sensors.begin();
}

void loop() {
  sensors.requestTemperatures();
  float temp = sensors.getTempCByIndex(0);
  if (temp > 7.0 && !compressorOn) {
    // 3分钟延迟
    delay(180000);
    digitalWrite(COMPRESSOR_PIN, HIGH);
    compressorOn = true;
  }
}

添加铜管温度检查,防止温差超过阈值时启动。

解决电源和红外控制问题

电压骤降时,室内机可能“休眠”,导致压缩机运行但无气流。解决方案 — 使用红外模块(红外LED + IRremote库)模拟遥控器命令:“开机”、“制冷模式”、“温度16°C”。

逻辑:

  • 如果检测到连接丢失(无气流超过30秒) — 发送红外唤醒信号。
  • 使用ESP8266配合继电器和红外模块。

遥控器通常使用NEC协议:可通过示波器或库捕获原始遥控器的代码。

#include <IRremote.h>

IRsend irsend;

void wakeAC() {
  irsend.sendNEC(0x20DF10EF, 32); // 示例开机代码
}

扩展与优化

该系统可稳定维持+7°C。对于高级开发者:集成MQTT实现远程监控,使用PID控制器替代开关控制以减少压缩机循环次数。添加压力传感器、压缩机振动传感器。

  • 优点:成本低,可定制性强。
  • 风险:可能失去保修,需要焊接/扩口技能。
  • 替代方案:珀尔帖模块(效率低)、工业冷水机(昂贵)。

关键要点:

  • R410A必须抽真空 — 水分会损坏压缩机。
  • 3分钟延迟可防止液压冲击。
  • 红外模拟解决网络问题。
  • 监测铜管温差对可靠性至关重要。
  • 使用弯管器 — 手工弯曲会导致铜管变形。

— Editorial Team

Advertisement 728x90

继续阅读