Автомобильный термометр
Содержание
Введение
1.
Разработка функциональной схемы. Работа измерителя
.
Обоснование и выбор элементной базы
.1
Датчик
.2
Усилитель
.3
Микроконтроллер
.4
ЖК индикатор
.5
Источник питания
.
Архитектура и основные элементы микроконтроллера
.
Блок-схема программы
Заключение
Литература
Введение
Целью данного курсового проекта является
разработка малогабаритного автомобильного термометра на базе микроконтроллера.
Устройство должно отвечать следующим требованиям:
диапазон измеряемых температур от -40 до +60
градусов Цельсия
индикация - жидкокристаллический цифровой
индикатор
разрешающая способность 0,5 градусов Цельсия
тип чувствительного элемента - терморезистор
питание термометра - 12 В постоянного тока
Как понятно из названия, автомобильные термометры
используется в транспортных средствах для измерения и индикации температуры
окружающей среды. Подобные устройства должны обладать небольшими габаритами,
выводить информацию в удобной цифровой форме на ЖК или светодиодный дисплей и
питаться от автомобильной сети 12 В.
1.
Разработка функциональной схемы. Работа измерителя
Рисунок 2.1 - Функциональная схема
измерительного устройства (Д - датчик температуры (терморезистор), У -
усилитель, МК - микроконтроллер, ЖК - жидкокристаллический дисплей, ИП -
источник питания)
Устройство работает следующим
образом: терморезистивный датчик, помещаемый снаружи автомобиля, включен в одно
из плеч измерительного моста Уитстона. В исходном состоянии мост сбалансирован
- сопротивления всех элементов равны 1.2 кОм, что соответствует максимальной
измеряемой температуре - плюс 60 градусов Цельсия. Если температура внешней
среды меняется, это влечет за собой изменение сопротивления терморезистора, и,
как следствие, разбалансировку измерительного моста. Напряжение с измерительной
диагонали моста подается на входы инструментального операционного усилителя,
где производится их вычитание и усиление. После этого сигнал поступает на вход
10-ти битного АЦП, встроенного в микроконтроллер. Дискретизированный сигнал
обрабатывается программой контроллера, которая вычисляет сопротивление
терморезистора и, затем, по таблице определяет температуру.
2. Обоснование
и выбор элементной базы
2.1 Датчик
В качестве датчика для устройства
используется NTC терморезистор B57020 производства компании Epcos. Датчик
является выносным и имеет защищенный соединительный кабель. Основные
технические характеристики датчика привдены в Таблице 1.
Таблица 1 - Технические
характеристики B57020.
Диапазон
рабочих температур, °С
|
-40…+80
|
Максимальная
мощность, мВт
|
350
|
Погрешность
сопротивления, %
|
±2
|
Номинальная
температура, °С
|
0
|
.2 Усилитель
В качестве усилителя сигнала датчика для данного
устройства используется прецизионный операционный усилитель AD8551 фирмы Analog
Devices. Усилитель работает в дифференциальном режиме, т.е. усиливает разность
напряжений на своих входах. Усилитель имеет однополярное питание, высокую
точность и небольшой потребляемый ток.
Рисунок 2.2 - Схема включения усилителя
Выходное напряжение , при этом .
Чтобы рассчитать коэффициент
усиления, оценим максимально и минимально возможное напряжение на входе
усилителя по формуле
.
Получим Umax=0.49 В, Umin= 0В.
Следовательно, коэффициент усиления следует установить равным 10.
2.3 Микроконтроллер
В качестве микроконтроллера в
устройстве используется микросхема AT89C51AC3 производства фирмы Atmel. Так как
в данном устройстве от контроллера не требуется высокой скорости вычисления и
большого объема памяти, то выбор был в первую очередь обусловлен наличием в
этом контроллере достаточного количества выводов для реализации статической
индикации, а так же встроенного АЦП, что позволило несколько упростить схему
устройства.
Данный контроллер выполнен на
архитектуре процессора Intel MCS51 и имеет 256 байт встроенного ОЗУ, 2048 байт
встроенного расширенного ОЗУ, 64 кбайт
встроенной флэш-памяти, три
16-разрядных таймера-счетчика, Диапазон рабочих напряжение питания 3…5.5 В,
пять портов: 32 + 4 цифровых линии ввода-вывода,
-разрядный АЦП с 8
мультиплексированными входами. Потребляемые микроконтроллером в режиме работы
ток высчитывается по формуле:
В качестве резонатора используется
керамический резонатор CSTCV12.0MTJ0C4-TC частотой 12 Мгц производства компании
Murata.
2.4 ЖК индикатор
Так как в устройстве требуется
выводить всего три цифры и знак, в качестве устройства индикации удобно взять
3.5-символьный семисегментный ЖК индикатор фирмы Futurlec с общим анодом.
Устройство работает от напряжении 5 В и имеет очень маленький потребляемый ток
(максимум 25 мкА).
Индикатор подключен напрямую к
микроконтроллеру в режиме статической индикации.
.5 Источник питания
Напряжение питания схемы - 12 В
постоянного тока. Все токопотребляющие элементы имеют рабочее напряжение 5 В,
поэтому в качестве DC-DC преобразователя можно использовать стабилизатор
напряжения LM78M05 фирмы Fairchild Semiconductor. Он выдает стабилизированные 5
В при входном напряжении от 7 до 20 В и силе тока на выходе 350 мА.
Рассчитаем токопотребление нашей
схемы:
Из расчета видно, что источник
питания обеспечивает достаточный ток для питания устройства.
3. Архитектура
и основные элементы микроконтроллера
термометр
микроконтроллер измеритель
Рисунок 3.1 - Структурная схема
микроконтроллеров семейства MCS-51
Архитектура семейства MСS-51 в
значительной мере предопределяет ее назначение - это построение компактных и
дешевых цифровых устройств . Все функции микроконтроллера реализуются с помощью
единственной микросхемы. В состав семейства MCS-51 входит ряд микросхем от
самых простых микроконтроллеров до достаточно сложных. Микроконтроллеры
семейства МС8-51
позволяют
выполнять как задачи управления различными устройствами, так и реализовывать
простейшие алгоритмы цифровой обработки сигналов. Все микросхемы этого
семейства работают с одной и той же системой команд. Большинство микросхем выполняется
в одинаковых корпусах с совпадающей цоколевкой (схемой расположения выводов).
Это позволяет использовать для разработанного устройства микросхемы разных
фирм-производителей (таких как Intel, Dallas, Atmel, Philips и т. д.) без
переделки принципиальной схемы устройства и программы.
Структурная схема микроконтроллера
представлена на рисунке 3.1 и состоит из следующих основных функциональных
узлов:
блока управления;
арифметико-логического блока;
блока таймеров/счетчиков;
блока последовательного интерфейса и
прерываний;
программного счетчика, памяти данных
и памяти программ.
Двусторонний обмен данными между
элементами внутренней структуры
По такой схеме построены практически
все представители семейства МСS-51. Различные микросхемы этого семейства
различаются только регистрами специального назначения (в том числе и
количеством портов). Система команд всех контроллеров семейства МСЗ-51 содержит
111 базовых команд длиной 1, 2 или 3 байта и не изменяется при переходе от
одной микросхемы к другой. Это обеспечивает прекрасную переносимость программ с
одной микросхемы на другую. Рассмотрим подробнее назначение каждого блока.
Блок управления и синхронизации
предназначен для выработки синхронизирующих и управляющих сигналов,
обеспечивающих координацию совместной работы блоков микроконтроллера во всех
допустимых режимах его работы. В состав блока управления входят:
устройство формирования временных
интервалов;
логика ввода-вывода;
регистр команд;
регистр управления потреблением
электроэнергии;
дешифратор команд, логика управления
микроконтроллером.
Устройство формирования временных
интервалов предназначено для формирования и выдачи внутренних синхросигналов
фаз, тактов и циклов. Количество машинных циклов определяет продолжительность
выполнения команд. Практически все команды микроконтроллера выполняются за один
или два машинных цикла, кроме команд умножения и деления, продолжительность
выполнения которых составляет четыре машинных цикла. Обозначим частоту
задающего генератора через Fг. Тогда длительность машинного цикла равна 12/Fг
или составляет 12 периодов сигнала задающего генератора. Логика ввода-вывода
предназначена для приема и выдачи сигналов, обеспечивающих обмен информацией с
внешними устройствами через порты ввода-вывода РО-РЗ.
Регистр команд предназначен для
записи и хранения 8-разрядного кода операции выполняемой команды. С помощью
дешифратора команд и логики управления микроконтроллера он преобразуется в
микропрограмму выполнения заданной команды.
Регистр управления потреблением
(PCON) позволяет останавливать микроконтроллер для уменьшения потребления
электроэнергии и уменьшена уровня помех. Еще большего уменьшения потребления
электроэнергии и уменьшения помех можно добиться, остановив задающий генератор
микроконтроллера при помощи переключения битов регистра управления потреблением
PCON. В вариантах микросхемы, изготовленных по технологии n-МОП (серия 1816 или
иностранных микросхем, в названии 1 вторых в середине отсутствует буква «с»),
регистр управления потреблением PCON содержит только один бит, управляющий
скоростью передачи последовательного порта SMOD, а биты управления потреблением
электроэнергии отсутствуют.
Арифметико-логический блок (АЛБ)
представляет собой параллельное
-разрядное устройство,
обеспечивающее выполнение арифметических и логических операций. АЛБ состоит из:
регистров временного хранения ТМР1 и
ТМР2;
ПЗУ констант;
арифметико-логического устройства;
дополнительного регистра (регистра
В);
аккумулятора (АСС);
регистра состояния программ (Р8\У).
Регистры временного хранения - это
8-разрядные регистры, предназначенные для приема и хранения операндов на время
выполнения операций над ними. Регистры временного хранения программно не
доступны, ими управляет только микропрограмма выполнения команд.
ПЗУ констант обеспечивает выработку
корректирующего кода при дво-1чно- десятичном представлении данных или кода
маски при битовых операциях и констант.
Арифметико-логическое устройство
представляет собой схему комбинационного типа с последовательным переносом,
предназначенную для выполнения арифметических операций сложения, вычитания и
логических операций «И», «ИЛИ», суммирования по модулю 2 и инвертирования.
Регистр В - восьмиразрядный регистр,
используемый во время операций умножения и деления. Для других инструкций он
может рассматриваться как дополнительный регистр внутренней памяти
микроконтроллера.
Аккумулятор - 8-разрядный регистр,
предназначенный для приема и хранения результата, полученного при выполнении
арифметико-логических операций или операций сдвига
Блок последовательного интерфейса и
прерываний предназначен для
Организации последовательного
ввода-вывода информации и организации
Прерываний выполнения программы. В
состав этого блока входят:
логика управления;
регистр управления;
буфер передатчика;
буфер приемника;
приемопередатчик последовательного
порта;
регистр приоритетов прерываний;
регистр разрешения прерываний;
логика обработки флагов прерываний.
Счетчик команд предназначен для
формирования текущего 16-разрядного адреса внутренней или внешней памяти
программ. В состав счетчика команд входят 16-разрядный буфер счетчика команд,
регистр счетчика команд и схема инкремента (увеличения содержимого на 1).
Память данных предназначена для
временного хранения информации, используемой в процессе выполнения программы.
Порты РО, Р1, Р2, РЗ являются
квазидвунаправленными портами ввода-1 вывода и предназначены для обеспечения
обмена информацией между микроконтроллером и внешними устройствами, образуя 32
линии ввода-вывода.
Регистр состояния программы (PSW)
предназначен для хранения информации о состоянии АЛУ при выполнении программы.
Память программ предназначена для
хранения программного кода и представляет собой постоянное запоминающее
устройство (ПЗУ). В разных микросхемах применяются масочные, стираемые
ультрафиолетовым излучением или FLASH ПЗУ.
Регистр указателя данных (DPTR)
предназначен для формирования 16-разрядного адреса внешней памяти данных или
памяти программ при считывании таблиц констант.
Указатель стека (SP) представляет
собой 8-разрядный регистр, предназначенный для организации особой области
памяти данных (стека), в которой хранятся адреса возврата из подпрограмм,
переменные и содержимое внутренних регистров микроконтроллера (в том числе
регистры PSW и аккумулятор).
4. Блок-схема
программы
Рисунок 4.1 - Блок-схема программы
Заключение
В результате курсовой работы был разработан
малогабаритный автомобильный термометр на базе микроконтроллера, отвечающий
следующим требованиям:
диапазон измеряемых температур от -40 до +60
градусов Цельсия
индикация - жидкокристаллический цифровой
индикатор
разрешающая способность 0,5 градусов Цельсия
тип чувствительного элемента - терморезистор
питание термометра - 12 В постоянного тока
Литература
.
Аш Ж. с соавторами. Датчики измерительных систем. -М., 2010. -480 с.
.
Микушин А. Занимательно о микроконтроллерах -СПб., 2009. 424 с.
.
Фрунзе А. Микроконтроллеры? Это же просто! -М., 2012. 336с.