Столкнулся с проблемой измерения температуры с помощью термопары и MAX31855. Показания от MAX31855 скачут +-3 градуса. Кто нибудь работал с микросхемой MAX31855? У всех такие лаги? Схема включения из даташита.
Зарегистрирован: Чт сен 16, 2010 19:47:01 Сообщений: 192 Откуда: Украина
Рейтинг сообщения:0
Интересная микросхема. Что значит "скачут" - при каждом измерении или долговременный уход в "узком" или "широком" диапазоне? Никогда не работал с такой, но судя по datasheet:
1. Совпадает ли тип/диапазон термопары с типом микросхемы (J, N, T, E и т.д.). 2. Как часто считываются данные (не чаще 100мс по datasheet). 3. Эта микросхема линейная, поэтому нелинейность термопары нужно дополнительно компенсировать самостоятельно (раздел Temperature Conversion, может в этом причина). 4. Не прогревается ли "холодный" конец термопары, он должен быть температуры самой плата. И тут же: нет ли рядом с микросхемой чего-то гарячего. Какая длина провода от точки измерения до платы? 5. Выставляется ли бит ошибки при считывании. 6. Что с питанием (max 4В)? Посмотрите на осциллографе. 7. Нет ли рядом источника помех (раздел Noise Considerations). Поцепите на дифференциальные входы небольшую ёмкость. 8. Попробуйте считывать температуру самой микросхемы. Если она "пляшет", обратите внимание на раздел Thermal Considerations.
Скачет - значит, что показания при стабильной измеряемой температуре - разные +-3 градуса.
1. совпадает (тип К) 2. Не чаще 500мС 3. Не в линейности дело. Измеряется комнатная температура порядка 24 градусов. 4. Длина термопары 1 метр. Расстояние от микросхемы до контактов термопары 1см. Микросхема не греется. 5. нет не выставляется 6. С питанием действительно промазал - каюсь (до этого стояла МАХ6675 у неё питание 5В - с ней проблем вообще не было. Меряла в тех же условиях ту-же температуру стабильно). Потом решил перейти на MAX31855 и столкнулся с проблемой скачков показаний в диапазоне +-3 градуса при измеряемой температуре 24градуса.) 7. помех нет. Конденсаторами обвесился - не помогло. 8. Пробовал считывать температуру самой микросхемы - показания довольно стабильны.
Похоже действительно проблема в завышенном питании. Попробую на выходных уменьшить напряжение до 3В. (Сейчас в отъезде. Не на чем пробовать.)
Приветствую. Мучаюсь с подключением этой микрухи уже вторую неделю. Выдает непонятные показания и флаги ошибок. Ошибки (обвел на скане): 1)Жёлтый - Fault (D16); 2) Красный - open circuit (D0) Термопара подсоединена, питание модуля 3,25 В. Сопряжение такое: CS, SCK - через делители (220 и 330 ом), SDO - напрямую к контроллеру. ХЕЛП МИ ПЛИЗ!!! График снятый с пинов контроллера пик 16ф73 прилагаю (работает от кварца 4 МГц), также прилагаю фото работы.
Добавлено after 4 hours 10 minutes 7 seconds: с ошибкой разобрался. термопара была оборвана внутри оплетки, еле нашел обрыв. На питании микрухи 100 нФ, при подпаивании дополнительных кондеров по входу питания показания немного меняются в лучшую сторону, но все равно ужасные. Выход термопары шунтировал 100 нФ конденсатором. Также пробовал подпаять дополнительные конденсаторы с + термопары на +3,3 В, и - термопары на землю, оба 100 нФ. Ничего не помогает, показания выдаются вообще в разнобой страшный...Флаги читаются отлично, а вот данные отвратительно...
Добавлено after 2 hours 20 minutes 1 second: Парни а как правильно организовать питание данной микросхемы, полагаю надо фильтровать входы питания девайса очень хорошо. У меня запитано от трансформатора 220-12, диодный мост, 100 мкф конденсатор, потом стабилизатор на 3,3 вольта. Может этого мало, поэтому она так и "шумит"?
Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Да, тип термопары соответствует маркировке 31855К (К-тип). Ок, завтра выложу кусок кода. Но не знаю это обычный spi чего там нового можно увидеть. Уровни сигналов согласованны, осцилографом все проверил. Частота spi 1 МГц, по даташиту до 5 МГц можно. Пакеты данных приходят, но они постоянно меняются, сама микросхема шлет бодягу всякую, флаги и незадействованные биты всегда четко идут, температуры (причем обе) скачут постоянно. Такое чувство будто микросхема нуспевает доконца сделать преобразование или неу певает обновить информацию в сдвиговом регистре своем, не понимаю. Делал паузы между опросами, снижал скорость опроса до 2 раз в секунду, ничего не помогает. Я повешусь скоро. Перепаял 4 микросхемы и все выдают какуюто хрень, причем флаги ошибок все в нулях, и четко реагируют на вмешательство извне... Скажите мне пожалуйста, Вы заставили эту микросхему работать? Третья неделя битья об стену головой и плясок с бубном...
Я с ней дел не имел. Просто заинтересовала эта микросхема, посмотрел ДШ, там вроде все просто. С преобразованием температуры не ошибаетесь? Или ориентируетесь на голые данные? С другой ТП не пробовали? Хотя если и внутренняя температура скачет, значит дело в другом.
Добавлено after 1 hour 32 seconds: Почитал еще ДШ на Макс и появились еще вот какие соображения: 1. Почему CLK и nSS подключены не напрямую, а через делители? 2. Конденсатор между +Т и -Т должен быть 10 нФ, так рекомендует ДШ. Да и то только в случае наличия шумов на линии. И вообще почитайте там на стр.11 рекомендации по борьбе с помехами. 3. И самое важное на мой взгляд. Вы используете "железный" SPI, а он рассчитан на 8-битные данные. Однако Макс выдает результаты измерений и статус в виде 32-битного слова. Вот я думаю, что между пачками 8-битных тактов могут происходить потери информации, отсюда и мусор. Попробуйте все-таки программным методом сделать SPI, рассчитанный на прием 32-битного слова целиком.
Добавлено after 4 minutes 16 seconds: Вопрос про делители снимаю. Питание тому виной
_________________ Каждый имеет право на свое личное ошибочное мнение.
У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
Боролся с помехами по всякому и кондерами все обвешивал, и термопару обрезал и вплотную к микросхеме подпаял, ничего не помогло. Либо: 1) Бракованная партия, но я заказывал по две микросхемы с разных мест, поэтому ну не знаю, как то с трудом верится что брак. 2) Что то не так в программе опроса модуля. Для этого прикреплю картинку опроса (уже по програмному SPI на 32 битное слово), сам скан опроса. Выложу еще все что необходимо=) В архиве скан SPI.
Мне кажется с таким, софтовым, опросом все нормально, диаграмма точно как в ДШ. Все биты ошибок тоже чистые. Так что либо брак микросхем, либо какие-то неведомые помехи.
А термопару меняли?
В качестве соломинки для утопающего: другого ПИКа нет, который от 3.3 В питается?
_________________ Каждый имеет право на свое личное ошибочное мнение.
У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
К сожалению другого пика нет. Термопара от мультиметра, менял на другую, бред все равно на выходе. Делаем вывод: Бракованные микросхемы значит, хотя все 4 штуки... ХУЖЕ МИКРОСХЕМЫ Я НЕ ВСТРЕЧАЛ ЕЩЕ, В ТОПКУ ЕЕ!
Может попробуете заменить кварц, поднять с 4 до 16 хотя бы. И соответственно частоту SPI подкорректируйте. Сейчас она равна 65 кГц, вот пусть такой и остается.
В сети таких жалоб я не встречал, может все-таки есть решение.
_________________ Каждый имеет право на свое личное ошибочное мнение.
У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
Тоже столкнулся с проблемой с этими микросхемами. Был заказан на али демонстрационный комплект с термопарой и маленькой платой с этой микросхемой. Хост-процессор ARM7 с 3.3В питанием. Соответственно, от него же запитал и эту микросхему. Данные получаю, но показания скачут в больших пределах. По температуре термопары, грубо говоря, от -1000 до +1000. От внутреннего датчика от -30 до +127. Вобщем такое впечатление что просто генератор случайных чисел. Но при этом реакция на кз на землю, питание и обрыв адекватные - выставляет соответствующий флаг. Купил еще пару таких уже у нас в чип и дипе. Результат такой же. Смотрел осциллографом сигнал -там все в порядке.
Это я все к чему... Смотрел все. Питание норм 3.3В. Интерфейс в порядке - контролировал осциллографом. Ошибка с моей стороны маловероятна. Вобщем, подозреваю что эти микросхемы поддельные. Маркировки что заказанные с али, что купленные чип и дипе совпадают до буквы. Вот они:
Вот чёрт - та же история! Причём - перерыл пол интернета - у всех работает. Ну - думал, что это я где-то чего-то не так понимаю... Запостил на ардуиновском буржйском сайте - в надежде, чтобы другие не попадались...
(не знаю - можно ли тут оставить ссылку на ардуино.сс с темой - и на продавцов с ебея и али - от которых пришли эти бракованные чипы с одинаковой маркировкой)
Вообще - ситуация конечно странная - не так уж и дорог чип, чтобы его подделывать - тем более что он выдаёт о себе: Chip ID: 31855 Cold Junction: 128.00 Thermocouple: 0.00
С Али - блочки на MAX6675 в комплекте с (К)-типа термопарой. К Ардуине Уно. Результаты в "мониторе порта" ардуиновского IDE. Скетчи, в которых МАХ читается дважды shiftin() работают плохо. Показания скачут. Постоянно выскакивает ошибка "обрыв термопары". Накатал 16-ходовый цикл с прямым ногодрыгом + digitaRead() и delay(1) на каждом ногодрыге. Все заработало как часы.
Читал английский даташит микры. По нарисованной осциллограмме видно - данные должны читаться при "1" (при высоком уровне) на SCK. Ну естественно с задержкой после фронта. А shiftin() похоже читает при нуле. - А там как раз интервал "перескоков" уровней. Читал ардуиновский хелп. Неплохо знаю инглишь - но уж очень скупая информация, мать иху. Может у вас те же грабли. ... Ну да, такая же точно осциллограмма по даташиту.
Работал с её братом (который с нулём на конце и 1-wire вместо SPI). У меня температура определялась адекватно, но бит ошибки иногда проскакивал, даже если всё в порядке. Так что не доверяйте ему особо Признаком проблемы считал, если бит выкидывался очень много раз подряд.
Ребята, собрал тоже датчик на этой микросхкме. Только термопара S типа, соответственно и микруха MAX31855SASA для S термопар. Подключили по SPI и питание3,3в от STM32, работает вроде стабильно. При чтении (раз в сек) принимаем длинный (32 бита ) код, в котором зашифрованы температура термопары и температура микрухи, а также бит обрыва термопары. Вопрос: как по температуре термопары и температуре вычислять температуру горячего конца, что с чем сложить, вычесть???
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 17
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения