Радиолоцман Электроника en
расширенный поиск +
  

Обсуждение: Микроконтроллер решает сложные полиномиальные уравнения

Ответ
 
Опции темы Поиск в этой теме Оценить тему
Старый 25.12.2015, 13:12 #1
Robot Rlocman
Специалист
 
Аватар для Robot Rlocman
 
Регистрация: 24.11.2007
Сообщений: 2,112
Репутация: 225
Robot Rlocman Специалист Robot Rlocman Специалист Robot Rlocman Специалист
217 0
6 0
По умолчанию Обсуждение: Микроконтроллер решает сложные полиномиальные уравнения

Цитата:
Журнал РАДИОЛОЦМАН, май 2014 Ricardo Jimenez и Roberto Solorio Electronic Design С помощью выполняющейся за короткое время программы и простой схемы микроконтроллер PIC может линеаризовать характеристику термистора, чтобы точно измерить температуру и отобразить результат на дисплее. Измеряя температуру с помощью термистора, вы сталкиваетесь с проблемой линеаризации его отклика, необходимой для получения результатов требуемой точности.
Подробнее: Микроконтроллер решает сложные полиномиальные уравнения
Robot Rlocman вне форума  
Оценка 0
Старый 25.12.2015, 13:12 #2
схемопай
Знаток
 
Регистрация: 06.12.2009
Адрес: Днепропетровск
Сообщений: 800
Репутация: 112
схемопай Знаток схемопай Знаток
102 141
3 0
По умолчанию

Отличный материал.
В одной статье, я тоже хотел подобное сделать. Но меня испугало сложность решения уравнения Стейнхарта-Харта на ATmega8. И я пошел по простому пути, в результате получил приличную погрешность в диапазоне 0-250С.
Как не крути, но термосопротивление всеже имеет нелинейность, которую нужно пересчитывать в линейность....
Коэф. abc посчитать в маткаде можно. Скорее всего на Си нужно делать, хоть я не любитель этого языка, но на асм сложноватые моменты есть при расчете..
___________
Но опять таки в каждом случае можно найти выходы из положения.
Если память МК позволяет, то можно скажем создать калибровочную таблицу. Взять тот самый DS18B20 с точностью 0,1С и термосопротивление. Поместить в одну среду, нагревать, и сравнивать показания. Калибровочные данные с выбранным шагом заносить в таблицу Flash. Точность плавать будет, ибо калибровку через каждый 0,5-1 гр наверно никто не будет делать, но все-же..

Последний раз редактировалось схемопай; 25.12.2015 в 13:27.
схемопай вне форума  
Оценка 0
Компания КОМПЭЛ приглашает вас принять участие в вебинаре 15.07.2020, посвященном новому семейству микроконтроллеров общего назначения – STM32G4. Вебинар рассчитан на технических специалистов и тех, кто знаком с основами цифровой обработки сигналов. Мы разберем алгоритм работы CORDIC, а также рассмотрим пример создания цифрового фильтра на базе FMAC.
Старый 27.12.2015, 12:46 #3
kolobok0
Новичок
 
Регистрация: 20.07.2009
Адрес: Москва
Сообщений: 35
Репутация: 18
kolobok0 Новичок
8 5
0 0
Отправить сообщение для kolobok0 с помощью Skype™
Cool

Цитата:
Сообщение от схемопай Посмотреть сообщение
Отличный материал.
...DS18B20 с точностью 0,1С и термосопротивление.....
о кошках...

DS1820 - точность 0,5. Дискретность 0,0625
DS1821 - точность 0,5. Дискретность 0,01
kolobok0 вне форума  
Оценка 0
Видеозапись и материалы вебинара ST о семействе AC/DC регуляторов VIPerPLUS производства компании STMicroelectronics. Инженерами ST было детально рассмотрено новое семейство микросхем VIPerPLUS со встроенным транзистором, их возможности и топологии применения. Продемонстрировано испытание из лаборатории ST в Праге и моделирование в среде E-DesignSuite.
Старый 27.12.2015, 14:09 #4
схемопай
Знаток
 
Регистрация: 06.12.2009
Адрес: Днепропетровск
Сообщений: 800
Репутация: 112
схемопай Знаток схемопай Знаток
102 141
3 0
По умолчанию

Цитата:
Сообщение от kolobok0 Посмотреть сообщение
о кошках...

DS1820 - точность 0,5. Дискретность 0,0625
DS1821 - точность 0,5. Дискретность 0,01
Спасибо за замечание. Действительно я загнул немного, что-то в голове запомнилась такая точность. Ну суть общий смысл от этого не меняется
схемопай вне форума  
Оценка 0
Старый 27.12.2015, 23:02 #5
antonydublin
Специалист
 
Регистрация: 22.09.2010
Сообщений: 540
Репутация: 267
antonydublin Специалист antonydublin Специалист antonydublin Специалист
258 0
1 0
По умолчанию

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

Цитата:
Сообщение от схемопай
Взять тот самый DS18B20 … и термосопротивление.
Цифровые датчики конечно очень удобны. Но, к сожалению, я не видел ничего цифрового на температуры выше 150 градусов. А равно ничего аналогового с линейным выходом, подобного LM35, LM135, LM45, LM235, LM335, TMP35 и т.п.

В прошлом году пришлось заниматься термостатированием пресс форм, диапазон температур 150-300 градусов. Естественным было бы использование регуляторов 2ТРМ1, ТРМ202 и т.п., но ввиду ограниченного бюджета пришлось делать терморегуляторы "с нуля", за редким исключением из подручных материалов.

В первую очередь я попробовал полупроводниковые датчики с положительным ТКС серий KTY83 и KTY84. Их рассматривали по ссылке, приведённой в первом посте http://www.rlocman.ru/shem/schematics.html?di=151518. Это дешёвые, доступные и достаточно миниатюрные приборы, пригодные для создания компактных малоинерционных термозондов (KTY84 в корпусе). Ведь вопрос размеров порой выходит на первое место. По KTY я собрал небольшую статистику и пришёл к выводу, что они не годятся для промышленных приложений. Так, после 1-2х месяцев непрерывной работы (в горячем состоянии) некоторые начинали сбоить. Судя по данным самописцев – это хаотическое изменение сопротивления, похожее на внутренний обрыв. Хотя до возникновения этих неприятностей точность показаний была удовлетворительной, т.е. долговременная стабильность параметров у этих стекляшек всё же есть. Я имею ввиду повторяемость показаний от измерения к измерению по данным контрольного термометра, в пределах заявленной производителем точности конечно. Среди прочих недостатков – достаточно быстрый рост абсолютной ошибки определения температуры после некоторого порога. Эти характеристики есть в даташитах, но они больше ориентировочные, потому что многое зависит о способа возбуждения датчика (ток, напряжение), а также от партии приборов. Поскольку построение вручную "градировочных таблиц" для датчиков KTY, купленных в разных местах, обнаружило несовпадение наклонов и смещение характеристик по горизонтали. Т.е. наблюдаются большой разброс номинальных сопротивлений и вариация нелинейности характеристик. Хотя и незначительные по сравнению с низкой точностью датчиков. Поэтому я весьма скептически отношусь к намерениям Схемопая поднять точность таких конструкций http://www.rlocman.ru/forum/showthread.php?t=18957 до 1 градуса. Ведь автор этого цифрового термометра немного лукавил, когда говорил о точности в несколько градусов. Возможно и так, но в узком диапазоне для конкретного датчика при условии калибровки по эталонному термометру достаточной точности.

Поэтому на производстве (и не только) единственным выходом и стандартом де-факто, по сути, нужно считать термопары и платиновые термометры сопротивления. Можно сказать и по-другому: всё то, на что есть ГОСТы, международные и отраслевые стандарты. На медные и никелевые термометры сопротивления международные стандарты вроде бы отсутствуют, но они и у нас не слишком распространены.

Выбор между термопарами и платиновыми термометрами не всегда очевиден. И тем и другим присущи достоинства и недостатки, описанные в массе литературы. Из своего опыта скажу только, что использование термопар ХА и ХК не всегда оправдывает надежды на получение высокой точности измерений во всём диапазоне. Ошибки начинают появляться ещё при их изготовлении - сварке из разнородных проводов. Ведь независимо от диаметра провода некоторый разброс характеристик готовых термопар гарантирован. И это не учитывая причуды металлургии, т.к. химический состав проводов, изготовленных на разных заводах, может отличаться. Но допустимые отклонения готовых термопар для разных температурных диапазонов и исходных материалов классифицированы. В свою очередь, необходимость компенсации холодного спая усложняет схему измерения и вносит дополнительную ошибку. Если же нужно измерять температуру на приличном удалении, возникает необходимость использования специального термокомпенсационного провода, что повышает стоимость измерительной системы и опять же, вносит погрешности. Так что даже простая задача измерения температуры до 300 градусов термопарой с известной градировочной таблицей может оказаться непростой.

С платиновыми термометрами сопротивления (проволочными и плёночными) немного проще. Тут, так же как и в случае термопар, всё классифицировано, со своими допусками. Для каждого датчика (температурного коэффициента сопротивления материала) есть полиномиальные зависимости со своими коэффициентами A, B и C. С малошумящим усилителем или же прямой оцифровкой на АЦП разрядностью 20 бит и выше вполне достижима высокая точность измерений в широком диапазоне температур даже без предварительной градуировки датчика (за исключением калибровки термометра по нулю градусов). Так, миниатюрные платиновые термодатчики на керамических подложках типа M-FK 1020 и PT106051 хоть и уступают полноразмерным проволочным аналогам, показали себя очень хорошо в плане точности и стабильности. Питание таких датчиков лучше организовать от источника тока в несколько мА, подпёртым прецизионным ИОН. После наработки около 1600 часов только один термозонд отказал, но причина была механическая – лопнула керамическая подложка из-за деформации стального корпуса. Дрейфа параметров этих платиновых терморезисторов не обнаружилось.

В пристёжке несколько апноутов Microchip, некогда привлекших моё внимание.
Вложения
Тип файла: pdf PT100_PT10605X.pdf (34.3 Кб, 0 просмотров)
Тип файла: pdf PT100_M-FK 1020.pdf (13.0 Кб, 0 просмотров)
Тип файла: pdf AN687_Precision Temperature-Sensing With RTD Circuits.pdf (149.6 Кб, 0 просмотров)
Тип файла: pdf AN679_Temperature Sensing Technologies.pdf (177.5 Кб, 0 просмотров)
Тип файла: pdf AN1154_Precision RTD Instrumentation for Temperature Sensing.pdf (143.8 Кб, 0 просмотров)

Последний раз редактировалось antonydublin; 27.12.2015 в 23:18.
antonydublin вне форума  
Оценка +4
Старый 28.12.2015, 10:48 #6
схемопай
Знаток
 
Регистрация: 06.12.2009
Адрес: Днепропетровск
Сообщений: 800
Репутация: 112
схемопай Знаток схемопай Знаток
102 141
3 0
По умолчанию

Конечно, Вы правы. Уже точно не помню, в каких пределах я сравнивал показания температуры, ну уж точно не до 250С, так как у меня не было термометра с таким диапазоном. Этот прибор мне заказывали для измерения температуры двигателя. Там такой допуск в измерении допускался. Отсюдова, схема практически не имеет дополнительной обвязки.
И на счет KTY84 правы. При долгой работе у меня этот датчик тоже вышел из строя.
схемопай вне форума  
Оценка 0
Старый 28.12.2015, 12:30 #7
kolobok0
Новичок
 
Регистрация: 20.07.2009
Адрес: Москва
Сообщений: 35
Репутация: 18
kolobok0 Новичок
8 5
0 0
Отправить сообщение для kolobok0 с помощью Skype™
По умолчанию

И ещё 5 копеек:
Не всегда, а точнее достаточно редко, требуется действительно знать температуру точно. Обычно это связано с человеческим фактором: повторение условий ранее полученных, взаимодействие с другими людьми или системами. Для большинства встречающихся задач это "избыточно" (точнее сказать - можно обойтись мЕньшей точностью).

(круглый)
kolobok0 вне форума  
Оценка 0
Старый 30.12.2015, 23:48 #8
AMC
Специалист
 
Регистрация: 21.05.2007
Адрес: Москва
Сообщений: 476
Репутация: 210
AMC Специалист AMC Специалист AMC Специалист
172 59
14 2
По умолчанию

Возможно я со своим свиным рылом в калашный ряд. Но почитал статью, основной посыл - всякими хитростями избегать использования чисел с плавающей запятой. Для 8-ми разрядного МК это критично. Но зачем сейчас держаться за устаревшее железо и тратить свое время на выкрутасы с псевдо float - непонятно. Есть STM32, на нём можно решить задачу в "лоб". По цене - не дороже. Если только спортивный интерес. Но так можно вспомнить как в 60-х систему линейных уравнений с 1000 переменных решал целый отдел в течении полугода, сейчас такую задачу каждый может решить в одиночку на ПК в Matlab реально за секунду.
AMC вне форума  
Оценка 0
Ответ
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Оценка этой теме
Оценка этой теме:
Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход
Часовой пояс GMT +3, время: 19:33.
Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd. Перевод: zCarot
Батарейки FANSO – стабильное напряжение в любом положении
Преимущества новых высоковольтных SOI-драйверов Infineon
Срезы портала ↓
Рейтинг@Mail.ru