Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial Internet of Things >> Встроенный

Выполнение точных измерений с помощью кремниевых датчиков температуры

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

Новый морозильник

Это был март 2020 года, и Великобритания как раз собиралась ввести изоляцию. Мир накапливал запасы продовольствия на случай, если супермаркеты закроются, и будущее выглядело неопределенным. Затем в доме Брамблов перестала работать морозильная камера. Слова песни Кенни Роджерса «Ты выбрал прекрасное время, чтобы оставить меня…» эхом раздались в моей голове, и мы отправились искать в Интернете новую замену.

Через несколько дней прибыла наша новая морозильная камера с цифровым дисплеем температуры на передней панели, как того и хотела миссис Брамбл. Рекомендуемая настройка составляла -18 ° C, и через час прибор достиг нужной температуры и был готов принимать пищу. Я скептически относился к точности показаний температуры, но не заботился, пока еда замораживалась. Однако есть одна проблема:инженерный ум - это беспокойный ум, и после нескольких дней якобы мудрого цифрового считывания, немигающего взгляда на меня, осмелившегося своими уверенными заявлениями, я сломался. Мне пришлось проверить утверждения о точности этого нового дополнения к нашей кухне.

Датчики температуры

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

Термопары

Термопары обеспечивают недорогой и умеренно точный способ измерения очень высоких температур. Они полагаются на напряжение, генерируемое между двумя переходами, каждый из разнородных металлов, поддерживаемых при разных температурах, как обнаружил Томас Зеебек в 1821 году. В случае термопары K-типа (сделанной из сплавов Chromel и Alumel) она выдает напряжение около 41 мкВ / ° C и может использоваться для измерения температуры выше 1000 ° C. Тем не менее, эффект Зеебека зависит от разницы температуры. между двумя спаями, поэтому, в то время как «горячий» спай измеряет интересующую температуру, «холодный» спай должен поддерживаться при известной температуре. По иронии судьбы, на холодном спайе требуется еще один датчик температуры для измерения разницы температур, и такие детали, как AD8494, обеспечивают идеальное решение для этого. Поскольку термопары физически малы, они имеют низкую тепловую массу, поэтому быстро реагируют на изменения температуры.

RTD

Для измерения умеренных температур (<500 ° C) в промышленности широко используются резистивные датчики температуры (RTD). Эти устройства состоят из металлического элемента, сопротивление которого меняется в зависимости от температуры, чаще всего из платины. Действительно, датчик PT-100 является наиболее широко используемым RTD в промышленности и получил свое название от того, что он сделан из платины (PT) и имеет сопротивление 100 Ом при 0 ° C. Хотя эти устройства не измеряют температуру до высокой температуры термопары, они очень линейны, и их показания воспроизводимы. PT100 необходим точный управляющий ток, создающий точное падение напряжения на датчике, пропорциональное температуре. Сопротивление соединительных проводов PT100 создает ошибку при измерении сопротивления датчика, поэтому обычно используется измерение по Кельвину, в результате чего используются трех- или четырехпроводные датчики.

Термисторы

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

Диоды, диоды везде, но не (Vbe) Drop to Sink…

Наконец, чтобы проверить достоверность информации о новом члене семьи, я выбрал кремниевый датчик температуры. Они работают прямо из коробки, не требуют компенсации температуры холодного спая или линеаризации, доступны с аналоговыми и цифровыми выходами и предварительно откалиброваны. . Однако до недавнего времени они предлагали лишь умеренную точность. Хотя они достаточно хороши для индикации состояния электронного оборудования, они никогда не были достаточно точными, чтобы измерить, скажем, температуру тела, обычно требуя точности ± 0,1 ° C (согласно стандарту ASTM E1112). Ситуация изменилась с недавним выпуском кремниевых датчиков температуры ADT7422 и ADT7320, которые могут измерять с разрешением ± 0,1 ° C и ± 0,2 ° C соответственно.

Кремниевый датчик температуры использует температурную зависимость Vbe транзистора. , как это задается уравнением Эберса-Молла, аппроксимируется следующим образом:

где Ic ток коллектора, Is - обратный ток насыщения транзистора, q - заряд электрона (1,602 x 10 -19 Кулоны), k постоянная Больцмана (1,38 x 10 -23 ) и T абсолютная температура.

Вышеприведенное выражение для тока коллектора справедливо и для тока в диоде; так почему в каждой прикладной схеме используется транзистор, а не диод? На самом деле, ток в диоде также включает в себя ток рекомбинации, возникающий в результате рекомбинации электронов с дырками, когда они проходят через обедненную область p-n-перехода, и это представляет собой нелинейность тока диода с Vbe и температура. Этот ток также появляется в биполярном транзисторе, но течет в базу транзистора, поэтому не проявляется в токе коллектора, поэтому нелинейность намного меньше.

Перестановка приведенного выше дает

Есть мала по сравнению с Ic , поэтому мы можем игнорировать ‘1’ член в уравнении выше. Теперь мы видим, что Vbe изменяется линейно в соответствии с логарифмическим изменением Ic . Мы также видим, что если Ic и Есть постоянны, тогда Vbe изменяется линейно с температурой, поскольку k и q также постоянны. Подать постоянный ток коллектора в транзистор и измерить, насколько Vbe меняется с температурой.

Есть связано с геометрией транзистора и сильно зависит от температуры. Как и у многих кремниевых устройств, его значение удваивается с повышением температуры на каждые 10 ° C. Хотя влияние этого изменения тока уменьшается на ‘ln’ функция, у нас все еще есть проблема, что абсолютное значение Vbe меняется с транзистора на транзистор, и поэтому требуется калибровка. Таким образом, практические кремниевые датчики температуры используют два идентичных транзистора и обеспечивают ток коллектора Ic . в 1 и 10 Ic в другой. Идентичные транзисторы и ратиометрически точные токи легко изготовить в интегральной схеме, поэтому большинство кремниевых датчиков используют эту архитектуру. Логарифмическое изменение тока вызывает линейное изменение Vbe и разница в Vbe Затем измеряется s.

Из приведенного выше уравнения для двух транзисторов, поддерживаемых при одинаковой температуре , разница между их Vbe Дает

с

Мы видим, что

Путем создания разных токов через каждый транзистор и измерения разницы в Vbe , мы удалили нелинейный Is термин, влияние различных абсолютных Vbe и все другие нелинейные эффекты, связанные с геометрией транзистора. Поскольку k , q и ln 10 все постоянны, изменение в Vbe пропорциональна абсолютной температуре (PTAT). Для 10-кратной разницы в токах разница в двух Vbe Изменяется линейно с температурой примерно 198 мкВ / ° C. Упрощенная схема для этого показана на рисунке 1.


Рис. 1. Базовая схема измерения температуры.

Токи на Рисунке 1 следует выбирать тщательно. Если сила тока слишком высока, это может привести к значительному самонагреву и падению напряжения на внутренних сопротивлениях внутри транзистора. Если ток слишком мал, токи утечки внутри транзистора добавляют значительные ошибки.

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

Это только начало истории. Чтобы получить точность ± 0,1 ° C с помощью кремниевого датчика температуры, необходимо выполнить обширную характеристику и подстройку.

Это птица? Это самолет?

Нет, это супер термометр. Да, они есть. Некалиброванный силиконовый датчик температуры необходимо поместить в ванну, наполненную силиконовым маслом, и нагреть до точной температуры, измеренной с помощью термометра. Эти устройства могут производить измерения с точностью выше пяти десятичных знаков. Предохранители внутри датчика перегорают, чтобы настроить усиление датчика температуры и, таким образом, линеаризовать его выходной сигнал с помощью уравнения y =mx + C . Силиконовое масло обеспечивает очень равномерную температуру, поэтому многие устройства можно калибровать за один цикл.

ADT7422 имеет точность ± 0,1 ° C в диапазоне температур от 25 ° C до 50 ° C. Этот температурный диапазон основан на типичной температуре человеческого тела 38 ° C, что делает ADT7422 идеальным для точного мониторинга жизненно важных функций. Для промышленного применения ADT7320 имеет подгонку с точностью до ± 0,2 ° C, но в более широком диапазоне температур от -10 ° C до + 85 ° C.


Рис. 2. ADT7422, установленный на печатной плате толщиной 0,8 мм

Однако калибровка кремниевого датчика температуры - не единственная проблема. Как и в случае очень точных опорных напряжений, напряжения на матрице могут нарушить точность датчика, и необходимо учитывать тепловое расширение печатной платы, выводной рамки, пластмассового литья и открытых контактных площадок. Процесс пайки также добавляет свои проблемы. Процесс оплавления припоя увеличивает температуру детали до 260 ° C, что приводит к размягчению пластиковой упаковки и деформации выводной рамы матрицы, так что, когда деталь остывает, а пластик затвердевает, механическое напряжение блокируется в матрице. Инженеры компании Analog Devices потратили много человеко-месяцев на тонкие эксперименты, чтобы обнаружить, что толщина печатной платы 0,8 мм является идеальным местом, а точность ± 0,1 ° C может быть достигнута даже после пайки.

Внутри программного обеспечения

Основная часть программного обеспечения системы связана с форматированием данных с ADT7320 и отображением их на ЖК-дисплее. Получение данных от ADT7320 тривиально. Когда процессор инициализируется, обе линии CS и SCLK устанавливаются на высокий уровень, а линия SCLK остается на высоком уровне между преобразованиями. Затем линия CS переходит в низкий уровень, чтобы инициировать транзакцию данных. При использовании SPI данные считываются в ADT7320 по переднему фронту линии SCLK и выводятся по заднему фронту. В приведенном ниже коде подробно описана процедура инициализации.

Для сброса последовательного интерфейса линия CS переводится в низкий уровень, линия DOUT - в высокий уровень, а SCLK генерируется 40 раз. Затем линия CS принимает высокий уровень. Это приводит к подаче тактовой частоты 40 ‘1 на ADT7320, сбрасывая последовательный интерфейс. После сброса шины SPI требуется задержка не менее 500 мксек.

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

data =0b00001000;

указывает ADT7320 на запись в регистр 0x01. Затем ADT7320 программируется на вывод данных с разрешением 16 бит с использованием линии

data =0b10000000;

Строка DOUT предварительно настроена на «0», старший бит байта данных опрашивается, а строка DOUT устанавливается на высокий уровень, если старший бит равен «1». Линия SCLK принимает высокий уровень, чтобы синхронизировать данные в ADT7320.

 void reset_adt7320 (void) / * инициализировать ADT7320 * / {unsigned char n, data; / * сброс последовательного интерфейса * / clearbit (PORTA, CS); setbit (ПОРТА, DOUT); для (n =40; n> 0; n--) {clearbit (PORTA, SCLK); setbit (ПОРТА, SCLK); } Setbit (ПОРТА, CS); delay_10ms (); / * после сброса необходимо ждать> 500 мкс * / / * установить в 16-битный режим * / clearbit (PORTA, CS); данные =0b00001000; / * очистить бит 6 (запись), reg # 001 * / / * отправить байт команды * / for (n =8; n> 0; n--) {clearbit (PORTA, SCLK); clearbit (ПОРТА, ДОУТ); / * предварительное условие DOUT * / if checkbit (data, (n-1)) {setbit (PORTA, DOUT); } Setbit (ПОРТА, SCLK); / * синхронизация данных при повышении SCLK * /} data =0b10000000; / * непрерывное преобразование, 16 бит * / / * отправка байта данных * / for (n =8; n> 0; n--) {clearbit (PORTA, SCLK); clearbit (ПОРТА, ДОУТ); / * предварительное условие DOUT * / if checkbit (data, (n-1)) {setbit (PORTA, DOUT); } Setbit (ПОРТА, SCLK); } Setbit (ПОРТА, CS);} 

Вызов функции для получения данных о температуре аналогичен показанному ниже. Линия

data =0b01010000;

указывает ADT7320 читать регистр 2 для 16-битных данных.

Затем код ожидает не менее 240 мсек, пока ADT7320 выполнит преобразование температуры. Затем синхронизируются 16 бит данных температуры, после чего на линии CS устанавливается высокий уровень.

 clearbit (ПОРТА, CS); / * данные =байт команды * / data =0b01010000; / * режим чтения, регистр 2 * / / * чтение ADT7320 * / for (n =8; n> 0; n--) {clearbit (PORTA, SCLK); clearbit (ПОРТА, ДОУТ); / * предварительное условие DOUT * / if checkbit (data, (n-1)) {setbit (PORTA, DOUT); } Setbit (ПОРТА, SCLK); } Delay_150ms (); / * преобразование температуры * / delay_150ms (); / * считываем данные о температуре * / for (n =16; n> 0; n--) {clearbit (PORTA, SCLK); если контрольный бит (PORTA, DIN) {setbit (temp, (n-1)); } Setbit (ПОРТА, SCLK); } Setbit (ПОРТА, CS); 

Полный код доступен здесь.

Так насколько же холодны мои сосиски?

ADT7320 был оставлен в морозильной камере примерно на 30 минут, чтобы посмотреть, какая температура установлена ​​в нашей новой покупке.

На рис. 3 показано, что температура морозильной камеры составляет -18,83 ° C.


Рис. 3. Температура морозильной камеры при -18,83 ° C

Я посчитал это впечатляюще точным, учитывая, что пищу не нужно хранить с таким уровнем точности температуры. Затем я измерил температуру в своем офисе летним днем ​​в Великобритании. 22,87 ° C, как показано на рисунке 4.


Рис. 4. Температура в моем офисе - 22,87 ° C

Заключение

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

ADT7320 и ADT7422 представляют собой вершину многолетнего изучения характеристик для достижения точности уровня ниже градуса даже после пайки на печатной плате.

Ссылки

Хуэйсинг, Йохан и Мишель Пертиджис. Прецизионные датчики температуры в КМОП-технологии. Springer, 2006.
Горовиц, Пол и Уинфилд Хилл. Искусство электроники . Cambridge University Press, апрель 2015 г.
Проектирование аналоговых схем, том 2, глава 32. Линейные технологии, декабрь 2012 г.
Таблица данных AD590. Analog Devices, Inc., январь 2013 г.
Лист данных ADT5912 (будет выпущен). Analog Devices, Inc.


Встроенный

  1. Кремний
  2. Типы датчиков и их принципиальные схемы
  3. Infineon:датчики угла на основе AMR в версиях с одной и двумя матрицами
  4. AMS, чтобы осветить Sensors Expo 2019 инновационными демонстрациями
  5. Медицинские датчики Maxim для носимых устройств сверхмалого размера
  6. IBASE:модули COM Express с широким диапазоном рабочих температур
  7. Отображение расхода температуры в доме с помощью дешевых датчиков
  8. Измерение температуры с помощью однопроводного датчика DS18B20 и Raspberry Pi
  9. Считать температуру с помощью DS18B20 | Raspberry Pi 2
  10. Измерение температуры с помощью RASPBERRY PI