Тепловизоры или, как их реже называют термовидеокамеры, применяются в широком ряду приложений, начиная с контроля тепловых режимов разных механизмов и заканчивая обнаружением автомобилей, аварийно съехавших с дороги. Принцип действия тепловизора основан на регистрации инфракрасного излучения, которое генерирует любой объект, чья температура отлична от 0К (–273,15°С). Это излучение, которое также называют тепловым излучением, детектируется и обрабатывается тепловизором.
Длина волны инфракрасного (ИК) излучения находится в диапазоне 700–1000 нм. ИК-излучение не видимо глазом и ощущается человеком как поток тепла. Например, у Солнца примерно половина излучаемой энергии приходится на инфракрасное излучение. Однако перейдем к аппаратной реализации тепловизора.
В его состав входят 16- и 32-бит микроконтроллеры (МК) или комбинация обоих МК. Тем не менее, как мы покажем ниже на конкретном примере, задачу можно решить и с помощью обычного 8-бит МК. В состав тепловизора входят:
· ИК-датчик PanasonicGrid-EYE;
· графический ЖКД VaritronixCOG-C144MVGI-08;
· 8-бит МК PIC18F27K42.
Инфракрасное излучение регистрируется с помощью датчика PanasonicGrid-EYE, состоящего из массива термоэлектрических элементов размерностью 8×8. Каждый термоэлемент состоит из нескольких термопар. Горячий спай термопары соединен с очень тонкой мембраной, поглощающей ИК-излучение. Эта мембрана является общим элементом всех термоэлектрических датчиков и термопар их составляющих. При производстве датчиков использовалась МЭМС-технология.
Рис. 1. Структурная схема датчика PanasonicGrid—EYE
Структурная схема датчика представлена на рисунке 1. Поле обзора датчика составляет 60°. ИК-излучение проходит через встроенную кремниевую линзу, играющую роль оптического фильтра. ИК-излучение, прошедшее через эту линзу, поглощается 64 чувствительными элементами, которые преобразуют его в электрический потенциал величиной несколько милливольт. Этот сигнал представляет собой термоЭДС, возникающую из-за разницы температур горячего и холодного спаев.
Далее этот сигнал усиливается встроенным в датчик усилителем, преобразуется АЦП в цифровой код и сравнивается с температурой встроенного в датчик термистора. Затем сигнал преобразуется в 12-бит код (11 бит данных и 1 бит знака). Код каждого из 64 элементов датчика сохраняется в индивидуальном регистре и далее передается микроконтроллером через интерфейс I2C.
В состав тепловизора входит цветной CSTN ЖКД с пассивной матричной адресацией и светодиодной подсветкой. Управление ЖКД осуществляется через драйвер дисплея компании SamsungS6B3306. Формирование цветности дисплея осуществляется традиционно путем смешивания красного, зеленого и синего цветов в формате RGB565 с цветовым режимом 65 К (см. рис. 2).
Рис. 2. Формирование цветности изображения в режиме 65 К
Микроконтроллер PIC18F27K42 предназначен для чтения информации с термоэлектрического датчика и формирования цветного изображения, данные о котором были получены с помощью соответствующего датчика. В рассматриваемом случае используются следующие периферийные модули МК: таймер 1; модуль прямого доступа к памяти DMA; интерфейс I2C; интерфейс SPI.
Таймер 1 представляет собой 16-бит инкрементный счетчик, используемый для формирования задержки длительностью 15 с. Задержка требуется для выхода на режим после включения датчика Grid-EYE. Для ее реализации можно выбрать и приостановку выполнения программы на требуемое время, но при этом останавливается и программа приложения, что может оказаться неприемлемым. Таким образом, задержка реализуется с помощью таймера 1.
Модуль DMA используется по прямому назначению для передачи данных между портами и областями памяти без помощи процессорного ядра. При этом ядро освобождается от обработки прерываний. В данном случае модуль DMAприменяется для передачи обработанного файла изображения, полученного от термоэлектрического датчика на ЖКД.
Модуль I2C обеспечивает синхронную последовательную передачу данных между МК и датчиком Grid-EYE. Для передачи такого объема информации достаточно частоты синхронизации 100 Гц. Поскольку данные с каждого из 64 элементов датчика Grid-EYE имеют размер 12 бит, информация, передаваемая с каждого датчика, имеет 2-байт формат. За одну транзакцию передаются 128 байт, т.е. все данные датчика. Это возможно благодаря тому, что опрос каждого термоэлемента происходит последовательно друг за другом в заданной последовательности. Таким образом, нет надобности при опросе каждого элемента датчика формировать новый кадр передачи.
Модуль SPI МК PIC18F27K42 используется для передачи в ЖКД цветовой картины, полученной с датчика. Модуль конфигурируется только для передачи данных. Частота синхронизации составляет 8 МГц. В таком режиме ведущий модуль не должен считывать в каждом цикле информацию на входе SDI. Каждый передаваемый кадр содержит 17434 16-бит слов.
Формат изображения размерностью 8×8 преобразуется в удобный вид для визуализации на ЖКД – иначе оно будет слишком небольшим и неудобным для изучения.
Для преобразования формата прибегают к линейной интерполяции. В таком случае принимается, что две соседние точки соединяются прямой линией, на которой ищутся дополнительные точки. Это простейший вид интерполяции с помощью линейного полинома первого порядка. В нашем случае удобнее воспользоваться билинейной интерполяцией с четырьмя соседними точками (пикселами) и коэффициентом масштабирования для каждой из них. На рисунке 3 показан пример билинейной интерполяции, в котором матрица 8×8 преобразуется в матрицу 32×32.
Рис. 3. Пример линейной интерполяции для преобразования массива данных 8×8 в массив 32×32
Другими словами, линейная интерполяция аппроксимирует неизвестные значения между точками с помощью известных значений. Однако пользоваться этим методом следует с осторожностью. Возможен случай, когда в интерполяционный промежуток попадет край объекта, из-за чего размоется его граница при визуализации. Подробнее рассматриваемый вопрос изложен в [1].
Литература
1. Microchip Application Note AN2773//www.microchip.com.
Код статьи: МСА775