daniral

 
<<< Back

Сонар US-100

Измеряет расстояние и отправляет данные в MQTT по WI-FI.

Привет.
Может кому пригодится.
Wemos
Sonar US-100

Паяем:
5 вольт к VCC
GND к GND
pin 3(rx) к Echo/rx
pin 2 к Trig/tx

Ставим Arduino IDE 1.8.19
На просторах интернета куча хелпов по установке и добавлений плат и библиотек.

Скачиваем архив. Распаковываем.
Двойной клик по файлу SonarUS100.ino
Проект откроется в Arduino IDE.

подключаем плату к компьютеру в настройках IDE выставляем:

COM порт выставить тот к которому подключили Wemos,
В файле SonarUS100.ino если в строчке
boolean debug = false; Выставить true будет выводиться информация в монитор порта.
Если включить логи они будут сохраняться в файл на плате. Но надо его переодически удалять.
Так как памяти всего мега.
Загружаем прошивку в Wemos.

Теперь надо загрузить файлы сервера в память Wemos.
Читаем.Повторяем
При загрузке файлов на плату монитор порта надо закрыть!!

Файлы в папке data.

Вроде все с прошивкой.

При первом включении поднимется точка доступа WI-FI с IP 192.168.4.1
Подключаемся настраиваем подключение к роутеру.
Если не найдет сеть указаную в настройках то поднимет точку доступа.
Как только появится сеть из настроек автоматом подключится к ней.

Настройки MQTT:

Пользователь и пароль не проверял. У меня без пароля. Так что не знаю работает или нет.
Имя устройства оно же и топик в MQTT.
Если сервер MQTT не будет найден повторное подключение будет через 2 минуты.

Настройки сонара:

Расстояние срабатывания - будет отправлять данные расстояния и статус если препятствие ближе 90см.(Выставить какое надо)
Максимальное расстояние - все что дальше вообще не видим. Это чтобы не было ложных срабатываний.
Обновление сонара - С какой частотой опрашивать сонар.
Alive - переодичность отправки сообщения в брокер что датчик не завис.
Если нужна перезагрузка датчика то выбрать по каким дням и во сколько.Остаить пустые дни перезагрузки не будет.
У меня работает пару недель еще ни разу не завис.
Включение логов и так понятно я думаю.

При появлении препятствия ближе чем расстояние срабатывания в MQTT отправляется status-1 и расстояние при котором сработало.
Отправляется один раз. В следующий раз отправится только когда припятствие исчезнет отправится status-0 и расстояние.
Сделано чтобы не летели данные постоянно. Если надо чтобы постоянно слало расстояние то надо править код в сонаре.

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

Вроде все. Если что-то не так в коде пишите.Сильно не пинайте.

Если надо файлы для 3D принтера могу тоже выложить.

Discuss (0) (6)

Тель-Авив, Израиль