Окружающий мир
22.01.2013 7033

Повышение надежности получаемой измерительной информации в обрабатывающих центрах с ЧПУ

Любая измерительная информация, представленная в аналоговом и дискретном виде, поступающая в контроллер, не всегда обладает достаточной достоверностью. Это связано, прежде всего, с наличием различных сбоев в измерительных каналах. Все эти сбои могут привести к преждевременному или ошибочному срабатыванию заложенной в контроллер программы, а это является недопустимо, в особенности на опасных объектах управления.

К таким ситуациям можно отнести: ложное срабатывание сигнализации, ложное формирование команд управления. Каждая из перечисленных ситуаций может привести к выходу из строя дорогостоящего оборудования, а как следствие к серьезным финансовым затратам на предприятии. Основной целью данной статьи является исследование ситуаций, возникающих в измерительном канале и предложение алгоритмов, позволяющих повысить надежность получаемой информации.

В аналоговом измерительном канале могут, появляется следующие сбои (рис. 1, Δy – допустимое значение сигнала): «выброс», «провал», обрыв. Последний сбой можно отнести к отказу измерительного канала. «Выбросом» будем называть ситуацию, когда аналоговый сигнал кратковременно возрастает и возвращается к своему значению. «Провалом» будем называть ситуацию, когда значение аналогового сигнала кратковременно уменьшается и возвращается к своему действительному значению.

Рис. 1. Виды ситуаций в измерительном канале

Рис. 1. Виды ситуаций в измерительном канале

«Провалы», «выбросы», могут возникнуть при перебоях в питании датчиков, которые используют нестинговые обрабатывающие центры с чпу, наличии различных наводок в измерительных каналах. Наводки могут быть обусловлены отсутствием экранирования проводов, грозозащиты и пролегание проводок в местах с электромагнитными наводками. «Обрывом» будем называть ситуацию, когда аналоговый сигнал перестает поступать в контроллер. То есть, если унифицированный токовый входной сигнал 4…20 мА, то за «обрыв» будет считаться его отрицательное значение. «Обрыв» может возникнуть в следующих ситуациях: если полностью отказал датчик, произошел обрыв провода, а так же в редких случаях, отказ модуля УСО в контроллере, отвечающего за обработку входной аналоговой информации. В случае дискретных сигналов, могут возникать два сбоя: «дребезг» и кратковременное исчезновение сигнала. Под «дребезгом» понимается случайное, кратковременное появление логической единицы в дискретном канале (рис. 2).

Рис. 2. Ситуации в дискретном канале

Рис. 2. Ситуации в дискретном канале (T1…T2 и T3…T4 – интервалы возникновения «дребезга», T5…T6 и T7…T8 – интервалы кратковременного исчезновения сигнала)

Большинство из данных ситуаций обрабатывается и устраняется в специализированных модулях, предлагаемых различными производителями контроллеров высокого класса (Сименс). Все эти ситуации можно обрабатывать и на программном уровне, тем самым отпадает надобность платить за дополнительные модули и занимать дополнительные места в стойке для контроллера.

Начнем с рассмотрения сбоев, возникающих в дискретных каналах. Для исключения проникновения ложных дискретных сигналов в систему контроля и регулирования, можно реализовать защиту добавив в программу 3 функциональных блока: 2 таймера (с задержкой на включение) и RS-триггер. На рис. 3 представлена реализация защиты в Codesys 2.3 на языке FBD.

Рис. 3. Защита от дребезга и кратковременного исчезновения дискретного сигнала

Рис. 3. Защита от дребезга и кратковременного исчезновения дискретного сигнала

Работа защиты от «дребезга» заключается в следующем: при появлении единичного сигнала в переменной Din, Timer_1 начинает отчет времени до включения выхода Q. Время устанавливается равное 3 секундам, можно и меньше. Если в течение 3 секунд дискретный сигнал не изменялся, то на выходе Q таймера Timer_1 установиться единичный сигнал, который будет запомнен в триггере и записан в переменную Dout. В противном случае, если единичный сигнал будет появляться и пропадать, таймер будет постоянно сбрасываться и его выход не включится.

Защита от кратковременного исчезновения сигнала работает следующим образом: триггер Trigger запомнил пришедший сигнал и что бы сбросить эту память, необходимо установить на входе Rеset триггера логическую единицу. Данный вход соединен с выходом таймера Timer_2, который начинает работать при отключении входного дискретного сигнала (инверсия на входе In таймера). Если дискретный сигнал отсутствовал более 3 секунд, произойдет сброс триггера и сигнал прекратит поступать в программу.

Защита аналогового сигнала от «выбросов» и «провалов» сводится к фильтрации входной аналоговой информации с помощью стандартных блоков экспоненциального сглаживания или фильтрации пиков, которые имеются в большинстве сред программирования контроллеров. Алгоритм фильтрации пиков построен на следующем предположении: любой объект управления имеет запаздывание и скорость роста параметра, за такт просчета контроллера, не может быть больше определенного значения Limits.

Реализация на языке ST:

1
2
3
4
5
6
7
IF ABS(INtek-Qtek) < = Limits THEN
Out:= INtek;
ELSIF (INp-Qp)<=Limits THEN
Out:=Qtek;
ELSE
Out:=INtek;
END_IF;

Производим сравнение значения входного параметра INtek со значением выхода из блока проверки, на предыдущем такте просчета Qtek. Если разница меньше Limits, на выход блока Out подаем текущее входное значение. Иначе, если разница показаний предыдущего значения параметра INp со значением выхода Qp (запомненного два такта назад) из блока, меньше Limits, то на выход Out подаем Qtek. Иначе на Out подается текущий входной сигнал. Так же можно использовать алгоритм ограничения роста сигнала. Реализация на языке ST:

1
2
3
4
5
6
7
8
Qp:=Q;
IF ABS(IN-Qp)>Limits THEN
IF (IN-Qp)>0 THEN Q:= Qp+Limits*1;
ELSIF (IN-Qp)&lt;0 THEN Q:= Qp+Limits*(-1);
ELSIF(IN-Qp)=0 THEN Q:= Qp+Limits*(0);
END_IF;
ELSE Q:=IN;
END_IF;

Если разница между входным сигналом IN и выходным Qp отлична от заданного ограничения роста данного сигнала, то выходной сигнал Q будет формироваться по формуле, в зависимости от значения разницы между IN и Qp. Алгоритм распознавания обрыва может быть следующим: производим запоминание значения сигнала IN до его физического обрыва. Реализация заключается во внесении в дополнительную переменную INm, через определенный промежуток времени Т значения сигнала, далее осуществляется сравнение значения сигнала с некоторым числом LIMITS, которое характеризует минимальную границу сигнала для данного контроллера, в зависимости от погрешности АЦП. Если происходит обрыв, в программу передается последнее запомненное значение сигнала и выдается сообщение об аварии Alarm.

Реализация на языке ST:

1
2
3
4
5
6
7
8
9
10
11
12
Timer(IN :=TRUE, PT:= T#0.5s);
IF In>LIMITS THEN
	Alarm:=FALSE;
	INout:=In;
IF Timer.Q=TRUE THEN
	INm:=In;
	Timer(IN :=FALSE, PT:= T#0.5s);
END_IF
ELSE
	Alarm:=TRUE;
	INout:=INm;
END_IF;

В статье были рассмотрены основные сбои в аналоговых и дискретных измерительных каналах. Предложены программные алгоритмы, позволяющие не допустить прохождение сбоев в программу. Реализация этих алгоритмов позволит повысить надежность и достоверность получаемой измерительной информации, а так же снизить количество ложных запусков технологического оборудования, аварийные ситуации и нагрузку на регулирующие клапаны.

Top