Предыдущие серии постов о создании телеграм ботов были написаны потому, что мне стало интересно: можно ли с помощью IBA PDA отправлять сообщение на телефон при срабатывании определенного триггера. Ну то есть на ибу заведена куча сигналов, и по ним можно определить состояние работы линии. Если какой-то параметр превышает требуемое значение, то неплохо было бы получить уведомление об этом как можно раньше, чтобы избежать аварии и простоя оборудования. Выделить требуемый сигнал благодаря математическим функциям и функциям сравнения не сложно, но вот как потом этот сигнал передать на телефон. Оказывается это возможно, в самой программе есть такая панель QPanel, на которой можно нарисовать что-то наподобие HMI
На ней можно нарисовать индикаторы работы линии, вывести скорости в числовом виде, можно и графики вывести. А еще тут есть кнопки, и при нажатии на кнопку можно запускать нужную программу.
В свойствах кнопки прописывается какой скрипт запускать в случае появления переднего фронта заданного цифрового сигнала. А в самом скрипте прописывается код для связи с телеграм ботом, который я описывал в предыдущей статье. И вот при наступлении события, скрипт запустится и вам отправится сообщение.
Вообще ИБА очень навороченный инструмент и сдается мне что многие его используют лишь наполовину, а то и меньше. Половину функций я не совсем понимаю как нужно использовать. Если вдруг кто-то прочитает эту статью и захочет поделиться какими-нибудь другими фишками, то я был бы очень рад. Например есть функции отчетов в ИБЕ - как их создавать я вообще не представляю. С другой стоны наверное оно мне и не совсем надо, раз не знаю))
На ней можно нарисовать индикаторы работы линии, вывести скорости в числовом виде, можно и графики вывести. А еще тут есть кнопки, и при нажатии на кнопку можно запускать нужную программу.
Вообще ИБА очень навороченный инструмент и сдается мне что многие его используют лишь наполовину, а то и меньше. Половину функций я не совсем понимаю как нужно использовать. Если вдруг кто-то прочитает эту статью и захочет поделиться какими-нибудь другими фишками, то я был бы очень рад. Например есть функции отчетов в ИБЕ - как их создавать я вообще не представляю. С другой стоны наверное оно мне и не совсем надо, раз не знаю))
как считал время работы: скорость больше нуля - условие что механизм работает (то есть тупо формула [9:123] > 0 , это называться будет spd)
ОтветитьУдалитьА теперь добавляем формулу:
ToText(Max(Sum ( [spd] ,False()) /360000) ,"%g")
чтобы текстом отобразить время работы механизма в часах в промежутке всего загруженного файла
продолжительность сигнала можно высчитать так:
ОтветитьУдалитьToText ((MaxValid ( XValues ([x]) , [x] ) -MinValid ( XValues ([x]) , [x] ) ),"%g")