zoukankan      html  css  js  c++  java
  • Arduino 各种模块篇 超声波 模块

    资料进入这里下载:

    http://dl.vmall.com/c062c71lkn

     

    1、本模块性能稳定,测度距离精确。能和国外的SRF05,SRF02等超声波测距模块相媲美。模块高精度,盲区(2cm)超近,稳定的测距是此产品成功走向市场的有力根据!

    产品应用领域:

       机器人避障   物体测距  液位检测  公共安防 停车场检测 

    2 主要技术参数:
            1:使用电压:DC5V                2:静态电流:小于2mA
            3:电平输出:高5V                 4:电平输出:底0V
            5:感应角度:不大于15      6:探测距离:2cm-450cm  7:高精度 可达0.2cm   

    接线方式,VCC、trig(控制端)、  echo(接收端)、 GND

    基本工作原理:

    (1)采用IO口TRIG触发测距,给至少10us的高电平信号;

    (2)模块自动发送8个40khz的方波,自动检测是否有信号返回;

    (3)有信号返回,通过IO口ECHO输出一高电平,高电平持续的时间就是超声波从发射到返回的时间测试距离=(高电平时间*声速(340M/S))/2;

       

    本模块使用方法简单,一个控制口发一个10US以上的高电平,就可以在接收口等待高电平输出.一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此时就为此次测距的时间,方可算出距离.如此不断的周期测,即可以达到你移动测量的值。

    供以下全套资料

    简单的代码如下:

    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); //低高低电平发一个短时间脉冲去TrigPin 
    delayMicroseconds(2); 
    digitalWrite(TrigPin, HIGH); 
    delayMicroseconds(10); 
    digitalWrite(TrigPin, LOW); 
    
    cm = pulseIn(EchoPin, HIGH) / 58.0; //将回波时间换算成cm 
    cm = (int(cm * 100.0)) / 100.0; //保留两位小数 
    Serial.print(cm); 
    Serial.print("cm"); 
    Serial.println(); 
    delay(1000); 
    } 

    模块工作原理: 

    • 采用IO触发测距,给至少10us的高电平信号;
    • 模块自动发送8个40KHz的方波,自动检测是否有信号返回;
    • 有信号返回,通过IO输出一高电平,高电平持续的时间就是超声波从发射到返回的时间.测试距离=(高电平时间*声速(340m/s))/2;

    电路连接方法:
    <ignore_js_op>超声波.gif

    看样子不算太难

  • 相关阅读:
    Confluence 6 LDAP 服务器配置
    在 Confluence 6 中连接一个 LDAP 目录
    Confluence 6 设置公共访问
    Confluence 6 为站点禁用匿名用户访问
    Confluence 6 为站点启用匿名用户访问
    Confluence 6 配置用户目录
    Confluence 6 设置公共访问备注
    Confluence 6 为空间赋予公共访问
    Confluence 6 更新目录
    Omad群组部署、依赖部署一键解决
  • 原文地址:https://www.cnblogs.com/spaceship9/p/3001018.html
Copyright © 2011-2022 走看看