Показать сообщение отдельно
Старый 01.08.2017, 21:16   #1
sensei
Member
 
Регистрация: Jan 2014
Сообщения: 62
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ошибка в работе макроса датчиков 3.2 (нет проблемы)

Формула для термометров сопротивления представлена как:
(АЦП - ADCн)*(Tв - Tн)/(ADCв-ADCн) + Tн
Рассмотрим датчик Pt1000 (тип 03).
Стандартная формула для линейного представления:
R = R0 + dR*T, тогда T = (R - R0)/dR
В терминах формулы очень похоже на:
(АЦП - ADCн)/(ADCв-ADCн)
Смотрим на значения из макроса:
ADCн = 1000 - это правильно
ADCв = 1385 - с учетом, что для Pt1000 dR = 3,85 Ом/'С, должно быть ADCв = 1003,85
Соответственно, это первая ошибка.
Теперь не совсем понятно, зачем для термометров сопротивления *(Tв - Tн) ... + Tн.
Формула из макроса будет работать только при Tв = 1 и Tн = 0.
Соответственно, это вторая ошибка.

Вообще говоря, макрос будет работать с ADCв = 1385, но только когда Tв = 100 и Tн = 0, т.к. Tв = 100 компенсирует 100-кратное увеличение ADCв, но об этом ничего не написано, и пара значений Tв и Tн воспринимается, как границы, в которых нужны измерения с датчика, а в моем случае это -50...+50 по паспорту датчика ESMT.

Последний раз редактировалось sensei, 01.08.2017 в 21:27
sensei вне форума   Ответить с цитированием