DIY тепловизор на Raspberry PI или «Кажется теперь я знаю, чем займусь этим летом»

    image

    Всем привет!

    Пришла зима, а с ней и задача проверить теплоизолирующие свойства построек загородной резиденции дачи. А тут ещё оказалось, что на известном китайском сайте появились вполне доступные тепловизионные модули. Не собрать ли себе экзотическую и, возможно, даже полезную вещь — самодельный тепловизор? Почему бы и нет, вроде и Raspberry где-то валялась… Что из этого вышло — расскажу под катом.

    MLX90640. Что это?


    А это, собственно, тепловизионная матрица с микроконтроллером на борту. Производства ранее неизвестной мне фирмы Melexis. Тепловизионная матрица имеет размерность 32 на 24 пикселя. Это немного, но при интерполяции изображения вроде как достаточно, чтобы хоть что-нибудь разглядеть.

    image

    Сенсор выпускается в двух модификациях, корпуса которых отличаются углом обзора матрицы. Более приземистая конструкция A обозревает окружающий мир под углом 110 (по горизонтали) на 75 (по вертикали) градусов. B — под 55 на 37,5 градусов соответственно. Корпус устройства имеет только четыре вывода — два для питания, два для общения с управляющим устройством по I2C интерфейсу. Даташит для заинтересовавшихся можно скачать здесь.

    А что тогда такое GY-MCU90640?


    Китайские товарищи ставят MLX90640 на плату с еще одним микроконтроллером на борту (STM32F103). По всей видимости, для более простого управления матрицей. Называется всё это хозяйство GY-MCU90640. И стОит на момент приобретения (конец декабря 2018 года) в районе 5 тыс. руб. Выглядит следующим образом:

    image

    Как можно заметить, есть две разновидности плат, с узко- или широкоугольной версией сенсора на борту.

    Какая из версий подойдет лучше всего? Хороший вопрос, к сожалению, возник он у меня только после того, как модуль был уже заказан и получен. Почему-то в момент заказа я не обратил внимания на эти нюансы. А зря.

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

    image

    Но для задач визуализации я бы больше рекомендовал более «дальнобойную» версию B. По одной очень значимой причине. В перспективе при съемке её можно разворачивать (вручную или на платформе с приводом) и делать составные «фото», увеличивая тем самым более чем скромное разрешение в 32 на 24 пикселя. Собирать тепловизионные снимки 64 на 96 пикселей, например… Ну да ладно, в дальнейшем по тексту фото будут с моей широкоугольной версии A.

    Подключение к Raspberry PI


    Управлять тепловизионным модулем можно двумя способами:

    1. Закоротить перемычку «SET» на плате и по I2C обращаться напрямую к внутреннему микроконтроллеру MLX90640.
    2. Оставить перемычку в покое и общаться с модулем через установленный на плате STM32F103 через RS-232 подобный интерфейс.

    Если вы пишете на C++, наверное, будет удобнее проигнорировать лишний микроконтроллер, закоротить перемычку и воспользоваться API от производителя, которое лежит вот здесь.

    Скромным питонистам тоже можно пойти первым путём. Вроде как есть пара библиотек на Python (здесь и здесь). Но у меня, к сожалению, с ходу ни одна не заработала.

    Продвинутым питонистам можно в принципе написать драйвер управления модулем на Питоне. Процедура получения кадра подробно расписана в даташите. Но тогда придется прописывать все калибровочные процедуры, что кажется слегка обременительным. Поэтому пришлось пойти вторым путем. Он оказался умеренно тернистым, но вполне проходимым.

    Благодаря прозорливости китайских инженеров или просто счастливому стечению обстоятельств у платки оказалось очень удачное расположение выводов:

    image

    Осталось только поставить колодку и вставить платку в разъем малины. На плате установлен преобразователь 5 в 3 Вольта, поэтому нежным Rx и Tx выводам Raspberry вроде как ничего не угрожает.

    Надо добавить, что подключение по первому варианту тоже возможно, но требует бОльших трудозатрат и паяльной сноровки. Плату нужно ставить с другой стороны разъема Raspberry (изображено на заглавной фотографии этого поста).

    Софт


    На известном китайском сайте для доступа к GY-MCU90640 предлагается вот такое чудо:

    image

    По всей видимости, должно быть и какое-то описание протокола взаимодействия с установленным на плате микроконтроллером, по которому сей программный продукт работает! После недолгого общения с продавцом платки (респект этим уважаемым господам) таковой протокол мне и был выслан. Он оказался в pdf и на чистом китайском языке.

    Благодаря переводчику Гугла и активному копипастингу примерно через час-полтора протокол был расшифрован, желающие могут ознакомиться с ним на Github. Оказалось, что платка понимает шесть базовых команд, среди которых есть запрос кадра по COM порту.

    Каждый пиксель матрицы — это, по сути, значение температуры объекта, на который этот пиксель смотрит. Значение температуры в градусах Цельсия, умноженных на 100 (двухбайтное число). Собственно, есть даже специальный режим, в котором платка будет слать кадры с матрицы на Raspberry 4 раза в секунду.

    Скрипт для получения тепловизионных снимков здесь:
    """MIT License
    
    Copyright (c) 2019 
    
    Permission is hereby granted, free of charge, to any person obtaining a copy
    of this software and associated documentation files (the "Software"), to deal
    in the Software without restriction, including without limitation the rights
    to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
    copies of the Software, and to permit persons to whom the Software is
    furnished to do so, subject to the following conditions:
    
    The above copyright notice and this permission notice shall be included in all
    copies or substantial portions of the Software.
    
    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
    SOFTWARE."""
    
    import serial, time
    import datetime as dt
    import numpy as np
    import cv2
    
    # function to get Emissivity from MCU
    def get_emissivity():
    	ser.write(serial.to_bytes([0xA5,0x55,0x01,0xFB]))
    	read = ser.read(4)
    	return read[2]/100
    
    # function to get temperatures from MCU (Celsius degrees x 100)
    def get_temp_array(d):
    
    	# getting ambient temperature
    	T_a = (int(d[1540]) + int(d[1541])*256)/100
    
    	# getting raw array of pixels temperature
    	raw_data = d[4:1540]
    	T_array = np.frombuffer(raw_data, dtype=np.int16)
    	
    	return T_a, T_array
    
    # function to convert temperatures to pixels on image
    def td_to_image(f):
    	norm = np.uint8((f/100 - Tmin)*255/(Tmax-Tmin))
    	norm.shape = (24,32)
    	return norm
    
    ########################### Main cycle #################################
    # Color map range
    Tmax = 40
    Tmin = 20
    
    print ('Configuring Serial port')
    ser = serial.Serial ('/dev/serial0')
    ser.baudrate = 115200
    
    # set frequency of module to 4 Hz
    ser.write(serial.to_bytes([0xA5,0x25,0x01,0xCB]))
    time.sleep(0.1)
    
    # Starting automatic data colection
    ser.write(serial.to_bytes([0xA5,0x35,0x02,0xDC]))
    t0 = time.time()
    
    try:
    	while True:
    		# waiting for data frame
    		data = ser.read(1544)
    		
    		# The data is ready, let's handle it!
    		Ta, temp_array = get_temp_array(data)
    		ta_img = td_to_image(temp_array)
    		
    		# Image processing
    		img = cv2.applyColorMap(ta_img, cv2.COLORMAP_JET)
    		img = cv2.resize(img, (320,240), interpolation = cv2.INTER_CUBIC)
    		img = cv2.flip(img, 1)
    		
    		text = 'Tmin = {:+.1f} Tmax = {:+.1f} FPS = {:.2f}'.format(temp_array.min()/100, temp_array.max()/100, 1/(time.time() - t0))
    		cv2.putText(img, text, (5, 15), cv2.FONT_HERSHEY_SIMPLEX, 0.45, (0, 0, 0), 1)
    		cv2.imshow('Output', img)
    		
    		# if 's' is pressed - saving of picture
    		key = cv2.waitKey(1) & 0xFF
    		if key == ord("s"):
    			fname = 'pic_' + dt.datetime.now().strftime('%Y-%m-%d_%H-%M-%S') + '.jpg'
    			cv2.imwrite(fname, img)
    			print('Saving image ', fname)
    		
    		t0 = time.time()
    
    except KeyboardInterrupt:
    	# to terminate the cycle
    	ser.write(serial.to_bytes([0xA5,0x35,0x01,0xDB]))
    	ser.close()
    	cv2.destroyAllWindows()
    	print(' Stopped')
    
    # just in case 
    ser.close()
    cv2.destroyAllWindows()


    Результаты


    Скрипт опрашивает тепловизионную матрицу и выводит кадры на консоль монитора, на который подключен Raspberry PI, 4 раза в секунду. Этого достаточно для того, чтобы не испытывать большого дискомфорта при съемке объектов. Для визуализации кадра используется пакет OpenCV. При нажатии на кнопку «s» в папку со скриптом сохраняются тепловизионные «тепловые карты» в формате jpg.

    image

    Для большей информативности я вывел минимальную и максимальную температуры на кадре. То есть глядя на окраску, можно видеть какая примерно температура у наиболее разогретых или охлажденных предметов. Погрешность измерения — примерно градус с бОльшую сторону. Тепловой диапазон задан от 20 до 40 градусов. Выход из скрипта по нажатию Ctrl + C.

    image

    Скрипт работает примерно одинаково и на Raspberry Pi Zero W и на Pi 3 B+. Я установил VNC сервер на смартфон. Таким образом, взяв в руки малину, подключенную к powerbank'у и смарфтон с запущенным VNC можно получить переносной тепловизор с возможностью сохранения тепловых снимков. Возможно, это не совсем удобно, но вполне функционально.

    После первого запуска возможно некорректное измерение максимальной температуры. В этом случае нужно выйти из скрипта и запустить повторно.

    Вот, собственно, и всё на сегодня. Эксперимент с самодельным тепловизором получился удачным. С помощью данного девайса вполне можно провести тепловизионное обследование дома своими силами, например. Если у кого-то возникнут дополнительные мысли насчет областей применения подобных штук, добро пожаловать в комментарии.

    Всем удачной трудовой недели и до новых встреч!

    UPD: В комментариях меня просили сделать снимок дома с улицы. Выкладываю здесь. Из-за меньшего контраста температур, чем в помещении, снимки получились не особо информативными. На фото сверху дом целиком с двух сторон. На нижних — фото разных окон.

    image

    В коде изменил только температурный диапазон. Вместо +20...+40 поставил -10...+5.
    Поделиться публикацией

    Комментарии 187

      +3
      Офигительная штука
        +3
        Спасибо )
        0
        А снаружи дома, углы и оконные пооемы пробовали проверять?
          +1
          Пока не пробовал, но в планах есть.
            +1

            Прям вот очень интересно какой будет результат

              0
              Померю, выложу в апдейт на следующих выходных тогда.
                0
                Я прошу прощения, получилось ли попробовать «посмотреть» дом снаружи?
                  0
                  Добрый день!

                  Пока не представилось возможности. Я отпишусь, как сделаю.
                    0
                    Я сделал несколько снимков снаружи дома. Ради интереса попробовал отойти подальше и взять дом целиком. Плюс сделал фото окон. Должен сказать, что изнутри утечки тепла искать гораздо комфортнее ) Кроме того, из-за бОльшего теплового контраста внутри снимки получаются более информативными. Снимки смотрите в апдейте основного поста.
                      0
                      На самом деле, их как раз лучше видно снаружи. :) Вот, например:


                      Однако, при создании видео для youtube из tga-файлов картинка и так 160x120 была безбожно пожата и в результате качество получилось ужасное.
                        0
                        Ну, может быть на тепловизоре с более качественной матрицей лучше снаружи, конечно )
                          0
                          Так там причина не в матрице. Просто сама утечка тепла снаружи контрастнее выделяется на фоне окружающей холодной среды.
                            0
                            Это да. Просто если место утечки меньше пикселя (а так и получается, если снимаешь весь дом целиком), то его не видно. Либо у меня просто утечек крупных просто нет.
                              0
                              А важна ли утечка тепла размером менее пикселя? Вот если видно что стена 2*2 метра теряет тепло, это колоссальная потеря энергии, 4 метра квадратных, киловатты тепловой мощности. А если это небольшая площадь, 0.05*0.05 метра, она существенно не скажется на экономичности дома.
                                0
                                Важна. Это значит, что внутри в этом месте холод. Стоит заделать «дырочку» и сразу в квартире может резко потеплеть.
                                  0
                                  Подтверждаю.
                                    0
                                    Сквозное отверстие в стене что ли имеете ввиду? Там и без тепловизора видно будет поток воздуха и сугроб снега зимой (как от открытого окна забытого).
                                    Если мостик холода, то объект 5*5 см температурой -10 градусов и менее будет заметен тоже без тепловизора по слою инея. Как на окнах в сильный мороз.
                                    Если мостик холода не такой явный, область в +5 градусов может быть просто постоянно мокрой, такие области чернеют от плесени быстро.
                                    Если температура участка стены +10 и выше, это потери тепла, не катастрофические. Может +1% к теплопотерям. Плюс за шкафом и по углам стена не получает притока тепла из комнаты и будет выглядеть изнутри как мостик холода, хотя потери тепла через нее даже меньше, чем у теплой стены.
                                    Изначально была речь о том что обязательно важен тепловизор с большим разрешением, чтобы заметить маленькие мостики холода. Я просто отметил, что это полезно, но не обязательно для обычных обследований. Основные потери тепла дают стены площадью в десятки метров квадратных (киловатты тепла уходят и это нормальный рабочий режим по всем нормам).
                                    Если тепловизор покажет что участок 0.0025 метра квадратного (5*5 см область) имеет теплопотери выше даже в 10 раз, это составит десятые и сотые доли процента в общей доли теплопотерь.
                                      0
                                      Там и без тепловизора видно будет поток воздуха и сугроб снега зимой


                                      Нет, не обязательно сквозное. Просто область с недостаточной теплоизоляцией. Скажем, в квартире у родственников было холодно само по себе. Посмотрели, откуда. Чётко видна недостаточная теплоизоляция у батарей и на паркете почему-то холодная одна планка.
                                      А так — да. Кто мешает просто пощупать и поискать потоки холодного воздуха свечкой? В этом смысле тепловизор и не нужен — он для ленивых. :)

                                      это составит десятые и сотые доли процента в общей доли теплопотерь.


                                      Если взять чуть дующее окно/дверь балкона, то снаружи будет видна небольшая нагретая область, устранив которую в квартире потеплеет.
                                        0
                                        Ну или изнутри охлажденная область будет видна. Тоже можно заделать. Со свечкой вдоль всех стен можно пройти, но долго это.
                                          0
                                          Если взять чуть дующее окно/дверь балкона, то снаружи будет видна небольшая нагретая область, устранив которую в квартире потеплеет.

                                          Надо считать теплопотери, возможно потеплеет на 0.1 градуса, если область именно небольшая.
                                          Утепление стены у батарей, чтобы стена не нагревалась, одна из первых задач при утеплении, даже без тепловизионного обследования проводится.
                                          www.resursltd.ru/images/cms/data/235.jpg
                              0
                              Почему качество ужасное? Я всё прекрасно рассмотрел, в многоэтажном доме прекрасно видны утечки тепла из дверей и окон, видны теплые балконы куда вероятно провели отопление.
                              Даже на окнах видно что теплый воздух идет вверх и окна вверху поэтому теплее, чем внизу. Внутри помещений наоборот, вдоль окон холодный воздух идет вниз вдоль стен и окон, и это кстати усиливает теплообмен, вредный обдув поверхности естественный.
                              Увеличение четкости ИК картинок не линейно прибавляет полезной информации, повышение качества в 10 раз, не факт что даст +10% полезной информации.
                                0
                                Да, в принципе, всё видно. Особенно, когда видишь своими глазами, на что направляешь прибор. По идее информативность ещё повысится, если сделать динамический диапазон у изображения.
                              0
                              Спасибо за снимки. Качество конечно не ахти. Первая в нижнем ряду фотку «желтит» много, хотя по идее там стена же без стыков и кровли. Эх, придется все таки копить на нормальный тепловизор.
                                0
                                Не обязательно копить. Можно просто взять нормальный тепловизор в аренду на день и сделать тепловизионные фото во всех нужных Вам ракурсах. Удовольствие стоит 1,5...3 тыс. руб. Посмотрите объявления в интернете.

                                А желтит из-да того, что я не сделал динамический диапазон. Просто поставил для быстроты фиксированный -10...+5. С динамическим диапазоном картинка была бы более контрастной.
                                  0
                                  Можно и этим тепловизором просканировать дом по частям. Вместо 5 минут, будет потрачено 15 минут времени, для личных применений не существенно. При желании можно пирометром копеечным неплохо исследовать дом. Там несколько типовых ключевых точек для анализа, по углам, окна и со стороны отопительных приборов. Далее считается тепловое сопротивление стен, соответствует оно нормам или нет. Это поважнее красивой картинки.
                                    0
                                    Согласен. Нужно водить этим тепловизором примерно в полуметре от стены, чтобы найти утечку. Просто снаружи в мороз это делать не удобно. Мне показалось более комфортным проверять дом изнутри )
                      +5
                      В принципе такой маленький девайс спокойно встанет на коптер. Для того же обследования зданий и теплотрасс.
                      «Молодцы, китайцы»(с)
                        0
                        Кстати, да )
                          +1
                          Ну для этого лучше поюзать девайсы с лучшим разрешением. Интересно что за матрица стоит в Seek Thermal CompactPRO, заявляют 320*240 15Fps.
                            +1
                            Ранее такие матрицы уже считались изделиями спецназначения ) Но, если девайс в открытой продаже, то, наверное и матрицу где-то можно купить. Пока из доступного я натыкался на такую: ru.aliexpress.com/item/FLIR/32872035004.html. Но разрешение там похуже, конечно.
                              +4
                              Перед новым годом заказывал себе (в Украину) SeekThermal Сompact с ибэй. Цена чуть выше чем у этого чуда, но разрешение намного веселей. Конкретно в моем случае обошлось 120$ в коробке с кейсом и т.д. С виду почти не юзаный. Пока мониторил, уходили они и по цене <100$. Так что хз зачем заморачиваться. И да, никаких претензий на таможне не было, хотя везде было указано что это тепловизор.
                                0
                                Ну да, если стоит задача взять не за дорого полнофункциональное устройство, то это оптимальный вариант. Описанная в посте плата хороша тем, что на её можно встраивать в какие-то простые решения по компьютерному зрению. Ну и с тепловизионной съемкой она справилась довольно неплохо.
                                  0
                                  Были истории когда кто-то заказал устройство с али и успешно его получил, а при попытке продать его на авито получил уже срок. Так что если у таможни не было вопросов это еще ничего не значит, не все посылки видимо проверяют.
                                  Любое устройство можно расценить как спецназначения, если для него нет сертификата. Закон написан очень расплывчато.
                                    0
                                    К сожалению, такое тоже имеет место быть (
                                0
                                Выше разрешение — дороже девайс. А вешать дорогое на такую ненадежную штуку как коптер — жалко. Ну, до 300 бкс, наверное еще можно.

                                Seek Thermal CompactPRO

                                Почитал описание:
                                Прочный корпус из магния.

                                Почему то подумалось про систему самоуничтожения — поцарапал камеру и она сгорела вместе со смартфоном.
                              0
                              0
                              Насколько я понял, для съёма собственно изображения с матрицы тяжёлая артиллерия в виде Raspberry PI не нужна — можно обойтись и микроконтроллером, пусть с чуть более низкой частотой обновления кадров. (С визуализацией хоть на дисплее, хоть в веб-интерфейсе тоже проблем нет.) Или мощность Raspberry PI это необходимое условие работы с этими матрицами?
                                +1
                                Если не напрямую с датчиком общаться, а использовать посредника в виде STM32F103, то можно и на ESP8266 запустить по идее. С Raspberry просто удобнее отлаживать. Можно за выходные как раз успеть всё запустить и посмотреть — как работает.
                                  +3
                                  С Raspberry просто удобнее отлаживать.


                                  Это кому как. :) Кому-то сотворить что-то с микроконтроллером — не проблема и работать очень удобно.
                                    0

                                    Да, кто с чем привык, с тем и удобнее.

                                  0
                                  Как раз работаю сейчас с MLX90640 с микроконтроллером. Исходники API от Melexis можно использовать практически без изменений, нужно реализовать только 2 функции — чтения и записи по i2c. Единственное, если не трогать реализацию API, нужно довольно много ОЗУ в микроконтроллере (порядка 3-4 Кб, точно не считал)
                                    0
                                    Да, их драйвер нормально работает.
                                  0
                                  А исходники прошивки stm32 Китай предоставляет?
                                    0
                                    Не думаю. Но они и не нужны вроде как. Если делать что-то более серьезное, проще не разбираться с их исходниками, а взять исходники MXL90640.
                                    0
                                    Понимаю что не так дорого как Flir, но не лучше ли на иностранной барахолке купить Flir Lepton за 15К. При том что у него 80×60 точек и 8 fps против 32x24 и 1 fps у MLX90640?
                                      0
                                      Ну смотря для каких задач. MLX удобен тем, что можно писать код и страивать модуль в свои какие-то решения.
                                        0
                                        Flir Lepton тоже модуль для DIYщиков и так же в интернетах есть примеры использования со всякими малинами и прочими одноплатниками.
                                          0
                                          А, нашел. Да, можно и такой датчик запустить в принципе. Разрешение получше будет, но и цена тоже. Не у верен, что для задачи, которая может оказаться разовой, имеет смысл закладываться на более дорогое решение. Стоимость описанного в статье модуля сопоставима со стоимостью услуги по тепловизионному обследованию в Москве. И свою задачу он выполнил в принципе.
                                            +1
                                            Да чего его запускать… :) Вот оно для stm32.
                                            По цене с обвязкой выйдет раза в 2-2.5 дороже чем
                                            И стОит на момент приобретения (конец декабря 2018 года) в районе 5 тыс. руб.
                                        +1
                                        Он, если брать сломанный flir one gen 2, выйдет тысяч в 8 с разрешением 160x120 и 9 Гц и ещё три тысячи за плату-переходник (но можно и свою развести — кроватка для лептона у вас будет из тепловизора).
                                          0
                                          Спасибо за совет. Если надумаю сделать более продвинутый тепловизор, не примину им воспользоваться )
                                            0
                                            А его можно приобрести с гарантированно рабочим сенсором?
                                            Какие поломки для него типичны?
                                              0
                                              Для него типичны отказы платы с контроллером (плохая пайка, дохлый аккумулятор и т.д.). Дохлый сенсор — это должно очень не повезти (сунули в 220 В вместо +5 для зарядки). Я про такое не слышал пока что. На eeevblog есть тема где-то, там автор восстанавливал практически все дохлые flir one gen 2.
                                                0
                                                Спасибо. Это действительно перспективно.
                                                Правда на данный момент я их не нашел. Ну и как я понимаю брать его нужно не в штатах т.к. оттуда не получится вывести — они запрещены к перевозке у всех посредников.
                                                  0
                                                  Надо искать дефектный на ebay. Обычно, их из Германии выбрасывают волнами. В прошлом году выбрасывали сразу по несколько штук. Но брать надо только Flir One Gen 2 (!) (ну или Gen 3 Pro). У него датчик 160x120. У обычного только 80x60.

                                                  Из США мне два года назад исправный прислали, но шлют ли сейчас не знаю.
                                                    0

                                                    Там все зависит от разрешения матрицы.
                                                    Простые должны быть доступны для отправки.

                                                      0
                                                      Они и доступны. Просто посредники не желают связываться с перевозкой таких тепловизоров. Мне лично отправляли обычной почтой США и всё пришло. А вот всякие «бандерольки» отказываются пересылать.
                                              0
                                              Вообще Melexis крутые ИК сенсоры делает, конкретно у этого Programmable refresh rate 0.5Hz…64Hz. То, что китайцы так мало смогли с помощью stm32 прокачивать — это уже их проблемы, кажется. Шина i2c, питается от 3 вольт — то, что надо, чтобы напрямую к малице цеплять.
                                                0
                                                Да, следующим шагом надо будет напрямую подсоединяться. Думаю только, что при 64 Гц из-за шумов мало что удастся различить. Кстати, 64 Гц — это частота получения полукадра. То есть для получения полного кадра будет 32.
                                                  0
                                                  Видел в даташите, но странно почему китайцы решили так занизить скорость, при том что stm32 позволяет. В документации нет описания скорости реакции матрицы при разных внешних факторах. Возможно 64 Гц это максимальная скорость опроса матрицы, но не ее скорость работы во всем диапазоне условий эксплуатации.
                                                    0
                                                    На самом деле непонятно, что они зашили в микроконтроллер и какими соображениями руководствовались. В документации на китайскую плату (в которой STM стоИт) сказано, что максимальная скорость обновления изображения 8 Гц при скорости COM порта 460800 bps. Это режим у меня почему-то не пошел. Но на 115200 реально получается 4 Гц вместо 2-ух, которые заявлены в документации. С какой частотой они опрашивают MLX, не могу сказать, осциллографа под рукой нет. Будет время, надо будет попробовать всё таки наваять драйвер, который обращается напрямую к MLX. Так можно будет получить от сенсора максимальный fps.

                                                    Но их прошивка сильно упрощает старт работы с устройством и понимание логики его работы, на мой взгляд. В этом отношении они молодцы.
                                                    0
                                                    Не, там всё хорошо, только погрешность растёт, в даташите есть график. Вроде, при 64 герцах получается чуть больше 1 градуса погрешности. Но в том же даташите есть, что если хочется измерять абсолютные величины — то надо после подачи питания подождать 4 минуты, чтобы корпус и матрица равномерно прогрелись и не вносили искажения.
                                                      0
                                                      Тут всё как с матрицей для обычных камер, если более часто опрашиваете пиксели (уменьшаете выдержку) изображение становится более зашумленным. На графике отложено не абсолютное отклонение погрешности, а среднеквадратичное. То есть на практике соседние пиксели начнут прыгать относительно друг друга на плюс минус 1 градус, насколько я понимаю. Это очень сильно искажает картинку, когда смотришь на предметы, температура которых отличается всего на 10 градусов.

                                                      При этом, если смотреть на сильно нагретый предмет (чайник кипящий, например), то тогда шум в этот градус градус уже не будет заметен. Для этих случаев 64 Гц будут давать вполне нормальную картинку.

                                                      Да, 4 минуты нужны именно для точности измерения абсолютных величин.
                                                        0
                                                        Насколько я понял даташит на mlx90640, каждый герц увеличивает шум на 0.1 градус
                                                          0
                                                          Зависимость не настолько сильная. Она не линейная и разная для версий с разным углом обзора.

                                                          image
                                                  +1
                                                  Оно работает по I2C, следовательно, есть теоретическая возможность повесить на шину несколько таких штук. Китайцев можно попросить, чтобы разные адреса зашили в stm32. Не знаю, зачем это делать, просто в голову пришло)
                                                    +1
                                                    Ну да. Потенциально можно несколько сразу повесить на одну шину.
                                                      0
                                                      сам mlx90640 тоже работает по i2c и у него программно свободно меняется i2c-адрес
                                                    0
                                                    А какой угол обзора по вашему будет удобнее? A или B модель брать?
                                                      +1
                                                      Я в посте немного затронул проблему выбора ) А что Вы планируете делать с матрицей?
                                                        0
                                                        Общее применение: «играться». Возможно ручной тепловизор.
                                                        Склоняюсь к узкоугольной камере. Но у вас широкоугольная версия и в принципе изображения меня вроде устраивают.

                                                          +1

                                                          Ну с широкоугольной версией тепловизионную съемку всё-таки не очень удобно. Для того, чтобы посмотреть на конкретный стык между брёвнами, например, нужно приближать матрицу к стене сантиметров на 30...40. Я не имел дела с узкоугольной матрицей, но мне кажется, что для этой задачи она подошла бы лучше.

                                                      0
                                                      Для повышения детализации можно использовать систему с двумя камерами. Первая камера, в нашем случае, это тепловизионная матрица, которая даёт информацию о цвете, а вторая — ч/б камера с более высоким разрешением, которая даёт детализацию. Подобная схема, например, используется в некоторых флагманах Huawei.
                                                        0
                                                        Да, я тоже подумываю об этом. Нужно подобрать камеру с углом обзора немного большим, чем у тепловизионной матрицы и поставить их на одно основание. Потом можно будет снимать с них кадры последовательно и обрабатывать изображения совместно в том же OpenCV.
                                                          0
                                                          А на каком расстоянии эта штука вообще работает, ее есть смысл ставить например на коптер? нашел только temperature range, расстояния нет, может проглядел(
                                                          Мысль о совмещении изображений с двух камер — записал, надо подумать.
                                                            0
                                                            Ну конкретно этой матрицей нужно смотреть начиная с метра от объекта, лучше ближе. То есть на коптер её, пожалуй не поставишь. Более узкополосная, наверное, уже может и подойти. Единственное, коптер находится в постоянном движении, а матрица шумит. Будет сложно поймать качественное изображение. Так что для коптера лучше посмотреть на более дорогие варианты, пожалуй.
                                                              0
                                                              Есть же стабилизированные подвесы. Как бы коптер не колбасило, камера держится четко.
                                                                0
                                                                Ну, может ближе к лету коптером разживусь, тогда попробую )
                                                              0
                                                              Расстояние ограничено только распространением ИК-лучей, т.е. по факту как свет. Но широкий угол камеры… делает все объекты очень маленькими с расстоянием, и можно вспомнив математику посчитать на каком расстоянии милиметровый-сантиметровый-метровый объект станет одним пикселем, с коптера возможно будут различимы отдельные дома, теплотрасса и т.д.
                                                              32 пикселя на 110 градусов, и 32 пикселя на 55 градусов. Разрешение так себе, в первом случае почти по 3.4 градуса на пиксель. Вспомним геометрию… h = sin(3.4 deg)*L где L — расстояние до объекта, h — эквивалентная высота на один пиксель.
                                                              С расстояния 1 метр, имеем… почти 6 сантиметров на пиксель! 100 метров — 6 метров пиксель. Для второго варианта в 2 раза меньше. Вот и прикидывайте.
                                                                0
                                                                Так и есть.
                                                          +3
                                                          У кота теплоизоляция нарушена, утечка тепла.
                                                            +1
                                                            По сравнению с людьми у него всё в порядке ). Шесть препятствует теплоотводу.
                                                            0
                                                            Это же штатный теплоотвод.
                                                              0
                                                              Теплохранилище )
                                                            +1
                                                            У Sparkfun есть более простая реализация подобного устройства. Соответственно, и китайские клоны имеются.
                                                              0
                                                              Да, видел их. В модулях от Sparkfun распаяны только сами сенсоры, соответственно, доступ только напрямую, насколько я понял. Кстати, на ali они существенно дороже: ru.aliexpress.com/item/qwiic-MLX90640-55-FOV-110-FOV/32920041326.html

                                                              Есть библиотеки на Ардуино для таких модулей, но проблема в том, что я не пишу на Си, и осваивать ради одной задачи не хотелось. Мне проще было написал свой код на питоне.
                                                              0
                                                              Так вроде все уже сделали задешево до нас
                                                              Минималистично, компактно и удобно для обследования дома если)
                                                                +1
                                                                Посмотрите на разрешение матрицы у этого продукта. 8 на 8 пикселей всего. Сомневаюсь, что с этим можно на практике как-то работать.
                                                                  0
                                                                  конечно за 3700р, ожидать чего фантастического не стоит за готовое устройство
                                                                  Но специально подчеркнул, что для обследования дома этого должно хватить.
                                                                    +1
                                                                    Ну, возможно, и хватит. Кому-то и зажженной свечки хватает )
                                                                    0
                                                                    Достаточно давно на хабре был проект ИК-сканера с одноглазым пирометром на один пиксель — просто механическая развертка на обычных сервоприводах. Ну, сканирует минут пять-шесть(там на пиксель приходилось около 0.1сек)… зато сразу разрешение высокое. Можно наверно даже панорамный скан делать.
                                                                      0
                                                                      Это вот этот? habr.com/post/172947
                                                                        0
                                                                        Да, похоже она.
                                                                          0
                                                                          Ну, если верить скриншоту интерфейса, то максимальное разрешение всего 64 на 48 пикселей. Не особо выдающееся разрешение, надо сказать. prntscr.com/m71nsw
                                                                            0
                                                                            Ну, это скорей вопрос применённого датчика, в его быстродействии. быстрее одного измерения на пиксель не получить никак.
                                                                              0
                                                                              Согласен.
                                                                              0
                                                                              Я вот думаю, что если не коболометрический датчик поставить а PIR-сенсор с датчиков движения, они ведь быстрее(где-то видел даташит на них, время реакции соответствует 30...100Гц) и аналоговые. Температуру в 20...30 градусов точно видят, хоть и измерить её не выйдет — только интенсивнось излучения. Проблема только в оптике.
                                                                                0
                                                                                Пусть будет 100 Гц, даже в этом случае картинка 32 на 24 (это 768 пикселей) будет сканироваться минимум 7,68 секунд.
                                                                                  0
                                                                                  Обычно никто и не спешит.
                                                                                0
                                                                                И даже для 1-пиксельной камеры нужен качественный объектив, чтобы угол обзора был минимальным. У того датчика угол достаточно большой и получается что он ни чем не лучше, каждый пиксель получается достаточно крупный по геометрическим размерам. 90640 датчик лучше в этом плане, пиксели «маленькие» и разрешение можно увеличить механической разверткой. В идеале найти еще более длиннофокусный объектив для дальнего ИК диапазона, а это редкая вещь.
                                                                      0
                                                                      Экономический эффект есть или просто «потому что могу»? Спрашиваю, потому что сам когда-то посматривал на тепловизоры и сложилось впечатление, что за примерно $100 можно уже купить приличное решение.
                                                                      Указанные компоненты, как я понимаю, стоят $80+. Или есть дешевле?
                                                                        +1
                                                                        Я сравнивал со стоимостью тепловизионного обследования дома. По Москве это от 5 тыс. рублей как раз. Но за эти деньги покупаешь только картинки, которые специалист тебе наделает за часовой визит со своего тепловизора. А в моем случае 5 тыс. рублей + несколько часов кодинга позволили сделать свой любительский тепловизор. Как понять здесь экономический эффект? )

                                                                        Дешевле компонентов с подобными характеристиками я не нашёл. Есть матрицы 8 на 8 пикселей, они стоят в районе 2 тыс. руб. Но сомневаюсь, что они дадут удобоваримую картинку.
                                                                          0
                                                                          Можно и дешевле по, упомянутому выше, методу сканирования.
                                                                          habr.com/post/172947
                                                                          image
                                                                            0
                                                                            Достойный проект. Но, боюсь, что для задачи тепловизионного обследования дома он слабо применим. На скриншоте видно, что получение картинки 32 на 24 пикселя занимает 1,5 минуты. Описанная в моем посте матрица позволяет формировать картинку с таким разрешением в реальном времени (у меня получилось 4 fps).
                                                                              0
                                                                              Конечно это имеет ограничения и пригодно больше для случая одноразового применения.
                                                                            0
                                                                            А почему бы для этих целей не взять в аренду тепловизор? Не очень разбираюсь в этом вопросе, поэтому вопрос пракитческий, вот, например Fluke Ti 27 в сутки обходится в 3 000₽.
                                                                              +1
                                                                              Ну, это не интересно )
                                                                          0
                                                                          Занимаюсь похожим сенсором AMG88 от панасоник. 8 на 8 пикселей но немного дешевле.
                                                                            0
                                                                            Да не «немного», а гораздо дешевле )
                                                                            0
                                                                            Какой библиотекой пользуетесь для sinc-интерполяции?
                                                                              0
                                                                              OpenCV. Вот строчки кода, первая формирует цветную тепловую карту из черно-белой, вторая растягивает из 32х24 в 320х240:

                                                                              img = cv2.applyColorMap(ta_img, cv2.COLORMAP_JET)
                                                                              img = cv2.resize(img, (320,240), interpolation = cv2.INTER_CUBIC)
                                                                                0
                                                                                Кубическая интерполяция не лучший выбор для малого числа пикселов: неравномерное разрешение в зависимости от ориентации матрицы, дрожание и занижение значений на краях, так что о честных количественных значениях можно забыть. Кстати, какой эквивалентый размер пиксела получается? Оптическая схема не описана.
                                                                                  0
                                                                                  Возможно. А какой тип интерполяции лучше использовать?

                                                                                  Странно, размер пикселя почему-то в документации не могу найти.
                                                                                    0
                                                                                    Его редко пишут, обычно запрашивать надо, ну или мерить. Чтобы узнать размер пикела и построить аккуратный kernel, нужно знать и pixel size (сщбственно сторона пиксела) и pixel pitch (расстояние между центрами пикселов). Для эквивалентного размера пиксела нужно знать ещё параметры оптической системы: фокусное расстояние и апертура (f/D) плюс длина волны светофильтра. Тогда, после калибровки, можно иметь количественные данные.
                                                                                    EDIT А на вопрос так и не ответил :) Sinc-интерполяцию, лучше всего по Unser. Я пока не могу найти реализацию, написанную прямыми руками, да и у меня написать не получается.
                                                                                      0
                                                                                      Спасибо за подробный ответ. Если честно, я не вижу на сенсоре оптической системы. Есть только отверстие, а под ним плоская матрица. Диаметр отверстия около 2 мм. Т.е. размер пикселя грубо 50...60 мкм получается.
                                                                                        0
                                                                                        Если под пластиковым тубусом плоская линза, то разрешение обсчитывается как камера-обскура с очень большим отверстием. А если пластик снимается, я б таки сунул под микроскоп с измерительным окуляром или сфоткал рядом с объект-микрометром. Хотя и так понятно, что разрешение никакое: угол, откуда дует, найти можно, а вот саму щель уже нет.
                                                                                          0
                                                                                          К сожалению, не располагаю таким оборудованием (
                                                                                            0
                                                                                            Можно камеру к углу приблизить и найти щель. При наличии тепловизора в высоким разрешением к щели, конечно, не требовалось бы подходить.
                                                                                              0
                                                                                              Так и есть. Но ещё оптимальное расстояние до объекта наблюдения зависит и от угла зрения матрицы, конечно.
                                                                                0
                                                                                Интересная статья. Я всё задаюсь вопросом. Можно ли будет получить картинку инфракрасного сравнивая изображения двух камер, предварительно разделив световой поток на два и пропуская один из них через светофильтр?
                                                                                  0
                                                                                  Если я правильно понял, то Вы предлагаете такую схему:
                                                                                  объектив -> светоделитель ->
                                                                                  -> светофильтр (750nm longpass) -> матрица1
                                                                                  -> матрица2

                                                                                  То скорее всего получится, у почти всех матриц до 1000нм ненулевая чувствительностьность
                                                                                    0
                                                                                    Только это будет ближний ИК, а тепловизор работает в дальнем.
                                                                                    +1
                                                                                    Спасибо )

                                                                                    Это будет сделать весьма затруднительно. ИК спектр тела при комнатной температуре (ну или близкой к ней) имеет максимум спектральной плоскости в районе 10 мкм. Обычное стекло плохо пропускает такие длины волн. Насколько я помню, на дорогих тепловизорах в оптических системах используется германиевая оптика. Она очень дорогая.

                                                                                    Ну и сами датчики тоже должны иметь максимум чувствительность на таких длинах волн. Видимый свет (400...560 мкм) и ИК излучение (10 мкм) — это просто разные датчики.
                                                                                      0
                                                                                      Селенид и сульфид цинка, кремний, германий, арсенид галлия, полиэтилен и соль прозрачны в ИК. Линзы ZnSe достаточно дешёвые на ebay.
                                                                                        0
                                                                                        Да, судя по внешнему виду на дешевых тепловизорах стоят линзы из селенида цинка
                                                                                          0
                                                                                          У Flir точно нет — кремниевое окно в корпусе и германиевая (или арсенид галлиевая? забыл.) линза лептона. У Seek Thermal вроде как халькогенидное стекло (но не точно). Что у китайцев — не знаю. :)
                                                                                            0
                                                                                            Слушайте, у Вас просто профессиональные познания в тепловизорах )
                                                                                              +2
                                                                                              Нет. Просто когда я выбирал, на чём бы сделать прибор ночного видения, я много статей читал. Кстати, у китайцев появился очень неплохой HT-18. У него приличное разрешение и цена, как у Flir One Gen 2. Но есть непонятки с типом матрицы. Дело в том, что тепловизор, обычно, делают на базе микроболометров, а они очень дорогие и сложные в изготовлении. Но есть ещё подарок судьбы — сегнетоэлектрический датчик. Такое часто ставят в системы ночного вождения автомобилей. По цене они гораздо дешевле болометров, но более шумные. Есть большое подозрение, что в HT-18 как раз такой датчик. А у Flir точно микроболометры. Лептон вообще прикольная игрушка. Он настроен на гиперфокалку (так как матрица маленькая) и не требует фокусировки, начиная с сантиметров 10-15 от себя. И легко подключается по SPI хоть к Raspberry Pi, хоть к STM. Только для 160x120 частота SPI нужна около 20 МГц — у него данных много передаётся в кадре.
                                                                                              А выглядит на Raspberry Pi так:


                                                                                                0
                                                                                                Реально крутая штука. Качество изображения на порядок выше, чем у моей матрицы. У неё даже на 4 fps шум очень заметен. Буду иметь в виду. Если руки дойдут до более продвинутого тепловизора, стоит ориентироваться на предложенный Вами сенсор.
                                                                                    –3
                                                                                    Крутая статья!
                                                                                    Достаточно коротко и всё по делу.
                                                                                    Хотелось бы нажать вверх, но есть одно
                                                                                    но...
                                                                                    image
                                                                                    0
                                                                                    Гм, я там же купил готовый тепловизор с таким же разрешением. 7 тыр стоил. Это явно дешевле даже чем датчик за 5 + Pi + экран + корпус. А за 12 были с комбинированной камерой — теплвая + обычная.
                                                                                      +1
                                                                                      А ссылочкой не поделитесь?
                                                                                      +1
                                                                                      Если брать только сам сенсор выйдет дешевле чем у китайцев. Голая картинка не интересно — к распберри нужно ещё подключить обычную камеру и складывать картинки.
                                                                                      Видео как-то на одном эвенте от TI штуку собранную ребятами из DigiKey — сенсор от Flir и DLP проектор от TI — направляешь на объект и он на него же проецирует картинку. Классно использовать для обследования помещений — прямо на стене видишь точное место куда тепло уходит.
                                                                                        0
                                                                                        Да, интересно решение — тепловизор + DLP. Насчет складывания картинок подумываю как раз. В Распберри можно сразу обрабатывать их в лёт и выводить как душе угодно.
                                                                                        0
                                                                                        Я год назад покупал, протухла ссылка. Но и сейчас нашел за 7806,94, ссылку на дам, ибо модерация, а вот название — «HT-175 Imager Цифровой Инфракрасный Тепловизор инфракрасный термометр-20-300 градусов 32X32». Им нормально исследовать утечки тепла или нагрев проводки изнутри дома, но снаружи целиком дом видно плохо — непонятно, что где, тут лучше брать в двумя камерами — типа HT-02D. Вот, кстати, новые появились — приставки к смартфонам — HT-102, типа FLIR ONE, но похуже, конечно. С двумя камерами и 7225р. «HT-102 мобильный телефон внешний Инфракрасный Тепловизор инфракрасный Камера термометр Android телефон OTG функция с адаптером»
                                                                                          0
                                                                                          Прикольный аппарат. Да и приставки к телефону неплохи. Но мне изначально захотелось с модульным решением поэкспериментировать. Его можно потом будет еще куда-нибудь прикрутить, например, на дрон поставить. А сам по себе тепловизор можно использовать только как тепловизор.
                                                                                          0
                                                                                          ужас, у первой ракеты воздух-воздух было всего 5 пикселей
                                                                                          ru.wikipedia.org/wiki/AIM-9_Sidewinder
                                                                                            +2
                                                                                            Это просто песня )))

                                                                                            «В ходе этого конфликта (Тайвань — Китай, 1958 год) произошёл чрезвычайно удачный для СССР случай: AIM-9B «Сайдуайндер» попал в китайский МиГ-17, но не взорвался, застряв в фюзеляже[20].

                                                                                            »Внутренности" ракеты были залиты специальным клеем и для извлечения начинки были привлечены якутские косторезы, которые смогли вырезать блоки управления не повредив ни одного проводка.

                                                                                            Советские конструкторы, изучив «трофей» и воспроизведя её методом «обратной инженерии», запустили в производство советский аналог — К-13/Р-3С (по классификации НАТО — Atoll)[21].

                                                                                            Ракета К-13 состояла на вооружении советских ВВС более тридцати лет. Проведённый в США анализ показывает, что запчасти от ракет К-13 могут использоваться для комплектования оригинальных AIM-9 «Sidewinder»"
                                                                                              0
                                                                                              И механическая развертка вращающимся зеркалом. Можно и тепловизор сделать проще — один сенсор mlx90614 и развертка на двух сервоприводах. Вот статья на Хабре.
                                                                                                0
                                                                                                Да, это устройство упоминалось здесь в комментариях. Проблема в том, что кадр 32 на 24 пикселя он получает за 90 секунд. Ну и требует подключения к стационарному компьютеру ещё.
                                                                                              0
                                                                                              А при ввозе в РФ проблем не будет?
                                                                                                0
                                                                                                У меня не возникло. Но, возможно, тут раз на раз не приходится.
                                                                                                  0
                                                                                                  Уже нет.
                                                                                                  Согласно разъяснению Верховного суда Российский Федерации (далее — ВС РФ), гражданин не может быть привлечён к уголовной ответственности за приобретение технических приспособлений для негласного получения информации или, проще говоря, для слежки, если он намерен использовать их для обеспечения личной безопасности, безопасности своих близких, а также для наблюдения за имуществом и животными. При этом предполагается, что лицо не имеет целью применять «шпионское» оборудование в качестве средства посягательства на конституционные права граждан, передаёт информационное агентство «Интерфакс» со ссылкой на принятое во вторник, 25/12/2018, постановление пленума ВС РФ.

                                                                                                  Кроме того, уголовная ответственность не предусмотрена в отношении тех, кто приобрёл спецсредства через Интернет и не был осведомлён об их истинном предназначении. Как следует из текста документа, речь идёт о случаях, когда устройство для слежки было куплено на общедоступном интернет–ресурсе, рекламировавшим данный продукт как прибор бытового назначения.

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

                                                                                                  Отметим, что статья 138.1 УК РФ (незаконный оборот специальных технических средств, предназначенных для негласного получения информации) предполагает минимальное наказание в виде штрафа в размере до 200 000 рублей, максимальное — лишение свободы на срок до четырёх лет.
                                                                                                    0
                                                                                                    Спасибо за подробное разъяснение.
                                                                                                  0
                                                                                                  На китайском Таобао есть готовое устройство на базе того же сенсора за 500 юаней

                                                                                                  item.taobao.com/item.htm?spm=a230r.1.14.127.7cdc3fa7HMLsAT&id=575683214449&ns=1&abbucket=16#detail
                                                                                                    0
                                                                                                    Спасибо за наводку )

                                                                                                    Готовое не нужно было как раз. Более интересной показалась задача подключить модуль, который потом можно было бы использовать в различных проектах.
                                                                                                    +1
                                                                                                    Лайкнул, даже не заглянув под кат. Офигенный модуль.
                                                                                                    Вопрос. Чем крутить модуль и шить панораму, может, воткнуть несколько штук рядом как матрицу? Я не помню, сколько там адресов одновременно жрет I2C, но чисто теоретически возможно ли получить одну большую картинку?
                                                                                                      +1
                                                                                                      Полагаю, что это вряд ли осуществимо, если расстояние до объекта не задано. Я ранее сталкивался с оптическими системами, собранными из нескольких оптических камер. Они собирали изображение с некоторой поверхности, расстояние до которой неизменно (это светящийся от рентгеновского излучения экран в цифровом приемнике рентгеновского изображения). И там под каждую ПЗС матрицу был свой объектив.

                                                                                                      Думаю, что для ИК матрицы теоретически можно повысить разрешение только если сделать программно какой-то подобие панорамной съемки. На подобие той, которая реализована в смартфонах. Но и в этом случае понадобится скорее всего дополнительно обычная камера. У нее изображение более контрастное, проще будет по нему собирать панорамный снимок. И уже на него накладывать тепловую карту.
                                                                                                      0
                                                                                                      Корпус устройства имеет только четыре вывода — два для питания, два для общения с управляющим устройством по I2C интерфейсу.

                                                                                                      "У кошки четыре ноги — вход, выход, земля и питание" ©

                                                                                                      0
                                                                                                      Какая чувствительность у этих устройств на расстоянии?
                                                                                                      Можно что-то увидеть за 30-40 метров?
                                                                                                        0
                                                                                                        Смотря что нужно увидеть. Конкретно описанная в посте матрица на таком расстоянии человека вряд ли разглядит. Он будет как раз телесном угле одного пикселя. А вот горящее здание — по идее должно.
                                                                                                        0
                                                                                                        А какая стабильность? Насколько уйдет значение скажем после получаса работы?
                                                                                                          0
                                                                                                          По ощущениям значения температуры не плавают (т.е. дрейфа нет). Но шум по изображению довольно большой, видно на глаз.
                                                                                                          0
                                                                                                          Чуть более простой вариант — www.thingiverse.com/thing:2799023
                                                                                                          Матрица 8x8 (amg8833), цена вопроса около 2300 на алиэкспрессе. Сделал, мне понравилось, работает достаточно быстро, для домашних задач вполне достаточно. В прошивке выключил SD, т.к. нет необходимости.
                                                                                                            0
                                                                                                            Да, есть и такой девайс, рассматривал его тоже. Но выбрал более крупную матрицу, чтобы картинка более информативной была.
                                                                                                            0
                                                                                                            Классное направление для поиска задали. Жаль температура датчика лишь 300. Нужно 1500 в максимуме или хотя бы 1200. Наверное, это совсем другие деньги.
                                                                                                            Спасибо за на водку.
                                                                                                              0
                                                                                                              Спасибо за отзыв. Желаю найти нужное Вам решение )
                                                                                                                0
                                                                                                                Нужно 1500 в максимуме или хотя бы 1200. Наверное, это совсем другие деньги.


                                                                                                                Посмотрите закон смещения Вина. :) С такими температурами тело излучает в видимом спектре.
                                                                                                                  0
                                                                                                                  Кстати, да ). Насколько помню, температура каления — что-то в районе 550 град. Цельсия.
                                                                                                                    0
                                                                                                                    Причем если убрать ИК фильтр перед матрицей можно снимать любой камерой практически, начиная с 300 градусов примерно.
                                                                                                                      0
                                                                                                                      Да, обычные оптические матрицы захватывают диапазон примерно до 800...900 нм, насколько помню.
                                                                                                                        0
                                                                                                                        Вот кстати эксперименты с «ближним» ИК диапазоном до 1800 нм, 5 статей по теме

                                                                                                                        habr.com/ru/users/pyhesty/posts
                                                                                                                          0
                                                                                                                          Любопытная информация )
                                                                                                                  0
                                                                                                                  Интересно было бы добавить на платку акселерометр с гироскопом. Тогда проще делать сшивку панорамы не контрастных объектов.
                                                                                                                    0
                                                                                                                    Добрый день! Да, меня тоже посещала такая идея, но пока только в очень абстрактном виде. Вы, случайно, не находили примеры реализации таких сшивок?
                                                                                                                      0
                                                                                                                      Нет, не встречал (но и не искал). Навскидку можно поискать как сшивают панораму микросканером на базе оптического сенсора из мышки.
                                                                                                                      А по поводу гироакселя, то алгоритм, на первый взгляд, достаточно прост. Берем первый кадр и помещаем в центр матрицы. Запоминаем пространственное положение датчика. Получаем следующий кадр с положением. Зная углы наблюдения и разрешение датчика, получаем угловой размер одного пикселя. Зная угол поворота датчика на каждом кадре относительно первого и угловой размер пикселя, получаем смещение этого кадра в нашей матрице по-пиксельно. Естественно, каждый новый кадр нужно не просто помещать в матрицу, а профильтровать по Калману. Кстати, не обязательно переносить кадр на матрицу 1 к 1. Можно 1 пиксель кадра переносить на квадрат матрицы 3х3, но тогда для центрального пикселя этого квадрата коэффициент фильтра Калмана должен быть выше, чем для оставшихся восьми периферийных пикселов. Получится математическое увеличение разрешения.
                                                                                                                        0
                                                                                                                        Понятно. В идеале еще добавлять оптическое изображение, конечно. С таким широким углом (110 градусов), как у описываемой матрицы, все равно картинку даже 320 на 240 собрать будет затруднительно. Более информативно было бы комбинировать что-то вроде этого:
                                                                                                                          0
                                                                                                                          Сейчас у Вас 110/32=3.44 градуса на пиксель. Если сможете определять поворот датчика с точностью до 0.3125 градусов (либо механически наклонять/поворачивать с таким разрешением), то почему нет? Получается, что делая 11 шагов по вертикали и горизонтали, мы можем получить картинку 352х264 за 30 секунд с углом обзора 120х80 градусов.
                                                                                                                            0
                                                                                                                            Т.е. по сути Вы не добавляете пикселей, а делите имеющиеся?
                                                                                                                              0
                                                                                                                              Матрица — это накапливающееся изображение. Представьте себе один большой пиксель датчика, который висит над полем матрицы 5х5 клеток, которые в 5 раз меньше. Значение с датчика перенесите на матрицу таким образом. В центр поля с k=0.5, в ближайших к нему 8 пикселей с k=0.3, в следующий круг (16 пикселей) с k=0.2. После смещения датчика опять находите центр квадрата 5х5 на матрице и заполняете пиксели вокруг него. Так, как применяется фильтрация по Калману, то Вы как бы постоянно уточняете значение пикселей матрицы, при этом центр квадрата матрицы, накрываемого пикселем с датчика, имея наибольший k, получит значение, наиболее близкое к значению с датчика. А чем дальше на периферию от него, тем менее будет влияние нового значения с датчика. Происходит как бы уточнение или «проявление» изображения. Чем больше раз пиксель с датчика пройдет над квадратом матрицы, тем точнее и четче будет изображение. Но отслеживание положения нужно точнее углового размера пикселя матрицы (не датчика).
                                                                                                                                0
                                                                                                                                Понятно, спасибо за объяснение. Но ведь можно также не поворачивать матрицу, а линейно сдвигать её по вертикали и горизонтали на 1/10 пикселя?
                                                                                                                    0
                                                                                                                    Можно вспомнить смартфоны с тепловизорами, типа Cat S61. Я такой держал в руках, очень прикольная игрушка! Но, по словам владельца, это скорее тепловизор со смартфоном, потому что там какой-то совсем китайский андроид на самом дешевом Медиатеке, кривой и косой.
                                                                                                                      0
                                                                                                                      Любопытное устройство. Судя по картинке этот девайс собирает тепловое изображение как комбинацию простого фото с камеры + интерполированная картинка с тепловизионной матрицы не сильно высокого разрешения.

                                                                                                                      image
                                                                                                                        +1
                                                                                                                        Там 60x80 матрица. Но не верьте картинке — сам датчик лучше, чем картинка на экране. Причина — разработчики из Flir сделали всё возможное, чтобы программно испоганить картинку с лептона. А вот нафига — вопрос открытый.
                                                                                                                          0
                                                                                                                          Да, там две камеры рядом. Но это именно тепловизор со смартом. Зато экран хороший и все возможности фотовидео, которые предоставляет смарт, настройка прозрачности картинки и тд тп, сфоткал и через секунду хоть в свиттер запости. Можно настроить так, что обычная картинка едва просвечивает через тепловую, можно наоборот. И модуль тепловизора там не самый плохой, лучше, чем у некоторых пристегиваемых USB-моделей.
                                                                                                                            0
                                                                                                                            Да, судя по изображениям, flir'овские матрицы дают самую чистую картинку.
                                                                                                                          +1
                                                                                                                          Ну, там лептон от Flir с разрешением 80x60.
                                                                                                                          0
                                                                                                                          А может кто-нибудь начать производство тепловизеров? Если да, свяжитесь со мной.

                                                                                                                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                                                                                          Самое читаемое