Здравствуйте.
На удаленном объекте установлен ПЛК-150. Основная задача решаемая ПЛК в данный момент - мониторинг температурного режима объекта. К контроллеру подключено 4 датчика температуры.
Канал связи до контроллера достаточно нестабилен, связь может пропадать несколько раз в день.
Что требуется:
Необходимо фиксировать текущие значения 4-х аналоговых сигналов и при восстановлении связи передавать эти данные на станцию оператора, где все это дело надо превратить в удобчитаемые тренды/таблицы тревог.
Дискретность фиксации значений с датчиков - 1 раз в 5 минут.
В дальнейшем, после проведения исследований температурного режима, на контроллер будут возложены функции управления исполнительными механизмами.
В итоге, что имеем:
1. Удаленный объект без присутствия персонала
2. Работа контроллера должна быть автономной, никакого внешнего управления оператором не планируется.
3. При наличии связи с ПЛК на операторской станции требуется только мониторинг фактических показаний датчиков
4. Периодически (скажем раз в сутки, естественно когда есть связь) на операторскую станцию требуется передавать данные по температуре, накопленные за сутки.
5. Модуля сбора данных нет
Задача вроде проста и понятна, но с реализацией определиться не могу.
Пока на ум приходит следующее решение:
В памяти контроллера организовать циклический массив (буффер) по принципу FIFO, в котором будут сохраняться данные по температуре за сутки. Так как данные не критические - записывать в файл не вижу смысла, тем-более есть какие-то странные ограничения на количество записей.
Раз в сутки этот буффер надо как-то считывать и превращать в тренды.
Сейчас использую codesys для записи трендов, но он часто отваливается от контроллера, во время потери связи данные естественно пропадают. Каким образом туда (в codesys) считать буффер с данными из контроллера и превратить его в тренд пока не представляю.
Можно конечно строить графики в екселе, но как-то это все будет разрозненно, имхо надо где-то в одном месте сбор информации вести и отображать ее, либо в скаде либо в екселе.
У кого-нибудь возникали подобные задачи, вообще как лучше реализовывать подобного типа автоматизацию (телеметрию) при нестабильных каналах связи, у кого какой опыт?