Технологии «Оператор»
Собственная операционная система реального времени, алгоритмы отката/подката и зимнего режима, энергонезависимая память «Регистр» (восстановление за 200 мс), более 600 диагностических событий на каждый ПЛК. Встроенный веб‑сервер, REST API, Modbus — готовность к интеграции с любыми SCADA, ИИ и госплатформами (Агропромцифра).
📖 Технологии «Оператор»
⚙️ Системные технологии
🧠 Собственная ОС реального времени «ОператорОС»
ПЛК «Оператор» работают под управлением собственной ОС реального времени. ОСРВ написана на C без использования сторонних ядер (FreeRTOS, Linux). Исключает лицензионные отчисления и гарантирует детерминированное время реакции.
- Детерминированность – жёсткие deadlines для алгоритмов отката/подката, аварийных остановов.
- Многозадачность – независимые задачи управления, мониторинга, веб-сервера, API.
- Watchdog – аппаратный сторожевой таймер. При зависании – автоматическая перезагрузка с сохранением состояния за 200 мс.
- FRAM-менеджер – циклическая запись настроек и моточасов без ограничения циклов.
- Защита памяти – разделение задач, критичные участки не могут быть повреждены.
- Веб-сервер + REST API – управление из браузера, интеграция со SCADA и ИИ.
- Восстановление после сбоя питания – перезагрузка и восстановление состояния за 200 мс (сохранение позиции энкодера, текущего шага алгоритма).
🔄 Бутлоадер и обновление прошивки
Обновление встроенного ПО выполняется через веб‑интерфейс – без вскрытия корпуса и специальных программаторов. Раздел «Управление» → «Уйти в бутлоадер».
- Раздельная прошивка – STM32 и ESP32 обновляются независимо.
- Сохранение настроек – все калибровки, уставки и календари остаются нетронутыми.
- Аварийное восстановление – при сбое питания во время прошивки контроллер остаётся в бутлоадере, позволяет повторить попытку.
- Обновление по Ethernet/Wi-Fi – не требуется физический доступ.
- Информационная панель – версия бутлоадера, тип и версия прошивки, время запуска, версия WiFi.
- Поддержка .bin и .hex – стандартные форматы прошивок STM32.
📁 Базовые алгоритмы ПЛК
Функции, работающие на уровне ядра контроллера. Обеспечивают фундаментальную гибкость, диагностику и надёжность.
🌐 Управление (системные настройки)
- 🌐 Сетевые настройки – IP-адрес, маска, шлюз, DNS, NTP‑сервер, Wi‑Fi (точка доступа / клиент), переопределение MAC.
- 🕒 Установка времени и часовой пояс – синхронизация с устройством или NTP, выбор часового пояса (все временные метки приводятся к местному времени).
- 💾 Сохранить / восстановить настройки – выгрузка файла .cfg и загрузка обратно. Идеально для тиражирования.
- 📊 Статистика – время работы, версии прошивок, тип платы расширения, использование памяти, количество перезагрузок.
- ⟲ Перезагрузить – полная перезагрузка контроллера.
- 🔧 Уйти в бутлоадер – переход в режим обновления прошивки.
- 🔥 Горячие логи – последние 64 события; ❄️ холодные логи – архив от 4 месяцев.
📊 Мониторинг и диагностика питания
- «24 В» – основное питание. Красный – просадка или перенапряжение.
- «3,3 В» – батарейка CR2032. Красный – напряжение ниже 2,5 В (потеря данных при отключении питания).
- Параметр в статистике «Измерений АЦП» – резкие скачки указывают на проблемы с блоком питания на объекте.
📅 Календари
До 4 независимых календарей, в каждом до 30 временных меток (ЧЧ:ММ). Используются для планирования запусков скреперов (альтернатива фиксированной паузе). Назначаются скреперу в его уставках.
📊 Калибровочные таблицы
8 таблиц, в каждой до 16 опорных точек (код АЦП → значение). Линейная интерполяция между точками. Применяются для:
- нелинейных датчиков (терморезисторы, датчики Холла)
- преобразования 4–20 мА в физические единицы
- дискретизации направления ветра (например, опасный сектор)
📐 Пример: датчик тока 4–20 мА → 0–10 А
Для измерения переменного тока до 10 А используется датчик с выходом 4–20 мА. Настройка через калибровочную таблицу:
- Код АЦП 820 (соответствует 4 мА) → 0 А
- Код АЦП 4095 (соответствует 20 мА) → 10 А
- Точка (0,0) добавлена для детекции обрыва линии.
Линейная интерполяция между точками. При выходе за пределы таблицы фиксируется ошибка датчика.
* Полное руководство по созданию таблиц (в т.ч. для нелинейных датчиков) — в инструкции, раздел 3.3.
🔌 Настройка дискретных выходов (DO)
- Включён – зелёный
- Выключен – красный
- Не настроен – серый
- Контроль – диагностика цепи (обрыв, КЗ, неисправность реле)
Принцип работы контроля: после подачи команды контроллер проверяет наличие напряжения на выходной клемме. Несовпадение сигнализирует об ошибке. Позволяет обнаружить обрыв провода, перегоревший предохранитель, залипание или обрыв катушки промежуточного реле. Поддерживается на платах ФЕРМА и СТЕРИЛИЗАТОР.
📈 Настройка аналоговых выходов (AO)
- Настроен – выход активен, значение выводится (зелёный)
- Не настроен – выход не используется (серый)
- Тип сигнала – 0–10 В или 4–20 мА (программируемый)
- Привязка к уставке – например, к заданию температуры или частоты
- Коэффициент масштабирования – линейное преобразование
- Калибровочная таблица – поддержка нелинейных характеристик (до 16 точек)
- Ручное управление – принудительная установка значения (для тестирования исполнительных механизмов)
🔌 Настройка дискретных входов (DI)
- Высокий уровень (сигнал есть) – зелёный
- Низкий уровень (сигнала нет) – красный
- Не настроен – серый
- Инверсия – меняет логику (24 В = 0, 0 В = 1) для нормально замкнутых контактов.
- Режим энкодера – пара соседних входов (A и B) для инкрементального энкодера (до 10 кГц). Отображается текущее количество импульсов (например, «Вход 9 313 749 имп.»). Позиция сохраняется в бэкап-регистрах (батарейка CR2032).
- Антидребезг – фильтр помех (0.2–20 мс), исключает ложные срабатывания.
- Внутренние подтягивающие резисторы к +24 В для работы с «сухими контактами».
🎚️ Настройка аналоговых входов (AI)
Каждый аналоговый вход имеет 11 настраиваемых параметров. Цвет индикации в интерфейсе:
- Зелёный – активен, значение в норме
- Жёлтый – ошибка датчика (обрыв, выход за пределы таблицы)
- Серый – не настроен
- Включен – активирует опрос входа
- Единицы измерения – В, °C, А, мА, %, градусы поворота
- Как цифровой – дискретный режим (требуется внешний резистор 47 кОм)
- Инвертирован – меняет логику (только в цифровом режиме)
- Антидребезг – подавление дребезга (только в цифровом режиме)
- Минимальное значение – код АЦП (0–4095), соответствующий минимуму шкалы
- Максимальное значение – код АЦП (0–4095), соответствующий максимуму шкалы
- Коэффициент – масштабирование для ручной калибровки
- Переменный – режим RMS для датчиков переменного тока
- Использовать таблицу – включает применение калибровочной таблицы
- Таблица – выбор одной из 8 таблиц (если флаг активен)
📊 Состояние (мониторинг и ручное управление)
- Зелёный – вход/выход активен, значение в норме (для AI)
- Красный – выход выключен, на DI низкий уровень
- Жёлтый – ошибка датчика (AI): обрыв, выход за пределы калибровочной таблицы
- Серый – вход/выход не настроен, не используется
Ручное управление – принудительное включение/выключение дискретных выходов (отключает автоматику).
Отображение значений – текущие значения аналоговых входов (в единицах измерения) и ошибки датчиков. Для цифровых входов, настроенных как энкодер, отображается текущее количество импульсов (например, «Вход 9 - 313749 имп.»).
🏭 Алгоритмы управления
🚜 Скреперы (навозоудаление)
- 💾 Регистр (сохранение положения) – текущее положение и состояние алгоритма сохраняются во FRAM. После сбоя питания – восстановление за ⚡200 мс, продолжение с того же места. Уникальная фишка: никакой перезагрузки, скрепер не «забывает» позицию.
- 🔄 Откат/Подкат – при превышении тока выше уставки «Максимальный ток» дольше «Времени превышения тока» скрепер останавливается, отъезжает назад на «Расстояние отвода», затем делает повторные попытки движения вперёд. После успешного продвижения на 1 метр счётчик сбрасывается. Защищает животных и механику.
При превышении тока > Макс. ток дольше Времени превышения тока → откат на Расстояние отвода (например, 3 м) → подкат. Успех: продвижение ≥1 м или достижение конечной точки. Попыток отвода: 3. После 3 неудач – авария. - ❄️ Зимний режим – при температуре ниже «Вкл. зимнего» в паузах между циклами выполняются короткие движения («продёргивания») на «Расстояние продергивания» с интервалом «Между продергиваниями». При потеплении выше «Выкл. зимнего» режим отключается. Исключает примерзание.
- 📅 Календари запуска – до 30 временных меток в сутки. Альтернатива фиксированной паузе, позволяет синхронизировать работу скреперов с насосами, кормораздачей и другими процессами.
- ⏱️ Подсчёт моточасов – автоматический учёт времени работы двигателей скреперов, вентиляторов, насосов. Сохранение во FRAM, не теряется при отключении питания.
- 🛡️ Защита от перефазировки – контроль чередования фаз. При неправильном направлении вращения или пропадании фазы – немедленная остановка и авария. Исключает повреждение редуктора при обратном ходе.
- 🔗 Защита от обрыва троса/цепи – контроль минимального тока: если ток падает ниже «Минимальный ток» дольше «Времени малого тока» – авария.
- 🛡️ Защита от самопроизвольного перемещения – если положение изменяется без команды (более 500 импульсов), отключается реле управления. Исключает травматизм при попытке вручную сдвинуть скрепер.
- 📏 Калибровка концевых точек – кнопки «Выйти за границы», «Установить домашнее положение», «Установить конечное положение». Экономит время при настройке длинных аллей (не нужно гонять скрепер 40 минут).
- 🔍 Диагностика – более 600 отслеживаемых событий (токи, положения, аварии, сбои питания, целостность цепей DO). Полный журнал в веб-интерфейсе, выгрузка «холодных логов» за 4 месяца.
🌡️ Микроклимат (шторы, вентиляторы, шахты)
- Шторы (независимые зоны, до 4 и более) –
Управление по температуре: может быть как дискретным (фиксированные ступени, настраиваемое количество), так и непрерывным (плавное регулирование). Например, при непрерывном алгоритме: каждые N минут сравнивается текущая температура с уставкой, и положение шторы корректируется на заданный процент (например, на 5% в сторону открытия или закрытия). Гистерезис исключает частые колебания.
По температуре/влажности: датчики левой половины (сегменты 1 и 3) управляют шторами 1 и 3; правой половины (сегменты 2 и 4) – шторами 2 и 4. 4 ступени с гистерезисом.
Защита от ветра (направленная): два комплекта датчиков (скорость + направление): на верхней стене – обслуживает шторы 1 и 2; на нижней – шторы 3 и 4. Каждый комплект имеет своё опасное направление (например, для верха – север, для низа – юг). Ветер вдоль здания не влияет, если не настроен как опасное направление. Имеет высший приоритет.
Защита от дождя (косой): аналогично: датчик дождя сверху закрывает шторы 1 и 2; снизу – шторы 3 и 4. Имеет средний приоритет.
Резервирование датчиков ветра (опция): при выходе из строя одного комплекта, можно перенастроить систему на использование оставшегося датчика (например, на крыше) с разными опасными направлениями для верхней и нижней стороны.
Приоритеты: авария → ветер → дождь → температура.
Калибровка положения после сбоя питания или при переходе в авторежим: поскольку шторы не имеют энкодера, контроллер выполняет калибровку движением до упора. Если температура в коровнике выше уставки «Температура зимнего режима» (лето) – полное открытие; если ниже или равно (зима) – полное закрытие, чтобы не выстужать помещение. После калибровки устанавливается требуемая ступень по температуре.
Настройка направления ветра: через 📊 калибровочные таблицы (выделение опасного сектора). - Вентиляторы – двухпозиционное управление по температуре с гистерезисом. Контроль сигнала «Нет сигнала» от ПРА/ЧП – при пропадании фазы или ошибке ПЧ вентилятор останавливается, фиксируется авария.
- Вытяжные шахты – управление по влажности с гистерезисом. Возможные способы задания скорости:
• Дискретное кодирование: 3 бита (до 7 скоростей) или 4 бита (до 15 скоростей) – через дискретные выходы.
• Плавное регулирование: 12-битный аналоговый выход (0–10 В, 4–20 мА) – до 4095 градаций, подключение к частотному преобразователю.
Температурная блокировка – шахта не включается ниже порога.
🌬️ Кросс-вентиляция (вентиляторы + шторы)
- Зимний режим – при наружной температуре ниже +5°C приоритет отдаётся качеству воздуха (CO₂, NH₃). Работает минимальное число вентиляторов на пониженной скорости (0,8–1,5 м/с).
- Летний режим (ступенчатое управление) – каждые +N°C выше летнего минимума увеличивают скорость (шаг), до 15 ступеней. Контроль по THI (комфорт коров).
- Аварийный режим – при превышении критической температуры (THI > 80) включаются все группы вентиляторов на максимальную скорость (до 5 м/с безопасно).
- Ротация групп – для равномерного износа подшипников каждые 24 часа происходит смена активных групп (при частичной нагрузке).
- Управление притоком (шторы/клапаны) – стандартно система работает по принципу отрицательного давления: свежий воздух поступает пассивно через регулируемые проёмы. При пожелании заказчика возможна сбалансированная вентиляция с принудительным притоком (дополнительные группы вентиляторов), синхронизированным с вытяжкой для поддержания заданного дисбаланса (–10%).
- Ветровая защита – при сильном ветре (>8 м/с) наветренные шторы/клапаны прикрываются до безопасного положения, предотвращая сквозняки и выстуживание. Подветренная сторона работает штатно.
- Защита от дождя – при срабатывании датчика дождя приток ограничивается (ступень задаётся в уставках). Если внутри жарко (THI > 72), коровам нужен воздух, поэтому защита игнорируется, и шторы работают по основному алгоритму.
- Испарительное охлаждение – водяное охлаждение (душ/туман) активируется при THI > 70 и T > 23°C, если влажность < 70%. Работает циклично: 10–30 сек вода / 5 мин пауза. При THI > 80 – непрерывно. При влажности > 70% – блокируется.
- Приоритеты: авария → CO₂/NH₃ → температура/THI → ветер → дождь → ограничение сквозняка в зоне отдыха.
- Исполнительные устройства – частотные преобразователи с 4-битным дискретным управлением (15 ступеней) или аналоговым 0–10 В. Модуль ШИМ «Волна» (30 каналов).
- Датчики и диагностика – метеостанция (ветер, дождь, Тнаруж), внутренние датчики CO₂/NH₃, анемометр в зоне отдыха (контроль сквозняка). Контроль ПЧ, тепловых реле, цепей, журнал событий.
* В стандартном исполнении система работает по принципу отрицательного давления (пассивный приток). При необходимости проектируем сбалансированную вентиляцию с принудительным притоком. Водяное охлаждение активируется только при наличии достаточной вентиляции и контролируется по THI. Алгоритмы активны в автоматическом режиме. Ручной режим – через пульт управления. Защиты (тепловое реле, пропадание фаз) работают всегда.
💧 КНС (насосы ДЛМ, Флеш, Агитаторы)
- Насос ДЛМ – управление по датчикам уровня (нижний, верхний, аварийный). Задержки включения/выключения (1–2 с) – антидребезг.
- Неисправность нижнего датчика (завис) – насос работает по таймеру (откачка заданное время), затем фиксирует аварию, но продолжает управление по верхнему и аварийному уровню.
- Неисправность верхнего датчика (завис) – если верхний уровень активен, а нижний не переключается, контроллер сразу фиксирует аварию, но продолжает откачку (при отсутствии запретов).
- Аварийный уровень – при срабатывании насос запускается на 60 с (настраивается), откачивает независимо от основных датчиков. После откачки – повторный опрос.
- Связь между КНС (опция) – блокировка запуска насоса, если следующая КНС переполнена или не готова (дискретные входы/выходы). При отсутствии связи откачка выполняется по времени.
- Насосы Флеш / Агитатор – циклический таймер (время работы и время паузы, до 3600 с).
- Режим «Внешний запуск» (Флеш) – запуск по дискретному сигналу, после снятия сигнала – промывка (0–600 с).
- Рандомизация старта – предотвращает одновременный пуск нескольких насосов (разброс ±10%).
- Общие защиты – превышение тока, обрыв ремня (малый ток), тепловое реле, контроль фаз, перефазировка. Все защиты активны в любом режиме.
- Подсчёт моточасов – учёт времени работы каждого насоса, сохранение во FRAM.
- Диагностика – журнал событий: запуски, остановы, аварии, сбои датчиков.
* Алгоритмы управления (по датчикам уровня, таймеру, внешнему запуску) активны только в автоматическом режиме. Защиты (превышение тока, обрыв ремня, тепловое реле, контроль фаз, перефазировка) работают в любом режиме (авто/ручной). При неисправностях датчиков (зависание нижнего или верхнего уровня) насос продолжает откачку по времени, фиксируется авария, но работа не останавливается. Связь между КНС (опция) – блокировка перекачки, если следующая станция не готова; при её отсутствии откачка идёт по времени.
⚙️ ЦРФ (сепаратор + насос ДЛМ с ПЧ)
- Насос ДЛМ с ПЧ – управление по уровням (нижний, верхний, аварийный). Плавное регулирование частоты вращения через аналоговый выход 0–10 В / 4–20 мА.
- Ограничение производительности – скорость насоса ограничена, чтобы не превышать пропускную способность сепаратора. Защита от перегрузки сепаратора.
- Сепаратор (сито + шнек) – два независимых привода. Управление вкл/выкл, защиты по току, тепловое реле, аварийный останов.
- Датчик перегрузки сепаратора (концевой) – при срабатывании (сито переполнено) немедленно останавливается ДЛМ. Через заданную паузу останавливается сито, затем через паузу – шнек.
- Аварийный останов сепаратора – при срабатывании (кнопка, тепловое реле) немедленно блокируется работа ДЛМ и самого сепаратора.
- Задержка останова сепаратора – после того как ДЛМ осушил бункер (нижний уровень), сепаратор продолжает работу заданное время (добрать материал), затем останавливается.
- Общие защиты ДЛМ – превышение тока, обрыв ремня, тепловое реле, контроль фаз, перефазировка. Активны всегда.
- Подсчёт моточасов – учёт времени работы насоса ДЛМ, сита, шнека. Сохранение во FRAM.
- Диагностика – журнал событий: запуски, остановы, аварии, срабатывание датчика перегрузки, изменения частоты.
* Алгоритмы управления ДЛМ (по уровням, частоте) активны только в автоматическом режиме. Защиты – всегда. При срабатывании датчика перегрузки сепаратора ДЛМ останавливается немедленно, сепаратор – с паузами. При аварийном останове сепаратора – полная блокировка ДЛМ и сепаратора.
🧼 Дезинфекция доильных мест (BackFlush (Промывка обратным потоком))
В основе алгоритма — ПЛК «Оператор» и плата расширения «СТЕРИЛИЗАТОР» (48 DO, 12 DI, 4 AI, 2 AO)
Увеличить количество групп позволяет модуль расширения «ПЕРИМЕТР» (24 DO, 24 DI, 12 AI, 12 AO)
Управление дематроном (GEA DemaTron): Для каждой группы предусмотрен отдельный дискретный выход (DO), который замыкается (сухой контакт) на всё время активного цикла дезинфекции данной группы. После полного завершения цикла выход размыкается, сигнализируя дематрону о возможности опускания доильных аппаратов.
Основные функции:
- 8-шаговый цикл дезинфекции – задержка, вода, воздух, дезинфектант, воздух, воздействие, ополаскивание, продувка. Времена и состояния выходов (DO1–DO4: пневмоклапан, вода, воздух, дезинфектант) настраиваются для каждой группы.
- Входы старта группы – DI1…DI6, обычно подключаются к индуктивным датчикам на доильных аппаратах. При активном сигнале и наличии давления воздуха запускается цикл для соответствующей группы.
- Выходы статуса дезинфекции – DO5…DO10 (по одному на группу). Активны на протяжении всего цикла. Используются для сигнализации дематрону.
- Контроль давления воздуха – аналоговый вход от датчика давления. При падении ниже порога запуск новых циклов блокируется, текущий цикл прерывается с аварией, все выходы принудительно отключаются.
- Визуальная индикация – зелёный светодиод мигает 1 Гц в паузах или в ожидании старта. Красный светодиод – авария.
- Энергонезависимость – запоминание текущего шага, оставшегося времени и активной группы. После восстановления питания цикл продолжается с того же места, а соответствующий DO статуса группы автоматически восстанавливается.
- Самодиагностика и журнал событий – фиксируются запуски, завершения, аварии, изменения уставок для каждой группы.
Настройка через веб-интерфейс: Для каждой группы предусмотрена отдельная страница, где задаются времена 8 шагов, состояния DO1–DO4 на каждом шаге, номер DO для статуса дезинфекции, порог давления воздуха, номер шага для аварийного сброса, количество повторений цикла.
🖥️ Интерактивный интерфейс
Веб‑интерфейс контроллера позволяет настраивать все параметры, мониторить состояние оборудования и управлять процессами. Ниже – демо‑версия, где можно ознакомиться со структурой меню и возможностями.
🚀 Доступ к инженерному симулятору. Полная эмуляция ПЛК «Оператор» с валидацией параметров.
🖱️ Открыть демо-интерфейс* Симулятор полностью воспроизводит логику промышленного контроллера ОПЕРАТОР К27У, включая валидацию параметров и блокировки. Все настройки, сделанные в симуляторе, могут быть перенесены на реальный ПЛК через файл конфигурации.
🔌 API и интеграция
🔧 Документация REST API (OpenAPI/Swagger) — подготовлена и проходит финальную верификацию на действующих объектах. Мы открываем ранний доступ для технических специалистов компаний, планирующих интеграцию.
🔗 Интеграция с другими системами (кормление, учёт, сепарация, пастеризация)
- Кормление – управление кормораздатчиками, дозирование, контроль веса через дискретные выходы (DO) и аналоговые входы (AI).
- Учёт тепла, воды – чтение импульсных или аналоговых сигналов со счётчиков (DI, AI), передача данных на сервер диспетчеризации.
- Дезинфекция – управление циклами промывки, насосами, клапанами через DO, контроль давления через AI (интеграция с существующими решениями).
- Сепарация (навоз, молоко) – управление сепараторами, шнеками, насосами; контроль перегрузки через дискретные входы/выходы, поддержка Modbus RTU/TCP.
- Пастеризация – контроль температуры, времени выдержки, управление клапанами и насосами через AI/AO, поддержка промышленных протоколов (Modbus, API).
- Единый подход – все системы могут быть подключены к ПЛК «Оператор» через универсальные интерфейсы (DI/DO, AI/AO, RS‑485, Ethernet). Возможна реализация индивидуальных алгоритмов управления под каждую задачу.
🔌 Modbus RTU / TCP
- Modbus RTU – через изолированный RS‑485 (до 115200 бод). Поддержка функций 03, 06, 16, 08.
- Modbus TCP – через Ethernet (порт 502). Работает одновременно с REST API.
- Регистровая модель – чтение/запись уставок, состояния входов/выходов, аварий, позиций энкодеров.
- Интеграция со SCADA – Master SCADA (Proficy, MasterSCADA, Trace Mode, КРУГ‑2000 и др.) подключается напрямую.
📊 Единая цифровая платформа (диспетчеризация)
- Сервер сбора данных – Linux, PostgreSQL, веб-интерфейс (генеральный план, графики, отчёты).
- REST API + WebSocket + MQTT – интеграция с ИИ-ядром, BI, системами управления стадом.
- Удалённое управление – изменение уставок, запуск/останов скреперов, просмотр логов.
- Сбор данных с нескольких ПЛК – единая точка мониторинга всей фермы.
🧠 ИИ-ядро «Оператор AI»
- Локальный сервер + DeepSeek – работа без интернета, все данные остаются на ферме.
- Прогнозирование поломок – анализ токов, вибрации, температуры. Предупреждение о выходе из строя за 2–3 дня.
- Чат-управление уставками – естественный язык: «Увеличь максимальный ток скрепера 1 до 1500 мА».
- Интеграция через REST API – получает данные с ПЛК, отправляет рекомендации и команды.
- Готов к пилоту – тестирование на реальном оборудовании.