HaaS100传感器应用 - 测距仪

1、前言

测距仪是我们日常生活中经常用到,但是又很容易被忽略的工具。比如,在测量身高,购买各种家具,装修房子等场景。另外,它不仅仅能够被用于生活场景,也会被用于工程和建筑的专业测量场景。在这些场景需要高精度的测量仪器。                                           

测距仪广泛的使用场景,很多HaaS开发者会问HaaS100可以做测距仪吗?

回答是可以的。HaaS 100支持了丰富的外设传感设备,可以很快的搭建出测距仪应用方案。

 

2、测距仪方案

2.1、硬件选型

主控板

选用HaaS100作为主控开发板。HaaS100是一款高性能的针对广大开发者的一款HaaS主力开发板。

HaaS 100的相关介绍可以参考https://blog.csdn.net/youngwah292/article/details/108943898

 

超声波模块

超声测距传感器选择US-100超声波模块。模块购买链接。在示例中US-100使用的是UART串口模式。

主要的产品参数如下表格

工作电压

DC 2.4V~5.5V

静态电流

2mA

工作温度

-20~+70度

输出方式

电平或UART(本案使用UART方式)

感应角度

小于15度

探测距离

2cm~450cm

探测精度

0.3cm+1%

UART模式下串口配置,波特率9600,启示位1位,停止位1位,数据位8位,无奇偶校验,无流控制

 

显示屏

显示屏幕选择使用0.96寸的OLED屏幕,屏幕使用SPI接口。模块购买链接

相关器件的硬件性能说明可在购买链接中找到。

 

2.2、硬件接线

主控开发板HaaS100和超声测距模组之间的连线。超声测距模组包含了两根GND,连接其中一根即可。

主控开发板和0.96寸OLED屏之间的连线。

 

3、方案分析

3.1、源代码分析

参考HaaS100快速开始下载HaaS100的源代码。

测距仪相关的代码路径

application/example/rangefinder_demo

源代码树

.

├── aos.mk

├── app_entry.c

├── Config.in

├── maintask.c    // 主任务入口

├── oled_display.c    // OLED显示源代码

└── rangefinder.c     // 测距仪源代码

 

OLED用于显示打印的接口函数

void OLED_Show_String(uint8_t x, uint8_t y, const uint8_t *p, uint8_t size, uint8_t mode);

void OLED_Show_Char(uint8_t x, uint8_t y, uint8_t chr, uint8_t size, uint8_t mode);

可以使用打印接口函数在OLED屏幕上显示信息。

 

3.2、编译和烧录

测距仪的编译命令

cd PATH_TO_ALIOS_THINGS

aos make rangefinder_demo@haas100 -c config

aos make

环境安装和烧录步骤HaaS 100快速开始中的相关章节。

 

3.3、效果展示

示例运行checklist

镜像的成功编译

参考HaaS 100快速开始

镜像的成功烧录

参考HaaS 100快速开始

外设和主控板之间的连线

参考上文硬件连线部分

在确认了checlist后,每按一次功能按键(功能按键位置请参考下面截图),都会重新出发一次测距功能。

效果请参考下面截图。

 

4、总结

HaaS 100作为一款开发板,通过和传感器结合,可以应用在很多不同的场景。还有更多的有用的方案,期待大家的一起共创。喜欢本文的朋友可以点赞收藏,评论区回复交流哦,谢谢。

 

开发者技术支持

如需更多技术支持,可加入钉钉开发者群,或者关注微信公众号

更多技术与解决方案介绍,请访问阿里云AIoT首页https://iot.aliyun.com/

 

猜你喜欢

转载自blog.csdn.net/HaaSTech/article/details/114525127
今日推荐