МЕТОДЫ ИСПЫТАНИЙ, ИССЛЕДОВАНИЯ
УДК 620.179
Г.А. Морозов, А.П. Кучеревский
РАЗРАБОТКА АЛГОРИТМОВ И ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ДЛЯ ОБРАБОТКИ ТЕРМОГРАММ ПРИ ТЕПЛОВИЗИОННОМ КОНТРОЛЕ ЛОПАТОК ГТД
Все более широкое распространение тепловизионного метода неразрушающего контроля в различных отраслях промышленности в последнее время связано с его высокой информативностью и производительностью. При этом достижение столь высокого уровня производительности при достаточном уровне чувствительности возможно лишь с использованием специализированного программного обеспечения для обработки регистрируемых при контроле термограмм. Кроме этого, компьютерные средства предоставляют возможность управлять процессом теплового контроля, синхронизировать работу различных частей тепловизионного комплекса, а также в необходимый момент времени записывать термограммы.
Обработка серии термограмм (термофильма), записанных через равные промежутки времени, значительно увеличивает возможности и чувствительность теплового метода. Ниже представлен алгоритм программного обеспечения обработки серии термограмм. В данном алгоритме производится сравнение серии термограмм, отснятой с контролируемого объекта, с серией термограмм, отснятой ранее с эталонного объекта. Вначале программа производит очистку термограмм от шумов и отсекает термограммы, не имеющие информации (температурное поле объекта не отличается от исходного или на термограмме имеются зоны с температурой, превышающей порог, регистрируемый тепловизором). Эти преобразования необходимы для последующей обработки только термограмм, несущих определенную информацию о контролируемом объекте. Далее программа производит сравнение термограмм и выводит результат в виде термокарты, напоминающей термограмму, но отображающей только аномальные зоны в контролируемом объекте. Производится анализ полученных термокарт с целью соотнести их с тепловыми моделями аномальных зон, т. е. зон расположения вероятных дефектов, и выводится результат в виде термограммы контролируемого объекта с выделенными зонами вероятных дефектов.
Этот способ обработки позволяет быстро определять наличие дефектов в контролируемом объекте, несмотря на внутреннюю сложную структуру объекта, когда появление аномальных тепловых зон в определенном месте не является признаком наличия дефекта в этой области объекта. При обработке данным способом основной сложностью является правильное создание тепловых моделей аномальных зон, возникновение которых (зон) связано с наличием дефекта в той или иной области. Для этого производится анализ контролируемых дефектных объектов с известным типом и местоположением дефекта и отснятых с него термограмм, набираются статистические данные и на их основании создаются тепловые модели.
Алгоритм программы обработки
Описание блок-схемы алгоритма программы обработки
1. Начало программы.
2. Открытие эталонного термофильма.
3. Вызов подпрограммы «Фильтрация шумов» -обеспечивает удаление шумов в эталонном термофильме.
4. Вызов подпрограммы «Ограничение диапазона» - удаляет не участвующие в сравнении кадры термофильма.
5. Открытие термофильма, снятого с контролируемого объекта.
6. Вызов подпрограммы «Фильтрация шумов» -обеспечивает удаление шумов в термофильме, отснятом с контролируемого объекта.
7. Вызов подпрограммы «Ограничение диапазона» - удаляет не участвующие в сравнении кадры термофильма.
8. Вызов подпрограммы «Сравнение двух термофильмов» (эталонного и контролируемого).
9. Вызов подпрограммы сравнения результатов, полученных в п. 8, с моделями тепловых полей для данной структуры контролируемого объекта.
10. Вывод на экран монитора области вероятных дефектов.
11. Конец программы.
Алгоритм подпрограммы «Фильтрация шумов»
(здесь и далее: True и False - соответственно истинное и ложное условия)
Описание блок-схемы алгоритма подпрограммы «Фильтрация шумов»
1. Начало подпрограммы.
2. Условие: если количество кадров nmax меньше 10, то выводится пункт 21, если больше или равно, то переходим к пункту 3.
3. Присвоение переменной y= 1 (координата термокадра).
4. Присвоение переменной х=1 (координата термокадра).
5. Присвоение переменной sum_px=0 (sum_px - сумма значений пикселя с координатами x, y для всех кадров термофильма).
6. Присвоение переменной n=1 (номер кадра термофильма).
7. Условие: если n - номер кадра - меньше последнего в термофильме или равен ему, то происходит переход к пункту 8, в ином случае - переход к пункту 10.
1. Начало программы
2. Открытие эталонного термофильма
3. Фильтрация шумов
1
4. Ограничение диапазона
5. Открытие термофильма
6. Фильтрация шумов
7. Ограничение диапазона
8. Сравнение двух термофильмов
9. Наложение модели
I
10. Вывод результатов 1
11. Конец программы
8. Происходит суммирование значений пикселей разных кадров sum_px = sum_px+px [х; у; п] с заданными координатами х и у.
9. Увеличение номера кадра на 1 и возвращение к пункту 7.
10. Определение среднего значения пикселя рх_Бг_8иш=8иш_рх/п.
11. Определение критерия кг_по1ве = |рх_Бг_виш - (рх[х; у; 1] + рх[х; у; 2])/2|, характеризующего однотипность значений пикселей.
12. Условие: если кг_по1ве<0,5, то, следовательно, в этих пикселях вероятно наличие шума и происходит переход к пункту 13.
13. Присвоение переменной п=1 (номер кадра термофильма).
14. Условие: если п - номер кадра - меньше последнего в термофильме или равен ему, то происходит переход к пункту 15, в ином случае - переход к пункту 17.
15. Присвоение пикселю рх[х; у; п] значения, равного 0.
16. Увеличение номера кадра на 1 и возвращение к пункту 14.
17. Условие: если координата х меньше максимального значения хшах в термофильме, то происходит переход к пункту 18, в ином случае - переход к пункту 19.
18. Увеличение значения х на 1 и возвращение к пункту 5.
19. Условие: если координата у меньше максимального значения ушах в термофильме, то происходит переход к пункту 20, в ином случае - переход к пункту 22.
20. Увеличение значения у на 1 и возвращение к пункту 4.
21. Вывод информации об ошибке и невозможности обработки.
22. Конец подпрограммы.
Алгоритм подпрограммы «Ограничение диапазона» Описание блок-схемы алгоритма подпрограммы «Ограничение диапазона»
1. Начало подпрограммы.
2. Присвоение переменной п=1 (номер кадра термофильма).
3. Присвоение переменной 8иш_к=0 (Биш_к - сумма значений всех пикселей п-кадра).
4. Присвоение переменной у=1 (координата термокадра).
5. Условие: если координата у меньше максимального значения ушах в термофильме или равна ему, то происходит переход к пункту 6, в ином случае - переход к пункту 11.
6. Присвоение переменной х=1 (координата термокадра).
7. Условие: если координата х меньше максимального значения хшах в термофильме или равна ему, то происходит переход к пункту 8, в ином случае - переход к пункту 10.
8. Происходит суммирование значений пикселей всего кадра sum_k=sum_k+px[x; у; п].
9. Увеличение значения х на 1 и возвращение к пункту 7.
10. Увеличение значения у на 1 и возвращение к пункту 5.
11. Условие: если существует переменная sum_pr, то происходит переход к пункту 14, если не существует, то - переход к пункту 12.
12. Присвоение переменной sum_pr=sum_k - суммы значений пикселей текущего кадра п.
13. Увеличение номера кадра на 1 и переход к пункту 33.
14. Определение значения критерия дефекта kr_d=|sum_k - sum_pr|, характеризующего среднее значение пикселя px_sr_suш=suш_px/n.
15. Условие: если ^^<150, то происходит переход к пункту 12.
16. Присвоение переменной п0=п (п0 - номер кадра, с которого начинаются видимые изменения в термофильме).
17. Вычисление п2=пшах - п0.
18. Условие: если п2<80, то происходит переход к пункту 19, в ином случае - переход к пункту 20.
19. Присвоение и = п2 ( п^^ - количество кадров, которое будет использоваться при сравнении двух термофильмов).
20. Присвоение п =80.
21. Присвоение переменной п=1 (номер кадра термофильма).
22. Условие: если п - номер кадра - меньше п^о или равен ему, то происходит переход к пункту 23, в ином случае - переход к пункту 32.
23. Присвоение переменной у=1 (координата термокадра).
24. Условие: если координата у меньше максимального значения ушах в термофильме или равна ему, то происходит переход к пункту 25, в ином случае - переход к пункту 30.
25. Присвоение переменной х=1 (координата термокадра).
26. Условие: если координата х меньше максимального значения хшах в термофильме или равна ему, то происходит переход к пункту 27, в ином случае - переход к пункту 29.
27. Распределение пикселей по новому диапазону рхг[х; у; n]=px[x; у; п0].
28. Увеличение значения х на 1 и возвращение к пункту 26.
29. Увеличение значения у на 1 и возвращение к пункту 24.
30. Увеличение значения п на 1.
31. Увеличение значения п0 на 1 и возвращение к пункту 22.
32. Вывод результатов ограничения диапазона.
33. Условие: если п - номер кадра - меньше пшах или равен ему, то происходит переход к пункту 3, в ином случае - переход к пункту 34.
34. Конец подпрограммы.
2. n=1
3. sum k=0
4. y=1
5. y<y у —у max
trueY""^
6. Х=1
FALSE
10. y++ 7 *<max
FALSE
FALSE
FALSE
21. n=1
31. n0++
30. n++
Алгоритм подпрограммы «Сравнение двух термофильмов»
Описание блок-схемы алгоритма подпрограммы «Сравнение двух термофильмов»
1. Начало подпрограммы.
2. Условие: если количество кадров эталонного термофильма больше количества кадров термофильма контролируемого объекта, то происходит переход к пункту 3, в ином случае - переход к пункту 4.
3. Максимальное количество кадров, участвующих в сравнении, приравнивается к количеству кадров термофильма контролируемого объекта: п = птх .
4. Максимальное количество кадров, участвующих в сравнении, приравнивается к количеству кадров эталонного термофильма: п^ = п^ .
5. Присвоение переменной п=1 (номер кадра термофильма).
6. Условие: если п - номер кадра - меньше максимального количества кадров, участвующих в сравнении, или равен ему, то происходит переход к пункту 7, в ином случае - переход к пункту 17.
7. Присвоение переменной у=1 (координата термокадра).
8. Условие: если координата у меньше максимального значения ушах в термофильме, то происходит переход к пункту 9, в ином случае - переход к пункту 16.
9. Присвоение переменной х=1 (координата термокадра).
10. Условие: если координата х меньше максимального значения хшах в термофильме или равна ему, то происходит переход к пункту 11, в ином случае - переход к пункту 15.
11. Условие: если значение пикселя в термограмме контролируемого объекта равно значению пикселя в эталонной термограмме рхг[х; у; п]= pxe[x; у; п], то происходит переход к пункту 12, в ином случае - переход к пункту 13.
12. Присвоение переменной dif[x; у; п]^^^; у; п] - величина различия значений пикселей).
13. Вычисление dif[x; у; п^^х,^; у; п] - pxe[x; у; п]|, где dif[x; у; п] - величина различия значений пикселей.
14. Увеличение значения х на 1 и возвращение к пункту 10.
15. Увеличение значения у на 1 и возвращение к пункту 8.
16. Увеличение номера кадра на 1 и возвращение к пункту 6.
17. Присвоение переменной у=1 (координата термокадра).
18. Условие: если координата у меньше максимального значения ушах в термофильме или равна ему, то происходит переход к пункту 19, в ином случае - переход к пункту 29.
19. Присвоение переменной х=1 (координата термокадра).
20. Условие: если координата х меньше максимального значения хшах в термофильме или равна ему, то происходит переход к пункту 21, в ином случае - переход к пункту 28.
21. Присвоение переменной п=1 (номер кадра термофильма).
22. Условие: если п - номер кадра - меньше номера последнего кадра в термофильме или равен ему, то происходит переход к пункту 23, в ином случае - переход к пункту 27.
23. Условие: если существует переменная sum_dif[x; у], то происходит переход к пункту 24, если не существует, то происходит переход к пункту 25.
24. Суммирование величин, характеризующих различия между пикселями двух сравниваемых термограмм sum_dif[x; у]= sum_dif[x; у]+ dif[x; у; п].
25. Присвоение sum_dif[x; у]= dif[x; у; п].
26. Увеличение номера кадра на 1 и возвращение к пункту 22.
27. Увеличение значения х на 1 и возвращение к пункту 20.
28. Увеличение значения у на 1 и возвращение к пункту 18.
29. Вывод результата, отображающего области расхождения двух сравниваемых термограмм.
30. Конец подпрограммы.
Алгоритм подпрограммы сравнения результатов подпрограммы «Сравнение двух термофильмов» с моделью тепловых полей в данной структуре контролируемого объекта Описание блок-схемы алгоритма подпрограммы анализа результата
1. Начало подпрограммы.
2. Присвоение переменной у=1 (у - координата результирующего изображения, полученного подпрограммой сравнения).
3. Условие: если координата у меньше максимального значения утах или равна ему, то происходит переход к пункту 4, в ином случае - переход к пункту 12.
4. Присвоение переменной х=1 (координата термокадра).
5. Условие: если координата х меньше максимального значения хтах или равна ему, то происходит переход к пункту 6, в ином случае - переход к пункту 11.
6. Условие: если значение пикселя результирующего изображения равно значению пикселя в изображении, характеризующем наличие дефекта №1 в данной структуре, то происходит переход к пункту 7, в ином случае - переход к пункту 8.
7. Прибавление единицы к переменной, характеризующей наличие дефекта № 1.
8. Условие: если значение пикселя результирующего изображения равно значению пикселя в изображении, характеризующем наличие дефекта № 2 в данной структуре, то происходит переход к пункту 9, в ином случае - переход к пункту 10.
9. Прибавление единицы к переменной, характеризующей наличие дефекта № 2.
10. Увеличение значения х на 1 и возвращение к пункту 5.
11. Увеличение значения у на 1 и возвращение к пункту 3.
12. Условие, определяющее существование дефекта № 1: если переменная, характеризующая наличие дефекта № 1, больше значения (КОМ), свойственного данному дефекту, или равна ему, то происходит переход к пункту 13, в обратном случае - переход к пункту 14.
13. Формирование области, отображающей реальное расположение дефекта №1 для конкретной структуры.
14. Условие, определяющее существование дефекта № 2: если переменная, характеризующая наличие дефекта № 2, больше значения, свойственного данному дефекту, или равна ему, то происходит переход к пункту 15, в обратном случае - переход к пункту 16.
15. Формирование области, отображающей реальное расположение дефекта № 2 для конкретной структуры.
16. Вывод результата, отображающего области расположения дефекта в объекте в соответствии с его структурой.
17. Конец подпрограммы.
Внешний вид программы обработки серии термограмм при тепловизионном контроле лопаток ГТД
Представленные алгоритмы были применены в программном обеспечении для обработки серии термограмм при тепловизионном контроле лопаток ГТД (см. рисунок). Программное обеспечение не только позволило повысить возможности метода по выявлению дефектов (засорение отверстий, наличие остатков керамики), но и дало представление о качестве системы охлаждения лопаток ГТД, позволяющее ученым усовершенствовать конструкцию лопаток. Использование программного обеспечения существенно увеличивает чувствительность тепловизионного метода.
УДК 620.179
Е.И. Косарина, А.В. Степанов, Ю.В. Тараканов*, В.Е. Усачев** РАДИОСКОПИЧЕСКИЙ КОНТРОЛЬ СОТОВЫХ КОНСТРУКЦИЙ
Основой безопасной эксплуатации современной авиационной техники является обеспечение контроля качества изготовления деталей, узлов и агрегатов в производстве и их дальнейшей эксплуатации. При производстве различные методы неразрушающего контроля, применяемые на заводах и предприятиях авиационной отрасли, могут быть легко адаптированы для контроля новых изделий при изменении конструкции или материалов, из которых они изготовлены. В условиях эксплуатации ситуация иная. В процессе эксплуатации летательные аппараты подвергаются естественному износу и воздействию окружающей среды. В конструкциях возникают дефекты различного характера, снижающие эксплуатационные характеристики, приводящие впоследствии к выходу из строя авиационной техники, а зачастую к авариям и катастрофам. Для выявления этих дефектов, так же как и в производстве, проводят неразрушающий контроль наиболее нагруженных и ответственных деталей и узлов, но применение различных методов контроля по разным причинам оказывается ограниченным, что, в свою очередь, сказывается на качестве проведения регламентных и ремонтных работ. Кроме того, не-
* Сотрудник НИИЭРАТ.
** Сотрудник ТСНК МИРЭА.