MP562

Высокоточный ультразвуковой датчик расстояния без "слепой" зоны

Держи дистанцию!

Датчик позволяет измерять расстояния с достаточно высокой точностью в диапазоне от 0 до 1500 мм (max 2000) бесконтактным способом. Точность измерения в указанных пределах может доходить до 3 мм. У датчика, в отличии от подобных, отсутствует слепая зона, измерения можно вести практически от 0 мм и в узком луче. Рекомендуется для использования в качестве измерителя физических размеров, датчика присутствия, измерения и управления уровнем наполнения, автоматического открытия дверей при приближении человека.

Набор для сборки


Вы недавно смотрели

Технические характеристики

Напряжение питания (В)
5
Рабочая частота (мГц)
0,04
Тип питания
постоянный
Потребляемый ток, не более (мА)
8
Длина (мм)
35
Ширина (мм)
20
Высота (мм)
15
Вес, не более (г)
50
Диапазон входного напряжения (В)
3.8...5.5
Дальность действия (м)
2
Угол обзора датчика (°)
15
Вес
26 г



Мастер Кит с практической пользой:

 

 

Маркировка вывода
Описание
VCC
5В от источника питания
Trig
Запускающий импульс
Echo
Отраженный импульс
GND
Земля источника питания

 
 
Описание функций библиотеки NoBlind_ultrasonic
 
unsigned int ping()
Название:ping
Параметры: Нет
Возвращаемое значение:время от отправки импульса до приема эха
 
unsigned int ping_in()
Название: ping_in
Параметры: Нет
Возвращаемое значение:измеренное расстояние (в дюймах)
 
unsigned int ping_cm()
Название: ping_cm
Параметры: Нет
Возвращаемое значение: измеренное расстояние (в сантиметрах)
 
boolean ping_trigger()
Название: ping_trigger
Параметры: Нет
Возвращаемое значение: true ----- датчик отвечает
false ----- датчик не отвечает
 
void ping_timer(void (*userFunc)(void))
Название: ping_timer
Параметры: userFunc: функция для таймера, от измерения к исполнению
Возвращаемое значение: None
 
boolean check_timer()
Название:check_timer 7
Параметры: невозвращаемое значение: true ------ найден датчик, False ---- датчик не найден
 
Использование NoBlind_ultrasonic Library
 
Шаг1: Распакуйте архив в одну из папок своего компьютера NoBlind_ultrasonic чтобы получить файлы NoBlind_ultrasonic
Шаг2: Добавьте файл NoBlind_ultrasonic.h в папку Arduino-1.0.X/libraries.
 
 
Пример скетча:
/*
SonarRelay v.2
DIY-pragmatiс
2015-02-18
www.masterkit.ru

Программа предназначена для автоматизаческого включения и выключения освещения,
например, в туалетной комнате.
Модуль с помощью УЗ Датчика измеряет расстояние до предмета и принимает решение о включении или выключении реле.
Датчик устанавливается строго напротив двери, на расстоянии не более 1,5 метров, на уровне пояса
1. При включении питания модуль измеряет и запоминает базовое расстояние до двери. Дверь должна быть закрыта.
2. В рабочем режиме реле включено если текущее измеренное расстояние меньше или больше базового.
Таким образом реле включено при открытой двери или при нахождении челевека между дверью и датчиком
При пропадании 220 модуль сбросится, но при включении 220 процесс измерения базового расстояния произойдет заново
Работоспособность восстановится.
*/

#include <NoBlind_ultrasonic.h> //подключаем библиотеку

#define TRIGGER_PIN 10 //Подключение передающего пина к 10 выводу Ардуино
#define ECHO_PIN 11 //Подключение принимающего пина к 11 выводу Ардуино
#define MAX_DISTANCE 150 //maximum distance
int relay_pin = A0; // реле подключено к выходу А0
long Dist = 0; // определение переменных: текущее расстояние
long Base = 0; // базовое расстояние
unsigned int uS = 0; // сброс данных датчика

NoBlind_Ultrasonic sonar(TRIGGER_PIN,ECHO_PIN,MAX_DISTANCE); // указываем библиотеке к каким ногам подключен датчик

void setup()
{
// сбросили реле, щелкнули в подтверждение того что началось измерение базы
digitalWrite (relay_pin, LOW);
delay(100);
for (int a=0; a<1; a++)
{
digitalWrite (relay_pin, HIGH); delay(500);
digitalWrite (relay_pin, LOW); delay(500);
}
//----------------------------------Измеряем базу
delay(5000); //ожидание закрытия двери 5 сек
do
{
delay(200);
Base = 0;
uS = sonar.ping(); //запрос на измеренние роасстояния (библиотечная функция)
Base = (uS / US_ROUNDTRIP_CM); // получение расстояния в см
}
while ((Base > 150)||(Base < 5)); // устраняем возможные сбои в измерении
//----------------------------------Получили базу без ошибки

for (int a=0; a<3; a++)
{
digitalWrite (relay_pin, HIGH); delay(500);
digitalWrite (relay_pin, LOW); delay(500);
}
//----------------------------------Щелкнули реле 3 раза - измерение базы закончено
}
void loop()
{

//Периодически измереняем текущее расстояние
delay(100);
do
{
delay(100);
uS = sonar.ping();
Dist = (uS / US_ROUNDTRIP_CM);
}
while (Dist < 5); //отфильтровываем возможные потери сигнала, нулевые значения

if ((Dist < (Base-5)) || (Dist > (Base+5))) // проверяем значение расстояния
{
digitalWrite (relay_pin, HIGH); //реле включено если "человек на горшке"
delay (2000);
}
else
{
digitalWrite (relay_pin, LOW); //выключено, если никого нет и дверь закрыта.
}
}

// в качестве модуля можно использовать платы Ардуино и дополнительное реле.
// Но можно взять какой-нибудь подходящий модуль с микроконтроллером, и перепрогаммировать
// под Измерение расстояния, например, MC3302. Реле уже есть на борту, если выпаять радиомодуль,
// то появляется несколько свободных пинов для подключения ультразвукового датчика.


Схемы

MP562 - Высокоточный ультразвуковой датчик расстояния без

Схема скачать




Подготовка к эксплуатации

Наиболее просто использовать датчик вместе с платами Ардуино.

Возьмите на закладке СКАЧАТЬ архив файлов с библиотекой и примерами. Распакуйте

Установите библиотеку NoBlind_ultrasonic в соответствующую директорию Arduino Software IDE

Откройте примеры с кодом из папки EXAMPLES

Соберите схему Ардуино + MP562. В заголовке примеров описано, к каким выводам Ардуино надо подключать выводы датчика



Видео



Количество на складе: Неограничено

              
Рейтинг@Mail.ru Яндекс.Метрика