Приборная панель с несколькими приборами
Панель с несколькими приборами
В этом проекте представлен пример организации пересылки данных между моделью Engee, работающей в замедленном времени, и приборной панелью с несколькими приборами.
Иллюстрация работы примера
Совместная работа модели и приборной панели показана на видео:
Приборную панель можно открыть в отдельном окне или встроить внутри интерактивного скрипта, при этом все интерактивные элементы будут работать и позволят визуализировать выходные данные и работать с моделью в реальном времени.
Модель запускается в режиме "Управление скоростью симуляции".
Длительность симуляции равна
inf
, таким образом выполнение модели может быть остановлено только пользователем.
Запустить пример
Для запуска примера откройте и запустите модель multiple_dashboard_model.engee
выполните следующую ячейку:
# Запустить сервер с приборной панелью
app = engee.genie.start("$(@__DIR__)/app.jl", log_file="$(@__DIR__)/log.txt");
display("text/html", """<iframe src="$(string(app.url))" width="650" height="320" style="border: none;"></iframe>""";)
# Получить ссылку для запуска в отдельном окне
# display("text/html", """<a href="$(string(app.url))" target="_blank" rel="noopener noreferrer">Открыть в отдельном окне</a>""")
Для остановки сервера в отладочных целях:
# engee.genie.stop("$(@__DIR__)/app.jl");
При неполадках
Учитывая что при связи используется протокол UDP и общение служб через localhost, связь между приборной панелью и моделью должна быть очень надежной и очень быстрой.
Если вы обнаруживаете замедления и пропуски значений, следует первым делом закрыть модель и открыть ее заново.
Заключение
Представленный проект позволяет вывести несколько значений из модели и отслеживать их совокупную динамику на разных индикаторах.