1 января 2019 года в России вступил в силу Федеральный закон о вывозе
мусора. «Мусорная
реформа» изменила сбор и утилизацию твердых бытовых отходов. Согласно ФЗ № 89 «Об отходах
производства и
потребления» теперь твердые бытовые отходы должны сортироваться по материалу, из которого
они изготовлены:
пластик, бумага, стекло и т. д.
Вывоз и утилизацию отходов могут осуществлять только уполномоченные операторы, выбранные на конкурсе.
Местные
органы власти должны обеспечить тарифное регулирование и предоставить операторам площадки для сбора
мусора.
Самостоятельно собирать, хранить или утилизировать отходы власти не могут. Плата за вывоз мусора
теперь
будет производиться каждым гражданином.
01
ТБО
«Твердые бытовые отходы» повседневной жизнедеятельности человека: продукты питания,
макулатура,
пластик и полимеры, стеклотара и стеклобой, металлолом.
02
ТКО
«Твердые коммунальные отходы», образующиеся в результате эксплуатации жилых
помещений: отходы от
уборки или ремонта, пришедшая в негодность техника или мебель, растительные отходы, такие как
трава,
листва, ветки деревьев.
Мусор собирается только на площадках, определенных согласно утвержденной в регионе схемы
обращения с ТКО.
Мусор многоквартирного дома вывозится только из контейнеров в мусороприемных камерах, либо из
контейнеров на контейнерных площадках.
Вывоз мусора значительно усложнился. Раньше мусоровоз проезжал по всем дворам и забирал мусор,
независимо
от того, полон ли контейнер. Старые контейнеры не предполагали сортировку. Эффективность
работы
мусоровозов ничем не регулировалась. Мусоровоз мог приезжать, когда контейнер наполовину пуст, или
когда
вокруг контейнера скопились горы. Стоимость вывоза не контролировалась
и не считалась.
Теперь, когда за вывоз отвечают операторы, а мусоровозы принадлежат частным компаниям, возникла
необходимость в уменьшении расходов, с одной стороны, и своевременного вывоза —
с другой. Мусоровоз
забирает баки единственного класса отходов: бумага, пластик, стекло, несортируемые ТБО, строительный мусор, общий.
Владельцы мусоровозов заинтересованы вывозить только на 100% заполненный контейнер. А операторы —
чтобы
мусор вывозился вовремя и не скапливался вокруг. Без специализированного программно-аппаратного обеспечения уже не обойтись.
Логическая схема
01
Сервер
Физический или виртуальный сервер, работающий под управлением ОС Linux, с установленным
программным
обеспечением.
02
Администратор
Специалист, который производит настройки и управляет системой.
03
Оператор
Специалист, который открывает смены водителям и следит за перемещением транспорта.
04
Бак
«Умное» устройство сбора мусора, отсылающее на сервер свой идентификатор,
географические координаты,
наполненность бака и заряд аккумулятора.
05
Пункт сбора ТБО
Площадка с мусорными контейнерами около домов.
06
Транспортное средство
Мусоровоз.
07
Класс
Классификатор категории мусора: пластик, стекло, бумага, органика.
08
Класс транспортного средства
Единственный тип отходов, вывозимый мусоровозом.
09
Гараж
Место стоянки и обслуживания ТС.
10
Маршрут
Последовательность точек (баки, гараж, пункты сбора отходов) на карте, через которые должна
проследовать машина.
11
Водитель
Управляет ТС, следуя по установленному маршруту.
12
Рейс
Набор баков и один пункт сбора ТБО, упорядоченных для объезда водителем.
13
Трек
Фактические GPS/ГЛОНАСС-координаты пути автомобиля в рейсе.
14
Регион
Область местоположения группы баков на карте. Может использоваться для разделения рейсов и ТС
по
районам города, либо для привязки к определенному полигону.
15
Признак
Идентификатор служит для отнесения баков к заказчикам. Необходим при использовании операторами
нескольких компаний единой базы данных.
16
Объем контейнера
Объем бака, который может отличаться для разных мусорных контейнеров.
17
Приложение администратора
Web-приложение для управления списками объектов, настройки параметров, формирования отчетности.
18
Приложение оператора
Web-приложение для управления сменами водителей, контроля выполнения рейсов мусоровозами,
формирования отчетности.
19
Приложение водителя
Мобильное Android-приложение для открытия и закрытия смен, запроса на получение рейса,
отображения
карты и маршрута, регистрации действий с мусорными баками, периодической отправки
координат
мусоровоза на сервер.
20
Серверная часть
API и база данных для регистрации информации от мусорных баков, времени открытия и закрытия
смен
водителями, логика построения рейсов, хранение текущих координат мусоровозов и баков и многое
другое.
«Умный» мусорный бак
Устройство со встроенным модулем связи и уникальным идентификатором отправляет на сервер
данные о
заполненности бака, заряде батареи и координатах расположения в формате JSON:
32-битный индустриальный микроконтроллер STM;
GSM/GPRS модуль;
инфракрасный дальномер;
аккумуляторная батарея;
программное обеспечение для микроконтроллера, разработанное на языке C.
Адрес сервера задается в настройках. В базе фиксируются все сеансы связи каждого мусорного
бака. На
сервере проверяется входящий JSON и наличие в базе контейнера с указанным
идентификатором. В случае
отсутствия идентификатора обработка не выполняется.
Заполненность бака принимает значения 0, 50 и 100%. Фиксируется время первого изменения уровня
и время
последнего обмена каждого мусорного бака. Для каждого мусоровоза в порядке убывания заполненности и
увеличения длительности заполнения составляется список мусорных баков для объезда с подходящим
классом
отходов.
Приложение администратора
Web-приложение, работающее во всех распространенных браузерах. Администратор входит в систему,
используя
персональный логин и пароль. Позволяет изменять параметры и управлять справочниками:
компаний;
городов;
регионов;
классов отходов;
мусорных баков;
пунктов сбора;
транспортных средств;
пользователей;
мобильных устройств водителей.
Маркер нового бака с пометкой «Тут будет бак» перетаскивается на карту. Мусорному
баку автоматически
присваивается следующий идентификатор, указывается наименование, компания, объем, город, регион и класс
отходов.
В точке с заданными координатами можно установить группу мусорных баков путем множественного
выбора в
поле «Классы отходов». Для каждого класса появляется бак с уникальным
идентификатором.
При добавлении мусоровоза указываются название, государственный номер, VIN, объем кузова, коэффициент
уплотнения, компания, город, регион города, класс отходов. Каждый мусоровоз оборудован планшетом с
мобильным приложением водителя. На сервере прописываются принадлежность планшета водителям,
транспортному средству и компании и IMEI-код.
Пункт сбора отходов имеет наименование, координаты въезда, классы принимаемых отходов, список
обслуживаемых компаний, городов и регионов городов.
Приложение оператора
Web-приложение, поддерживаемое всеми распространенными браузерами. Оператор входит в систему
персональным
логином и паролем. По успешной авторизации выполняется проверка открытой смены: если открыта,
отображается подтверждение переоткрытия с закрытием смены другого оператора.
Затем оператор видит карту, позиционируемую на первом городе из списка обслуживаемых компанией.
Переключение городов выполняется специальной кнопкой слева под кнопками изменения масштаба карты.
На видимой части карты отображаются мусорные баки, транспортные средства, пункты приема отходов.
Объекты
различных типов отображаются в своем слое, которым можно управлять. При клике на объекте
всплывает окно
с информацией. В строке меню располагаются блоки с информацией о сменах и рейсах
водителей, содержащие
несколько иконок, над которыми выводится количество смен или рейсов в данном статусе.
Оператор утверждает либо отклоняет запрос на открытие смены водителю мусоровоза. В случае
отклонения
указывается причина отказа. До подтверждения смены приложение водителя не позволяет совершить
каких-либо
действий. Оператор следит за водителем, но не создает рейс для водителя, не подтверждает
маршрут рейса и
не может вносить изменения.
Приложение водителя
Мобильное приложение авторизуется в системе с помощью IMEI планшета. Сервер проверяет наличие
открытой
смены у водителя, либо создает заявку на открытие смены, либо присылает данные на планшет.
После подтверждения открытия смены становится доступна функция «Запросить маршрут», которая
строит список
полностью или частично заполненных мусорных баков на основании класса отходов мусоровоза, его
принадлежности к компании, городу и региону города.
Мусорные баки сортируются по убыванию заполненности (100, 50, 0%) и возрастанию даты и времени
заполнения. В начале списка окажутся полные мусорные баки, заполненные недавно. К списку
добавляются
баки, с которыми долго не было связи.
Количество баков для одного рейса рассчитывается по формуле, в которой используются объем
мусоровоза и
коэффициент уплотнения мусора, и увеличивается еще на 2 бака.
Полученный список баков рейса отправляется в LogDep, выполняющий задачу коммивояжера, —
оптимизацию
порядка посещения фиксированного набора точек. Результаты оптимизации отправляются мобильному приложению
и на экране отображаются баки рейса.
Водитель мусоровоза может принять рейс или отклонить его с обязательным указанием причины
отклонения.
Если рейс принят, водитель мусоровоза начинает движение, на экране отображается маршрут движения
между
двумя первыми баками. Координаты мусоровоза периодически отправляются на сервер.
При приближении водителя к мусорному баку появляются кнопки управления выгрузкой: «Вывезено»,
«Пропущено», «Неисправность». Вызвать кнопки можно и вручную, кликнув по иконке
бака. В приложении
оператора иконки окрашиваются в соответствующие цвета, а при клике отображается информация о заполнении
и вывозе бака мусоровозом.
После обработки всех баков в рейсе приложение отображает путь к пункту сбора отходов. Водитель
может
запросить маршрут к пункту сбора отходов, не дожидаясь обработки всех баков. В этом
случае сервер
возвращает список доступных пунктов с указанием расстояния до каждого из них,
отсортированный по
возрастанию расстояния.
Выполненные работы
01
Доработка сайта и мобильного приложения системы мониторинга заполняемости и регулирования
порядка вывоза мусорных баков специализированным транспортом.
02
Исследование сервисов построения маршрутов по заданным точкам.
03
Выбор сервиса, решающего задачу коммивояжера на основании данных запроса. Пробовали сервис
Veeroute, который ведет всю логистику предприятия: нужно загружать транспортные средства, водителей,
список баков, полигоны, заказы и адреса доставки. Отказались, поскольку логистика уже создана
собственная, а искали лишь расчет оптимального маршрута посещения последовательности точек от начальной
до полигона.
04
Реализация новых методов API для web-приложений оператора и администратора.
05
Изменение интерфейса web-приложений оператора и администратора.
06
Обмен с мобильным приложением по протоколу Websocket.
07
Интеграция с API автоматического планирования сервиса LogDep для
оптимизации порядка посещения мусорных баков.
08
Построение маршрута между двумя мусорными баками с использованием JavaScript API Яндекс.Карт и драйвера
браузера Selenium WebDriver.