构建夜灯-虚拟IoT硬件


文档摘要

构建夜灯 - 虚拟IoT硬件 在本课程的这一部分,你将向你的虚拟IoT设备添加一个光传感器。 虚拟硬件 夜灯需要一个传感器,在CounterFit应用中创建。 该传感器是一个光传感器。在物理的IoT设备中,它会是一个将光线转换为电信号的光电二极管。光传感器是模拟传感器,它们发送一个表示相对光量的整数值,这个值并不对应任何标准单位,比如勒克斯。 将传感器添加到CounterFit 要使用虚拟光传感器,你需要将其添加到CounterFit应用中。 任务 - 将传感器添加到CounterFit 将光传感器添加到CounterFit应用。 确保CounterFit网页应用正在运行(从本作业的上一部分开始)。如果没有,请启动它。

构建夜灯 - 虚拟IoT硬件

在本课程的这一部分,你将向你的虚拟IoT设备添加一个光传感器。

虚拟硬件

夜灯需要一个传感器,在CounterFit应用中创建。

该传感器是一个光传感器。在物理的IoT设备中,它会是一个将光线转换为电信号的光电二极管。光传感器是模拟传感器,它们发送一个表示相对光量的整数值,这个值并不对应任何标准单位,比如勒克斯

将传感器添加到CounterFit

要使用虚拟光传感器,你需要将其添加到CounterFit应用中。

任务 - 将传感器添加到CounterFit

将光传感器添加到CounterFit应用。

  1. 确保CounterFit网页应用正在运行(从本作业的上一部分开始)。如果没有,请启动它。

  2. 创建光传感器:

    1. 在“传感器”窗格中的“创建传感器”框中,下拉“传感器类型”框并选择“光”。

    2. 将“单位”保持为“无单位”

    3. 确保“引脚”设置为“0”

    4. 选择“添加”按钮以在引脚0上创建光传感器

    光传感器设置

    光传感器将被创建并出现在传感器列表中。

    已创建的光传感器

编程光传感器

现在可以编写代码来使用内置的光传感器。

任务 - 编程光传感器

编程设备。

  1. 打开你在本作业上一部分中创建的夜灯项目。如果有必要,重新启动终端以确保它正在使用虚拟环境运行。

  2. 打开文件app.py

  3. 在文件app.py顶部与其他import语句一起添加以下代码以导入一些必需的库:

    import time from counterfit_shims_grove.grove_light_sensor_v1_2 import GroveLightSensor

    import time statement imports the Python time module that will be used later in this assignment.

    The from counterfit_shims_grove.grove_light_sensor_v1_2 import GroveLightSensor statement imports the GroveLightSensor 导入了CounterFit Grove插件Python库中的代码,这些代码用于与CounterFit应用中创建的光传感器进行交互。

  4. 在文件末尾添加以下代码,以创建管理光传感器的类实例:

    light_sensor = GroveLightSensor(0)

    这行代码 light_sensor = GroveLightSensor(0) creates an instance of the GroveLightSensor 将连接到引脚0——这是与光传感器相连的CounterFit Grove引脚。

  5. 在上面的代码之后添加一个无限循环,以轮询光传感器的值并将其打印到控制台:

    while True: light = light_sensor.light print('Light level:', light)

    这将使用 light property of the GroveLightSensor class. This property reads the analog value from the pin. This value is then printed to the console.

  6. Add a small sleep of one second at the end of the while 循环读取当前的光级,因为不需要连续检查光级。休眠可以减少设备的功耗。

    time.sleep(1)
  7. 从VS Code终端运行以下命令以运行你的Python应用程序:

    python3 app.py

    光值将输出到控制台。最初这个值将是0。

  8. 从CounterFit应用中,更改应用程序将读取的光传感器的值。你可以通过以下两种方式之一完成此操作:

    • 在光传感器的“值”框中输入一个数字,然后选择“设置”按钮。你输入的数字将成为传感器返回的值。

    • 勾选“随机”复选框,并输入“最小”和“最大”值,然后选择“设置”按钮。每次传感器读取值时,它都会读取介于“最小”和“最大”之间的随机数。

    你设置的值将输出到控制台。更改“值”或“随机”设置以使值发生变化。

    (.venv) ➜ GroveTest python3 app.py Light level: 143 Light level: 244 Light level: 246 Light level: 253

你可以在code-sensor/virtual-device文件夹中找到此代码。

你的夜灯程序成功了!

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


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