玩转micro:bit-用BXY玩超声波传感器

2018-05-082.8万
精华项目
AI 快速预览详细 收起
本文介绍了如何在micro:bit上使用BXY平台玩转超声波传感器。首先,需要准备器材并正确接线,然后在makecode中添加sonar库进行初步测试。接着,通过BXY平台的新例程urm10.py,实现了更准确的超声波传感器读取。最后,通过编写简单的程序,实现了当距离小于20cm时显示大心,否则显示小心的效果。
今天分享的主要内容是用BXY玩超声波模块。
准备器材及接线如下图。VCC接5V,tring接p2,echo接p1。超声波模块要用5V供电哦。

玩转micro:bit-用BXY玩超声波传感器图1

1、先在makecode里试试,切换英文版,添加Package选项里搜索sonar。
trig和echo都选物理连接端口来实现超声波传感器读取。

玩转micro:bit-用BXY玩超声波传感器图3
用串口助手显示读数,感觉相当不准呢。请求有研究的老师指导下哈。
玩转micro:bit-用BXY玩超声波传感器图2
2、用BXY来试试,今天启动BXY,提醒有新例程,哈哈有新内容urm10加上来。
这也是DF刚刚加上的程序块,是做什么用呢,仔细看看,好像是超声波。
果断测试,果然超声波可用。
先上测试视频一小段,< 20cm,大心,否则,小心。

3、上程序,先跑例程。文件-示例-External-urm10.py玩转micro:bit-用BXY玩超声波传感器图4


[mw_shl_code=python,true]from microbit import *
import urm10
while True:
  #read(ECHO,TRIG)
  a = urm10.read(1,2)
  print(a,'cm')
  sleep(1000)[/mw_shl_code]


详解:
第1行和第2行:导入microbit包中的所有模块和urm10模块。
第3行:while True:  重复执行
第4行:#read(ECHO,TRIG) 注释,读取ECHO,TRIG
第5行:定义一个变量,写入超声波传感器读取的值,ECHO,TRIG接引脚p1,p2
第6行:打印读取的值,单位cm。
第7行:延时1000ms。
延时1000ms太长了,建议改成100,或者50。

要给扩展板供电啊。5V。
点下载并运行,程序自动找到micro:bit下载。
(初次使用可能会提醒安装驱动,按提示安装即可。)
点击串口监视器,模拟量就就读出来了。
玩转micro:bit-用BXY玩超声波传感器图6
玩转micro:bit-用BXY玩超声波传感器图5
测测试试,数据还是挺灵敏也很准的呢。
4、 写程序玩:< 20cm,大心,否则,小心。

[mw_shl_code=python,true]from microbit import *
import urm10
while True:
  #read(ECHO,TRIG)
  a = urm10.read(1,2)
  print(a,'cm')
  sleep(100)
  if a<20:
    display.show(Image.HEART)
  else:
    display.show(Image.HEART_SMALL)
[/mw_shl_code]
下载并运行。

小结:有了超声波传感器,就可以做出好多相关的项目了。

由于时间有限,写的匆忙,难免有错误之处,敬请指正。
我们建有专门的QQ群和微信群,有什么问题,可以在群里交流。
QQ群号:484477101(中小学microbit课堂教学群)。


创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(6)
gada888
gada888
lz辛苦了
仗世文
仗世文
老师,您好,请问urm10模块的代码是怎么写的呢,如何查看呢
仗世文
仗世文回复rzyzzxw
好的吧
rzyzzxw
rzyzzxw
作者
回复仗世文
软件工程师有,我没有啊。
共4条回复,已加载2条,点击查看更多共4条回复,已加载全部
gada888
gada888
朱老师牛
极客工程狮
极客工程狮
正想用这个超声波:victory:
sunkf
sunkf
特意翻开朱老师的超声波帖子学习,早会看了一半,只能回看了
rzyzzxw
rzyzzxw
作者
回复sunkf
欢迎孙老师指导哈。
hnyzcj
hnyzcj
朱老师辛苦了
rzyzzxw
rzyzzxw
作者
回复hnyzcj
为人民服务;P。
- 没有更多了 -