Устройство контроля и поддержания температуры

Автор: Пользователь скрыл имя, 04 Ноября 2012 в 20:00, дипломная работа

Описание работы

Работа посвящена разработке программно-аппаратного комплекса, предназначенного для обеспечения и поддержания заданной температуры узлов блока путем регулирования скорости вращения вентиляторов, а также для мониторинга температуры контролируемых узлов.

Работа содержит 1 файл

экзамен билеты ИБУ.doc

— 126.00 Кб (Скачать)

Микроконтроллеры AVR изготавливаются по технологии КМОП, благодаря которой имеют высокое быстродействие и низкий ток потребления. Большинство команд выполняется за 1 такт. Поэтому при тактовой частоте 1МГц быстродействие контроллеров может достигать 1 миллиона операций в секунду.

Приведем технические  характеристики некоторых микропроцессоров AVR:

AT43320A – микроконтроллер на ядре AVR. Имеет встроенные USB-функцию и хаб с 4 нисходящими портами, 512 байт ОЗУ, 32х8 регистров общего назначения, 32 программируемых вывода, последовательный и SPI-интерфейсы. Функция имеет 3 конечные точки с буферами FIFO размером 8 байт. Для нисходящих портов хаба предусмотрено индивидуальное управление питанием;

AT43321 – контроллер клавиатуры на ядре AVR. Имеет встроенные USB-функцию и хаб с 4 внешними нисходящими портами, 512 бай ОЗУ, 16 Кбайт ПЗУ 32х8 регистров общего назначения, 20 программируемых выводов, последовательный и SPI-интерфейсы. Функция имеет 3 конечные точки. Для питания нисходящих портов предусмотрено индивидуальное управление питанием;

АТ43324 – микроконтроллер на ядре AVR. Имеет встроенные USB-функцию и хаб с 2 внешними нисходящими портами, 512 бай ОЗУ, 16 Кбайт ПЗУ, 32х8 регистров общего назначения, 34 программируемых вывода. Функция имеет 3 конечные точки. Для нисходящих портов хаба предусмотрено индивидуальное управление питанием.

1.1.2 Устройство на базе контроллеров архитектуры MAX66XX

 

MAX66XX –микроконтроллеры, предназначенные для контроля температуры. Для решения поставленной задачи наиболее подходит микроконтроллер MAX6661.

ИС MAX6661 – это  внешний температурный датчик и интеллектуальный контроллер вентилятора с замкнутой цепью управления скоростью вращения вентилятора. В качестве внешнего датчика чаще всего используется p-n-p транзистор, включенный с общим коллектором, например, встроенный в подложку микропроцессора, или транзистор в диодном включении, недорогой, легко монтируемый (2N3904 NPN типа или 2N3906 PNP типа).

Устройство  также содержит замкнутый контур управления скоростью вращения вентилятора  с обратной связью с его тахометром. ИС MAX6661 сравнивает температурные данные с пороговыми значениями и установками усиления, программируемыми пользователем по SPI - шине. Результатом сравнения является автоматическое управление скоростью вращения вентилятора, в зависимости от данных температурного датчика. Замкнутый контур управления может быть разорван в любое время для передачи управления вентилятором системе.

Скорость вращения вентилятора управляется напряжением, в отличие от управления с помощью  широтно – импульсной модуляции, что значительно снижает акустический шум и повышает надежность вентилятора. Встроенный источник питания управляет вентиляторами с током потребления до 250 мА. Данные температуры обновляются каждые 300 мс и в любое время доступны для чтения с помощью SPI интерфейса. Погрешность измерения температуры MAX6661 составляет 1°C (макс) в температурном диапазоне датчика от +60°C до +100°C. Данные организованы в виде слова 10-бит + знак с разрешающей способностью 0.125°C. ИС MAX6661 предназначена для работы в диапазоне температур от -40°C до +125°C и выпускается в 16-pin QSOP корпусе.

Недостатком применения данного контроллера является невозможность  расширять систему охлаждения, т.е. увеличить количество контролируемых узлов, что в значительной степени  снижает гибкость разрабатываемой  системы и увеличивает ее стоимость.

1.1.3 Устройство на базе контроллеров архитектуры Intel 8051

 

Микроконтроллеры Intel 8051 – семейство микроконтроллеров гарвардской архитектуры, разработанных фирмой Intel в 1980 году. Официальное название семейства процессоров этого типа MCS-51.

В таблице 1 приводится список 8-разрядных микроконтроллеров  с архитектурой MCS-51. Практически все контроллеры имеют расширенную функциональность: встроенный mp3-декодер, интерфейс чтения смарт-карт и т.п.

 

Таблица 1. Микропроцессоры  с архитектурой Intel 8051

 

Тип

Питание, В

МГц

I/O

Flash, Кбайт

SRAM, Кбайт

Интерфейс

Цена, р

AT89C5131

3,0 – 5,0

40

34/18

32

1,25

UART,USB,SPI

300

AT89C5132

2,7 – 3,3

40

44/38

64

2,5

UART, USB,SPI, I2S

400

AT89C51ED2

2,7 – 5,5

60

50

64

2,25

UART/USART ,SPI

350

AT89C5122

3,6 – 5,5

16

46/13

32

0,75

UART,USB, SPI, SmartCard

250


 

Как видно из таблицы, наименее функциональным (а  значит, и менее дорогим), поддерживающим интерфейс USB, является микроконтроллер AT89C5131, который и выбирается в качестве управляющего узла системы контроля и поддержания температуры.

 

Выводы

Недостатком применения MAX66XX является невозможность расширять систему охлаждения, т.е. увеличить количество контролируемых узлов, что в значительной степени снижает гибкость разрабатываемой системы и увеличивает ее стоимость.

Обзор показал, что наиболее простым микроконтроллером, поддерживающим интерфейс USB, и при этом достаточно быстродействующий (рабочая частота 40 МГц), является микроконтроллер АТ89С5131. Такой выбор позволит построить систему поддержания температуры с возможностью управления тремя вентиляторами, а также передачей информации пользователю по стандартному интерфейсу с минимальными затратами. Выбор также осуществлялся с тем учетом, что для схемы требуется минимум дополнительной обвязки. Немаловажно наличие бесплатного ассемблера, компилятора языка С, программатора и драйвера для Windows. Удобна возможность программирования не по SPI, а по USB-каналу.

 

2.СХЕМОТЕХНИЧЕСКАЯ ЧАСТЬ

2.1 Разработка  структурной схемы блока, построенного  на базе контроллера AT89C5131

Целью выполнения данного дипломного проекта является создание устройства, которое способно контролировать и поддерживать конкретный температурный режим. Для этого необходимо, чтобы система состояла из узла управления всеми процессами, узла контроля температурой, а также управляемым элементом, который будет осуществлять охлаждение контролируемого объекта. В качестве управляемого узла был выбран вентилятор с возможностью регулирования скорости, так как это позволит использовать систему в большинстве персональных компьютеров.

Для обеспечения  функции мониторинга температурной информации необходимо обеспечить связь между разрабатываемой системой и управляющим компьютером. В качестве данной связи выбран интерфейс USB, так как на сегодняшний день он имеет наибольшее распространение на персональных компьютерах по сравнению с другими интерфейсами.

В результате разработана  структурная схема блока контроля и поддержания температуры, которая  приведена на рисунке 1.

 

Рисунок 1 - Структурная  схема проектируемого устройства

 

Как видно из структурной схемы, блок состоит из контроллера, девяти датчиков температуры и трех вентиляторов. Микроконтроллер собирает информацию с температурных датчиков, и, учитывая заданную температуру, подает сигнал управления на вентиляторы. Затем контроллер опрашивает вентиляторы и получает значение скорости вращения каждого из них, что реализует обратную связь, на основе которой корректируются сигналы управления.

Связь между  контроллером и датчиками температуры  осуществляется по одноразрядной шине 1-wire.

По шине USB осуществляется передача текущих значений температуры на управляющий компьютер, а также получение значения поддерживаемой температуры для каждого контролируемого узла.

 

Выводы

На данном этапе  разработана структура проектируемого устройства. Выделены три основных узла – управляющий узел (микроконтроллер), датчики температуры и вентиляторы.

 

2.2 Разработка блок-схемы  алгоритма работы устройства

 

Как следует  из технического задания, устройство должно выполнять следующие функции:

    • осуществлять сбор информации о текущем состоянии температуры;
    • изменять скорость вращения вентиляторов, в соответствии с текущим температурным режимом;
    • осуществлять передачу данных на управляющий компьютер.

Устройство  должно включать в себя следующие  компоненты:

    • Блок инициализации, обеспечивающей первоначальную загрузку параметров;
    • блока сбора информации с температурных датчиков. При этом следует учитывать, что некоторые датчики могут быть подключены уже в процессе работы, поэтому необходимо обеспечить постоянное обновление подключенной периферии к управляющему узлу;
    • блока управления вентиляторами. Данный компонент должен проводить сравнение поддерживаемых и текущих температур и на основе этих данных изменять скорость вращения вентиляторов;
    • блока обмена информацией с управляющим компьютером. Данный компонент осуществляют функции, как приема команд, так и отправки пакета данных в пользовательское приложение.

2.3 Общий алгоритм  работы

На рисунке 2 представлен общий алгоритм работы блока контроля и поддержания  температуры. Работа устройства состоит  в следующем: при подключении питания происходит инициализация контроллера. В данном блоке контроллер опрашивает подключенные датчики и вентиляторы. После определения количества подключенных вентиляторов начинает работать основной блок – блок управления температурой. В нем происходит считывание текущей температуры и, в зависимости от сравнения с заданной температурой, изменение сигналов, управляющих вентиляторами. В случае нормального охлаждения после завершения одной итерации управления температурой происходит опрос шины USB. Если же пришла команда от управляющего компьютера, то на следующем шаге определяется тип команды. В случае, когда пришла команда на передачу данных, контроллер собирает блок, состоящий из температурных данных и скорости вращения вентилятора, и далее передает через шину USB в пользовательскую программу.

 

Рисунок 2 –  Общий алгоритм работы Блока

 

Когда приходит команда на изменение температурных  данных, то контроллер изменяет в памяти значения поддерживаемой температуры. После обработки команд управление передается в блок управления температурой и дальше итерации повторяются. Контроллер будет выполнять цикл, пока не будет отключено питание.

2.4 Алгоритм инициализации  датчиков температуры и вентиляторов

 

После подачи питания, микроконтроллер проводит инициализацию подключенных устройств (рисунок 3). На первом этапе проводится конфигурирование USB, затем идет цикл инициализация каждого из трех каналов.

Рисунок 3 –  Алгоритм инициализации

Инициализация канала состоит из поиска всех доступных этому каналу температурных датчиков. Далее происходит считывание поддерживаемой температуры, а также режима сравнения поддерживаемой температурой с измеренной. В случае если на нескольких датчиках эти значения различаются, что означает первый запуск устройства с этими датчиками или смену расположения датчиков, то информация заменяется данными по умолчанию.

После инициализации  датчиков температуры на вход вентилятора  подается постоянный сигнал, равный 5В. В этом случае, если вентилятор подключен, то он разгоняется до максимальной скорости и, следовательно, тахометр подает импульсы на соответствующий выход. Далее информация о работоспособности вентилятора сохраняется в ОЗУ микроконтроллера. На этом опрос одного канала завершается.

 

 

2.5 Алгоритм блока  управления температурой

После инициализации микроконтроллер  переходит в основной блок (рисунок 4).

              

                                            

Рисунок 4 –  Алгоритм управления температурой

На первом этапе  основного алгоритма происходит проверка на необходимость обновления (переменная Refresh), которое происходит каждые 5 циклов работы устройства. Это позволяет производить горячее подключение/отключение датчиков и вентиляторов. Далее происходит опрос датчиков температуры на каждом канале. В случае ошибочных данных, т.е. значение температуры выходит за диапазон, который может измерить датчик, счетчик обновлений обнуляется и измеренная температура приравнивается к 127 градусам. Это позволяет в случае нарушения работы датчиков увеличивать скорость вентилятора каждый цикл, в котором произошла ошибка.

После этого  на основе измеренных данных, а также  режимов сравнения рассчитывается значение температуры, которое будет сравниваться с поддерживаемым значением. Возможен один из четырех режимов:

1 – из всех  измеренных данных выбирается  минимальное значение температуры;

2 сравниваемая температура рассчитывается как среднее значение всех измеренных данных;

3 из всех измеренных данных выбирается максимальное значение температуры;

4 данный режим подразумевает управление значением скорости вентилятору через компьютер, в этом случае осуществляется переход на конец алгоритма

Далее происходит сравнение текущей и поддерживаемой температур. Если разница больше 1, то происходит увеличение скорости вентилятора. При достижении максимальной скорости или при отсутствии вентилятора  значение переменной, определяющей перегрев, устанавливается в 1.

Информация о работе Устройство контроля и поддержания температуры