Difference between revisions of "Matrix - Ultrasonic Ranger/zh"

From FriendlyELEC WiKi
Jump to: navigation, search
(介绍)
Line 6: Line 6:
  
 
==特性==
 
==特性==
* 特性1
+
* 5V供电
* 特性2
+
* 5cm-300cm,精度1cm
 +
* 单根gpio操作
 
* PCB尺寸(mm):20x40
 
* PCB尺寸(mm):20x40
 
[[File:ultpcb.png|frameless|400px|超声波PCB]]
 
[[File:ultpcb.png|frameless|400px|超声波PCB]]
 +
 +
==工作原理==
 +
经发射器发射出长约6mm,频率为40KHZ的超声波信号。此信号被物体反射回来由接收头接收,接收头实质上是一种压电效应的换能器。它接收到信号后产生mV级的微弱电压信号。
 +
初始化时将trig和echo端口都置低,首先向给 trig    发送至少10 us的高电平脉冲(模块自动向外发送8个40K的方波),然后等待,捕捉 echo 端输出上升沿,捕捉到上升沿的同时,打开定时器开始计时,再次等待捕捉echo的下降沿,当捕捉到下降沿,读出计时器的时间,这就是超声波在空气中运行的时间,按照  测试距离=(高电平时间*声速(340M/S))/2  就可以算出超声波到障碍物的距离。
 +
  
 
==使用方法==
 
==使用方法==
 
===连接===
 
===连接===
*连接到Tiny4412 SDK (1506)
+
*连接到NanoPi
 
::GND针脚:    接地
 
::GND针脚:    接地
 
::VCC:  接5V
 
::VCC:  接5V
 
::ECHO: GPIO PIN1
 
::ECHO: GPIO PIN1
 
::TRIG: GPIO PIN2
 
::TRIG: GPIO PIN2
 +
[[File:ur&NanoPi.png|frameless|600px|NanoPi+ur]]
  
 
===Linux下的C示例===
 
===Linux下的C示例===

Revision as of 05:46, 25 August 2015

English

1 介绍

Ultrasonic Ranger01

超声波传感器是利用超声波的特性研制而成的传感器。超声波碰到杂质或分界面会产生显著反射形成反射成回波,碰到活动物体能产生多普勒效应。主要可以用于测量距离、温度测量、高亮度测量。

2 特性

  • 5V供电
  • 5cm-300cm,精度1cm
  • 单根gpio操作
  • PCB尺寸(mm):20x40

超声波PCB

3 工作原理

经发射器发射出长约6mm,频率为40KHZ的超声波信号。此信号被物体反射回来由接收头接收,接收头实质上是一种压电效应的换能器。它接收到信号后产生mV级的微弱电压信号。 初始化时将trig和echo端口都置低,首先向给 trig 发送至少10 us的高电平脉冲(模块自动向外发送8个40K的方波),然后等待,捕捉 echo 端输出上升沿,捕捉到上升沿的同时,打开定时器开始计时,再次等待捕捉echo的下降沿,当捕捉到下降沿,读出计时器的时间,这就是超声波在空气中运行的时间,按照 测试距离=(高电平时间*声速(340M/S))/2 就可以算出超声波到障碍物的距离。


4 使用方法

4.1 连接

  • 连接到NanoPi
GND针脚: 接地
VCC: 接5V
ECHO: GPIO PIN1
TRIG: GPIO PIN2

NanoPi+ur

4.2 Linux下的C示例

#include <stdio.h>
#include <unistd.h>
#include "libfahw.h"
 
int main(int argc, char ** argv)
{
    int distance = -1;
 
    int echoPin = TINY4412_GPIO_PIN1;
    int triggerPin = TINY4412_GPIO_PIN2;
 
    if (Hcsr04Init(echoPin, triggerPin) == -1) {
        printf("Fail to init hcsr04\n");
    }
 
    if (Hcsr04Read(&distance)==0 && distance != -1) {
        printf("Get distance: %3d cm\n", distance);
    } else {
        printf("Faid to get distance\n");
    }
    Hcsr04DeInit();
    return 0;
}

4.3 编译并运行示例

git clone http://github.com/friendlyarm/fa-hardware.git
cd fa-hardware
cd demo
cd matrix-ultrasonic_ranger
make

将编译生成的hcsr04通过ftp上传到开发板上运行即可测试。

5 相关资料