Хабрахабр

Как мы делали датчик для измерения уровня мусора

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


Рисунок 1 — Измерение уровня наполненности контейнера без применения электронных средств.

Компания занимается автоматизацией работы по обращению с отходами. Я руковожу отделом разработки радиоэлектронной аппаратуры в производственной компании ООО “Большая Тройка”. Мой отдел небольшой, но работает над весьма интересными задачами: телематические контроллеры для управления парком автомобилей-мусоровозов, разнообразная автоматика для полигонов, контейнерных площадок и самих контейнеров. Если вы хоть что-то слышали про территориальные схемы обращения с отходами и автоматизированные системы управления для региональных операторов, есть очень большая вероятность, что их разработали и внедрили именно мы.

Задача такого прибора — измерять количество насыпанного в контейнер мусора и передавать эти данные на сервер для дальнейшей обработки. Я расскажу о разработке датчика уровня наполненности контейнера отходами. Уже сейчас, до внедрения тарификации по объему, данные от таких датчиков могут очень помочь в оптимизации использования контейнерных площадок: отходы из контейнеров должны вывозиться в строго определенный промежуток времени, холостой пробег мусоровозов должен быть минимизирован, а количество и качество контейнеров на контейнерной площадке должно быть максимально адекватно потребностям отходообразователей.

Способы измерить уровень наполненности контейнера

Содержимое контейнера, как и сам контейнер, не является экзотическим материалом для промышленной автоматики. Поэтому и пути технических решений для измерения физических величин вполне привычны и предсказуемы. Если посмотреть на представленные на рынке приборы для определения наполненности контейнера, можно выделить два популярных типа решений: оптические (инфракрасные) и звуковые (ультразвуковые). В качестве примера оптических решений можно привести продукцию GoodWAN, а в качестве звуковых — продукцию Wasteout. Бывают еще микроволновые, но это такая экзотика, про которую мне доводилось только слышать, а вот посмотреть реальный продукт хотя бы по ссылке (не говоря уже о подержать в руках) — не приходилось.

Например, среди звуковых можно встретить как относительно примитивный подход вроде “дешевый китайский парктроник в качестве дальномера”, так и более интересный подход по определению геометрических параметров незаполненного объема по анализу отклика ультразвукового датчика на набор импульсов разной формы. Уровень технической сложности этих решений тоже бывает разным. Из оптических решений доводилось встречать изящное в своей простоте определение уровня наполненности по пересечению лучей между приемной и передающей частями датчика, установленными на противоположных стенках контейнера. Решение, внушающее уважение, но имеющее ряд нюансов, например, зависимость полученных результатов измерений от акустических характеристик отходов. Грубо, зримо, надежно, но имеет только два результата измерения: “уровень выше датчика” или “уровень ниже датчика”. За счет того, что лучей несколько, нет проблем с ложным срабатыванием датчика при неравномерном заполнении.

Два решения в одном

После изучения существующих продуктов и небольшого мозгового штурма мы решили попытаться скомбинировать плюсы разных подходов: получить предсказуемость оптического датчика одновременно с шириной диапазона измерений и разрешением звукового датчика. В итоге для экспериментов был выбран инфракрасный дальномер GP2Y0A02YK0F от фирмы Sharp.


Рисунок 2 — Дальномер, установленный на плату прототипа.

По тому, какие ячейки линейки были освещены, определяется угол отражения, а по углу отражения — расстояние до мишени. Принцип действия такого прибора: сфокусированный луч освещает мишень, отраженный от мишени луч возвращается к датчику и освещает светочувствительную линейку. Все, что остается пользователю, — измерить величину этого напряжения и по информации из документации на дальномер вычислить соответствующее измеренному напряжению расстояние. Результат измерения предоставляется в виде аналогового сигнала с изменяющимся пропорционально расстоянию напряжением.

Ручка от швабры и другие уязвимости

Какие очевидные уязвимости при использовании такого датчика для измерения уровня наполненности контейнера? Основных две: грязь и любой узкий и длинный предмет, попавшийся на пути луча дальномера, например ручка от швабры. Неизбежная грязь на прозрачном окне корпуса датчика со временем приведет к рассеиванию луча и искажению показаний. А ручка от швабры, «удачно» поставленная в пустом контейнере на пути луча, вызовет результат измерения в виде ложной наполненности.


Рисунок 3 — Ручка швабры на пути луча дальномера.

Использование двух дальномеров вместо одного позволит избежать “ручки от швабры”, а регулярная очистка прозрачного окна корпуса спасет от грязи. Бороться с этими уязвимостями можно и техническими, и административными методами. А пока используем для тестовой версии устройства один дальномер, чтобы на практике увидеть адекватность работы выбранного нами технического решения. Но это все впереди.

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


Рисунок 4 — Красный график — температура воздуха около дальномера; желтый график — напряжение дальномера, измеряющего одинаковое расстояние при изменяющейся температуре.

Падение напряжение — около 50 мВ, что на практике означает погрешность измеренного расстояния всего лишь в ±10 мм на дистанциях от 200 до 500 мм. Напряжение дальномера падает вместе с температурой, а ниже -12 °C дрейф напряжения замедляется. Что интересно, открыто доступная документация на дальномер не содержит информации о температурном дрейфе, зато указаны весьма широкие допуски по выходному напряжению ±150 мВ. Для наших задач такая точность более чем достаточна. На практике мы проверяли эти дальномеры и в лабораторных условиях, и на объектах в других проектах в зимнее время: до -30 °C они работают стабильно и без последствий для срока службы и точности измерений. Производитель гарантирует работоспособность дальномера только до -10 °C.

Это, впрочем, нисколько не мешает выполнять поставленную задачу. Все эти нюансы с точностью получаемых данных не позволяют относить датчик наполненности к измерительным приборам, правильнее отнести наш прибор к классу индикаторов.

Способ передачи данных

Тут тоже чаще всего все сводится к двум подходам: работа в сетях сотовой подвижной радиосвязи или работа в частных LPWAN (энергоэффективных сетях дальнего радиуса действия).


Рисунок 5 — Радиомодуль SIMCom SIM800, керамическая антенна Mobinus Tri 4 и держатель сим-карты на плате прототипа.

Достаточно просто заключить грамотный договор с оператором сотовой связи, получив от него удобный и выгодный тариф, и на этом все: забирай сим-карты пачками, ставь в свои устройства. Работа в сетях сотовой связи хороша тем, что такие сети массово развернуты по всему миру, имеют внушительный процент покрытия используемых для размещения датчиков территорий, а обслуживанием этих сетей занимаются крупные компании с большими финансовыми и человеческими ресурсами.

Про низкую энергоэффективность поясню подробнее: если вам раз в несколько часов нужно отправить десяток-другой байт информации, то нужно включить радиомодуль, дождаться регистрации модуля в сотовой сети и только после этого отправлять SMS или открывать сессию соединения с сетью Интернет. Очевидные минусы такого подхода — финансовая зависимость от оператора (приходится включать расходы на сотовую связь в тарифы для потребителя ваших услуг, в результате стоимость услуги растет вместе с недовольством клиента) и низкая энергоэффективность передачи малых объемов данных. То есть на те миллисекунды (или даже микросекунды) работы радиомодуля, за который ваши десятки байт ушли в эфир, приходятся десятки секунд работы, затраченные на накладные расходы обслуживания этого процесса передачи! Все эти процессы происходят далеко не мгновенно и занимают единицы (иногда десятки) секунд. В этом случае время регистрации в сети увеличивается, а иногда и вовсе происходит отказ в регистрации, а значит снова растут накладные расходы на электроэнергию. Ситуация усугубляется, если вы используете радиомодули, работающие в сетях 2G (а это до сих пор самые массовые и недорогие модули на современном рынке электронных компонентов): в ряде стран поддержка стандартов 2G уже отключена, во многих других они поддерживаются по остаточному принципу с низким приоритетом обслуживания. Он уже работает, но пока не впечатляет: зона покрытия в России все еще меньше, чем у сетей 2G, энергопотребление и накладные расходы хоть и сильно меньше, но все же не настолько, чтобы оправдать все риски перехода. В попытке найти компромисс был разработан NB-IoT как один из стандартов сетей 4G. Очень надеемся, что с NB-IoT все в обозримом будущем станет лучше, переход на этот стандарт станет реальным спасением от умирающих сетей 2G.

Но есть один большой недостаток — это инфраструктура. Работа в сетях LPWAN практически идеальна с точки зрения эффективности потребления энергии. А на такой шаг готова пойти не каждая компания. Либо нужно искать партнера, у которого уже развернута такая сеть, либо поднимать свою. И последствия для злоумышленника совсем другие: у операторов сотовой связи, как правило, есть свои серьезные службы безопасности и возможность быстро и эффективно вызвать жесткую и своевременную реакцию со стороны компетентных государственных органов. Есть повод для беспокойства и для параноиков: такие сети гораздо проще “положить” злонамеренными действиями, чем сеть сотовой связи. Тем не менее на рынке представлены решения для работы в сетях LPWAN, и предоставляющие их компании вполне готовы разворачивать свои сети на объектах клиента. У операторов сетей LPWAN таких ресурсов чаще всего не имеется.

Но в сторону NB-IoT смотрим жадно и пристально! Мы же пока для себя решили выбрать неэффективный в потреблении электроэнергии, но проверенный способ, — передача данных по каналу SMS-сообщений в сетях 2G.

Элементы питания


Рисунок 6 — Литий-тионилхлоридные элементы питания типоразмера AA разных производителей.

Их прелесть в том, что все вышеперечисленные характеристики они обеспечивают одновременно! Если нужны долгий срок службы, низкий ток саморазряда, высокая удельная емкость и широкий диапазон температур эксплуатации, то выбор один — литий-тионилхлоридные элементы питания (Li-SOCl2). Дело в том, что у этих элементов очень высокое внутреннее сопротивление (если сравнивать с аналогичными по массогабаритным характеристикам элементами питания с другой “химией”). Впрочем за все приходится платить, и в случае с Li-SOCl2 “батарейками” как буквально (цены на них относительно высокие), так и в переносном смысле. Производители специально описывают процедуру депассивации в документации к элементам: перед началом эксплуатации нужно нагрузить элемент определенным током в течение определенного времени. Кроме того, на поверхности электродов этих элементов образуется пассивационная пленка, что дополнительно увеличивает внутреннее сопротивление.

Неспособностью отдать высокий ток. Чем плохо высокое внутреннее сопротивление элемента питания? Спасет только использование относительно крупных и дорогих Li-SOCl2 элементов типоразмера C (и крупнее), да и то в специальном “высокотоковом” исполнении (отличается от “обычного” исполнения способом навивки электродов). И те пиковые 2 А, которые запрашивают производители для 2G-радиомодулей, для этих элементов — настолько высокий ток, что делает эксплуатацию этих модулей при прямом подключении к литий-тионилхлоридному элементу практически невозможной. Ну и установка емкостей побольше в цепи питания радиомодуля, да с низкими паразитными сопротивлением и индуктивностью.


Рисунок 7 — Два Li-SOCl2 элемента ER14505 от фирмы EEMB, установленные на плату прототипа.

В этом случае для стабильной работы радиомодуля в течение достаточного для отправки SMS-сообщения времени хватает двух “высокотоковых” элементов, а при внесении определенных хитростей и ограничений в алгоритмы управления питанием, даже “обычных” Li-SOCl2 элементов типоразмера AA! Нас несколько смутили стоимость и габариты элементов типоразмера C, и мы нашли другой подход — использование двух последовательно соединенных элементов типоразмера AA и понижающего импульсного преобразователя. Весьма достойный результат. Стендовые испытания показали: два последовательно соединенных элемента демонстрируют соотношение количества выходов на связь радиомодуля к суммарной емкости элементов лучше, чем одиночный элемент типоразмера C, и немногим хуже, чем одиночный “высокотоковый” элемент типоразмера C.

Сборка прототипов и стендовые испытания


Рисунок 8 — Разработка схемы и печатной платы в программном пакете DipTrace.

Я разработал принципиальную схему и печатную плату, наш монтажник-наладчик “напылил” слой компонентов на полученные с производства платы. После того как мы определились с ключевыми элементами будущего устройства, процесс пошел по накатанной дорожке. После этого платы попали в руки программиста микроконтроллеров, который начал вдыхать жизнь в виде тестовой прошивки в новые устройства.


Рисунок 9 — Печатная плата прототипа с установленными на нее компонентами.

Для установки прототипа в условиях офиса отлично подошла небольшая комната для переговоров: прибор был установлен на стену и направлен дальномером на дверь, которую сотрудники открывают и закрывают по многу раз в день. Основная задача тестовой прошивки — помочь быстро накопить статистику отказов в работе радиомодуля и предоставить достаточно данных с реальными результатами измерения от дальномеров.


Рисунок 10 — Плата прототипа со свисающим держателем батарей (справа) направлена на приоткрытую дверь (слева).

Один счетчик подсчитывает количество включений радиомодуля, другой — количество отправленных сообщений. После включения прибор начал присылать SMS-сообщения в человекочитаемом формате с важной для нас информацией: напряжением питания при маленькой и большой нагрузке, массивом измерений от дальномеров, температурой воздуха вокруг платы прибора и показаниями пары счетчиков. Сквозная нумерация сообщений позволяет наглядно выявлять пропущенные SMS. По этим двум счетчикам сразу видно, сколько раз радиомодуль столкнулся с проблемами регистрации в сети (так и не дойдя до этапа отправки сообщений) и сколько сообщений было отправлено. У датчика температуры, кстати, есть еще одна важная функция — если повезет, устройство успеет определить пожар в контейнере и отправить внеочередное сообщение с тревогой.


Рисунок 11 — Сообщения от прототипа на экране смартфона.

Это мы легко исправили, добавив дополнительный конденсатор на платы прототипов. Первые результаты тестовых испытаний показали несколько мелких недостатков в схемотехнике: недостаток емкости в цепях питания контроллера мог в некоторых случаях приводить к перезагрузке при включении ключа питания радиомодуля. Достаточно посмотреть на колебания напряжения в цепях на экране осциллографа до установки дополнительных емкостей в цепь питания контроллера. Если вспомнить про относительно большое внутреннее сопротивление элементов питания, то можно понять, почему включение радиомодуля — это такое большое событие для устройства.


Рисунок 12 — Желтый график — напряжение на элементах питания; бирюзовый — напряжение в цепи питания контроллера.

После коррекции все гораздо приличнее: резкая просадка напряжения в цепи питания контроллера не наблюдается.

Просадка на бирюзовом графике пропала после установки дополнительного конденсатора.
Рисунок 13 — Желтый график — напряжение на элементах питания; бирюзовый — напряжение в цепи питания контроллера.

С питанием в устройствах с большой автономностью и питанием от химических источников тока вообще много заморочек. Кстати, “пила” на графике напряжения элементов питания — это не баг, это фича: зарядка входных емкостей преобразователя напряжения осуществляется короткими импульсами для растягивания фронта броска зарядного тока. Все редко используемое, что может понемногу “травить” ток, приходится ставить за наглухо закрытые ключи. Например, какие попало конденсаторы в дежурные цепи не поставишь: нужно подбирать модели с низкими токами утечки. Ну а про “синдром беспокойных ног” на Хабре уже есть замечательная статья.

Взаимодействие радиомодуля с сетью сотовой связи — отдельный детектив. Доставляют беспокойства не только цепи питания. А у нас в условиях нестабильного качества связи не хватает времени работы для отправки SMS-сообщений. Отказы в регистрации в сети, отказы в предоставлении услуг и непредсказуемые временные задержки между разными этапами работы с передачей данных — это банальности, с которыми сталкивались многие пользователи GSM-радиомодулей. После этого следуют неудачные попытки отправки сообщения до тех пор, пока не выходит время, отведенное на непрерывную работу радиомодуля. Выглядит это так: радиомодуль с некоторой попытки все-таки пробивается через эфир и получает регистрацию в сети. На графике ниже можно наблюдать процесс роста количества разных ошибок передачи данных. Так теряются драгоценные попытки выйти на связь, причем простое увеличение максимального времени непрерывной работы опасно: есть вероятность сильно увеличить внутреннее сопротивление элементов питания с последующим длительным восстановлением.


Рисунок 14 — Красный график — напряжение элементов питания без нагрузки; желтый — напряжение элементов питания под нагрузкой во время работы радиомодуля; зеленый график — разница между количеством успешных регистраций радиомодуля и количеством принятых сообщений; фиолетовый — разница между количеством включений радиомодуля и количеством принятых сообщений.

Статистические данные в виде таблицы:

Вот это уже тревожный звоночек: улучшения качества услуг и расширения зоны покрытия для сетей 2G не предвидится. Пока будем бороться с этим явлением алгоритмически: будем динамически изменять максимальное время непрерывной работы и параллельно следить за степенью просадки напряжения элементов под нагрузкой. Уж если потратили драгоценную электроэнергию от элементов питания на включение радиомодуля, то нужно приложить все зависящие от нас усилия, чтобы убедиться, что эта энергия не была потрачена зря.

На графиках хорошо видно, когда дверь в комнату для переговоров открыта, а когда закрыта. Что касается данных от дальномера, там все предсказуемо и стабильно.


Рисунок 15 — Зеленый график — напряжение на выходе дальномера; красный график — температура от датчика на плате.

Дальнейшие планы

После проведения стендовых испытаний и исправления найденных недостатков мы подготовили пару приборов к установке на объекте заказчика. С корпусными изделиями выручила популярная Gainta. Скоро приборы будут установлены в реальные контейнеры, и мы наконец-то перейдем от стендовых испытаний к опытной эксплуатации.


Рисунок 16 — Опытные экземпляры устройства, собранные, проверенные и готовые к установке на объекты заказчика.

Мелкие правки в схемотехнике — это понятно, там прибавить емкости, тут убавить, поменять номиналы и тому подобная рутина. Еще на этапе разработки мы начали накапливать идеи по усовершенствованию устройства. А из более крупных и очевидных нововведений пока можно выделить следующие:

  1. Переход от дальномеров Sharp на более компактные дальномеры серии VL53Lxx от STMicroelectronics. Компактность — не единственный их плюс: они подключается по цифровому интерфейсу, имеют конфигурируемую двумерную приемную матрицу, доступнее для покупки в России.
  2. Добавление MEMS-акселерометра. Довольно-таки распространенный среди аналогичных приборов компонент, позволяющий определять пространственное положение датчика (и механически связанного с ним контейнера или его крышки). С акселерометром у меня вообще получилось странно: он почему-то не перекочевал на принципиальную схему прототипа из других наших устройств, где он вполне регулярно применялся. Бывает. Исправлюсь.
  3. Долгожданный переход к использованию NB-IoT-радиомодулей.
  4. Переход от покупных стандартных корпусов к чему-то более оригинальному и конструктивно подходящему для нашей задачи.
  5. Внедрение собственной радиосети ближнего радиуса действия для совместной работы датчиков наполненности контейнеров и телематических контроллеров на автомобилях-мусоровозах.


Рисунок 17 — Прототип устройства в сборе.

Надеюсь, было интересно. На этом пока все! По мере прогресса в испытаниях и разработке буду писать продолжения к этой статье.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть