Термометр с подключением к компьютеру

Обновлено: 07.07.2024

Цифровой термометр ВМ1707 осуществляет измерение температуры и термостатирование с возможностью передачи данных через интернет. Приведены описание и общий вид устройства, электрическая схема и рекомендуемое расположение элементов на печатной плате.

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

Устройство ВМ1707 полезно для применения в быту, дома, на даче, в бане. С его помощью можно производить измерения температуры окружающей среды, контролировать рабочую температуру морозильников и холодильных установок, управлять различными нагрузками в автономном режиме, протоколировать измеренную температуру, формировать файл с текущими показаниями в HTML-формате (т.е. контролировать текущую температуру и состояние нагрузок через Интернет), управлять нагрузкой с помощью командного файла.

Описание устройства

Общий вид печатной платы устройства представлен на рисунке 1. Электрическая принципиальная схема термометра приведена на рисунке 2. В таблице 1 указаны технические характеристики ВМ1707.



Табл. 1. Технические характеристики

Напряжение питания, В

3,6…5 (от шины USB либо внешнего источника питания)

Ток потребления не более, мА

Диапазон измеряемых температур, °С

Штатный температурный датчик

Допустимое количество датчиков**

(при желании докупаются отдельно)

До 32 датчиков типа DS18B20, DS18S20, DS1820 или DS1822

Количество каналов управления нагрузкой**

Размеры печатной платы, мм

* зависит от количества подключенных датчиков

** дополнительные датчики температуры и исполнительные устройства при необходимости приобретаются и подключаются самостоятельно

Центральная часть устройства — микроконтроллер ATtiny45, работающий на частоте 16,5 МГц. Датчики подключаются через разъем J2 параллельно друг другу. Устройство может работать как в автономном режиме (контроль текущей температуры и управление приборами), так и под управлением специализированной программы для персонального компьютера.

При подключении к ПК напряжение питания подается через USB-порт J1. В автономном режиме работы — через разъем J2.

Температурный сенсор DA1 размещен на плате устройства. Электронные компоненты вблизи датчика могут незначительно нагреваться при работе. Также на точность измерения влияет защитная термоусадочная оболочка, поэтому возможны небольшие погрешности измерения температуры (не более 0,5°С). Более точное измерение обеспечивается применением внешних датчиков температуры. Их можно приобрести дополнительно и подключить согласно схеме, приведенной на рисунке 3. Рекомендуемая длина соединительной линии — не более 100 м. При близкой к предельной длине линии следует использовать качественный провод: витую пару 5 категории. При наличии электромагнитных помех желательно, чтобы кабель был экранирован.


В автономном режиме работы устройство не требует подключения к компьютеру и питается от любого сетевого адаптера 5 В с разъемом USB. В качестве источника питания можно использовать стандартные литиевые элементы с напряжением 3,6…5 В, подключенные к выводу Vdd разъема J2. Через этот же разъем может быть реализовано управление внешней нагрузкой, например, используя исполнительный элемент BM146 либо другое аналогичное устройство, собранное самостоятельно.

Считанные датчиками данные можно отслеживать с помощью специальной программы (см. рис. 4) или через интернет.


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


Когда лазил по инет магазинам, то на глаза попался USB термометр, захотелось попробовать приспособить его для контроля температуры в помещении (дома у меня работает датчик температуры по СОМ порту с далласовским датчиком).
Ну в общем заказал, получил, распечатал.
Фото того, что пришло.


Небольшой блистер, устройство похожее на флешку, в общем ничего особенного на вид.


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


Первое что показалось необычным, вес. Устройство в металлическом корпусе и довольно увесистое, после флешки заметна разница, стало любопытно и решил взвесить.

Качество фото не очень, вес устройства 13 грамм.

Естественно непроверенное устройство никто в сервер включать не собирается, потому сначала решил проверить его дома.
Поставил ПО, вставил термометр в USB порт.
Запустилось все с пол пинка, никаких драйверов ставить не пришлось (единственное, в системе должен быть установлен net framework, программа просит 3.5, реально работает с 3.0), настройки тоже не понадобились, просто включил, запустил ПО и получил показания температуры. На упаковке термометра была заявлена поддержка основных распространенных ОС, проверялось на windows XP. При первом запуске ПО без датчика, оно показывает 2 температуры, внутри и снаружи, скорее всего можно поставить пару таких датчиков и контролировать температуру в двух местах.


Рабочее окно программы.

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


Через 6-7 минут температура поднялась немного выше, видимо сказывается самопрогрев датчика, таким иногда грешат и Далласовские датчики, особенно при высокой частоте опросов.

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

Естественно захотелось разобрать данное устройство, думал будут проблемы, оказалось что достаточно сильно потянуть за разъем и устройство разделилось на 2 части, плата с разъемом и компонентами и металлический корпус.


Принес датчик на работу, подключил, настроил. Ниже описание отображенного на скрине безобразия.

Датчик расположен недалеко от спиртового термометра, который показывает 19-20 градусов (колебания от режима работы кондиционера), видно что температура упала до примерно 28.38, стало любопытно, что будет без корпуса, на второй части графика (после подъема) видно что температура установилась на том же значении, не помогли даже магические свойства синей изоленты, которой я в один слой изолировал плату датчика, сходил в серверную еще раз, снял изоленту, вставил плату обратно корпус, в итоге имеем почти то же, что и до всех экспериментов.


Формат сохранения данных, частота опроса.


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


Калибровка показаний и формат вывода значений температуры.


Язык ПО, к сожалению только китайский или английский, хотя настройки настолько простые, что можно на это не обращать внимания.

Есть еще вкладка цвет — цвет фона окна с графиком и вкладка автозагрузки ПО.

ПО позволяет отсылать уведомления используя MSN, электронную почту или Скайп. Так же присутствует отображение окна с графиком и окна с логом измерения температур.

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

Плюсы.
Устройство работает
При установке проблем не обнаружено.
ПО вполне удобно и интуитивно понятно.

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


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

Этот небольшого размера модуль, подключаемый к компьютеру через USB, поможет Вам контролировать температуру в различных точках дома: в комнате, аквариуме, на улице, в кладовке или батареи отопления.

Всё больше электронных приборов окружает человека, всё разумнее и доступнее они становятся, и мы всё больше и больше полагаемся на них. Они облегчают нам жизнь, делая её более комфортной. И одним из критериев комфортности является окружающая нас температура. И незаменимым помощником для поддержания её нужного значения может стать для Вас электронный блок MP707 (новая модель MP707mini>).

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

Мастер Кит USB цифровой термостат-термометр MP707 USB цифровой термостат-термометр MP707

Рис.1. Общий вид устройства.

Рис.2. Электрическая принципиальная схема.

Технические характеристики:

  • Напряжение питания, В 3,6…5 (от шины USB либо внешнего источника питания)
  • Ток потребления не более, мА 30*
  • Диапазон измеряемых температур, С -55…+125
  • Штатный температурный датчик DS18B20
  • Допустимое количество датчиков (при желании докупаются отдельно)** До 32 датчиков типа DS18B20, DS18S20, DS1820 или DS1822
  • Количество каналов управления нагрузкой** 2
  • Точность ±0,5°С
  • Размеры печатной платы, мм 38x15

* зависит от количества подключённых датчиков

** дополнительные датчики температуры и исполнительные устройства при необходимости приобретаются и подключаются самостоятельно

Центральная часть устройства – микроконтроллер ATtiny45, работающий на частоте 16.5 МГц. Датчики подключаются через разъем J2 параллельно друг другу. Напряжение питания подаётся через USB-порт J1, либо (в автономном режиме работы) подаётся к разъёму J2.

Устройство может работать как в автономном режиме (контроль текущей температуры и управление приборами), так и под управлением специализированной программы для персонального компьютера.

Температурный сенсор DA1 размещен на плате устройства. Электронные компоненты вблизи датчика могут слегка нагреваться при работе, также на точность измерения влияет защитная термоусадочная оболочка, поэтому возможны небольшие погрешности измерения температуры (не более 0,5С). Более точное измерение могут обеспечить внешние датчики температуры, при желании приобретаемые и подключаемые согласно рис. 3. дополнительно. Рекомендуемая длина соединительной линии – не более 100 метров. При близкой к предельной длине линии следует использовать качественный провод: витую пару 5 категории. При наличии электромагнитных помех желательно использовать экранированный провод.

В автономном режиме работы устройство не требует подключения к компьютеру и может получать питание от любого сетевого адаптера 5В с разъёмом USB. Напряжение питания 3,6…5В (например, от стандартного литиевого элемента питания) также может быть подано через разъем J2 к точке Vdd. Через этот же разъем может быть реализовано управление внешней нагрузкой, например, используя модуль BM146 либо собрав исполнительное устройство самостоятельно.

Рис.3. Подключение внешних датчиков.

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

Рис.5 (a,b). Вид печатной платы сверху и снизу.

Рис.6. Монтажная плата с деталями.

Рис.7. Контроль за состоянием можно контролировать со своего личного сайта или Интернет-странички.

Рис.8. Данные в табличной форме.

Рис.9. Данные в виде графиков.

Рис.10. Программа имеет ряд простых настроек.

Рис.11. Температура отражается в трее.

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

Эти показания также сохраняются в текстовом файле, просмотреть и обработать который можно с помощью Exсel.

Кроме того, можно подключить 2 дополнительных устройства управления нагрузкой, которые будут управлять нагреванием и охлаждением, например ящиком для хранения овощей. При этом не обязательно иметь постоянно включенный компьютер, так как устройство может работать в автономном режиме, поддерживая требуемую температуру. Достаточно задать нужные границы температуры и подключить его к любому блоку питания 5 В, например зарядному устройству для телефона через USB.

Особый интерес блок MP707 может представлять для тех, кто занимается выращиванием кристаллов различных солей, например медного купороса. Ведь чем медленнее охлаждается раствор соли, тем кристаллы растут крупнее и более правильной формы. Точность измерения температуры датчиков очень большая (0,0625С), что позволит строго удерживать температуру на нужном значении.

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

Принято решение удалённо контролировать температуру внутри помещения, чтобы вовремя среагировать. Да. Знаю. Имеются готовые решения. Элементы и системы умного дома. Есть в конце концов Ардуино (и не только) с разнообразными датчикам и модулями беспроводной передачи данных. Но я решил исходить из того, что есть в наличии у каждого порядочного викинга: отработавший своё, но живой смартфон. Тем более в месте дислокации объекта только мобильный интернет.

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

Железо. В моём случае метеостанция. Или цифровой термометр. Или обычный, если вера не запрещает. Смартфон с камерой (глупое наверное уточнение про камеру) и зарядное устройство. Подходящий тариф ОПСОСа. Сразу оговорюсь, в настройках камеры устанавливаю формат фото 320х240 и его размер не превышает 100 КБ. Для считывания данных этого достаточно. Расход трафика небольшой. Тряпки, палки, говно и синяя изолента на всякий случай.

Я выбрал иной вариант. Управляет работой смартфона MacroDroid. Есть ещё подобные программы, но названия я не помню. Яндекс помнит. Для организации моего варианта алгоритма работы прав суперпользователя не требуется. По триггеру, в качестве которого я использую входящий (или не отвеченный входящий) с выбранного номера, смартфон производит фотографирование и отправку последнего фото на указанный адрес электронной почты. Мне больше нравится получать фото по запросу, а не тупой timelapse. В этом я вижу свою божественную суть по отношению к перечисленным выше железкам!

Если у вас имеется датчик внешней температуры для/в смартфоне, можно просто по триггеру отправлять SMS с текстовой информацией о датчике. Тогда городить фото студию не придётся.

Спасибо дочитавшим до конца. Пользуйтесь на здоровье. И будьте все вы мне здоровы!

Эту простейшую самоделку сможет повторить каждый, кто в состоянии соединить три провода. С помощью этой штуки можно дистанционно контролировать температуру, например, на даче.

Для сборки термометра понадобится микроконтроллер NodeMCU-CH340 за $2.65 и цифровой датчик температуры DS18B20 за $1.41 . При желании можно добавить ещё цифровой индикатор TM1637 за $0.77 . Ещё понадобится резистор 4.7К, провода, любая зарядка от телефона с разъёмом MicroUSB. В качестве корпуса удобно использовать электрическую распаечную коробку.

Скорее всего можно использовать и совсем малюсенький контроллер Wemos D1 Mini, но я не пробовал.

В базовом варианте достаточно припаять датчик температуры к контроллеру (красный провод к 3V, чёрный к GND, жёлтый к D4), между жёлтым и красным проводам датчика ставится резистор (на фото датчик припаян к D1, не обращайте внимания).

Это необязательно, но можно подключить экран. Термометр поддерживает четыре вида экранов (цветной TFT 240x320 точек, OLED 128x64 точки, ЖК двух- или четрырёхстрочный, семисегментный светодиодный). На мой взгляд лучше всего поставить самый дешёвый четырёхсимвольный индикатор. У индикатора четыре контакта, подключаем их к контроллеру (VCC к 3V, GND к G, DIO к TX, CLK к RX).

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

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

А так в приложении (разумеется, датчики можно переименовать).

Как вы уже наверное догадались, для того, чтобы превратить контроллер в облачный термометр в него нужно загрузить прошивку и настроить её. Но сделать это гораздо проще, чем многие из вас подумали. :)

Когда заливка прошивки завершится, отключите контроллер и подключите его снова (можно к компьютеру, можно к любой зарядке). Нажмите три раза кнопку Reset с паузой не менее полсекунды. Контроллер создаст временную точку доступа Wi-Fi под названием WiFi-IoT без пароля. Подключитесь к этой точке смартфоном, и нажмите "подключение к сети". Откроется веб-страница настройки термометра.

Можно всё настроить сразу, можно настроить только подключение к Wi-Fi и продолжить настройку на компьютере. Покажу, как настроить всё сразу на телефоне:

1. Нажимаем "Hardware", ставим галку "Enable DS18B20" и меняем его GPIO на "2". Нажимаем "Set". Нажимаем "Main".
2. Заходим в "1-Wire", там "Clear & Scan List". Должен появиться адрес датчика. Снова "Main".

3. Если подключили экран, заходим в "7SEGM", ставим галку "Enable", вводим в поле "GPIO Clk" 3, в "GPIO Data" 1. Нажимаем верхний "Set". Пункт "1" меняем на DS18B20 1, нажимаем нижний "Set". Жмём "Main".

Отключаем контроллер от питания и включаем снова. Теперь он подключится к домашнему Wi-Fi. Можно зайти в его веб-интерфейс из браузера по адресу, который можно посмотреть в веб-интерфейсе домашнего роутера или с помощью повторного подключения к временной точке доступа контроллера: ещё раз три раза нажимаем на контроллере RST, снова подключаемся к нему телефоном, заходим в "Main" и видим внизу адрес. В данном случае 192.168.1.212.

На Народном мониторинге заходим в "Профиль - Мои датчики".

Нажимаем "Добавить" и вводим ID нашего термометра (его мы сохранили на этапе 4).

Если моё объяснение показалось вам сложным, вот тут есть очень подробная пошаговая инструкция.

На самом деле всё очень просто и эту самоделку действительно можно сделать и настроить за десять минут. Что касается цен, то конечно не может не впечатлять то, насколько это всё дёшево.

Читайте также: