01Ложные импульсы монетFalse coin pulses
Импульсы собираются в серию до паузы 600 мс и округляются вниз до номинала.Pulses are grouped into a series until a 600 ms gap and rounded down to a valid coin.
Автомат — схематичноMachine — schematic
корпус и железо — не студииcabinet and hardware: not by the studio
экран и логика — прошивка студииscreen and logic: studio firmware
Потяните, чтобы повернуть · Ctrl + колесо — масштаб · двумя пальцами — масштабDrag to turn · Ctrl + wheel to zoom · pinch to zoom
01 / 05
Макет студии · 13 экранов · 480×320Studio mockup · 13 screens · 480×320
Макет и прошивка делались вместе: координаты экранов в коде сняты с макета.The mockup and the firmware were made together: screen coordinates in the code are taken from the mockup.
макет интерфейса · в прошивке часть экранов уточнена · суммы в ед.UI mockup · some screens refined in the firmware · amounts in units












02 / 05
Автомат состояний · неблокирующий циклState machine · non-blocking loop
Оплата становится балансом, баланс — литрами. Налив считается по импульсам расходомера, а не по времени.Payment becomes balance, balance becomes litres. Pouring is metered by flowmeter pulses, not by time.
03 / 05
Помехи · поток · зависанияNoise · flow · hangs
Защиты от помех появились после реальных сбоев на работающих автоматах.The noise safeguards were added after real failures on machines in service.
прошивка студииstudio firmwareИмпульсы собираются в серию до паузы 600 мс и округляются вниз до номинала.Pulses are grouped into a series until a 600 ms gap and rounded down to a valid coin.
Импульс засчитывается от 5 мс. Серия короче 3 импульсов — помеха, отбрасывается.A pulse counts from 5 ms. A series under 3 pulses is noise and is dropped.
2 с после каждого переключения реле оплата не принимается, а во время налива и озона — совсем.For 2 s after each relay switch no payment is taken, and none at all while pouring or ozonating.
Если в первые 3 с после открытия клапана нет импульсов расходомера — вода и озон закрываются, E01. Флаг в памяти: после перезагрузки снова E01.If there are no flowmeter pulses within 3 s of opening the valve, water and ozone close: E01. The flag is kept in memory, so after a reboot it is E01 again.
Цикл завис дольше 30 с — перезапуск по watchdog. Через 5 мин работы — плановая перезагрузка, только в ожидании.If the loop hangs for over 30 s, a watchdog reset. After 5 min of uptime, a planned reboot, only while idle.
04 / 05
Сервисное меню на четырёх кнопкахService menu on four buttons
Настройки меняются кнопками автомата и хранятся в памяти устройства.Settings are changed with the machine’s buttons and kept in the device memory.
05 / 05
ЭксплуатацияIn operation
500+
автоматов работают на этой прошивкеmachines run on this firmware
Продажа, налив по расходомеру, озон, сервис и защиты — в одной прошивке.Sales, flow-metered pouring, ozone, service and safeguards in one firmware.
Настройки и флаг аварии переживают перезагрузку.Settings and the fault flag survive a reboot.
Защиты от помех добавлены после сбоев в эксплуатации.Noise safeguards were added after failures in the field.
В этом проекте студия сделала прошивку и интерфейс. Можем и устройство целиком: схема, плата, прошивка, дисплей, документация.On this project the studio did the firmware and interface. We can also build the whole device: schematic, PCB, firmware, display, documentation.