赞
踩
HC-SR04超声波传感器使用声纳来确定物体的距离,其工作原理类似与蝙蝠。测量范围从2厘米到450厘米,HC-SR04超声波传感器上配有超声波发射器和接收器两个模块。
超声波测距传感器是数字接口类型,其基本工作过程如下:
引脚定义
超声波测距传感器HaaS Python驱动:下载地址
hcsr04Obj = HCSR04(trigObj,echoObj)
参数 | 类型 | 必选参数? | 说明 |
trigObj | GPIO | 是 | GPIO配置输出,触发引脚,调用此函数前需确保trigObj对象已经处于open状态 |
echoObj | GPIO | 是 | GPIO配置输入,测量引脚,调用此函数前需确保echoObj对象已经处于open状态 |
HCSR04对象成功,返回HCSR04对象;HCSR04对象创建失败,抛出Exception
- import hcsr04
- from driver import GPIO
- print("Testing HCSR04 ...")
- echoDev = GPIO()
- echoDev.open("echo")
- trigDev = GPIO()
- trigDev.open("trig")
- hcsr04Dev = hcsr04.HCSR04(trigDev,echoDev)
Testing HCSR04 ...
获取超声波测量的距离
HCSR04.measureDistance()
无
返回值为cm单位的距离值
- import hcsr04
- from driver import GPIO
- import utime
- print("Testing HCSR04 ...")
- echoDev = GPIO()
- echoDev.open("echo")
- trigDev = GPIO()
- trigDev.open("trig")
- hcsr04Dev = hcsr04.HCSR04(trigDev,echoDev)
- while True: # 无限循环
- distance = hcsr04Dev.measureDistance()
- print(str(distance)+' CM')
- utime.sleep(1) # 打印完之后休眠1秒
- Testing HCSR04 ...
- 34 CM
- 492 CM
此使用实例在board.json中定义了名为IR的GPIO类型的对象。在Python脚本中执行一次获取IR人体红外传感器状态值并打印在日志中。
- {
- "name": "board-name",
- "version": "1.0.0",
- "io": {
- "trig": {
- "type": "GPIO",
- "port": 25,
- "dir": "output",
- "pull": "pullup"
- },
- "echo": {
- "type": "GPIO",
- "port": 26,
- "dir": "input",
- "pull": "pullup"
- }
- }
- }
- import hcsr04
- from driver import GPIO
- import utime
- print("Testing HCSR04 ...")
- echoDev = GPIO()
- echoDev.open("echo")
- trigDev = GPIO()
- trigDev.open("trig")
- hcsr04Dev = hcsr04.HCSR04(trigDev,echoDev)
- while True: # 无限循环
- distance = hcsr04Dev.measureDistance()
- print(str(distance)+' CM')
- utime.sleep(1) # 打印完之后休眠1秒
- Testing HCSR04 ...
- 34 CM
- 492 CM
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。