Сервисы платформы Стрикс
Стрикс включает набор микросервисов, каждый из которых решает отдельную задачу: расчёт OEE, мониторинг аварий, накопление наработки, запись телеметрии и др.
Все вычислительные сервисы следуют единому паттерну: stateless Python-процесс, который читает и пишет данные только через BaSyx REST API. Конфигурация хранится в submodel-ах BaSyx.
Каталог сервисов
Вычислительные сервисы
| Сервис | Описание | Вход | Выход | Интервал | Статус |
|---|---|---|---|---|---|
| OEE | Расчёт OEE | OperationalData, OperationalModes | OEE | 60s | Production |
| Энергопотребление | Расчёт потребления электроэнергии | OperationalData | EnergyConsumption | 60s | Production |
| Аварии | Пороговый мониторинг телеметрии | OperationalData, AlarmConfig | AlarmHistory | 30s | Production |
| Наработка | Накопление моточасов | OEE (CurrentMode) | Runtime | 60s | Production |
| MTBF/MTTR | Показатели надёжности | AlarmHistory | ReliabilityMetrics | 300s | Production |
| Качество данных | Оценка качества телеме трии | OperationalData + ClickHouse | DataQuality | 300s | Production |
Инфраструктурные сервисы
| Сервис | Описание | Вход | Выход | Интервал | Статус |
|---|---|---|---|---|---|
| Мониторинг | Здоровье всех сервисов | — | SystemHealth | 30s | Production |
| Эмулятор | Генерация тестовых сигналов | EmulationConfig | MQTT | 1s | Production |
| Data Bridge | MQTT → BaSyx (IDTA 02027) | InterfaceMapping | OperationalData | event | Production |
| Telemetry Writer | MQTT → ClickHouse | TelemetryConfig | ClickHouse | 5s | Production |
| Retention Cleanup | Очистка по ретенции | StoragePolicy | ClickHouse DELETE | 1h | Production |
AI и аналитика
| Сервис | Описание | Статус |
|---|---|---|
| Диагностика | Спектральный анализ и вибродиагностика | Production |
| Doc Parser | AI-извлечение данных из документов | Beta |
| RAG Index | Семантический поиск по AAS-данным | Beta |
| API Gateway | JWT-аутентификация и маршрутизация | Beta |
APC (усовершенствованное управление)
| Сервис | Описание | Статус |
|---|---|---|
| APC Controller | MPC-контроллер (Gekko) | Beta |
| APC Simulator | Симулятор SAG-мельницы | Beta |
Архитектура
Каждый вычислительный сервис следует паттерну:
main.py → Service.run() → while True:
_discover() # найти shells с нужными submodel refs
_process_device() # для каждого устройства:
ensure output submodel (upsert + addSubmodelRef)
read input data
compute
write results
sleep(interval)
Сервисы не имеют собственной базы данных — BaSyx является единственным источником истины.
Деплой
Все сервисы деплоятся через docker compose на сервере Leibniz (188.124.37.185):
# Пересобрать и запустить все сервисы
docker compose build && docker compose up -d
# Пересобрать один сервис
docker compose build oee-service && docker compose up -d oee-service
# Логи
docker compose logs -f oee-service