当构建一些复杂的电路时,尤其是使用Arduino和Raspberry Pi时,模块和屏蔽总是很方便的。这些模块减少了连接电路中每个组件的所有开销,并充当即插即用设备,例如LCD屏蔽,继电器模块等。在这里,我们共享一个非常有用的热水箱检漏仪项目,该项目可以轻松构建通过在Raspberry Pi中使用两个SPi模块。
首先,我们应该了解SPI(串行到外围接口)。 SPI是同步和全双工通信接口,主要用于嵌入式系统中,以使用微控制器控制外围设备。 SPI使用主从结构,微控制器通常充当主从结构。像SPI和I2C这样的总线的优势在于,您可以使用很少的引脚连接许多设备,例如在SPI的情况下,我们只需使用四个引脚(其中三个引脚用于数据通信,一个用于选择芯片)就可以连接许多外围设备。
在Raspberry Pi中,我们有2个芯片选择引脚来控制2个SPI器件,目前Raspberry Pi只能用作主机。我们可以通过一个简单的示例来理解它,例如,如果我们想将8个继电器与Raspberry Pi连接起来,那么我们需要8个GPIO引脚,但是使用74HC595移位寄存器作为SPI设备,我们只需使用Raspberry Pi的4个SPI引脚就可以连接8个继电器,因此我们可以将其他GPIO引脚保存为其他功能。这在复杂电路中非常有用。
现在回到我们的热水箱检漏器项目,widgetlords创建了许多有用的Raspberry Pi构建块和SPI模块,使用它们我们可以在更短的时间内创建许多复杂的项目。在此泄漏检测项目中,Raspberry Pi使用了两个模块,分别是Pi-SPi-8AI 8通道模拟输入模块和Pi-SPi-8KO 8通道继电器模块。除此之外,还使用了一个蜂鸣器,24v电源,热敏电阻和漏水传感器。漏水传感器是通过将两个不锈钢螺钉固定在透明塑料板上而制成的。
只要有泄漏,8通道继电器板上的继电器就会触发蜂鸣器。它还使用温度传感器测量热线和冷线的温度,并在热水线达到冷水线温度的10%以内时触发温度警报。该电路还可用作水电导率检测器,并用于测量土壤湿度和水固含量。您可以在其项目页面上找到此热水箱检漏仪的完整详细信息,电路和代码。以下是终端上的输出监视屏幕:
此处仅使用了Pi-SPi-8AI模块的4个通道和Pi-SPi-8KO模块的3个通道,其他通道(共8个)仍未使用。这些未使用的通道可以用于在该项目中添加更多功能,也可以用于处理完全不同的任务。这就是SPI和这些SPi模块的强大功能,它可以使用一个Microcontoller处理许多任务。
Widegetlords有许多有用的Pi-SPi-Module系列,并且他们不断添加更多模块,您可以在其网站上查看。每个模块都有双GPIO扩展端口,因此许多模块可以根据要求串联。并且在每个模块(24VDC)中都有外部电源,因此Raspberry Pi电源不会过载。