Document 115752

advertisement
УДК 004.421.4
РОЖКОВА Л.О., П.В. КАЛИНИН, ПОТАНИН С.И.
L.O. ROZHKOVA, P.V. KALININ, S.I. POTANIN
РАЗРАБОТКА ФУНКЦИИ ТЕРМОКОРРЕКЦИИ РАСХОДА ГАЗА В СТРУЙНОАКУСТИЧЕСКОМ ГАЗОВОМ СЧЕТЧИКЕ СГМ-1,6.
DEVELOPMENT FUNCTION OF TEMPERATURE COMPENSATION OF GAS FLOW
IN JET-ACOUSTIC GAS METERS SGM-1.6.
В статье рассматривается алгоритм получения температуры окружающей среды с помощью
электронного термометра, подсоединенного к микроконтроллерумодели MSP430G2553.
Ключевые слова: термокоррекция, электронный термометр, газовый счетчик, микроконтроллер
MSP430G2553, алгоритм.
The article describes an algorithm for obtaining ambient temperature using an electronic thermometer
connected to a microcontroller model MSP430G2553.
Keywords: temperature correction, electronic thermometer, gas meter, microcontroller MSP430G2553,
algorithm.
ВВЕДЕНИЕ
При учете объема газа в любых технических условиях необходима его
корректировка в соответствии с температурой окружающей среды. Согласно свойствам
химических веществ, существует функциональная зависимость их объема от температуры.
При ее повышении любые тела расширяются и, наоборот, при низкой температуре их
объем падает, особенно же это касается газообразных веществ. Для корректного учета
газа в счетчике существует несколько алгоритмов, позволяющих правильно вычислить
потраченный объем. Все эти алгоритмы основаны на снятии показаний термометра и
последующем применении функции, описывающей зависимость объема газа от его
температуры.
ПРИНЦИПИАЛЬНАЯ СХЕМА ЭЛЕКТРОННОГО ТЕРМОМЕТРА
Рисунок 1 –Принципиальная схема электронного термометра
Для струйного газового счетчика замер температуры производится с помощью
внешнего терморезистора, т.к. на температуру резистора, встроенного в микроконтроллер,
может влиять нагревание работающего процессора. Терморезистор модели
NCP18XH103F03RB подсоединен к микроконтроллеру модели MSP430G2553
[1]следующим образом – рисунок 1.
На каждом входе микроконтроллера стоит аналогово-цифровой преобразователь. С
его помощью МК преобразует сигнал в напряжение, поступающее на вход по
конкретному каналу, с помощью данной функции:
𝑉𝑖𝑛 =
𝑁𝐴𝐷𝐶 (𝑉𝑅+ − 𝑉𝑅− )
− 𝑉𝑅−
1023
Vin- входное напряжение (каналы А7, А6, А5, А0)
NADC-напряжение, подаваемое генератором контроллерана выходной канал (Р2.0)
VR+,VR-- максимальный и минимальный уровень входного сигнала, определяемые
программно, в данном случае – напряжение выходного канала и нулевое значение (земля).
ПОЛУЧЕНИЕ СОПРОТИВЛЕНИЯ ТЕРМОРЕЗИСТОРА
Напряжение, подаваемое на выходной канал, проходит по цепи, в том числе и через
терморезистор, меняющий свое сопротивление в зависимости от температуры. По
уровням напряжения, снимаемого с остальных каналов, можно вычислить изменение
сопротивления терморезистора.
Канал А0 нужен для контроля подаваемого напряжения. Значение, получаемое на
этом канале, должно быть в два раза меньше значения, которое подается генератором.
Непосредственно для вычисления температуры этот канал не используется.
Сопротивление на терморезисторе можно вычислить, как разницу напряжений на
каналах А6 и А7, поделенную на силу тока на этом участке цепи. Силу тока считаем как
разницу напряжений на каналах А5 и А6, поделенную на сопротивление однопроцентного
резистора(для более точных измерений). Итоговая формула для получения сопротивления
на терморезисторе[2]:
𝑅=
(𝑉𝑖𝑛7 − 𝑉𝑖𝑛6 ) ∙ 𝑅1%
𝑉𝑖𝑛6 − 𝑉𝑖𝑛5
Vin7 – напряжение, снимаемое с канала А7
ПОЛУЧЕНИЕ ЗНАЧЕНИЙ ТЕМПЕРАТУРЫ
Функция зависимости сопротивления от температуры приведена в документах на
терморезистор [1]:
1 1
𝑅 = 𝑅0 ∙ expB( − )
T T0
Для данной модели терморезистора приведены значения констант:
R0 = 10кОм
B = 3380K (для 25-50С°)
Т0= 25С°
График этой функции имеет вид гиперболы. Но для температурного интервала,
указанного в техническом задании на данный счетчик, производить такие сложные
вычисления слишком энергозатратно, т.к. температура должна измеряться довольно часто.
В комнатном диапазоне (от -10 до 40 С°) можно провести аппроксимацию участка
гиперболической функции до линейной с помощью расчетных значений, указанных в
документах на данную модель терморезистора. Для этого составляем уравнения
принадлежности точек прямой для границ диапазона[3]:
𝑦 = 𝑘∙𝑥+𝑏
{
−10 = 𝑘 ∙ 42,5 + 𝑏
40 = 𝑘 ∙ 5,8 + 𝑏
Решив систему, получим k≈-1,36, b≈47,9
Итоговое уравнение аппроксимирующей прямой: 𝑦 = −1,36𝑥 + 47,9. С помощью
этой функции получаем значения температуры из значений сопротивления
терморезистора.
Все вышеописанные действия (подача и снятие напряжения, работа с АЦП,
вычисление значений функций) программируются на языке С++ и вставляются в
прошивку микроконтроллера в виде отдельного модуля замера температуры. Результаты
работы этого модуля используются счетчиком в процессе вычисления объема
потраченного газа.
СПИСОК ЛИТЕРАТУРЫ
1. Семейство микроконтроллеров MSP430x2xx. Архитектура, программирование,
разработка приложений / пер. с англ. Евстифеева А. В. — М. :Додэка-XXI, 2010. — 544 с.:
ил. — (Серия «Мировая электроника»). —ISBN 978-5-94120-221-8
2. Богатырев Е.А., Ларин В.Ю., Лякин А.Е. Энциклопедия электронных
компонентов. Том 1. Большие электронные схемы. – М.: Макро Тим 2006. – ISBN 59900833-1-9, 978-5-9900833-1-8
3. Письменный Д.Т. Конспект лекций по высшей математике. Полный курс. – 9-е
изд. – М: Айрисприветнапирпнн-пресс, 2010. – ISBN 978-5-8112-4073-9
Рожкова Лидия Олеговна
ФГБОУ ВПО «Госуниверситет – УНПК», г. Орел
Студент группы 31-ИТ
Email: bubliklida_v1@mail.ru
Калинин Павел Валерьевич
ФГБОУ ВПО «Госуниверситет – УНПК», г. Орел
Студент группы 31-ИТ
Email: kalinipasha@yandex.ru
Потанин Степан Иванович
ФГБОУ ВПО «Госуниверситет – УНПК», г. Орел
Студент группы 31-ИТ
Email: kalinipasha@yandex.ru
Download