AWS IoT
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

步骤 11:从土壤含水量传感器套件捕获数据

在此步骤中,您将使用 Python 编程语言,在 Raspberry Pi 上运行一些代码,以从土壤含水量传感器套件捕获数据。

  1. 使用 Raspberry Pi 上的可用代码编辑器(例如,nano、IDLE 或 vi)创建具有以下代码的文件。

    import RPi.GPIO as GPIO import time # Represents the GPIO21 pin. channel = 21 # Use the GPIO BCM pin numbering scheme. GPIO.setmode(GPIO.BCM) # Receive input signals through the pin. GPIO.setup(channel, GPIO.IN) # Infinite loop to keep this script running. while True: # 'No water' = 1/True (sensor's microcontroller light is off). if GPIO.input(channel): print("No water detected") else: # 'Water' = 0/False (microcontroller light is on). print("Water detected!") # Wait 5 seconds before checking again. time.sleep(5) # Clean things up if for any reason we get to this # point before script stops. GPIO.cleanup()

    此代码在 Raspberry Pi 的 GPIO21 BCM 引脚(第 40 根引脚)上,每 5 秒侦听来自土壤含水量传感器套件的输入。如果传感器的微控制器灯关闭,则报告值 1。如果灯亮起,则报告值 0

  2. deviceSDK 文件夹中使用扩展名 .py 保存文件,例如 gpio.py。如果您为 .py 文件选择使用其他名称,请务必在本示例中替换。

  3. 从 PuTTY 或 SSH 的命令提示符中,或者从 Raspbian 中的终端,运行命令以切换到 deviceSDK 文件夹,然后使用 Python 运行 gpio.py 文件,例如 cd /deviceSDK && python gpio.py

  4. 每 5–10 秒,将传感器模块上的探头放入一杯水中,或者从水中取出探头。每隔 5 秒,Python 根据探头是否在水中,输出 No water detectedWater detected!

  5. 完成后,请按 Ctrl+C 以停止脚本运行。