Автор из Варшавы разработал инфракрасный термометр с датчиком MLX90614, семисегментным дисплеем HP QDSP-6040 и микроконтроллером ATtiny2313 MCU. Датчик позволяет измерять температуру в диапазоне: -70 — 380 ° С. Микроконтроллер ATtiny2313 связывается с датчиком по шине SMBus.

Измеренное значение температуры отображается на дисплее.

Ток на один сегмент дисплея настроен на 4.67 мА, поэтому дисплей можно легко подключить непосредственно к MCU.



В первом решении в качестве источника питания использовался аккумулятор ML2020



Но затем автор заменил его на аккумулятор емкостью 200 мАч с зарядным модулем TP4056



Корпус ИК термометра изготовлен из эпоксидной смолы



Схема ИК термометра показана на рисунке выше


Демо ролик, показывающий работу ИК термометра

Ссылка на файл-исходник для ATtiny2313 MCU.

Комментарии (35)


  1. Andy_Big
    29.04.2019 10:40

    Я правильно понял смысл статьи — «Автор осилил даташит на датчик и работу с 7-сегментным индикатором»? :)


    1. adlerm
      29.04.2019 10:45

      Еще I2C


    1. Capacitor10n
      29.04.2019 10:59

      Лишь отчасти, вот истинный смысл:
      «Автор совершил невозможное — он не использовал Arduino для создания столь сложного устройства» :)


      1. Andy_Big
        29.04.2019 11:05

        Судя по схеме и фото, он использовал то, что лет 15 лежало у него в ящике с этикеткой «Мусор, но выкинуть жалко» :)
        Но да, отсутствие ардуины делает этот проект хоть как-то примечательным :)


  1. adlerm
    29.04.2019 10:43

    Ссылка на файл с прошивкой для ATtiny2313 MCU

    Не с прошивкой, а с исходниками… самой прошивки в архиве нет.


    1. dkkislov Автор
      29.04.2019 10:51

      Поправил, спасибо!


  1. sav13
    29.04.2019 12:53

    А что за индикатор такой?
    На старый советский похоже, который в часах и калькуляторах был


  1. kt819a
    29.04.2019 14:09
    +1

    Чтобы через эпоксидную смолу меньше видны были потроха можно было бы добавить красителя. Из доступного дома пробовал зеленку и чернила из гелевых ручек.
    Насколько данный термометр пригоден для поиска горячих мест на плате?


    1. dkkislov Автор
      29.04.2019 14:10

      Судя по диапазону измеряемых температур — вполне подходит.


      1. Andy_Big
        30.04.2019 08:56

        А судя по углу зрения этого датчика — не очень.


        1. holomen
          30.04.2019 18:38

          Судя по корпусу, применен датчик с углом 10градусов. А есть модификация и с 5градусами. Если не пытаться выцелить 0603 и меньше, то наверное и получится с небольшого расстояния.


          1. Andy_Big
            30.04.2019 19:02

            А судя по даташиту угол 70 или 80 градусов.


            1. holomen
              30.04.2019 19:23

              это у голого. а тот что на картинке — 10 (или 12) — похож на BCC. за это отвечает третья буква в маркировке. Хотя могу и ошибаться, конечно.


              1. Andy_Big
                30.04.2019 21:18

                Посмотрел — действительно тут с насадкой. Только на 35 градусов. На 5 градусов насадка раза в три длиннее :)


                1. holomen
                  30.04.2019 22:45

                  и во столько-же раз дороже ))


                  1. Andy_Big
                    30.04.2019 22:51

                    Неудивительно :)


    1. Capacitor10n
      29.04.2019 14:19

      Хм, а я и не подумал об этом, все на тепловизоры облизываюсь…
      спасибо за пендаль, на днях сколхожу, точнее как датчик приедет)


    1. saege5b
      30.04.2019 01:31
      +1

      Мел, серебрянка, тонер, принтерная краска, акварельные краски, гуашь, гипс, цемент :)
      Малое из того, что можно запихать в эпоксидку.
      А можно просто тряпочки обмазывать.


  1. eb87
    29.04.2019 14:09
    +1

    На сколько хватает аккумулятора ML2020?


    1. dkkislov Автор
      29.04.2019 14:14

      Аккумулятор ML2020 имеет ёмкость 45 мА/ч. На несколько часов хватает. Но автор был не доволен этим результатом, и в дальнейшем использовал более мощный аккумулятор ёмкостью 200 мА/ч.


  1. red_dragon
    30.04.2019 05:17
    -1

    Ток на один сегмент дисплея настроен на 4.67 мА...
    Это прям сильно. В последнее время, на Хабре, да и не только, всё больше становится статей, авторы которых не разбираются в предмете повествования от слова совсем. Но хуже всего, ещё и не сильны в языке, на котором излагают то, в чём не разбираются. Печально.


    1. dkkislov Автор
      30.04.2019 08:36

      Уточню: я перевел статью, а не написал. Привожу текст в оригинале: «Current per single segment of display is configured to 4.67 mA, so display can be easily driven directly from MCU». Если у автора есть приборы с цифровой индикацией, то в чём проблема, почему нельзя установить ток с точностью до второго знака?


      1. Andy_Big
        30.04.2019 08:55
        +1

        Просто светодиоды — это «слегка» нелинейные приборы и для поддержания на них тока с точностью 0.01 мА нужен соответствующий токовый драйвер :) А на просто ограничительном резисторе и без стабилизации питания ток там будет плавать +-50% в зависимости от питающего напряжения и температуры :)


        1. dkkislov Автор
          30.04.2019 09:08

          Скорее всего автор для этого и применил TP4056.


          1. Andy_Big
            30.04.2019 09:13

            Эта микросхема — только для зарядки литиевого аккумулятора, который он поставил во второй версии :)


            1. dkkislov Автор
              30.04.2019 09:36

              Привожу data sheet на индикаторы линейки. Максимальный ток на один элемент: 5 мА. Автор чуть его уменьшил.


              1. Andy_Big
                30.04.2019 10:04

                Ну вот и смотрите: падение напряжения на сегменте — 1.6 вольта, при напряжении питания 3 вольта и ограничительном резисторе 300 Ом ток будет примерно 4,67 мА. Да и тот будет плавать во втором (а то и первом) знаке после запятой от сегмента к сегменту и от температуры индикатора. При снижении напряжения до 2.9 вольт ток уже будет 4,33 мА. При снижении питания до 2.5 вольт (а это очень быстро наступит у ML2020) ток будет уже 3 мА. Ни о каком втором знаке после запятой говорить не приходится :)
                Вообще эта поделка интересна только в плане «Что-то скучно, попаяю-ка я что-нибудь как-нибудь из чего-нибудь». И все, больше в ней ничего интересного нет :) Никаких заслуживающих внимания схемных, конструктивных, функциональных или программных решений.


      1. red_dragon
        30.04.2019 11:57

        Проблема в том, что хороший, грамотный перевод литературного источника состоит в осмыслении изложенного автором, с последующим донесением этого самого смысла до конечного читателя, на родном языке последнего, наиболее близко к исходному тексту. А если исходная статья написана не особенно грамотно, то и в попутном исправлении ошибок, насколько это возможно. Для этого, опять же, необходимо разбираться в предметной области более чем. В противном случае, не стоит браться за перевод вообще.
        Кстати, судя по статье (если это можно обозвать таковой), автор переводил с польского на английский через тот же Google Tarnslate. Дальнейшего гуглоперевода, с английского на русский, этот текст не пережил вообще, что не удивительно.
        То, что у автора есть приборы с цифровой индикацией (кстати, непонятно, индикацией чего? Температуры?), не значит абсолютно ничего. Вне зависимости от типа индикации, у каждого прибора есть свой предел погрешности измерения. Но больше всего, непонятно, откуда взялись эти 4.67 мА. Видимо это номинальный ток потребления индикатора QDSP-6040 на один сегмент в соответствии с Datasheet, который мне по быстрому найти не удалось.
        Что значит установить ток до второго знака, я не понимаю в принципе, применительно к данной схеме. Да и вообще…


        1. Andy_Big
          30.04.2019 13:32

          непонятно, откуда взялись эти 4.67 мА

          Из расчетов для идеальных условий :) Питание — 3 вольта, падение напряжения на сегменте — 1.6 вольта (типичное), ограничивающий резистор — 300 Ом. Получается (3-1.6)/300=0,0046666 А.


  1. MikeVC
    30.04.2019 07:18
    +1

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


  1. Phil_itch
    30.04.2019 11:41

    Из статьи интересен дисплей, я его найти в продаже не смог или похожий HP QDSP 6064 =(.


    1. dmitryrf
      30.04.2019 16:59

      Отечественный аналог — АЛС311, но его тоже найти трудно.


    1. seri0shka
      03.05.2019 14:28

      Тоже открыл для себя индикатор 6064 (не знал о нём раньше), давно ищу себе что-то подобное, всё в страшном дефиците, и по заоблачным ценам. Этот тоже.


  1. mpa4b
    30.04.2019 21:12

    Я как-то имел дело с эталонной вольфрамовой лампой, там была такая ленточка из вольфрама, надо было подать определенный ток, она нагревалась до определённой температуры и светила, и далее надо было смотреть в таблицу, где показывалось отличие излучения этой лампы от спектра абсолютно чёрного тела (далее АЧТ) в её рабочем диапазоне длин волн. Это я к чему — у АЧТ по яркости излучения в диапазоне, фиксируемом ИК диодом, однозначно определяется температура. Но АЧТ — это абстракция (хотя к ней можно приблизиться специальными методами), а предметы вокруг нас — ни разу не АЧТ и у каждого своя 'неидеальность', а следовательно и своя погрешность при измерении температуры при помощи ИК диода.

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


    1. Andy_Big
      30.04.2019 21:21

      Вводят коэффициент излучения. У пирометров, где этот коэффициент нельзя изменять в настройках, он по умолчанию равен что-то около 0.92, ЕМНИП. Поэтому брешет он почти на всем, но с разной степенью :) Голый алюминий, например, им вообще бесполезно мерить — будет показывать погоду на Марсе.