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

 

Анализ аппаратной часть предоставленной кофемашины показал, что система управляется при помощи одного контроллера STM32, имеющего внешние интерфейсы, но документация на них отсутствует или предоставляется только техническим сервисам для ремонта.

 

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

 

Помимо кнопок необходимо было перехватить светодиодную индикацию, отображающую состояние машины для отображения ее на пульте удаленного управления.

Схемотехническое решение заключалось в создании платы изоляции интерфейсов, построенной на базе контроллера STM32. Коммуникационная часть была реализована через ESP8266, работающем в режиме UART to TCP, передающем состояние и команды по специализированному бинарному протоколу. 

 

Управляющая панель была реализована в виде web-интерфейса и отображала как состояние аппарата, так и позволяла нажимать кнопки управления и фиксировать их нажатие со стороны оператора.

 

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

Стек - C, STM32 SDK, ESP8366 SDK, Erlang, JS.