MP562
Высокоточный ультразвуковой датчик расстояния без "слепой" зоны
Держи дистанцию!
Датчик позволяет измерять расстояния с достаточно высокой точностью в диапазоне от 0 до 1500 мм (max 2000) бесконтактным способом. Точность измерения в указанных пределах может доходить до 3 мм. У датчика, в отличии от подобных, отсутствует слепая зона, измерения можно вести практически от 0 мм и в узком луче. Рекомендуется для использования в качестве измерителя физических размеров, датчика присутствия, измерения и управления уровнем наполнения, автоматического открытия дверей при приближении человека.
Нет в наличии
Датчик позволяет измерять расстояния с достаточно высокой точностью в диапазоне от 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_ultrasonicunsigned 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: функция для таймера, от измерения к исполнениюВозвращаемое значение: Noneboolean 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. Реле уже есть на борту, если выпаять радиомодуль,
// то появляется несколько свободных пинов для подключения ультразвукового датчика.
Подготовка к эксплуатации
- Наиболее просто использовать датчик вместе с платами Ардуино.
- Возьмите на закладке СКАЧАТЬ архив файлов с библиотекой и примерами. Распакуйте
- Установите библиотеку NoBlind_ultrasonic в соответствующую директорию Arduino Software IDE
- Откройте примеры с кодом из папки EXAMPLES
- Соберите схему Ардуино + MP562. В заголовке примеров описано, к каким выводам Ардуино надо подключать выводы датчика
Комментарии