Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Ответить

Удалённое подключение HC-SR04

Сб дек 03, 2016 19:31:07

Возникла задача опроса нескольких датчиков HC-SR04 (измерители расстояния).Схема - плата контроллера и к ней несколько удалённых датчиков...Причём самый удалённый на расстоянии порядка 20 метров...Для логики далековато...Да и датчику нужно 5 вольт питания...Отдельно питать каждый датчик не получится....Т.е.питание тоже тянуть от контроллера...Провода проложить без проблем...Вопрос в помехоустойчивости питания и цифрового сигнала (туда-назад)...Буду благодарен за подсказку...

Re: Удалённое подключение HC-SR04

Сб дек 03, 2016 19:53:32

Без проблем - интерфейс RS485/422 (EIA485/422). http://www.bookasutp.ru/Chapter2_3.aspx
Физически - дифференциальная витая пара. Физические трансиверы - MAX485, MAX490 и их вариации. Интерфейс, часто применяемый в промышленности.
Питание датчиков параллельно отдельной парой. Кабель можно с некоторым допуском взять CAT5, желательно экранированный FTP, по соображением дешевизны и распространенности - есть в любом компьютерном магазине - так называемый "сетевой" или "витая пара".
Специальный кабель для интерфейса 485 стоит в несколько раз дороже и его сложнее найти. Отличается точным соответствием волнового сопротивления и упрочненной конструкцией.

Re: Удалённое подключение HC-SR04

Сб дек 03, 2016 21:07:33

Посмотрел описание...Очень хорошая микросхема для связи на дальнее расстояние...Правда смутило одно "Но".Для управления датчиком требуется подать запускающий сигнал и он через время даст ответный...Разрешение направления прохождения сигнала на MAX485 определяются входами разрешения...Или туда или обратно..Со стороны контроллера в этом нет проблем - програмно переключать.Со стороны-же датчика такого "переключателя" нет.Т.е. надо или ставить какую электронику управляющюю направлением передачи MAX485 со стороны датчика или ставить 2 MAX485 оба работающих только на передачу...
И ещё вопрос...Я прочитал в даташите фразу Supply Voltage (VCC) ......12V т.е. микросхема может работать от 5 до 12 вольт.Насколько это верно ? Увеличится-ли амплитуда сигнала на выходе микросхемы (повысив помехоустойчивость ) и можно-ли в этом случае ею управлять логическим сигналом 5в ?

И меня всё-таки смущает подача питания 5в на схему на дальнее расстояние.Возможно стоит поставить какие-либо фильтры для улучшеня качества питания или подавать по проводу 12в а на плате с помощью 78l05 преобразовывать его в 5в ?

Re: Удалённое подключение HC-SR04

Пн дек 12, 2016 10:05:07

1. В даташит на HC-SR04 я вижу раздельные пины для запуска измерения (Trig) и для ответа (Echo):
Изображение

2. Там же вижу, что потребляемый ток всего 15ма. Если предположить, что мы будем присоединять модуль витой парой, то сопротивление 20 метров питания составит не более 4Ом (100 метров витой пары в обе стороны - не более 19Ом). При токе в 15ма падение напряжения составит ~ 0.06 вольт. Я думаю, этим можно смело пернебречь. Но емкость, в интервале от 1 до 4.7мкФ на питание модуля поставить следует обязательно.

3. На 20 метрах действительно возможны помехи по сигнальным линиям. В связи с этим, на линию триггера следует поставить емкость в 0.1мкФ на землю. Она даст длительность фронта порядка 0.5мкс, что для импульса в 10мкс, указанном в даташит, роли не сыграет. Хотя я бы все равно увеличил длительность свыше минимальной на 20% - до 12мкс. Аналогично, следует поставить емкость в 0.1мкФ и между шиной эха и землей, но уже рядом с МК. В случае паранойи можно установить с двух сторон еще и триггеры Шмитта.

Для соединения модуля с МК рекомендую использование витой пары. Причем, из четырех пар используем три: питание, триггер и эхо на разных парах, а земля на всех трех вторым проводом пары.
Вложения
HC-SR04.jpg
(30.5 KiB) Скачиваний: 827

Re: Удалённое подключение HC-SR04

Пн дек 12, 2016 13:38:06

Спасибо...У меня в прошлый раз было то что вы описываете - сбои по сигнальной линии...Боролся програмно в микроконтроллере...+ Преобразовывал сигнал 5в в 12в на входе-выходе линии...
Про ёмкостя и триггер не подумал...:-)...Бум пробовать..Я попробовал предложить RS485/422 но народ "рыло корчит" из-за дополнительных проводов...Предлагает ставить аналог max232 на входе-выходе...Ну что-ж по-моему тоже идея...Не зря-ж КОМ-порт почти на 20 метров и рассчитан...

Re: Удалённое подключение HC-SR04

Пн дек 12, 2016 13:56:27

Главный эффект в борьбе с помехами дает как раз витая пара. Так как каждый сигнальный провод свит в паре с землей, получается довольно неплохое экранирование от внешних помех.

Re: Удалённое подключение HC-SR04

Пн дек 12, 2016 14:24:43

Я когда-то видел что на концах пар тянущихся на несколько метров стояли небольшие ферритовые кольца через которые пары наматывались по несколько витков.
На каждой паре по колечку...
Насколько эффективна по Вашему такая защита от помех ?

Re: Удалённое подключение HC-SR04

Пн дек 12, 2016 15:12:28

Достаточно эффективна, но, в первую очередь, для более высоких частот. А здесь у нас самый короткий полупериод 10мкс. Значит период 20мкс и частота 50КГц. Не думаю, что на такой частоте оправдано возиться с ферритовыми кольцами.
Вот если бы речь шла об I2C на 400КГц, тогда это было бы оправдано.

Re: Удалённое подключение HC-SR04

Пн дек 12, 2016 19:52:45

Спасибо за советы...

Re: Удалённое подключение HC-SR04

Пн июл 31, 2017 09:48:25

Не стал новую тему плодить решил спросить здесь...Иногда ломается датчик HC-SR04.Перестаёт поступать сигнал эха.Почему - непонятно но суть не в том...Заменили - и дальше работает...Но хотелось-бы сделать програмное оповещение что датчик перестал работать.Посмотрел даташиты...Есть параметры сигнала включения,параметры сигнала эха...А вот хоть приблизительного параметра времени между включением и эхом,по которому можно было-бы ориентироваться сработал датчик или нет не нашёл.Что можно посоветовать по этому вопросу...? Программирую в CodeVision - если есть библиотека с возможностью распознавания ошибки буду благодарен...Или за полезный совет и информацию..

С уважением...

Re: Удалённое подключение HC-SR04

Пн июл 31, 2017 11:43:11

andr_lar писал(а):А вот хоть приблизительного параметра времени между включением и эхом,по которому можно было-бы ориентироваться сработал датчик или нет не нашёл.
Это время - время прохождения звука от датчика до препятствия и обратно.
Какой параметр Вы хотите найти в документации ?

Re: Удалённое подключение HC-SR04

Пн июл 31, 2017 17:10:30

В даташите есть параметр времени для сигнала запускающего датчик...10 мкс.... Есть параметры выходного сигнала (эхо) пропорционального расстоянию да обьекты...Мне нужен временной интервал между началом подачи входного сигнала и появлением сигнала эха...Я хочу контроллером отслеживать это время и если сигнал эха не начался то подавать сигнал неисправности датчика...

Re: Удалённое подключение HC-SR04

Пн июл 31, 2017 17:27:15

По спаду запускающего, он формирует 8 CLK с частотой 40KHz и поднимает линию ECHO.
Т.е., от фронта запускающего до фронта ECHO: 10µS+200µS=210µS.
Изображение

Re: Удалённое подключение HC-SR04

Вт авг 01, 2017 09:06:05

Спасибо,сейчас понятно...Хороший рисунок...В тех что мне попадались нет чёткой взаимосвязи входны\выходных сигналов и акустических...Хотя и тут небольшая ошибка - не 50мкс а 50мс но то вероятно опечатка..Благодарю....
Ответить