关于Arduino数字超声波接法与应用

时隔多日,我又来更新文章了。在大致系统地学习完Arduino后,终于腾出时间来。这一次是简单介绍超声波工作原理和示例代码。


此次超声波为SRF-04超声波传感器。该超声波有四个端口,电源端、接地端、触发端和反馈端。超声波,最直接最常见的作用是拿来测距。其原理是触发端(trige)发射超声波,反馈端(echo)接收反射回来的超声波,利用中间的时间差用公式算出得到距离。单位cm。用超声波作的扩展作用一般是设在小车前端测距,对距离设定范围判断是否遇到障碍物。


SRF-04超声波传感器

由此我们知道,一般超声波反馈端得到的数据写入另外的数字端,连接我们需要的元件,常见的是小车轮子上的直流电机。

超声波接法


超声波传感器和直流电机代码


const int TrigPin = 2; //超声波触发端口

const int EchoPin = 3;//超声波的反馈端口

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; //将回波时间换算成cm

cm = (int(cm * 100.0)) / 100.0;

pinMode(4, OUTPUT);

if (cm > 5)//如果cm大于厘米

  {digitalWrite(4, HIGH);

  }

 else//否则

   {digitalWrite(4, LOW);

   }

  }

其中加粗的部分代码是超声波测距的程序,在利用超声波时可直接使用。




当然,该程序不能在串口监视器查看,想要加入串口监视,则要修改一下程序。

const int TrigPin = 2;
const int EchoPin = 3;
float distance;
void setup()
{   // 初始化串口通信及连接SR04的引脚
       Serial.begin(9600);
       pinMode(TrigPin, OUTPUT);
   // 要检测引脚上输入的脉冲宽度,需要先设置为输入状态
       pinMode(EchoPin, INPUT);
   Serial.println("Ultrasonic sensor:");
}
void loop()
{
   // 产生一个10us的高脉冲去触发TrigPin
       digitalWrite(TrigPin, LOW);
       delayMicroseconds(2);
       digitalWrite(TrigPin, HIGH);
       delayMicroseconds(10);
       digitalWrite(TrigPin, LOW);
   // 检测脉冲宽度,并计算出距离
       distance = pulseIn(EchoPin, HIGH) / 58.00;
       Serial.print(distance);
       Serial.print("cm");
       Serial.println();

       delay(1000);
}


串口监视器


以上是对超声波的简单介绍,实际具体情况编写的代码也会不同。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 最近由于事情比较杂,加上自己懒得动手码字,一直没有更简书。刚好最近帮学弟做了一个超声波测距(含温度补偿)的小...
    Deng_Wei阅读 10,253评论 1 14
  • 一切开始之前,我们需要先来温习一个中学就学习过的物理原理: 常温常压下空气中的声速: 340m/s 声波雷达原理 ...
    Cocoonshu阅读 7,775评论 2 8
  • Arduino Due有14个数字I/O,6个模拟I/O,一个复位开关,一个ICSP下载口,7-12v电源供电。 ...
    麦牛2013阅读 8,683评论 0 8
  • 一波三折,最后竟然是因为小妞跳舞学校的搭舞台车出了车祸(还好不严重),演出被迫延期,我终于如愿看了这部纪录片《虔贞...
    小乐小约阅读 3,777评论 0 0
  • 关节损伤是由关节囊、关节面和关节腔构成。当关节遭遇外伤或暴力作用是会导致关节损伤,出现关节脱位、韧带损伤等等。 关...
    北京各种病历讲解与预防阅读 3,558评论 0 0

友情链接更多精彩内容