亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Equipment >> 工业设备

如何制作定时通风机

需要给房间通风?这篇文章将向您展示我如何制作一个中继操作的 GPS 定时风扇来排出船舱内的潮湿空气。它由PIC16F628A控制并带有LCD。

需要给房间通风吗?这篇文章将向您展示我如何制作一个中继操作的 GPS 定时风扇来排出船舱内的潮湿空气。由PIC16F628A控制,液晶显示。

让空气流动

在几乎没有通风的小房间里,空气往往停滞不前。如果空气有点潮湿,某些地方肯定会有霉菌和真菌。

霉菌和真菌存在于自然界中,它们是分解树叶、木材和其他植物残骸所必需的。因为我的船上有很多木头,所以那里肯定会有霉菌和真菌。我无法阻止它们进来,但我可以采取一些措施,尽量让船内的环境不受霉菌和真菌的侵害。

至少有两种方法可以解决这个问题。一种方法是按紧凑的时间表进行清洗和清洁。现在,这有多有趣?作为一个极客,我把一些东西变成了书呆子:一个风扇,它在固定的、定时的基础上循环和排出潮湿的空气。

设计系统

我希望系统执行以下操作:

要制作这样的系统,我需要以下部分:

我希望风扇每小时运行五分钟。这将在软件中进行硬编码。

该设置将使用汽车电池运行。我的风扇额定值为 12v 4.5A。为确保电池始终处于充电状态,我会将其连接到电池充电器。为确保风扇运行时电池充电器不会过载,我将在风扇运行时让系统“断开”充电器。一个继电器操作风扇,另一个继电器操作电池充电器。风扇运转时,电池不充电,风扇不运转时,电池充电。

为了跟踪时间,我使用了 GPS 模块。在这个项目中,我将使用 Skylab SKM53 系列模块 (PDF)。该单元每秒通过 UART 发送几个 NMEA 语句。数据表建议在 RXD 和 TXD 上使用 10K 上拉电阻。这将增加串行数据的稳定性。我没有这样做,我没有注意到任何不稳定。我可能很幸运。在数据表的同一页上,它说应该添加合适的去耦电容器。 10uF 电解液和 0.1uF 陶瓷。当我为电路做面包板时,我只使用了 0.1uF 的陶瓷。

来自 Skylab 数据表 (PDF) 的屏幕截图。

我正在使用“RMC”句子来获取时间。 RMC 语句的示例如下:

$GPRMC,075747.000,A,2233.89990,N,11405.3368,E,3.9,357.8,260210,,,A*6A

$GPRMC 之后的第一个数字是时间。在本例中,时间为 07:57:47。我们将需要这些信息。

接下来我们需要的是前缀,它告诉我们 GPS 模块是否具有有效的定位。在上面的例子中,它是三个零后面的大写字母 A。

“A”表示有效修复,“V”表示无效修复。在我的软件中,我检查了有效的修复。这些字母区分大小写。

为了构建项目,我喜欢制作框图。通过这种方式,我“可视化”了我想要做的事情。

在上面的框图中,我已将所有内容拆分为它们自己的块。如果我需要对原理图或电路进行故障排除,这也很有帮助。

硬件

原理图以框图为基础。我已经复制了框图中的所有模块,以反映电路中的组件及其连接。

在 LM7805 稳压器的数据表中,指出对于标准应用,您只需要输入引脚上的 0.33uF 和输出引脚上的 0.1uF。那么为什么我使用不同的值上限和一些额外的上限?我正在使用它们来平滑输入和输出。这可能有点太多了,但我对这种调节器配置有很好的经验。如果不使用任何电容器,稳压器可能会开始振荡。 LM7805 稳压器是一个老式的线性稳压器。为什么不使用现代开关稳压器?开关稳压器比线性稳压器高效得多。这就是我所拥有的。

只需使用一个继电器,我就可以节省零件和空间。我想要两个继电器。使用两个继电器的原因之一,是我想在充电器被切断和风扇启动之间有一点时间框架。

我已将零件清单从 BOM.ULP 导入 OpenOffice Calc 并删除了一些不必要的列:

原理图中没有显示的是我的保险丝。我在风扇正极线上有一个 12v 8A 额定保险丝,在电池充电器正极线上也有相同的保险丝。

软件

您可以从本文末尾的下载链接下载 C 源代码。代码注释得很好,但我会在这里做一些额外的亮点。

当我制作程序时,我遵循一定的结构。下图展示了结构:

代码首先包含必要的库,然后是配置位。在源代码中包含配置位被认为是一种良好的编程习惯。这样就可以更轻松地查看您所做的工作并让其他人帮助排除故障。此外,如果你在几个月后开始着手一个项目,那么你会立即看到细节。

当配置位正常时,我继续进行定义。在这里,我定义了连接到电路的晶体速度。微控制器的端口也已定义。

接下来是变量:所有变量都在这里声明。

现在是对函数进行原型设计的时候了。这里我列出了程序使用的所有函数。一些程序员认为这是浪费时间,但我喜欢它并保留它。如果用主程序循环后的函数来构建程序,实际上是有必要的。

接下来是功能。现在开始评论真的很重要。我通常在每个函数上都有几行说明该函数的一般作用。我还在函数中注释了代码行。

一个例子是这个项目中初始化UART端口的函数:

// 初始化UART端口的函数 无效uart_init(无效) { TXSTAbits.BRGH =0; // 高波特率选择位,1=高,0=低 TXSTAbits.SYNC =0; // USART 模式选择位,1=同步模式,0=异步模式 TXSTAbits.TX9 =0; // 9位选择位,1=9位传输,0=8位传输 RCSTAbits.CREN =1; // 连续接收使能位,1=使能连续接收 /* 用16MHz晶振计算SPBRG 16MHz 16000000 /9600 =1666.6666 1666.6666 / 64 =26.0416 26.0416 - 1 =25.0416 25.041 =25 */ SPBRG =25; // 9600-n-8-1 PIE1bits.RCIE =1; // USART接收中断使能位,1=使能 RCSTAbits.SPEN =1; // 串口使能位,1=串口使能 TXSTAbits.TXEN =1; // 发送使能位,1=发送使能位 返回; }  

您将看到第一个注释行,解释了该函数的作用。然后所有的代码行都被注释了,所以我知道发生了什么。

当所有功能都到位后,就该进入主程序了。主程序从几条语句开始,然后进入一个永远运行的循环。

jc_lettheairflow.c.zip

结论

在这篇文章中,我试图让我的船上的环境对霉菌和真菌不利,因为我可以用风扇吹和循环空气。风扇连接到从机舱出来的管道上。我使用 GPS 模块来跟踪时间,并使用两个继电器来打开/关闭风扇。为确保电池保持充电状态,我使用了另一个继电器来打开和关闭电池充电器。

我留给读者把这个电路提升到一个新的水平并显示日期。

为什么要使用 GPS 模块?我可以将微控制器用作一个简单的计时器。然后我必须制作某种界面来设置时间。或者我会很高兴它在不考虑实时的情况下运行。它会每整小时运行 5 分钟。使用 GPS,我可以通过编程将其设置为每整小时运行五分钟。

图片

亲自尝试一下这个项目!获取 BOM。


工业设备

  1. 如何制作玻璃纤维
  2. 如何制作原型
  3. 如何让您的空气压缩机系统更高效
  4. 空气干燥器的工作原理是什么?
  5. 如何去除压缩空气中的污染物
  6. 如何更换液压软管
  7. 如何制作金属车床卡盘
  8. 工作原理:压缩热干燥器
  9. 工作原理:旋转齿压缩机
  10. 下定决心重新使用您的压缩空气系统
  11. 了解压缩空气如何为直线加速赛提供燃料
  12. 如何让您的空气压缩机过冬