×

浴室换气扇控制器开源

消耗积分:0 | 格式:zip | 大小:0.05 MB | 2023-02-08

xymbmcu

分享资料个

描述

更新 2021-11-14:

一个新版本正在制作中,带有彩色 TFT 显示屏、时钟和其他我还没有想到的升级。这次我还将设计一个“真正的”PCB。现在做起来很容易而且很便宜。

更新 v1.12:

v1.12 sketch: 虽然问的时候别人说OLED不应该老化,但我的OLED只用了几个月就老化了。因此,通过添加一个非常小、便宜且简单的 PIR 传感器,显示器将在检测到运动时打开,并在 1 分钟后未检测到运动时关闭。PIR 输入位于 Arduino 的 PIN 4。

请注意:

我注意到所提供的草图无法使用 Arduino IDE 进行编译。我用 VScode/PlatformIO 成功编译了它,但忘记检查 Arduino IDE 是否可以工作......

或者,上传使用带有 PlatformIO 扩展名的 VScode 的 HEX 文件。请参阅此页面上的附件。

所以...我计划在未来几个月内使用具有更多内存和 TFT 彩色显示屏的控制器来完全重建控制器。

----------

笔记2:

使用几个月后,中国的 Arduino 表现不稳定。在另一个项目中,我已经有一个有缺陷的中国 Nano 死在了我身上。

所以...从现在开始我将投资购买正版 Arduino 开发板!

为什么我做了这个:

好吧,我正在寻找一个很好的解决方案来降低我们浴室的湿度。我们已经拥有(已经超过 20 年)非常好的静音 S&P 通风扇,但它是手动操作的,有时我们会忘记打开和/或关闭它。

所以环顾四周,我发现只有少数商业选择。是的,您可以购买带有内置控制器的风扇,但它们价格昂贵且手动设置非常有限。

很难找到独立的湿度控制器/开关!我只找到了不到 100 欧元的下降机械开关。

相片

 
 
 
pYYBAGPjMjCAOxdVAAWYb5qQ8sc691.jpg
 
1 / 7这是一个小箱子,86x86x25mm
 

控制器说明

因为我非常喜欢 Arduino,所以我(再次)决定自己制作我需要的东西,在这种情况下是“浴室换气扇控制器”

控制器具有以下功能和选项:

  • 测量相对湿度和温度。(呃。)
  • 打开风扇(通过继电器)并在湿度下降时将其关闭。
  • 可选:湿度下降后,风扇将保持开启一段可选择的时间。(稍微降低湿度)
  • 手动打开风扇 15 米、30 米、1、2、3、4、5、6 或 12 小时。(对臭味事件有用...)
  • 手动关闭风扇控制器系统 30 米、1、2、4、8 或 12 小时。(想睡觉但是吵闹的风扇开着?关掉!)
  • 完全关闭风扇控制器系统,直到手动打开。(假期!)
  • 用户设置存储在 EEPROM 中,并在复位/断电后保留。

用户设置菜单:

- 阈值:从 40%RH 到 95%RH- 滞后:从 3%RH 到 9%RH- 风扇关闭延迟:从 0(无延迟)到 60 分钟。

纽扣:

有3个按钮,从上到下分别是:

- ON / UP- OFF / DOWN- SELECT- 在机箱侧面:系统 RESET 按钮

控制器显示说明...

 
 
 
poYBAGPjMj6AB-7nAAO87d7RDhQ938.jpg
 
1 / 9闲置/测量,由闪烁的“%”表示(在这张照片上不可见)
 
  • 在显示屏的左上角,您可以看到每秒更新一次的当前湿度值。百分号 (%) 将闪烁以表明这一点。
  • 在右上角,我们有湿度阈值。
  • 低于阈值,您将看到设置的滞后值(可选)
  • 在右下角,显示当前温度。
  • 在左下角,风扇图标将指示风扇何时打开。如果风扇关闭延迟已激活,则该图标右侧会显示文本“DELAY”。

系统说明

无事件/系统空闲:

湿度和温度每秒测量和更新一次,由测量湿度值旁边闪烁的“%”字符表示。传感器*非常*灵敏,也*非常*准确!因此,它将对不断变化的条件做出快速可靠的反应。

注意:如果您决定使用来自中国的传感器,那就另当别论了。便宜又可靠/精确是不可能的。

事件:湿度上升到等于或超过阈值:

当当前湿度达到阈值时,风扇(继电器)将打开,由显示屏左下方的风扇符号指示。

风扇将保持开启状态,直到湿度水平降至低于阈值*减去滞后值*。因此,如果阈值为 70% 且滞后为 5,则风扇将在相对湿度为 65% 时关闭。

注意:显然滞后非常重要!如果不使用,您将有一个风扇在阈值附近关闭和打开。

事件:湿度已降至阈值以下*减去滞后*:

当湿度水平低于阈值加上滞后值时,风扇将关闭。

除外:如果您设置了风扇关闭延迟时间,则风扇将在用户确定的时间内保持开启(菜单设置)

手动干预:

我特意内置了几个商业控制器 (AFAIK) 中没有的有用功能。例如:

  • 你已经让马桶很开心了,但气味不是你想要的……然后你可以手动打开风扇一段时间。
  • 您想上床睡觉,但风扇开着,因为湿度太高,但风扇的噪音令人不安……然后您可以将系统关闭一段时间,之后它会继续测量和切换在需要的时候。通风对于防止霉菌很重要,这样您就不会忘记再次打开系统。
  • 你要去度假:完全关闭系统。这似乎很明显,但在风扇中内置传感器时,这并不总是可能的

按钮说明

开/上

- 系统空闲(风扇关闭):按下时风扇将打开一段设定的时间,从 15 分钟开始。再次按 UP 以按预先确定的步骤增加风扇开启时间。(最长 12 小时)

- 系统关闭:再次打开系统

- 系统手动关闭:系统返回到系统空闲状态

- MENU ACTIVE:按下时数值增加,按住可快速增加数值。

关闭/向下

- 系统空闲(风扇关闭):按下时,系统将关闭设定的时间,从 30 分钟开始。再次按下 DOWN 可按预先确定的步骤增加关机时间。(最长 12 小时)

- FAN IS ON 或 FAN OFF DELAY 激活:停止风扇,然后与 SYSTEM IDLE 相同 - 任何状态(MENU 除外):当按下按钮 >1 秒时,系统将完全关闭,直到按下 ON 再次打开按钮。

- MENU ACTIVE:按下时数值减小,保持快速减小数值。

选择

- 当按下按钮超过 1 秒时,将显示用户菜单。

(仅在 IDLE/fan off 或 fan ON 状态下可能)

-- 设置阈值:从 40%RH 到 95%RH-- 迟滞:从 3%RH 到 9%RH-- 风扇关闭延迟:从 0(无延迟)到 60 分钟。

一些评论...

我的抽屉里有 2 个便宜的 I2C 128x64 像素 OLED 屏幕。可能有点小,但比 20x2 LCD 屏幕好得多……非常明亮清晰的显示器,这些 OLED 东西……

为了获得 descent 字体,我使用了来自 Oli Kraus 的惊人的 8U2G 字体库

https://github.com/olikraus/U8g2_Arduino

这个字体库消耗*大量*内存,但结果很好......我设法在 Arduino Nano(或 Uno)中获得所有代码(仅)

我可能过度评论了这个草图,但我不是一个经验丰富的程序员,所以我想:[1] 让自己在未来更容易进行更改,[2] 帮助其他人理解代码到底意味着什么。

经验丰富的程序员可能会使这个草图变得更好,但它确实起到了作用,这就是 Arduino 平台的美妙之处:即使是初学者也可以享受编码和成长,并在以后变得更有效率。

风扇继电器

继电器:我使用了一个好品牌的 5V 继电器(!)我不想用便宜的中国继电器冒着​​我的房子和家人的风险。顺便说一句,他们确实制造了好东西,但你将支付与本地采购产品相同的价格。

***********************************************YOU WILL NEED A TRANSISTOR to drive the relay!!***********************************************

否则你会炸毁你的Arduino端口......

见原理图。

我重新利用了带有安全外壳的旧印刷电路板来安装我需要的部件并无风险地连接高压。在风扇和 230V 输入之间使用了 5A 保险丝

 
 
 
pYYBAGPjMoOAISWbAAeCTl60M4w416.jpg
 
1 / 2非常扁平的 5V Panasonic 继电器...
 

使用条形板(穿孔板)很容易制作!

我使用免费程序“ VeeCAD ”(<- 单击)将原理图转换为条板。采用“ratsnest”电线,接线方便,这样您就不会忘记任何连接!

有关这些文件的下载,请参阅附件部分。

你不需要使用 VeeCAD 来制作这个项目。如果您打印“比例 1 到 1 文档”,您可以轻松地在条板上断开(切割)并在板上接线。

更多图片:

 
 
 
pYYBAGPjMv2AbaxmAA2Y4Lw3hzM334.jpg
 
1 / 8我使用 VEECAD 简化布线...
 

 


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !