Задача имитационной модели: хранение показаний выбранных датчиков, которые снимаются раз в 2 секунды, сравнение со значениями, указанными в техническом регламенте, построение графиков, выявление аварийных и предаварийных ситуаций, выбор мастера участка.
Приступаем к реализации программного кода имитационной модели. Для начала определим инструменты для создания модели: это будет сетевая СУБД MySQL, управляемая через браузерное приложение PhpMyAdmin. В качестве языка программирования я выбрал C#, соответственно в этой работе буду пользоваться средой Microsoft Visual Studio 2008.
Далее представлены скриншоты работы приложения имитационной модели:
В первую очередь предлагается выбрать пользователя, затем задать план измельчения и запустить процесс. Если хотя бы одно из этих действий оператор выполнить забудет – система напомнит ему об этом.
Программа умеет выявлять пердаварийные ситуации. Например, если пошла трудноизмельчаемая руда – система будет сигнализировать об этом. Это будет означать для мастера необходимость или поменять план измельчения, или остановить процесс и произвести другие действия по недопущению аварии.
Аварийные же ситуации носят не рекомендательный характер, а уже серьёзно предупреждают мастера. Кроме того, пока мастер видит сообщение о возможной аварии – система автоматически отключается и даёт мастеру совет по устранению аварии. После этого процесс можно будет возобновить простым нажатием кнопки меню.
Кроме упраления процессом, данная имитационная модель, для удобства, предоставляет возможность добавлять и изменять мастеров.
Далее реализуется обязательное условие имитационной модели – наличие запроса, показывающего отчёт по любой операции, который обновляется каждые 2 секунды.
Также существует запрос, выдающий технический регламент в понятной пользователю системы форме.
Таким образом, в полном объёме выполнена имитационная модель, позволяющая генерировать массивы данных, записывать их в базу данных в виде отчёта. Модель также показывает многие аварийные и предаварийные ситуации и способы их решения.