Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая работа по МПС вар 8 .doc
Скачиваний:
8
Добавлен:
26.04.2019
Размер:
353.79 Кб
Скачать

2.2.2. Цифровой термометр и его характеристики

DS1820 - высоко точный 1-проводный цифровой термометр. DS1820 - чрезвычайно популярная до сих пор версия калиброванного цифрового термометра с 1-Wire-интерфейсом. Диапазон измеряемых температур от -55°C до +125°C. Абсолютная погрешность преобразования меньше ±0,5°C в диапазоне контролируемых температур -0°C до +70°C. Результирующее значение температуры считывается, как девятиразрядное слово и с помощью специальной программной обработки позволяет достигнуть разрешающей способности преобразования 0,01°C. Типовое время полного преобразования ~500 мс. Энергонезависимая память температурных уставок микросхемы обеспечивает запись произвольных значений верхнего и нижнего контрольных порогов. Кроме того, термометр содержит встроенный логический механизм приоритетной сигнализации в 1-Wire-линию о факте выхода контролируемой им температуры за один из выбранных порогов. Внешний интерфейс компонента организован таким образом, что существует теоретическая возможность адресации неограниченного количества подобных устройств на одной 1-Wire-линии. Термометр имеет индивидуальный 64-разрядный регистрационный номер (групповой код 010Н) и обеспечивает возможность работы без внешнего источника энергии, только за счет паразитного питания 1-Wire-линии. Питание микросхемы через отдельный внешний вывод производится напряжением от 4,5 В до 5,5 В. Термометр размещается в транзисторном корпусе PR-35 или в 16-выводном корпусе для монтажа на поверхность типа SSOP.

DS1820 состоит из ПЗУ с уникальным идентификационным номером, контроллера MicroLAN, температурного датчика и двух регистров для хранения верхнего и нижнего порогов температуры (рис. 1).

Рис. 4. Блок-схема цифрового термометра DS1820

2.2.3 Характеристики стабилизатора напряжения

78L05

Технические параметры

78L05 (+5В, 0.1А) (КР1157ЕН502) TO92

Выходное напряжение, В

5

Максимальное входное напряжение, В

40

Максимальный выходной ток, А

0.1

Корпус

TO92

2.3. Разработка алгоритма управления

Устройство способно измерять температуру и индицировать ее на 16-разрядном ЖК-дисплее вместе с показаниями часов. Датчиком температуры в устройстве служит микросхема DS1820, которая измеряет температуру в диапазоне -55... +125. Устройство предназначено для из­мерения температуры как в домашних условиях, так и на ули­це.

Всю работу от приема сигналов дат­чика температуры до их обработки и выдачи на индикацию выполняет микроконтроллер PIC16F84A. Алго­ритм работы программы устройства приведен на рис. 5.

Рис.5. Блок-схема работы устройства

После подачи напряжения питания инициализируются регистры микро­контроллера и ЖК-дисплей. Далее проверяется флаг режима установки. Если установки нет, то на дисплей вы­водятся значения регистров индика­ции. Если выполня­ется установка, то проверяется флаг курсора. После индикации инициализирует­ся датчик температуры.

Принятый от датчика DSI820 де­вятиразрядный двоичный код пере­кодируется в двоично-десятичный. Выделяется девятый разряд, опреде­ляется знак температуры. Перекоди­рованные значения переписываются в десятичные регистры. Позже зна­чения этих регистров будут перепи­саны в регистры индикации.

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

Во время прерывания выполняется установка и перекодирование регис­тров секунд, минут и часов. При выбранной часто­те кварцевого резонатора 4,096 МГц, коэффициенте деления предделителя 256, делителе на 16 и с учетом машинного цикла, равного четырем тактам, коэффициент деления ре­гистра таймера должен быть равен 250, поскольку 4096000/(256x16x4) = = 250 Гц. Поэтому перед выходом из прерывания выполняется предус­тановка таймера на 6 (256-250 = 6). Прерывания происходят через 1/16 с (62,5 мсх16 = 1 с).

После отработки прерывания про­грамма возвращается к индикации, и цикл измерения температуры пов­торяется.

Датчики температуры с однопроводным интерфейсом разработаны для ис­пользования совместно с микроконт­роллерами. Каждый датчик имеет 56-разрядный индивидуальный идентификацион­ный код, поэтому по одному проводу может быть опрошено практически неограниченное число датчиков.

Принцип измерения температуры основан на сравнении частот двух ге­нераторов. Частота одного генератора не зависит от температуры, а частота второго изменяется с ее изменением. Разность частот двух генераторов опре­деляет значение температуры. Восьмиразрядный код температуры побитно, начиная с младшего бита, выводится в линию связи. Девятый бит опреде­ляет знак измеренной температуры. Если девятый бит единичный, темпе­ратура имеет знак минус, и наоборот.

Все сеансы приема данных с датчика начинаются подачей в линию сигнала обнуления Reset установкой низкого уровня длительностью. В ответ датчик выдает в линию сиг­нал наличия Presence длительностью. Если в линии один дат­чик, для упрощения программы при­ем этого сигнала игнорируется. Если в программе допускается отключение датчика, проверка сигнала наличия обязательна.