Термодатчики на диодах в схемах на мк

Датчик температуры своими руками: схемы, варианты постройки простых и точных датчиков температуры (90 фото)

Комментарии (1):

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

Например, автор утверждает, что введение дополнительного каскада усиления на ОУ ухудшит точность измерения из-за температурного дрейфа напряжения смещения ОУ. На сколько ухудшит? Автор скромно умолчал. Считаем.

Дрейф напряжения смещения использованного автором ОУ составляет не более 20мкВ/*С. Термометр питается от сети, и он должен быть размещен в месте удобном для наблюдения и обслуживания, т.е. это жилое помещение. Но в жилом помещении температура поддерживается в комфортных для человека пределах, т.е. 25+-5*С. Температурный разброс +-5*С дает итого +-100 мкВ изменения напряжения смещения ОУ. Это при том, что напряжение сигнала на входе ОУ у автора составляет 100мВ при 100*С. Таким образом, максимальная внесенная погрешность измерения температуры не превысит +-0.1*С. Это ничтожно по сравнению с реальной погрешностью данного термометра, которая на самом деле составляет не заявленные автором 0.05*С, а не менее нескольких градусов. Но автор об этой погрешности даже не догадывается, он ее пытается скомпенсировать при настройке. Напрасно, погрешность полупроводникового датчика температуры нелинейная, квадратичная от температуры. Если калибровать при 0 и 100*С, то между ними будут ошибки до нескольких градусов, на минусе может быть несколько больше. А если калибровать при 0 и 36,6*С, то на минусе будут погрешности еще больше. И это не единственная погрешность. Но об этом далее. К тому же, кто мешал автору поставить в усилитель ОУ К140УД17 у которого дрейф напряжения смещения всего 3мкВ/*С, ведь он же был в наличии у автора? Загадка. Тогда бы усилитель вообще никак не влиял на точность.

Автор заявляет о точности термометра +-0.05*С. Но например даже точность М-832 объявлена как +-1.2% +-2 единицы, т.е. на шкале 200мВ при напряжении 100 мВ  это составит +- 1.4 мВ, или +-1.4*С. Откуда автор вытащил свои +-0.05*С?

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

Автор заявляет что температурный коэффициент для диода КД103 составляет 2.01мВ/*С. Но такого гарантированного параметра нет в справочных данных. То что  автор намерял для одного диода, никак не подходит к другому экземпляру диода, особенно из другой партии диодов. Температурный коэффициент сильно меняется и при изменении прямого тока диода, при разных токах он разный! И при разных температурах он изменяется, зависимость напряжения от температуры на самом деле нелинейная. И само прямое напряжение при +25*С у всех диодов разное!

Автор установил ток через датчик 1.1мА! Это более чем в 10 раз превышает обычно используемый в термометрах ток датчика, и при этом мощность выделяемая на датчике более чем в 100 раз превышает обычно используемую. Автор видимо не знает что такой большой ток датчика приводит к заметному разогреву кристалла датчика. Это градусы нагрева, ведь сам кристалл очень мал. Видимо автор ни разу не замечал как дрейфует напряжение на диоде при подключении источника тока. Автор на самом деле измеряет не температуру внешних объектов, а температуру разогретого кристалла датчика. Эта температура зависит от теплопроводности корпуса датчика и выводов, температуры окружающей среды, ветра. Поэтому никакой заявленной точности +-0.05*С и близко нет.

Кроме того, автор указывает кроме его бешеной точности измерения еще и диапазон до -100*С!!! Автор это проверял? Производители полупроводниковых датчиков температуры гарантируют диапазон на минусе не более чем до -60*С, и то это редкость. Дело в том, что ниже -60 у полупроводников резко меняется температурный коэффициент, поэтому нет гарантий никакой точности.

Автор просто безграмотен.

Термодатчики на диодах в схемах на МК

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

Для измерений используется прямая ветвь ВАХ диодов, поскольку обратная ветвь менее стабильна. Нелинейность показаний легко учитывается двумя программными методами. Во-первых, можно плавно аппроксимировать температурную характеристику эмпирической формулой, во-вторых, можно использовать дискретную таблицу поправок с сохранением коэффициентов в ПЗУ МК.

В термодатчиках выгодно применять германиевые (а не кремниевые) диоды, поскольку у них сильнее проявляется зависимость параметров от температуры. Однако устаревшие германиевые диоды типа Д2Б, Д7Ж, выпущенные 40…50 лет назад, уже не обладают заявленными техническими параметрами. Сточки зрения надёжности они давно выработали ресурс хранения и эксплуатации, что в любой момент грозит выходом элемента из строя.

Считается, что термодатчики на диодах обеспечивают приемлемую линейность измерения температуры в диапазоне 0…+ 100°С (по некоторым оценкам -60…+ 150°С). Для достоверности достаточно откалиброваться в двух крайних точках диапазона по образцовому термометру ТЛ-4 ГОСТ 28498-90. Если таковой отсутствует, то используют … обычную очищенную воду. Известно, что температуру 0°С можно получить в момент образования льда (смесь воды с льдинками в морозильной камере холодильника). Температура +100°С соответствует кипящей воде в кухонном чайнике. Контрольная проверка — температура тела человека.

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

а) высокоомный резистор /?/служит своеобразным генератором стабильного тока для термодатчика VD1. Напряжение на входе МК пропорционально температуре окружающей среды в диапазоне-50…+100°С. Коэффициент преобразования составляет 2…2.5 мВ/°С, погрешность меньше 1%. Конденсатор С/снижает уровень помех при большом удалении диода VD1 от МК;

б) к двум каналам АЦП МК подключаются одинаковые цепи, но измеряемые напряжения будут разными, поскольку VD1 служит термодатчиком, а VD2 — обычным диодом. Используется дифференциальный режим работы АЦП. Фиксируются не абсолютные температуры, а их разность в двух удалённых местах, например, в помещении {VD2) и на улице {VD1). Диоды могут быть не только германиевыми, но и кремниевыми. Их можно зашунтировать конденсаторами 0.1 мкФ;

Рис. 3.66.

Схемы подключения диодных термодатчиков к МК {окончание)’.

в) усилитель DA1 расширяет динамический диапазон сигнала, поступающего от термодатчика на диоде VD1. Резистором R2 калибруется начальное значение, резистором R6 — диапазон температур. Чтобы повысить линейность по краям, ОУ Z)/l/следует применить «rail-to-rail»;

г) «нижнее» включение диодов Шоттки VDI…VD4, выступающих в качестве термодатчиков. Их последовательное соединение повышает чувствительность в четыре раза. Температура определяется табличным методом по замерам напряжений АЦП МК. Резистор RI имеет высокое сопротивление, что снижает протекающий через термодатчики ток и устраняет их саморазогрев. Резистор обеспечивает оптимальное входное сопротивление для АЦП МК;

д) «верхнее» включение кремниевых диодов VDI, VD2, выступающих в качестве термодатчиков. Для нормальной работы АЦП МК требуется, чтобы на вход подавалось напряжение, близкое к питанию +5 В. Для сравнения, в схемах с «нижним» включением диодов можно подавать на вход более низкое (а значит и более стабильное) напряжение +1.2…+2.5 В от внешнего ИОН. Возможная замена диодов VD1, VD2— 1N4148.

Tweet Нравится

  • Предыдущая запись: Датчики атмосферного давления реализация на МК
  • Следующая запись: Неисправности факсов

Электронные регуляторы и переключатели (0)
Мощный усилитель нч класса «d» (0)
Регулятор для автомобильных стеклоочистителей (0)
ТЕРМОРЕЛЕ И ФОТОРЕЛЕ (1)
УСИЛИТЕЛЬ МОЩНОСТИ НЧ 25 Вт (1)
Устройство «инфракрасный барьер» (0)
Температурные датчики, общие сведения (0)

Цифровая схема

Одна из самых простых схем состоит всего из нескольких элементов. В основе конструкции лежит использование датчика, выдающего значение температуры в цифровом коде. Стоимость термодатчика LM 335 не превышает 50 центов, при этом после калибровки его точность измерения составляет от 0,3 ° до 1,5° C. Датчик может измерять температуру от — 40 ° до 100° C. Выпускается он в двух корпусах — TO-92 и SOIC. В качестве аналога можно использовать отечественную микросхему К1019ЕМ1.

При монтаже длина соединительных проводов может достигать пяти метров. Калибровка схемы осуществляется изменением напряжения, подаваемым на вывод один. Необходимое значение рассчитывается по формуле:

Uвых = Vвых1 * T / To, где:

  • Uвых – напряжение на выходе микросхемы;
  • Uвых1 – напряжение на выходе при эталонной температуре;
  • T и To – измеряемая и эталонная температура.

Напряжение, формирующее выходной сигнал, зависит от температуры, поэтому питание, подающееся на датчик, должно осуществляться от источника тока. Собирается он на двух транзисторах КТ209 и не требует дополнительных настроек. Максимальный ток питания не превышает 5 мА. Увеличение выходного напряжения на 10 мВ соответствует приросту температуры на один градус.

Диод как датчик температуры- функция полупроводника

Диод — наипростейший по своей комплектации прибор, обладающий свойствами полупроводника.

Между двумя крайностями диода (донорной и акцепторной) пролегает область пространственного заряда, иначе: p-n-переход. Этот «мост» обеспечивает проникновение электронов из одной части в другую, поэтому, в силу разноимённости составляющих его зарядов, внутри диода возникает довольно малый по силе, но всё-таки ток. Движение электронов по диоду происходит только в одну сторону. Обратный ход конечно есть, но совершенно незначительный, а при попытке подключить в этом направлении источник питания диод запирается обратным напряжением. Это увеличивает плотность вещества и возникает диффузия. Кстати, именно по этой причине диод носит название полупроводникового вентиля (в одну сторону движение есть, в другую — нет).

Если попытаться повысить температуру диода, то количество неосновных носителей (электронов двигающихся в обратном основному направлении) увеличится, а p-n-переход начнёт разрушаться.

Принцип взаимодействия между падением напряжения на диодном p-n-переходе и температурой самого диода была выявлена практически сразу после того, как он был сконструирован.

В результате p-n-переход диода из кремния — это наиболее простой температурный датчик. Его ТКН (температурный коэффициент напряжения) составляет 3 милливольта на градус цельсия, а точка прямого падения напряжения — около 0,7В.

Для нормальной работы данный уровень напряжения излишне мало, поэтому чаще используется не сам диод, а транзисторные p-n-переходы в комплекте с базовым делителем напряжения.

В результате, конструкция по своим качествам соответствует целой последовательности диодов. Как итог, показатель по падению напряжения может быть гораздо большим, чем 0,7В.

Поскольку ТКС (температурный коэффициент сопротивления) диода является отрицательным (- 2mV/°C), то он оказался весьма актуальным для использования в варикапах, где ему отводится роль стабилизатора резонансной частоты колебательного контура. Контроль осуществляется при помощи температуры.

Данные по падению напряжения на диодах

При анализе показаний цифрового мультиметра можно отметить, что данные по падению напряжения на p-n-переходе для кремниевых диодов составляют 690-700 мВ, а у германиевых — 400-450 мВ (хотя этот вид диодов на данный момент практически не используется).  Если во время замера температура диода поднимается, то данные мультиметра напротив снизятся. Чем значительнее сила нагрева, тем значительнее падают цифровые данные.

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

Схема термометра на диоде.

Датчики температуры для микроконтроллера

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

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

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

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

Однако, если опорными станут другие температурные показатели, программу придётся переписывать.

Прочие сферы применения

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

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

— относительная дешевизна;

— скромные габариты;

— запросто подойдут к огромному числу электронных приборов;

— превосходная чувствительность и точность.

Благодаря всем этим качествам область применения датчиков данного типа растёт из года в год.

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

Термистор

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

За счет полупроводниковых свойств материала, термисторы имеют отрицательный температурный коэффициент (NTC), т.е. сопротивление уменьшается с увеличением температуры. Однако, есть также термисторы, с положительным температурным коэффициентом (ПТК), их сопротивление возрастает с увеличением температуры.

Преимущества термисторов

  • Большая скорость реагирования на изменения температуры, точность.
  • Низкая стоимость.
  • Более высокое сопротивление в диапазоне от 2,000 до 10,000 ом.
  • Гораздо более высокая чувствительность (~200 ом/°C) в пределах ограниченного диапазона температур до 300°C.

Зависимости сопротивления от температуры

Зависимость сопротивления от температуры выражается следующим уравнением:

где A, B, C — это константы (предоставляются условиями расчёта), R — сопротивление в Омах, T — температура в Кельвинах. Вы можете легко рассчитать изменение температуры от изменения сопротивления или наоборот.

Как использовать термистор?

Термисторы оцениваются по их резистивному значению при комнатной температуре (25°C). Термистор-это пассивное резистивное устройство, поэтому оно требует производства контроля текущего выходного напряжения. Как правило, они соединены последовательно с подходящими стабилизаторами, образующими делитель напряжения сети.

Пример: рассмотрим термистор с сопротивлением значение 2.2K при 25°C и 50 Ом при 80°C. Термистор подключен последовательно с 1 ком резистором через 5 В питание.

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

При 25°C, RNTC = 2200 Ом;

При 80°C, RNTC = 50 Ом;

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

Выходное напряжение на резисторе и температура линейно связаны.

Technical data

  • Measuring range: −55 °C — +125 °C (−67 °F — +257 °F)
  • Accuracy: 0.5 °C (0.9 °F) (from −10 °C to +85 °C), 2 °C otherwise
  • Resolution: 0.0625 °C (0.1125 °F) at 12-bit
  • Data record frequency: above 750 milliseconds at 12-bit
  • Works under Linux with kernel version at least 5.5 (Debian 11+, Fedora 32+, Mageia 8+, Manjaro 20.2.1+, OpenWrt 22.03+, Raspberry Pi OS 2022-04-04+, Rosa 12+, Ubuntu 20.10+ etc.) and Windows 7, 8, 8.1, 10 and 11. CPU architecture independent: works also on MIPS and ARM (e.g. Raspberry Pi) and Android devices (which support USB host mode).
  • Supported by dedicated open source software (released under MIT license) at github.com/usbtemp (C, C++, C#, node.js and python 3 libraries with examples), UTMP Basic, and wide range of third-party tools and monitoring utilities, e.g. Digitemp, owfs, LogTemp, pydigitemp.


Note: This information describes the current, 2nd generation of USB thermometer based on PL2303GL integrated circuit available after 10th June 2022. Product sheet of previous generation

Подключение RODOS-5B

В загородном доме у меня стоит старенький ноутбук Sony VAIO 2006 года с одним уцелевшим USB-портом. Поэтому подключал я термометр не к самому порту, а через USB-разветвитель. Операционной системой он распознается как обычная флешка, после чего сразу можно начинать работу.

Собственно с подключением проблем не возникло (это делается одним движением), главное – настройка программного обеспечения. К счастью, к термометру прилагается полная инструкция. Производитель предупреждает, что при напряжении выше 5 Вольт или неправильной полярности прибор может выйти из строя.

Основной сложностью оказалось наладить удаленное управление RODOS-5B. Однако это собственно, и позволяет ему выполнять свою функцию, поскольку в качестве домашнего градусника рациональнее все-таки пользоваться обычными устройствами, а не цифровыми.

Настройка подключения по FTP

Для удаленной работы термометр использует протокол FTP с регистрацией на бесплатном сервере ucoz.ru. Многие знают его как конструктор сайтов – и действительно, RODOS-5B работает фактически через собственный сайт.

Параметры FTP указываются в файле MP710.ini, присутствующем в папке с программой на рабочем компьютере, к которому подключен термометр. После этого в поле FTP в запущенном приложении следует поставить галочку.

Первое испытание

Чтобы выяснить, насколько точно измеряется температура, распахнул окна настежь. В качестве контрольного значения было решено использовать показания «бабушкиного» стационарного термометра.

Когда вернулся в комнату через час, то даже поежился от холода. Оба термометра показывали одинаковую температуру – плюс 9 градусов по Цельсию.

Для долговременного использования я закрепил RODOS-5B на полку, прибитую к стене. Оказалось весьма кстати, что датчик находится на расстоянии метра от USB-порта. Ноутбук достаточно сильно греется, поэтому может исказить температурные показания.

Результат

USB термометр работает у нас уже несколько месяцев, пережили холодное время года. Никаких сбоев в системе отопления не было, но береженого, как говорится, Бог бережет. Благодаря устройству RODOS-5B теперь я точно знаю, как быстро опускается температура на даче, и если синоптики обещают сильные холода, могу приехать и подрегулировать систему отопления.

Сейчас подумываю о том, чтобы установить аналогичный термометр в гараже.

Особенности настройки USB термометра

Находясь у себя в городской квартире или даже на работе, я получаю HTML-файл с текущими показаниями, на основе которого можно судить о том, все ли в порядке на даче. Например, однажды выяснилось, что забыли закрыть окно, так что в помещении стало холодать быстрее обычного.

Чтобы программа BM1707.exe передавала информация с нужным интервалом времени, необходимо задать соответствующие параметры считывания показаний. Интервал опроса сенсоров можно установить от 2 секунд до 1 часа.

Лично я выбрал промежуток в 1 минуту – как раз за такое время, на мой взгляд, температура успеет понизиться в случае аварии. Немаловажная функция – программа выдает показания не только таблицей, но и в виде графика. Сравнивая температуру в загородном доме с текущей погодой на улице, я установил корелляционную зависимость между этими данными.

Удаленное управление цифровым USB термометром

Для удаленного управления потребуется скачать с сайта производителя архив с компонентами программы, настроенными для FTP. Данные сервера, которые мы уже указывали раньше, прописываются в файле BM1707.cmd.

Новые команды записываются в файл BM1707_control.txt, загруженный в корневую директорию сервера. Файл на сервере будет считан с интервалом, равным интервалу опроса сенсоров.

Полупроводниковые датчики с цифровым выходом

Технология изготовления полупроводниковых термометров позволяет размещать их на кристаллах интегральных микросхем. Температурные датчики можно встретить в составе микропроцессоров и микроконтроллеров, служебных мониторов микропроцессорных систем, а также в других измерительных устройствах, например датчиках влажности. Возможен и противоположный вариант — добавления различных элементов к датчикам. Примером подобных изделий могут служить датчики температуры с цифровым выходом. В отличие от аналоговых вариантов, эти устройства содержат встроенный АЦП и формирователь сигналов какого-либо стандартного интерфейса. Наибольшую популярность получили интерфейсы SPI, I2C и 1-Wire. Использование термометров с цифровым выходом значительно упрощает схемотехнику измерительного устройства, при незначительном увеличении стоимости относительно аналоговых вариантов. Также использование стандартных интерфейсов позволяет интегрировать датчики в различные системы управления или подключать несколько датчиков на одну шину. Программирование протокола обмена с большинством датчиков не представляется сложной задачей, что обусловило огромную популярность применения этих элементов в любительской практике и мелкосерийном производстве.

Примеры датчиков температуры с цифровым выходом 

Модель 

Диапазон

Точность

Разрешение

Интерфейс

Производитель 

 LM75

от -55°С до +125°С

±3°С

 9 бит

I2C 

 National Semiconductor

LM76 

от -55°С до +150°С

±1.5°С 

13 бит 

 I2C

 National Semiconductor

DS18B20

от -55°С до +125°С

±2°С 

9-12 бит 

1-Wire 

MAXIM 

от -55°С до +125°С

±1°С 

 9 бит

 I2C

 MAXIM

DS1722 

от -55°С до +120°С

±2°С 

 12 бит

SPI 

Dallas Semiconduction

от -55°С до +125°С

±3°С 

12 бит 

 I2C

 Microchip

MSP9808 

от -40°С до +125°С

±1°С 

12 бит 

 I2C

 Microchip

ADT7320 

от -40°С до +150°С

±0.25°С 

 16 бит

 SPI

Analog Devices

Характеристики интегральных датчиков температуры с цифровым выходом в целом соответствуют характеристикам аналоговых вариантов. При этом в виду применения АЦП, добавляется такой параметр, как разрешение выходных данных. Сегодня можно встретить датчики с разрешением от 9 до 16 бит. Часто данный параметр указывается в виде температуры, определяемой младшим разрядом АЦП. Например, для высокоточного датчика LM76, предоставляющего пользователю 13-битные данные, он составляет 0.0625°С. Не следует путать этот параметр с точностью измерений, так как вес младшего разряда АЦП определяет только точность работы аналогово-цифрового преобразователя, без учета характеристики датчика. Для того же LM76, заявленная точность измерений не превышает ±1°С.

Типовая схема использования цифрового датчика температуры

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

Другие статьи:

You have no rights to post comments

Схема термометра для процессора, видеокарты и БП ПК

AVR Atmega 8 в миниатюрном корпусе TQFP32 идеально подходит для такого типа проектов, в качестве датчиков температуры были выбраны DS18B20, работающие по шине 1-W3ire.

Для управления анодами дисплея использовал транзисторы PNP BC857 (IcMAX = 100 мА, IcPeak = 200 мА) в корпусе SOT23 (каждый сегмент дисплея имеет фиксированный ток при Iseg = 20 мА: Rcathode = (VCC — VGreenLed) / Iseg = (5V — 1,8V) ) / 20 мА = 160R = ~ 150R (т.е. Iseg = ~ 21 мА).

Транзисторы должны работать как ключи, поэтому в соответствии с диапазоном усиления (100…800), выбирая наихудшее усиление и запас прочности x3:

Ib = 3 х Ic / 100 = 3 х 147 мА / 100 = 4,4 мА
Rb = (Vcc — Vbe ) / Ib = (5V — 0.7V) / 4,4 мА = 970R = 1k

Одной из дилемм был способ подключения термометров к компьютеру.

1) каждый может быть подключен к отдельной линии передачи данных.

— больше используемых контактов
— термометры можно подключать к любым разъемам, потому что разъем 1 всегда будет связан с дисплеем 1, а 2 с дисплеем 2 и т. д.

2) все они могут быть подключены к общей линии передачи данных.

+ сохранение пина
— необходимость связать уникальный серийный номер с данным датчиком (то есть числа, вшитые в код микропроцессора или какой-либо другой метод настройки).

Выбор пал на метод 1. Решил проблему с USB-разъемом, просто согнув его контакты по вертикали и припаяв все это тоже к металлической части корпуса, таким образом обеспечивая их постоянную защиту.

К сожалению, с самого начала все пошло не так, как должно:

В результате такой транзистор высвобождает напряжение питания на линии MOSI / CD, и, несмотря на последовательно включенный резистор 160R, программатор не может управлять этой линией. Конечно, все специальные линии (MOSI, MISO, SCK) могут использоваться во время работы микроконтроллера любым способом, как и любой из его выводов. Но следует помнить, что к этим линиям не подключается никакой вывод от другой внешней схемы, потому что тогда при попытке программирования микроконтроллер не сможет управлять этими линиями.

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

Снова не получилось общаться с термометрами (несмотря на то, что была собственная написанная и протестированная библиотека). Оказалось, что забыл про внешние резисторы, подтягивающие эту линию к питанию (4,7 кОм), а встроенные в Atmega резисторы (30-50 кОм) оказались слишком большими. Пришлось добавить резисторы SMD на плату.

Термометр в среднем гнезде не заработал — причиной было короткое замыкание на землю по этой линии, возникшее во время пайки.

Дисплей мигал. Для поддержки протокола 1-Wire требуется соблюдение временных зависимостей во время передачи, а это означает, что прерывания должны быть отключены в это время, что может продлить выполнение критического кода, нарушая передачу. Однако отключение прерываний, которые, в свою очередь, выполняют сегменты кода 7 обработки дисплея, вызывает их заметное мигание. Здесь решение заключалось в отключении прерывания не на все время обработки показаний температуры, а только в критических ситуациях (на время передачи / чтения каждого отдельного бита в протоколе 1-Wire).

Понравилась статья? Поделиться с друзьями:
Зинг-Электро
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: