HC-SR04超声波测距模块的接口定义
HC-SR04超声波测距模块的数据接口如上图,与Arduino uno的接口连接方法:VCC接+5V,GND接地,Trig接数字I/O接口5(也可以是其它),Echo接数字I/O接口4(也可以是其它)。然后打开arduino IDE 上传代码:
HC-SR04的测试程序
int inputPin=4; // define ultrasonic signal receiver pin ECHO to D4 int outputPin=5; // define ultrasonic signal transmitter pin TRIG to D5 void setup() { Serial.begin(9600); pinMode(inputPin, INPUT); pinMode(outputPin, OUTPUT); } void loop() { digitalWrite(outputPin, LOW); delayMicroseconds(2); digitalWrite(outputPin, HIGH); // Pulse for 10μs to trigger ultrasonic detection delayMicroseconds(10); digitalWrite(outputPin, LOW); int distance = pulseIn(inputPin, HIGH); // Read receiver pulse time distance= distance/58; // Transform pulse time to distance Serial.println(distance); //Ourput distance delay(500); }
HC-SR04的测试结果
HC-SR04超声波测距模块的工作原理
(1)采用IO触发测距,给至少10us的高电平信号;
(2)模块自动发送8个40khz的方波,自动检测是否有信号返回;
(3)有信号返回,通过IO输出一高电平,高电平持续的时间就是超声波从发射到返回的时间.测试距离=(高电平时间*声速(340M/S))/2;
(4)回响信号的脉冲宽度与所测的距离成正比。由此通过发射信号到收到的回响信号时间间隔可以计算得到距离。公式:uS/58=厘米或者uS/148=英寸;或是:距离=高电平时间*声速(340M/S)/2;建议测量周期为60ms 以上,以防止发射信号对回响信号的影响。
专题:超声波测距模块:
- HC-SR04超声波测距模块的测试
- SRF02超声波测距模块的连接
- KS103测距模块很牛
- 在树莓派上测试防水型超声波测距模块