Лазерный датчик с GSM на ардуино(автономный)

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

Предыстория такая. Наткнулся на комментарий.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

Ну что же, их есть у меня. Задача вроде простая, требования не сложные. Длительная автономная работа и оповещение посредством смс о наличии чего либо в ячейке.
Решил использовать лазерные дальномеры VL6180X для детектирования человеческих конечностей внутри ящика. Ардуинка в качестве мозгов. Модуль SIM800L для отправки смс.
Нарисовал плату.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

Взял кусок текстолита.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

Перенес рисунок.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

Вытравил.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

Далее монтаж компонентов. И результат вначале поста. Вроде все  ок. Система работает, жалоб нет. Принял решение оставить датчики расстояния VL6180X.
Так как ширина ячейки 27 см - нужно больше датчиков. А именно три. Использовать мультиплексор желания не имел, да и в бюджет не вписывалось. Адрес поменять не получается. Значит нужно коммутировать по другому. Решил, что сработает управление по минусу. Включаем и выключаем по очереди и считываем показания. Гениальный план, просто оху.ительный если я правильно понял. Развел плату на три датчика.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

Следующий шаг.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

Магия монтажа.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

Готово. Но не работает. От постоянного вкл/выкл модулей, шина i2c вешала контроллер. Решил, что следующая хорошая идея, это управление по плюсу. Ну что же, вторая попытка. Надо по новой разводить плату.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

И снова изготавливаем.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

И? опять не работает. Но на этот раз случилось страшное. От усталости затупил и вставил банку АКБ задом наперед. Дыма было много. Боже храни тантал, что принял на себя нагрузку и сгорел синим пламенем. Все модули и сам контроллер выжили. Удивительно. И здесь я окончательно понял, что электроника не мое что идея включать и выключать модули 10 раз в секунду мягко говоря глупая. Учу матчасть. Решаюсь коммутировать линию данных с постоянно подключенной линией тактирования.
Простите за такую схему.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

Вот как то так, можно отключать/подключать линию данных шины i2c. Ну что же, в третий раз перерисовываю плату.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

И сразу результат.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

Наконец все отлично. Датчики работают примерно так. Включается первый и отрабатывает 30 мс, опрашивается раз в 5 мс. Затем включается второй и третий. Показания датчиков записываются с свои переменные. И о чудо, этот вариант стабилен.
Так же на борту имеется простой датчик света - фоторезистор. Подключен через пин ардуино, дабы не потреблять свои микроамперы когда не надо.
Дальше запаял оставшиеся детали.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

И приклеил неодимовые магниты, угадаете откуда взял?

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

Крепится крайне надежно к любой металлической поверхности.
По поводу работы алгоритм такой. После подключения батарейки, у нас есть 2 минуты, чтобы прикрепить плату на потолок ячейки. Далее происходит автоматическая калибровка. Контроллер замеряет показания на трех датчиках расстояния и датчике света и уходит в режим энергосбережения. В нем он просыпается каждую секунду, подает питание на фоторезистор и замеряет уровень освещения. Если света стало больше, то значит, пора вставать. Включаются три датчика расстояния и происходит 200 опросов в секунду. При попадании инородного предмета в ячейку - датчики снова засыпают. Контроллер переходит в режим отправки смс. Активируется модуль sim800l и через 40 секунд отправляет смс на заданный номер.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

В сообщении контроллер сообщает в том числе напряжение на АКБ для своевременной замены.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

Так происходила настройка. Эту информацию можно получить посредством блютус на телефон. Если подключить в разъем платы модуль hc-05 или подобный. Реализован вотчдог. Если контроллер зависнет, то сам себя перезагрузит, откалибруется и продолжит работать.
Тестирование в почти полевых условиях..

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

Результаты отличные. Ни одного ложного срабатывания. Ни одного не отправленного смс. На днях начинаем тестировать на реальной ячейке. Такую систему можно использовать для разных целей. В качестве автономной сигнализации с GSM на борту.
Одного АКБ хватит на 2-6 месяцев. Потребление в режиме энергосбережения менее 1мА. Такое у меня хобби.
Если что, контакт телеги https://t.me/bb773301
И мой пустой сайт http://safboard.ru/ (вдруг когда нибудь перестанет быть пустым?)
p.s. спасибо сообществу за такую поддержку.

Лазерный датчик с GSM на ардуино(автономный) Электроника, Arduino, Электричество, Самоделки, Техника, Своими руками, Хобби, Радиолюбители, Автоматика, Автоматизация, Длиннопост

TECHNO BROTHER

1.7K постов12.5K подписчиков

Добавить пост

Правила сообщества

1-Мы А-политическое сообщество. 2-Запрещено оскорбление: Администрации Пикабу, сообщества, участников сообщества а также родных, близких выше указанных.

3-Категорически запрещается разжигание межнациональной розни или действий, направленных на возбуждение национальной, расовой вражды, унижение национального достоинства, а также высказывания о превосходстве либо неполноценности пользователей по признаку их отношения к национальной принадлежности или политических взглядов. Мат - Нежелателен. Учитесь выражать мысли без матерщины

Вы смотрите срез комментариев. Показать все
2
Автор поста оценил этот комментарий

1)У датчиков есть режим прерывания по 1. Изменению освещения. 2 по изменению расстояния. Нафига эти все опросы  и лишние датчики? Включиллись. Таймаут на установку в ячейку.  Настроили прерывания  и ушли в powerdown.  Сработавшее прерывание дернет ногой gpio1 и разбудит аврку.  Её задача отправить смс и вщвести датчик опять в режим прерывания. А самой в павердаун.   2)Что мешает просто мерить расстояние условно раз в час.  Судя по даташиту датчик умеет мерить доли миллиметров-тоесть он способен обнаружить лист.

раскрыть ветку (3)
1
Автор поста оценил этот комментарий
Не получается этими датчиками измерять десятые миллиметра, по крайней мере у меня.
раскрыть ветку (2)
1
Автор поста оценил этот комментарий

Вообще круто, мой респект!

Да, иногда хочется замутить что-нибудь эдакое, да посерьёзнее.


Как вариант- проверять отражающую способность нижней поверхности ящика оптопарой.

Дёшево и сердито)

раскрыть ветку (1)
1
Автор поста оценил этот комментарий
Это был изначальный план. Но поверхность ящика светлая, а бумажки маленькие. Не нашёл подходящего решения с засветом и замером. Даже один из самых крутых датчиков света купил. Не пригодилось.
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку