控制继电器-虚拟物联网硬件


控制继电器 - 虚拟物联网硬件

在这节课的这一部分,你将向你的虚拟物联网设备添加一个继电器,并根据土壤湿度水平控制它。

虚拟硬件

虚拟物联网设备将使用模拟的Grove继电器。这使得这个实验与使用带有物理Grove继电器的树莓派相同。

在实际的物联网设备中,继电器将是常开型(这意味着没有信号发送到继电器时,输出电路是断开的)。这种继电器可以处理高达250V和10A的输出电路。

向CounterFit添加继电器

要使用虚拟继电器,你需要将其添加到CounterFit应用程序中。

任务

将继电器添加到CounterFit应用程序中。

  1. 如果尚未打开,请在VS Code中打开上一课中的soil-moisture-sensor项目。你将在该项目中进行添加操作。

  2. 确保CounterFit Web应用程序正在运行。

  3. 创建一个继电器:

    1. 在“执行器”窗格的“创建执行器”框中,展开“执行器类型”框并选择“继电器”。

    2. 将“引脚”设置为“5”。

    3. 选择“添加”按钮,在引脚5上创建继电器。

    继电器设置

    继电器将被创建并出现在执行器列表中。

    创建的继电器

编程继电器

现在可以编写代码来使用虚拟继电器。

任务

编程虚拟设备。

  1. 如果尚未打开,请在VS Code中打开上一课中的soil-moisture-sensor项目。你将在该项目中进行添加操作。

  2. 在app.py文件中,添加以下代码到现有的导入语句下方:

    from counterfit_shims_grove.grove_relay import GroveRelay ​

    这段代码导入了GroveRelay from the Grove Python shim libraries to interact with the virtual Grove relay.

  3. Add the following code below the declaration of the ADC class to create a GroveRelay实例:

    relay = GroveRelay(5) ​

    这行代码使用引脚5创建了一个继电器,这是你连接继电器的引脚。

  4. 为了测试继电器是否正常工作,可以在while True:循环中添加以下代码:

    relay.on() time.sleep(.5) relay.off() ​

    这段代码会开启继电器,等待0.5秒,然后关闭继电器。

  5. 运行Python应用程序。继电器每10秒会开启和关闭一次,每次开启和关闭之间有0.5秒的延迟。你会看到CounterFit应用程序中的虚拟继电器闭合和打开。

    虚拟继电器的开关

根据土壤湿度控制继电器

现在继电器已经正常工作,可以根据土壤湿度读数来控制它。

任务

控制继电器。

  1. 删除用于测试继电器的3行代码。用以下代码替换它们:

    if soil_moisture > 450: print("Soil Moisture is too low, turning relay on.") relay.on() else: print("Soil Moisture is ok, turning relay off.") relay.off() ​

    这段代码会检查土壤湿度传感器的土壤湿度水平。如果高于450,则开启继电器;如果低于450,则关闭继电器。

    记住,电容式土壤湿度传感器读数越低表示土壤中的水分越多,反之亦然。

  2. 运行Python应用程序。你会看到继电器根据土壤湿度水平开启或关闭。更改土壤湿度传感器的“值”或“随机”设置,可以看到值的变化。

    Soil Moisture: 638 Soil Moisture is too low, turning relay on. Soil Moisture: 452 Soil Moisture is too low, turning relay on. Soil Moisture: 347 Soil Moisture is ok, turning relay off. ​

你可以在code-relay/virtual-device文件夹中找到这段代码。

你的虚拟土壤湿度传感器控制继电器程序成功运行!

声明:
本文件灏天文库团队进行了翻译。尽管我们力求准确,但请注意,翻译可能包含错误或不准确之处。原文档以其原始语言为准。我们不对因使用此翻译而产生的任何误解或误译负责。

作者与出处
原作者:microsoft
来源:microsoft
许可证:MIT
整理人: 灏天文库整理
由灏天文库结构化整理,提供目录导航、全文检索与在线阅读,便于系统化学习
发布者: 作者: microsoft 转发
评论区 (0)
U