← Блог

API MES-системы: интеграция с внешними системами и отчёты

API и экспорт данных: как подключить MES к внешним системам

Производственная система собирает тысячи событий за смену: запуски и остановки оборудования, выпуск деталей, простои, брак. Но данные нужны не только внутри MES. Финансовый директор хочет видеть их в своей BI-системе. Технический директор — получать алерты в Telegram. Главный технолог — сводку в Excel. А 1С должна автоматически закрывать производственные заказы.

Для этого существует API производственной системы: он превращает MES из изолированного инструмента в открытый источник данных, с которым работают все остальные системы предприятия.

Разбираем, как устроена интеграция MES через API, какие сценарии реально используют производственные предприятия и когда хватает встроенного экспорта без программирования.


Зачем MES нужен API

MES — это система, которая живёт на стыке цеха и менеджмента. Она собирает сырые данные с производства и превращает их в информацию: OEE, простои, выпуск, план-факт. Но потребителей этой информации много, и у каждого — своя система.

Без API данные оседают внутри MES. Их можно посмотреть на дашборде или выгрузить вручную в файл. Но если на предприятии уже используется 1С, Power BI или собственная система диспетчеризации — ручная выгрузка становится ежедневным рутинным трудом: кто-то должен зайти в систему, скачать отчёт, загрузить его в другую систему. И так — каждый день, по нескольким отчётам.

API решает эту проблему один раз. Смежная система сама запрашивает нужные данные по расписанию или по событию. Никаких ручных действий. Данные всегда актуальны.

Кроме интеграции с другими системами, API позволяет:

  • строить собственные дашборды на основе данных MES;
  • автоматически формировать регламентные отчёты и рассылать их по расписанию;
  • встраивать производственные данные в корпоративный портал или мобильное приложение;
  • создавать кастомные отчёты под конкретные задачи цеха, которых нет в стандартном наборе.

Подробнее о том, что такое MES и зачем она нужна, — в статье «Что такое MES-система».


Что такое REST API и как он работает в контексте MES

REST API — это стандартный способ, которым программы обмениваются данными через интернет или внутреннюю сеть. Простая аналогия: официант в ресторане. Вы (клиентская система) делаете заказ (запрос), официант (API) передаёт его на кухню (сервер MES) и возвращает вам результат (данные).

В контексте производственной системы это выглядит так:

  1. Сторонняя система (1С, Power BI, ваш скрипт) отправляет HTTP-запрос к MES по конкретному адресу.
  2. MES проверяет права доступа — есть ли у запрашивающей системы токен или ключ.
  3. Если всё в порядке — возвращает данные в формате JSON. Это структурированный текст, который любая современная система умеет читать.
  4. Сторонняя система обрабатывает полученные данные по своей логике.

Формат REST выбран производственными системами не случайно: его поддерживают все современные платформы — 1С, Python, Power BI, Node.js, SAP — без специальных адаптеров. Это означает, что подключить к MES можно практически любую систему, в которой работает IT-специалист предприятия.

Что не требуется для работы с REST API: специализированное ПО, VPN в большинстве случаев (при облачном развёртывании), длительные согласования с вендором. Документация + токен доступа — достаточно для начала работы.


Типичные сценарии использования API MES

Передача данных в 1С/ERP

Самый востребованный сценарий на российских производствах. 1С:ERP выдаёт производственные заказы — MES их принимает, исполняет и отдаёт факт обратно: сколько произведено, сколько брака, сколько времени потрачено.

Без API этот цикл выглядит как ежедневное ручное сведение двух таблиц. С API — данные передаются автоматически: производственный заказ в 1С закрывается сразу после того, как MES зафиксировала завершение операции.

Типичная схема обмена: 1С → MES (заказы, номенклатура, нормативы) и MES → 1С (выпуск, брак, фактическое время). Для настройки базовой интеграции 1С-программисту нужно 2–5 дней работы с документацией API.

Детальная схема интеграции с 1С, типичные проблемы и их решения — в статье «Интеграция MES с 1С».

Экспорт в BI-системы (Power BI, Tableau)

Производственные данные в BI-системе — это следующий уровень аналитики. Если в MES есть стандартные отчёты по OEE, простоям и выпуску, то BI позволяет строить кросс-функциональные дашборды: например, связывать производительность по сменам с данными о браке и потреблении энергии.

Power BI и Tableau умеют подключаться к REST API напрямую — через коннектор Web или с помощью Power Query. IT-специалист настраивает подключение один раз, и дашборд обновляется автоматически с нужной периодичностью (каждый час, каждую смену, раз в сутки).

Что передаётся в BI: OEE по оборудованию за период, классификация простоев с длительностями, выпуск план/факт по заказам и участкам, данные о браке с разбивкой по причинам.

Уведомления в мессенджеры (Telegram, Email)

Технический директор не должен заходить в систему, чтобы узнать, что на участке остановился станок. Он должен получить сообщение сразу.

Это реализуется через webhook-уведомления (подробнее — в разделе про вебхуки ниже) или через периодические запросы по API. Скрипт раз в 15 минут запрашивает у MES список активных простоев и отправляет сводку в Telegram-бот или на почту.

Типичные уведомления, которые настраивают производственные предприятия:

  • простой дольше N минут без указания причины;
  • OEE за смену ниже целевого значения;
  • процент брака выше нормы;
  • план выполнен / не выполнен по итогам смены;
  • аварийная остановка оборудования.

Интеграция с SCADA/датчиками

Автоматический сбор данных с оборудования — наиболее точный источник информации для MES. SCADA-система или контроллер (PLC) фиксирует физические параметры: включена ли машина, какова скорость вращения шпинделя, есть ли сигнал датчика счёта деталей.

Через API эти данные могут передаваться в MES немедленно: SCADA отправляет события (запуск, остановка, счётный импульс), MES их принимает и автоматически формирует производственные записи — без участия оператора.

Это самый сложный с точки зрения настройки сценарий, но и самый точный: данные не зависят от дисциплины ручного ввода. Подробнее о мониторинге оборудования — в статье «Мониторинг производственного оборудования».


Основные эндпоинты MES API

Ресурс Метод Что возвращает Пример использования
/api/v1/orders GET Список производственных заказов с планом и фактом выпуска Синхронизация статусов заказов с 1С:ERP
/api/v1/orders/{id}/output GET Фактический выпуск по конкретному заказу: деталь, количество, время, смена Автоматическое закрытие заказа в 1С
/api/v1/equipment GET Перечень оборудования с текущим статусом (работает / простой / ТО) Дашборд загрузки оборудования в Power BI
/api/v1/downtimes GET Список простоев за период с длительностью и причиной Анализ причин потерь в BI-системе
/api/v1/downtimes POST Регистрация простоя из внешней системы (SCADA, датчик) Автоматическая фиксация аварии от PLC
/api/v1/oee GET OEE по оборудованию или участку за смену/день/период Еженедельный отчёт в Tableau
/api/v1/defects GET Данные о браке: количество, причина, виновный участок Передача данных о качестве в систему управления качеством
/api/v1/shifts GET Сменные отчёты: выпуск, OEE, простои за каждую смену Автоматическая рассылка сменных сводок на email
/api/v1/webhooks POST Регистрация webhook-подписки на события Уведомления в Telegram при простое

Все эндпоинты принимают параметры фильтрации (по оборудованию, периоду, смене, статусу) и возвращают данные в формате JSON. Авторизация — через Bearer-токен в заголовке запроса.


Отчёты и экспорт без API: встроенные форматы

Не всегда интеграция через API нужна и оправдана. Для большинства задач по выгрузке данных в MES есть встроенные инструменты экспорта — они не требуют программирования и доступны любому пользователю системы.

Excel. Стандартный формат для передачи производственных данных. Любой отчёт MES — сменный, по оборудованию, по заказам, по простоям — выгружается в .xlsx одним нажатием. Это заходит в 1С через стандартный импорт, открывается у руководителя на ноутбуке, вставляется в презентацию для совещания.

PDF. Фиксированный отчёт для печати и архивирования. Актуален для аудитов, планёрок, передачи данных между сменами. Не редактируется — это его главное достоинство: нельзя случайно исказить.

CSV. Сырые данные без форматирования. Нужен, когда важна максимальная совместимость: Python-скрипты, R, базы данных, любой инструмент обработки данных умеет читать CSV.

Расписание выгрузки. В большинстве MES-систем можно настроить автоматическую отправку отчёта на email по расписанию — в конце каждой смены, раз в сутки, раз в неделю. Это не API-интеграция, но для задачи «руководитель получает сводку» — полностью закрывает потребность.

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


Webhook-уведомления: как настроить алерты о простоях и отклонениях

Webhook — это обратная сторона API. Если обычный API работает по принципу «система спрашивает — MES отвечает», то webhook работает иначе: «MES сама сообщает, когда что-то произошло».

Как это устроено. Вы регистрируете в MES URL-адрес вашего бота, сервиса или скрипта и указываете, на какие события подписываетесь. Когда событие происходит — MES отправляет HTTP-запрос на ваш адрес с данными о событии. Ваш скрипт получает запрос и делает что нужно: отправляет сообщение в Telegram, создаёт задачу в системе заявок, пишет в журнал.

Какие события поддерживают webhook:

  • начало простоя (с оборудованием и причиной);
  • простой без указания причины дольше заданного времени;
  • OEE за смену ниже целевого порога;
  • процент брака превысил допустимое значение;
  • заказ завершён (план выполнен);
  • отставание от плана более чем на N%;
  • начало и конец плановой смены.

Пример: Telegram-бот для технического директора. Небольшой скрипт (20–30 строк кода) принимает вебхук от MES и пересылает сообщение в нужный чат или личный диалог. Технический директор получает: «Участок 2, Станок 5 — простой 18 минут, причина: поломка инструмента». И сразу может позвонить мастеру или поставить задачу ремонтной службе.

Пример: Email-рассылка по итогам смены. Вебхук на событие «смена закрыта» запускает скрипт, который формирует HTML-письмо с ключевыми показателями и отправляет его на список руководителей. Без ручной работы, без задержек.

Ключевое отличие вебхуков от регулярных запросов по API: они мгновенные. Не нужно опрашивать систему каждую минуту — MES сама сигнализирует, как только произошло важное событие.


Для кого нужен API, а кому достаточно экспорта

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

API нужен, если:

  • данные должны автоматически попадать в другую систему (1С, ERP, BI) без участия человека;
  • нужна двусторонняя синхронизация (данные идут и в MES, и из MES);
  • несколько систем потребляют одни и те же данные;
  • обновление данных нужно чаще, чем раз в несколько часов;
  • нужно реагировать на события немедленно (алерты, уведомления).

Встроенного экспорта достаточно, если:

  • данные нужны раз в смену или раз в сутки;
  • получатель данных — конкретный человек (руководитель, аналитик), а не система;
  • нет IT-специалиста для настройки интеграции;
  • предприятие на этапе пилота или только внедряет MES.
Критерий Встроенный экспорт API-интеграция
Периодичность обновления Раз в смену / раз в сутки В реальном времени или по расписанию
Нужен IT-специалист Нет Да (минимально)
Двусторонний обмен Нет Да
Уведомления об инцидентах Нет Да (через webhook)
Сколько систем получают данные Одна (файл) Неограниченно
Время на настройку Минуты Дни — недели

Требования к безопасности при интеграции через API

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

Аутентификация через токены. Каждая система, которая обращается к MES API, должна иметь уникальный API-ключ или Bearer-токен. Токены должны быть разными для разных систем: если ключ 1С утечёт — BI-система не пострадает.

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

HTTPS обязателен. Все запросы к API должны передаваться по защищённому протоколу. HTTP без шифрования — данные о выпуске, простоях и планах производства могут быть перехвачены в сети.

Ротация токенов. API-ключи должны иметь срок действия и периодически обновляться. Оптимально — раз в 90–180 дней или при смене IT-персонала.

Ограничение IP-адресов. Если известно, с каких серверов будут приходить запросы (IP 1С-сервера, IP Power BI Gateway), имеет смысл разрешить API только для этих адресов. Прочие запросы будут автоматически отклонены.

Логирование запросов. Все обращения к API должны записываться: кто, когда, что запрашивал. Это нужно и для аудита, и для диагностики проблем интеграции.

Отдельная учётная запись для интеграции. Не используйте личный аккаунт пользователя для API-интеграции. Заведите служебную учётную запись с ограниченными правами специально для этой цели.


Планол API: что доступно и как начать

Планол предоставляет REST API для интеграции с внешними системами. Все данные, которые собирает система — выпуск, простои, OEE, смены, заказы, брак — доступны через API.

Что уже доступно в API Планол:

  • чтение и создание производственных заказов;
  • получение данных о выпуске по заказу, оборудованию или периоду;
  • список простоев с фильтрацией по статусу, причине, длительности;
  • OEE в разрезе оборудования, участков и смен;
  • данные о браке с категоризацией;
  • webhook-подписки на ключевые события (простой, завершение смены, выпуск);
  • выгрузка сменных отчётов в JSON для внешних систем.

Форматы документации. API Планол документирован в формате OpenAPI (Swagger). Это означает, что документацию можно открыть в Postman, Insomnia или Swagger UI и сразу тестировать запросы — без написания кода.

Как начать. После подключения к Планол каждый клиент получает доступ к разделу API в настройках. Там выдаются API-токены, есть ссылка на документацию и примеры запросов для 1С, Python и Power Query. Служба поддержки помогает с первой интеграцией.

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

Записаться на демо →


Часто задаваемые вопросы

Что такое API в контексте производственной системы и зачем он нужен?

API — это программный интерфейс, через который другие системы получают данные из MES или передают данные в неё. Благодаря API не нужно вручную выгружать отчёты и загружать их в другие программы: системы обмениваются данными автоматически. Например, 1С получает из MES данные о выпуске и автоматически закрывает производственные заказы, а Power BI обновляет дашборд с OEE каждый час.

Нужен ли программист, чтобы настроить интеграцию MES с 1С через API?

Да, минимально. Для базовой интеграции (заказы из 1С в MES, выпуск из MES в 1С) нужен 1С-программист на 2–5 дней работы. Он настраивает HTTP-запросы из 1С к API Планол — это стандартная задача, не требующая специализированных знаний. Документация и примеры запросов предоставляются вендором MES.

Как выгрузить данные производства в Excel без программирования?

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

Что такое webhook и чем он отличается от обычного API?

Обычный API работает так: ваша система задаёт вопрос MES и получает ответ. Webhook работает наоборот: MES сама отправляет уведомление, когда происходит событие (простой, завершение смены, превышение брака). Webhook быстрее — реакция мгновенная, не нужно опрашивать систему. Это основа для Telegram-алертов и email-уведомлений без задержки.

Безопасно ли открывать API производственной системы для внешних подключений?

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

Комментарии

Комментариев пока нет. Будьте первым!

Оставить комментарий

Понравилась статья? Посмотрите Планол в действии.

Получить демо-доступ