Skip to content

animih/Evraz2.0_FoxhoundTeam

 
 

Repository files navigation

Хакатон Evraz2.0, 17-19 февраля 2023, решение команды Foxhound

FoxControl

image

Веб-интерфейс для рабочего места машиниста эксгаустера. Сервис для приема и сохранения потока данных с эксгаустера и предоставления интерфейса доступа к этим данным.

Описание репозитория

  • backend - папка с кодом backend части. В том числе с потребителем кафки и описанием базы данных. Backend реализован на FastAPI, база данных MongoDB
  • compose - папка с Dockerfile
  • frontend - папка с кодом клиентской части. Frontend реализован на VueJS с использованием фреймворка Vuetify3
  • predictor - папка с кодом модели для предсказаний

Алгоритм предсказания

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

Сейчас для модели предсказания реализованы:

Параметр сезонности для модели Холта-Уинтерса подбирался вручную по анализу временных рядов за последний месяц.

После предсказания прогнозируемой даты пересечения временного ряда заданного предупредительного значения, находится наискорейшая (по всем колебаниям - горизонтальным, вертикальным, аксиальный) дата и возвращается в качестве прогнозируемой даты выхода из строя подшипника в совокупности с причиной выхода из строя (типом колебаний)

Инструкция по запуску

Демо решение расположено по адресу foxhound-team.pro

Для запуска локально, см. Развертывание через docker-compose

Документация по API доступна по пути foxhound-team.pro/docs

Развертывание через docker-compose

  1. Установить docker
  2. В папке compose создать файл .env и заполнить его в соответствии с примерами (.env.example)
  3. Запустить команду docker compose up -d с правами суперпользователя
sudo docker compose up -d
  1. Настроить внешний nginx, который будет пересылать все запросы на порт приложения

Описание переменных окружения

HTTP_PORT

Файлы: .env

Тип: целое число

Назначение: порт на котором будет крутиться приложение

KAFKA_PASSWORD

Файлы: .env

Тип: строка

Назначение: пароль для kafka

Команды docker-compose

Все команды необходимо выполнять в папке compose

  • Остановить все контейнеры
sudo docker-compose stop
  • Перезапустить контейнер
sudo docker-compose restart {container_name}
  • Запуск ipython
sudo docker-compose exec backend ipython

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 68.2%
  • Python 16.3%
  • Vue 13.6%
  • JavaScript 1.2%
  • Dockerfile 0.5%
  • HTML 0.1%
  • SCSS 0.1%