| Форум РадиоКот https://radiokot.ru/forum/ |
|
| Цифровой термометр LM75 https://radiokot.ru/forum/viewtopic.php?f=61&t=140375 |
Страница 1 из 2 |
| Автор: | x8973 [ Вс янв 08, 2017 09:23:40 ] |
| Заголовок сообщения: | Цифровой термометр LM75 |
Копия топика с форума Easyelectronics. Всем доброго времени суток! Задумал я сделать себе парочку показометров, чтобы вывесить один на балкон, а второй на стенку, и чтоб они мне температуру говорили. Заморачиваться с терморезисторами и программной реализацией 1-wire для ds18b20 было лень, поэтому взял вышеуказанную микруху. Все настроил, все работает, но есть одно "но". В комнате (судя по ртутному термометру) +24 градуса, а мой градусник показывает +29..+30. Причем если дать ему постоять выключенным, а потом включить, то он тоже сначала показывает +25, а потом плавно выползает на +30. На плате термометра греться совершенно нечему (питание от 12 вольт через DC/DC), к тому же, сам термодатчик расположен на выпиленном кусочке платы, к нему идут только дорожки питания и IIC. Попытался уводить датчик в сон, а запрашивать температуру раз в 5 секунд. Не помогло. Сейчас запрос температуры производится раз в минуту, все остальное время датчик спит. Картина та же: при включении +27, потом плавный разогрев до +32. Что интересно, термодатчик, встроенный в микросхему MPU6050, тоже показывает +32, причем сразу после включения. Кто что может посоветовать? |
|
| Автор: | Мурато Мяуконни [ Вс янв 08, 2017 09:47:14 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
А датчик в том же корпусе расположен? На 5-6 градусов может подогреваться воздух внутри прибора |
|
| Автор: | x8973 [ Вс янв 08, 2017 10:09:53 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Мурато Мяуконни писал(а): На 5-6 градусов может подогреваться воздух внутри прибора Да, я это уже заметил. С корпусом оно греется чуть ли не до 40 градусов. Сейчас плата висит на стене без корпуса. UPD. Сейчас ради эксперимента прижал к микрухе радиатор от компьютерного чипсета. Температура сначала упала до +27, а сейчас снова ползет вверх. |
|
| Автор: | Мурато Мяуконни [ Вс янв 08, 2017 15:09:40 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
А питание то в норме? Фильтрация питания, выбросы, в том числе и отрицательные? |
|
| Автор: | x8973 [ Пн янв 09, 2017 10:10:15 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Питание от ноутбучного импульсного БП через DC/DC на MP2307DN. Висят конденсаторы - электролиты по 100 мкФ и керамика по 0,1 мкФ на входе и на выходе. На самой микросхеме по питанию висит свой конденсатор на 0,1 мкФ. Осциллографом ткнуться возможности нет, но я питал все это дело от программатора (читай - от компового USB), и результат был тот же. На той же ИзиЭлектроникс нашел тему про завышение температуры этими датчиками. Автор пишет, что у разных производителей разные показатели саморазогрева. Так вот вопрос: неужели решение проблемы - в тупом переборе датчиков в поисках того, который меньше всего врет? |
|
| Автор: | BOB51 [ Пн янв 09, 2017 11:08:43 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Саморазогрев при работе вполне возможен - просто в таком случае вносите поправку для конкретного кристалла. |
|
| Автор: | x8973 [ Пн янв 09, 2017 11:27:59 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Я просто не пойму, с чего ему греться? В режиме сна он по даташиту потребляет всего 4 мкА (в реальности не замерял), что и током-то считать нельзя. При таком токе он не должен греться от слова совсем. А в режиме сна он у меня находится 80% рабочего времени. |
|
| Автор: | BOB51 [ Пн янв 09, 2017 12:07:44 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
А при переходе к рабочему режиму потребление увеличивается. Соответственно и время, необходимое для стабилизации собственной температуры перед измерением какое-то необходимо... Иногда лучше все время рабочий режим сохранять, чем ожидать ту стабилизацию при каждом измерении. Тем более, что применение LM75 предпочтительно с точки зрения терморегулятора с программируемым порогом сработки. Печалька лишь в необходимости перепрограммирования того порога при каждом включении - ежли б данные в ЕЕПРОМ хранились... |
|
| Автор: | x8973 [ Пн янв 09, 2017 13:10:44 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Видимо, все-таки придется перелезть на DS18b20 с ее 1-Wire. Жаль, LM75 дешевле на порядок (190 рублей против 20 в Чип-Дипе). Я не думаю, что программная корректировка значения есть выход. Потому что значение температуры после саморазогрева явно есть величина нелинейная. По-хорошему тут нужна калибровка по нескольким точкам... И тут встает вопрос: а чем же оно тогда лучше тупого терморезистора? |
|
| Автор: | Z_h_e [ Пн янв 09, 2017 18:10:28 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Может просто с чипом не повезло? Пробовали заменить? |
|
| Автор: | Zat [ Чт фев 09, 2017 03:57:52 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Я бы попробовал для начала сделать 2 эксперимента. 1. Запитать датчик не от цифрового dc/dc, а от обычного транса с выпрямителем. 2. Линию данных (i2c) и питание датчика (если они идут вместе) разнести на некоторое расстояние. Т.к. если идут помехи по питанию, то появляется шум на i2c. Возможно это и дает погрешность. Источник dc/dc питания нужен с LC фильтром на выходе, дабы уменьшить пульсации. Скорее всего высокочастотный преобразователь дает помехи на линию данных. |
|
| Автор: | Lexter [ Чт фев 09, 2017 04:18:09 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Zat писал(а): появляется шум на i2c. Возможно это и дает погрешность Это может "дать" хаотические результаты, но никак не систематическую погрешность. Интерфейс-то цифровой.Если датчик вынесен на проводах, то чтобы он стабильно работал, должен быть конденсатор по питанию у самых выводов датчика. Если питание в паузах снимается, то надо давать время на установление напряжения питания. Ну и не забывать делать паузу перед чтением на время преобразования. |
|
| Автор: | Zat [ Чт фев 09, 2017 15:18:16 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Lexter писал(а): Zat писал(а): появляется шум на i2c. Возможно это и дает погрешность Это может "дать" хаотические результаты, но никак не систематическую погрешность. Интерфейс-то цифровой.Интерфейс-то, да, цифровой, но и DC/DC с цифровым ШИМом Я тут недавно смотрел осциллографом что может твориться на линии питания... это просто капец, разве что нет тараканов. На i2C подтяжка стоит на 5-10к с двух сторон ? А то некоторые не ставят, забывают. Датчик температуры работает на основе измерения сопротивления материала от температуры, для чего АЦП требуется качественное опорное напряжение(собственно, оно то и дает точность измерений). Дальше данные оцифровываются встроенным АЦП и результат идет на I2C. Если предположить, что питание имеет нестабильность, скажем размах 100 mV, то и сопротивление, и результаты измерений будут отличаться от реалий. Тем более, что показания не занижают температуру, а завышают. Т.е., если следовать закону R=U/I, то при повышенном напряжении(пульсации) растет сопротивление ( как при нагревании). Собственно, это и показывают выходные данные. Если температура была бы ниже, чем должна, то наверное надо искать в другом месте проблему. Как вариант, я бы запитал датчик скажем от батарейки и посмотрел результат (коль нет возможности осцилопом глянуть). Если результат не меняется, то и копать глубже. Но я бы грешил на питание в первую очередь. |
|
| Автор: | Lexter [ Чт фев 09, 2017 18:00:59 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Zat писал(а): ...Интерфейс-то, да, цифровой, но и DC/DC с ... Нарисуйте на бумажке, как выглядит последовательный код с числами, скажем, 30, 31, 32... и представьте, как должна выглядеть наводка, чтобы так искажала код. Не вводите людей в заблуждение. Такой код выдаёт датчик, и наводки тут не при чём. Надо смотреть его реальную температуру, находится ли в допуске напряжение питания, не перегружен ли выход (повышенный выходной ток тоже може приводить к саморазогреву), а главное - чётко выдерживать требуемые временные интервалы при обращении к датчику.Да, и насчёт АЦП тоже мимо. В этих датчиках нет АЦП. Там два импульсных генератора с разной температурной зависимостью и счётчики. |
|
| Автор: | x8973 [ Чт фев 09, 2017 18:57:19 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Датчик не на проводах: он на выпиленном фрагменте платы. Конденсатор по питанию рядом датчиком присутствует. Подтягивающие резисторы есть со стороны датчика, на контроллере цифровая подтяжка входов включена. Рвать питание не пробовал, но сейчас склоняюсь именно к этому варианту, потому что больше ничего не придумывается. Питание схемы производится от сетевого адаптера от ноутбука (примерно 19 вольт), потом на самой плате стоит DC/DC. Пробовал вместо него ставить линейник - та же песня. Чип не пробовал менять, но DS18b20 дает (внезапно!) точно такой же результат: +27 и плавный разогрев до +32. Дальше показания колеблются в зависимости от окружающей температуры, но ниже +32 результат не получал. Начинаю думать, что у меня в комнате реально +32) Покупать ртутник только для того, чтобы откалибровать цифровой датчик считаю странным, но рассматриваю и такой вариант. |
|
| Автор: | Zat [ Чт фев 09, 2017 20:19:35 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Lexter писал(а): Zat писал(а): Да, и насчёт АЦП тоже мимо. В этих датчиках нет АЦП. Там два импульсных генератора с разной температурной зависимостью и счётчики. Видать показалось. ![]() x8973 писал(а): Датчик не на проводах: он на выпиленном фрагменте платы. Конденсатор по питанию рядом датчиком присутствует. Подтягивающие резисторы есть со стороны датчика, на контроллере цифровая подтяжка входов включена. Просто сейчас открыл даташит, там черным по белому написано - резисторы 5кОм с двух сторон. В контроллере, если не ошибусь, подтяжка 40кОм, не помню. x8973 писал(а): Рвать питание не пробовал, но сейчас склоняюсь именно к этому варианту, потому что больше ничего не придумывается. Питание схемы производится от сетевого адаптера от ноутбука (примерно 19 вольт), потом на самой плате стоит DC/DC. Пробовал вместо него ставить линейник - та же песня. Для чистоты эксперимента, я бы отказался от всяких цифровых преобразователей. Может он и хороший, но тут же вопрос не лишь бы заработал, а понять почему, чтобы была повторяемость с правильным результатом. В даташите говорится о том, чтобы все выводы не висели в воздухе, а были подтянуты либо к земле, либо к питанию. Адресная шина особенно. Также почти жирным указано, пульсации искажают результат. В целом, все тоже самое, что я и говорил ранее, так же как и питание разнести с I2C, и пересечение допускается только под прямым углом. Вроде ничего нового, банальные правила. Если и это не поможет, то надо смотреть уже что именно читается из регистра, как преобразуется код и т.д. Тут уже могут быть чисто программные ошибки. Но пока надо разобраться со схемотехникой. |
|
| Автор: | x8973 [ Чт фев 09, 2017 20:58:11 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Вот дизайн платы. Датчик в самом верху. В центре - семисегментник, слева - DC/DC. |
|
| Автор: | BOB51 [ Пт фев 10, 2017 05:09:52 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Так светодиодный индикатор тоже греется, причем в зависимости от количества светящихся и времени свечения температура различаться будет. Да и источником помех немалым является (ШИМ с мультиплексированием при динамической индикации). |
|
| Автор: | Zat [ Пт фев 10, 2017 10:47:00 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
3-й контакт (OS) через резюк 10к тоже должен быть подтянут на питание (по даташиту), а сейчас он в воздухе. ![]() Даже переведу кусочек из даташита, т.к. этот момент очень важен: Вывод OS является выходом с открытым стоком без внутренней подтяжки. Подключите подтягивающий резистор от вывода OS к +VS. Использование больших значений сопротивления(подтяжки) уменьшает любую температурную ошибку из-за самонагрева от тока поступающего на вывод OS. Как я понимаю, на выводе OS висит мосфет(внутри чипа), и он служит для управления включением вентиляторов в системах охлаждения. Типа, при 85 градусах включить, при 60 градусах выключить. Собственно, этот выход, когда висит в воздухе и греется. Чтобы он не грелся, его подрубают на плюсовой выход, дабы что-то висело на нем, и шёл маааленький ток. А т.к. надо именно измерить температуру, а не использовать режим переключателя, то этот вывод через резюк 10 кОм должен быть подключен к плюсовой шине питания. Надо пробовать |
|
| Автор: | x8973 [ Пт фев 10, 2017 12:14:31 ] |
| Заголовок сообщения: | Re: Цифровой термометр LM75 |
Zat писал(а): Собственно, этот выход, когда висит в воздухе и греется. Что-то я не совсем понимаю, как транзистор, к которому не подключена нагрузка, может греться. Но раз даташит велит, то надо делать. Попробую на досуге. |
|
| Страница 1 из 2 | Часовой пояс: UTC + 3 часа |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|




