“I2C超声波模块”的版本间的差异
来自YFRobotwiki
第28行: | 第28行: | ||
[[Image:IIC命令格式.png|600px|超声波I2C模块-IIC命令格式]] | [[Image:IIC命令格式.png|600px|超声波I2C模块-IIC命令格式]] | ||
+ | |||
+ | |||
<br> | <br> | ||
向模块写入 0X01,模块开始测距;等待 100mS(模块最大测距时间)以上。直接读出 3 个距离数据。BYTE_H,BYTE_M 与 BYTE_L。 | 向模块写入 0X01,模块开始测距;等待 100mS(模块最大测距时间)以上。直接读出 3 个距离数据。BYTE_H,BYTE_M 与 BYTE_L。 | ||
距离计算方式如下(单位 mm): | 距离计算方式如下(单位 mm): | ||
− | + | ||
− | + | ||
− | + | ||
*距离=((BYTE_H<<16)+(BYTE_M<<8)+ BYTE_L)/1000 | *距离=((BYTE_H<<16)+(BYTE_M<<8)+ BYTE_L)/1000 | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
2023年4月6日 (四) 11:11的版本
产品简介
超声波模块采用IIC接口通讯模式,可提供 2cm-300cm的非接触式距离感测功能,测距精度可达高到 3mm。
注意:
1、此模块不宜带电连接,若要带电连接,则先让模块的 GND端先连接,否则会影响模块的正常工作。
2、测距时,被测物体的面积不少于 0.5平方米且平面尽量要求平整,否则影响测量的结果
工作原理
向模块写入 0X01,模块开始测距;等待 100mS(模块最大测距时间)以上。直接读出 3 个距离数据。BYTE_H,BYTE_M 与 BYTE_L。
距离计算方式如下(单位 mm):
- 距离=((BYTE_H<<16)+(BYTE_M<<8)+ BYTE_L)/1000
规格参数
- 供电电压:DC5V
- 静态电流:小于2mA
- 工作频率:40kHz
- 感应角度:<15度
- 探测距离:2cm-400cm
- 精度:3mm
- 安装孔径:2MM
- 模块尺寸:45*27*18MM(长*宽*高,包含排针)
- 安装孔间距:40mm、15mm
- 模块重量:7.3g
引脚说明
- 1. VCC -- 电源
- 2. Trig -- 触发信号输入
- 3. Echo -- 回响信号输出
- 4. GND -- 地
应用示例
电路连接
超声波模块 | Arduino UNO |
VCC | +5V |
Trig | A2 |
Echo | A3 |
GND | GND |
示意图
示例代码
//HC_SR04 Test const int TrigPin = A2; const int EchoPin = A3; float cm; void setup() { Serial.begin(9600); pinMode(TrigPin, OUTPUT); pinMode(EchoPin, INPUT); } void loop() { digitalWrite(TrigPin, LOW); delayMicroseconds(2); digitalWrite(TrigPin, HIGH); delayMicroseconds(10); digitalWrite(TrigPin, LOW); cm = pulseIn(EchoPin, HIGH) / 58.0; //echo time conversion into a distance cm = (int(cm * 100.0)) / 100.0; //keep two decimal places Serial.print(cm); Serial.print("cm"); Serial.println(); delay(1000); }
程序下载地址:HC_SR04_Test
程序运行结果:超声波对着墙,测出实时距离,结果如图:
参考资料
垃圾桶安装视频教程
访问论坛 | 论坛邀请码获取 | 技术交流群 |
淘宝企业店 | 淘宝直营店 | 联系我们 |