Работа с LM75
- Войдите на сайт для отправки комментариев
Здравствуйте.
Подскажите, пожалуйста, что не так?
Подключаю все так же, как на схеме.
Использую такой же код:
#include <Wire.h> #define LM75 (0x90 >> 1) void setup() { Wire.begin(); Serial.begin(9600); Serial.println("LM75 temp"); } void loop() { byte msb,lsb=0; float Grad=0; Wire.beginTransmission(LM75); Wire.write(0x00); Wire.endTransmission(LM75); Wire.requestFrom(LM75, 2); while(Wire.available() < 2); msb = Wire.read(); lsb = Wire.read(); if(msb<0x80) { Grad=((msb*10)+(((lsb&0x80)>>7)*5)); } else { Grad=((msb*10)+(((lsb&0x80)>>7)*5)); Grad=(2555.0-Grad); } Grad=Grad/10; Serial.print(Grad); Serial.println(" Grad"); delay(400); }
Залил контакты специальным клеем, чтоб не коротило и окунаю в воду сам датчик в открытом виде.
Открываю горячую воду, даю ей пробежать чтоб температура устаканилась. Сую под воду, показывает 45,46,47..52. Такой рост наблюдается не так, как указано в даташите - 100мс, а с момента попадания в воду (45*С) до конечной температуры (52*С) проходит порядка 10 секунд. Отключаю воду, температура медленно снижается до 35-30-26 градусов. Даю пробежать опять горячей воде чтоб сразу была горячая. Подставляю под воду и он опять с такой же скоростью медленно набирает обороты до конечной температуры. В чем может быть причина? Вода бежит одной температуры постоянно, а он так медленно "ростит" температуру. Тоже самое и с холодной. КОгда она уже пробежала, он с 26*С до 12*С снижается постепенно, хоть и все время находится под холодной водой одной температуры, проходит так же порядка 10 секунд. Однако если его не убирать из под воды и резко сменить на горячую, с холодной, то он с 12 прыгает до 40 и опять до 52 медленно раскачивается.
Где-то читал, что нужно ставить кондеры, может изза их отсутствия он так себя ведет?. А может, он просто так долго соображает по факту, в отличие от даташита?) Но кажется я просто чет не так сделал. Может использовать например DS18B20?
А вам собственно говоря не кажется, что корпус микрухи добавляет инертность данной системе, и чем больше корпус, тем больше времени надо на прогреть/остудить.
Нет, мне это не казалось пока я задавал этот вопрос, грешил на что угодно, только не на это.
10 секунд - это слишком много времени, чтоб узнать текущую температуру. Может, посоветуете датчик который делает это более быстрее? DHT11/22 слишком большой. А что насчет негерметичного DS18B20? Подойдет ли он, сможет ли он быстро реагировать на даже не значительное изменение внешней среды?
10 секунд - это слишком много времени, чтоб узнать текущую температуру. Может, посоветуете датчик который делает это более быстрее? DHT11/22 слишком большой. А что насчет негерметичного DS18B20? Подойдет ли он, сможет ли он быстро реагировать на даже не значительное изменение внешней среды?
Если задача только в измерении температуры окружающей среды, то 10сек - нормально. Сомневаюсь, что у вас будет настолько динамично меняющаяся температура.
Речь идет об измерении температуры воды. И да, она будет постоянно меняться и желательная точность измерения не более 2х секунд.
Ну тогда что нибудь типа термопары, покрытого очень тонким слоем диэлектрика с максимальной термопередачей.
Речь идет об измерении температуры воды. И да, она будет постоянно меняться и желательная точность измерения не более 2х секунд.
Промышленная термопара в герметичном корпусе, которую используют для регулировки температуры воды в котельных, имеет паспортную постоянную времени измерения 80 секунд.
Ну тогда что нибудь типа термопары, покрытого очень тонким слоем диэлектрика с максимальной термопередачей.
Приведите, пожалуйста, пример (ссылку) термопары, которая подойдет для arduino с питанием до 12В. Я нашел в интернете только с отдельным выводом на конкретные дисплеи. Может плохо искал. Если не сложно - будьте добры более точную ссылку с описанием.
Речь идет об измерении температуры воды. И да, она будет постоянно меняться и желательная точность измерения не более 2х секунд.
Промышленная термопара в герметичном корпусе, которую используют для регулировки температуры воды в котельных, имеет паспортную постоянную времени измерения 80 секунд.
Вы хотите сказать, что мое желание об измерении температуры в течение 2х секунд - технически невозможно?
Почему нет?
Только нужно использовать не контактный, а оптический датчик.
Правда, не уверен, что он окажется в приемлемом для Вас ценовом диапазоне.
В принципе, насет двух секунд - не исключаю, что можно все-таки обойтись и контактным датчиком. Только его нужно выбирать по критерию максимума отношения контактной площади к теплоемкости (в первом приближении к массе). Т.е. датчик должен иметь вид тонкой плстины существенной площади.
Почему нет?
Только нужно использовать не контактный, а оптический датчик.
Правда, не уверен, что он окажется в приемлемом для Вас ценовом диапазоне.
В принципе, насет двух секунд - не исключаю, что можно все-таки обойтись и контактным датчиком. Только его нужно выбирать по критерию максимума отношения контактной площади к теплоемкости (в первом приближении к массе). Т.е. датчик должен иметь вид тонкой плстины существенной площади.
Вы правы, ценовой диапозон очень важен. Но все же, примерная цена и ссылку на датчик, можете дать?
Что касается тонкой пластины и существенной площади: имеете ввиду что то конкретное или просто описали принцип действия датчика? Просто, если есть что либо похожее, можете ли вы привести ссылку?
Вы хотите сказать, что мое желание об измерении температуры в течение 2х секунд - технически невозможно?
Может быть и возможно. Для этого датчик должен иметь минимиальную массу. "Капельная" термопара одна из самых быстродействующих, но каковы будут реальные характеристики - неизвестно. Тем более, если ее покрыть для изоляции лаком.
Термопара весьма специфичный прибор, и чтобы использовать ее именно как прибор, а не как игрушку-демонстратор, нужно весьма серьезную электронику и программную обработку.
Требование быстродействия измерения в 2 секунды температуры потока воды наводит на мысли о возможной ошибочной постановке задачи.
Может быть и возможно. Для этого датчик должен иметь минимиальную массу. "Капельная" термопара одна из самых быстродействующих, но каковы будут реальные характеристики - неизвестно. Тем более, если ее покрыть для изоляции лаком.
Термопара весьма специфичный прибор, и чтобы использовать ее именно как прибор, а не как игрушку-демонстратор, нужно весьма серьезную электронику и программную обработку.
Требование быстродействия измерения в 2 секунды температуры потока воды наводит на мысли о возможной ошибочной постановке задачи.
Arduino в данном случае не такая уж и серьезная электроника как я понимаю? Серьезная программная обработка - обработка на машинном языке или просто сложные программные математические подходы?
Можете привести пример со ссылкой работы "термопары" и ардуино в совокупности?
Что скажете насчет ds18b20? Разве он не удовлетворит этим требованиям?
Arduino в данном случае не такая уж и серьезная электроника как я понимаю? Серьезная программная обработка - обработка на машинном языке или просто сложные программные математические подходы?
Ардуино - это другая электроника. Типичное напряжение на выходе термопары - десятки милливольт. Здесь нужна специфичная - усилители-преобразователи с компенсацией холодного спая. В школе учат, что напряжение на выходе термопары линейно зависит от температуры. В известных мне промышленных контроллерах, чтобы выпрямить линейную термопару, используют полиномы 5-й степени.
Можете привести пример со ссылкой работы "термопары" и ардуино в совокупности?
Термопарами в купе с Ардуино я не занимался. По-простому, это игрушка, а по-взрослому, выходит дороже самой Ардуины.
Что скажете насчет ds18b20? Разве он не удовлетворит этим требованиям?
Вы внимательно посмотрите даташит на ds18b20. Точности, время преобразования (очень не мгновенно) и т.д. Подходит это Вам или нет. С учетом того, что измерительный элемент в пластиковом корпусе, время прогрева у него будет больше, чем у "капельной" термопары.
enclouder, посмотрите, что такое термопара, на мой взгляд, неплохая статья.
Термопара. Устройство, принцип работы, измерения термопар.
http://www.eti.su/articles/izmeritelnaya-tehnika/izmeritelnaya-tehnika_4...
Стабилизация DS18 по температуре, тоже в районе 20 секунд. Простой скетч + датчик подмышку. И чем меньше дельта температур и выше масса регистрирующего элемента, тем это время длительнее.
Такой рост наблюдается не так, как указано в даташите - 100мс, а с момента попадания в воду (45*С) до конечной температуры (52*С) проходит порядка 10 секунд.
Всё у Вас нормально - охлаждается он 10с. Обновления показаний происходят раз в 100ms. как в даташите.
10 секунд - это слишком много времени, чтоб узнать текущую температуру.
Всё нормально у Вас.