Самодельный тепловизор на базе Arduino

01Не секрет что каждый из нас хоть раз но мечтал получить в свои руки настоящий тепловизор. Ведь это уникальный шанс взглянуть на мир вокруг совершенно «другими глазами», увидеть скрытое и возможно даже глубже познать суть некоторых явлений. И единственной преградой к этой мечте служит цена подобных устройств. Не смотря на весь прогресс, она остается непомерно высокой для простого смертного.
Однако подобно лучу света в непроглядном мраке безысходности на свет появилась разработка двух студентов из Германии. Их устройство на базе микроконтроллера Arduino является довольно простым в изготовлении и существует аж с 2010 года.
Создателями данного чуда являются Макс Риттер и Марк Коул из города Миндельхейм, что в Германии. Их проект принес им награду на научно-техническом молодежном форуме в 2010 году, и с тех самых пор в сети имеются исходники с подробным описанием конструкции.

02Низкая стоимость устройства достигается благодаря использованию одного-единственного температурного датчика MLX90614, подобного тому, что используются в пирометрах и системы механической развертки изображения, состоящей из двух сервоприводов. Таким образом, датчик по сути обходит будущую картину, точка за точкой сканируя температуру. Само-собой, это выливается в долгое время получения изображения, что и является главным недостатком самодельного тепловизора. Но ведь если вспомнить о том, сколько мы сэкономили на цене, на это глаза сами-собой закрываются.

Итак, из компонентов для создания устройства, понадобится:

  • Старая веб-камера, разумеется, рабочая;
  • Микроконтроллер Arduino;
  • Сервоприводы, 2 штуки;
  • Датчик температуры MLX90614-BCI;
  • Китайская лазерная указка;
  • Корпуса для сервоприводов;
  • Любой штатив (оптимально).
  • Два резистора на 4.7кОм.

 

[sociallocker]

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

Сервоприводы и крепления
К этому моменту тоже можно подступиться с широким размахом. Нам понадобятся 2 сервопривода — один будет отвечать за движение по вертикали, второй по горизонтали соответственно. Учитывая, что на горизонтальном приводе держится и вертикальный и сама веб-камера, стоит взять более мощный. Хотя многие, уже сделавшие устройство спокойно пользуются одинаковыми маломощными.
Крепления для сервоприводов в оригинале называются «поворотно-наклонным механизмом» а у нас «Серво-кронштейном»
В сборе данный элемент конструкции выглядит примерно так:

03Нижний привод крепится к штативу или другому корпусу/подставке туда же надо вставить и лазерную указку, к вертикальному сервоприводу приделывается веб-камера и датчик MLX90614 путем хитрых манипуляций с клеем или деталями от конструктора или например запчастями от старых электросчетчиков (как у меня).

Датчик температуры MLX90614-BCI
Самая сложная часть данной конструкции. Сложная в плане добычи. Найти его непросто (по крайней мере на отечественных сайтах) и он является самой дорогой частью конструкции. Сам я ждал его около двух месяцев, везли видимо из Китая. Подсказать где взять не смогу, ибо ту лавочку уже прикрыли. Автор проекта ссылается на Futureelectronics.
При выборе необходимо обратить особое внимание на последние буквы «BCI» в названии, что означает наличие у датчика насадки для обеспечения узкого поля зрения. Выглядит он так:

04

Сборка тепловизора

1. Для начала необходимо разместить плату Arduino в корпус с батарейным отсеком
2. При помощи суперклея или эпоксидки закрепите серводвигатель в пустом пространстве впереди Arduino.
3. Разместите второй серводвигатель в поворотное устройство и закрепите всю конструкцию на серводвигателе.
4. Теперь, необходимо подключить MLX90614 к Arduino. Для этого подсоедините Ground к GND, Vin к 3.3V, SDA к pin 4 и SCL к pin 5. Также, установите резистор 4.7 кОм от SDA к 3.3V, а второй от SCL к 3.3V. Смотрите схему ниже.

055. Подключите Laser Card или лазерную указку. Лазер нужен для того, чтобы вы могли видеть, где в настоящий момент сканирует тепловизор.
6. После, необходимо установить вебкамеру и сориентировать ее точно с ИК датчиком и лазером, чтобы они были направлены в одну и ту же точку. На этом сборка тепловизора закончена.

Скетч для Arduino и программное обеспечение для работы с тепловизором можно скачать здесь:
Официальная страница проекта
Программное обеспечение (на JAVA)
Скетч для микроконтроллера
Также хочу обратить внимание, что авторы указывают на необходимость дополнительной настройки датчика при помощи специального скетча, что вроде как должно ускорить работу устройства. Однако в моем случае, датчик после конфигурации стал выдавать ложные значения температуры и я сделал откат.
После сборки всей схемы, ее можно поместить в корпус, и закрепить на штативе:

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

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

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

08Сегодняшнее ПО поддерживает всего два типа разрешения будущей картинки, в то время, как прошлая версия была богата на это дело, насчитывая шесть разных разрешений. Особенно было забавно получать сильно «пиксельные» картинки за 15 секунд. Думаю, разработчики осознали ненужность остальных режимов и убрали их, хотя программно они остались и могут быть активированы.

Результаты на десерт
Приведенные термограммы в различном разрешении.

Как греется нетбук:

09Кот:

10Старый счетчик:

11Новый щит:

12

Окно:13Мой друг в темной комнате перед компьютером:

14Применение
Из-за большого времени сканирования, данный прибор не подходит для проведения энергетического аудита (по крайней мере, для профессионального применения), этот вопрос рассмотрен в этой Статье (Англ.).
Тем не менее, как мне кажется он мог бы стать отличным подспорьем для проверки на нагрев электрических соединений и силовых сборок. В моей практике (а я подрабатываю электриком) иногда использую этот тепловизор для оценки надежности соединений. Пирометр в данном случае проигрывает в наглядности.

Неудобства в работе связаны с жесткой привязкой прибора к компьютеру и необходимости всегда таскать нетбук. Какое-то время авторы вели разработку второй версии своего тепловизора, которая позиционировалась как обособленное устройство с другим датчиком температуры (который кстати использован в этом проекте) с собственным дисплеем и возможностью записи на карту памяти. Но к сожалению, как признался Макс Риттер, у него нет времени на завершение проекта.
В общем, дальнейшее развитие идеи лежит на плечах любителей и умельцев. Буду рад любым предложениям по доработке/усовершенствованию конструкции.
Спасибо за внимание!
Официальная страница проекта (Англ.)

[/sociallocker]

 

0
Авторизация
*
*
Регистрация
*
*
*
Генерация пароля
%d такие блоггеры, как: