98537

Проект устройства USB термометр на микроконтроллере ATmega8

Курсовая

Коммуникация, связь, радиоэлектроника и цифровые приборы

Разрабатываемое устройство предназначено для фиксации минимальной и максимальной суточных температур по термодатчику и передаче результатов в компьютер по интерфейсу USB. Полученное значение в градусах Цельсия передается по интерфейсу USB строкой из пяти символов: десятки единицы точка десятые доли.

Русский

2015-11-04

309 KB

13 чел.

Содержание

с.

[1]
Введение


Введение


1 Общие сведения об объекте разработки

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

Устройство состоит из термодатчика типа DS18B20, микроконтроллера Atmega 8, светодиода, для индикации работы устройства, пяти резисторов, двух конденсаторов, двух стабилитронов и кварцевого резонатора.

Устройство поддерживает два режима индикации:

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

Функциональная спецификация:

  •  входы:
  1.  термодатчик типа DS18B20;
  2.  микроконтроллер типа Atmega8.
  •  выход:
  1.  ЖК монитор ПК.
  •  функции:
  1.  вывод текущего значения числа, месяца, времени и температуры с точностью 0,1 градуса;
  2.  возможность просмотра на индикаторе зафиксированных значений максимальной и минимальной температур текущего дня.


2 Анализ возможных вариантов реализации устройства и выбор наиболее подходящего варианта

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

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

Прибором управляет микроконтроллер PIC18F14K50 (DD1) (см. рисунок 1), имеющий встроенный модуль USB. Тактовая частота микроконтроллера задана кварцевым резонатором ZQ1. Температуру измеряет цифровой датчик LM75AD (ВК1). Он связан с микроконтроллером шиной I2C и имеет на ней адрес ведомого 1001111, причем старшие четыре разряда адреса (1001) установлены жестко внутри датчика, три младших разряда заданы подключением выводов А0 - А2. В данном случае все они соединены с плюсом питания.

В датчике имеется регистр-указатель, код в котором адресует один из четырех информационных регистров. По нулевому адресу находится двухбайтный регистр температуры Temp_data, хранящий ее текущее значение, измеренное датчиком. Этот регистр работает только на чтение.

Рисунок 1 - Схема термометра

В компьютере для работы с термометром необходимо установить программный драйвер. Он создаст виртуальный СОМ-порт. Режим работы порта: восемь информационных разрядов без контроля четности и один столовый, скорость обмена информацией определяется автоматически.

По умолчанию опрос микроконтроллером датчика температуры происходит каждые 5 с. Полученное значение в градусах Цельсия передается по интерфейсу USB строкой из пяти символов: десятки, единицы, точка, десятые доли, пробел. Например, «25,3».

Есть возможность переключиться в «ручной» режим, в котором температура сообщается только по запросу компьютера. Для переключения достаточно передать термометру из компьютера символ М. В ответ будет возвращена строка Manual. После этого температура станет передаваться только в ответ на получение термометром символа R. Не рекомендуется запрашивать ее чаще одного раза в секунду.

Рисунок 2 – Печатная плата термометра

Для возврата из ручного в автоматический режим посылают символ А. Ответом будет строка Auto. При каждой передаче значения температуры включается на 1 с светодиод HL1. Желаемой яркости его свечения можно добиться подборкой резистора R4.

При эксплуатации была замечена разница в показаниях нескольких экземпляров датчиков LM75AD, доходящая до 3 °С. В целом это соответствует их допустимой погрешности, указанной в документации. Чтобы скомпенсировать систематическую погрешность, в программу была добавлена возможность ввода и изменения поправки Посылая символы U и D, соответственно увеличивают и уменьшают показания термометра шагами по 0.1 °С. Чтобы сохранить введенную поправку в энергонезависимой памяти микроконтроллера, необходимо отправить символ S. В ответ будет возвращена строка Calibrated.

В соответствии с рисунком 2,термометр питается напряжением 5 В от линии Vbus интерфейса USB, потребляя ток не более 18 мА. Конденсаторы, резисторы и светодиод - типоразмера 0805 для поверхностного монтажа. Кварцевый резонатор в корпусе HC-49US установлен со стороны, обратной печатным проводникам. Разъем ХР1 - USB-AM для поверхностного монтажа, его стыкуют непосредственно с разъемом USB компьютера.

Рисунок 3 – Схема термометра

Рисунок 4 – Жидкокристаллический индикатор

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

Во втором варианте, термометр дополнен ЖКИ TIC5234 (HG1) (см. Рисунок 3). Такой индикатор очень удобен для подобных устройств, так как имеет пять больших семиэлементных знакомест и дополнительные значки (см. Рисунок 4).

В соответствии с рисунком 5, установив на линии LOAD высокий логический уровень, первым по линии DIN передают двоичный разряд, управляющий элементом изображения S49 (1 - включен, 0 - выключен). Затем следует разряд элемента S48 и так далее, пока не будут переданы все разряды. Каждый из них сопровождают синхроимпульсом по линии DCLK. Передав последний разряд, соответствующий элементу S1, следует «защелкнуть» регистр, временно установив на выводе LOAD низкий уровень.

Рисунок 5 – Временные диаграммы

Светодиод в этом варианте термометра отсутствует. Взамен него при передаче температуры в компьютер мигает в течение 1 с значок градуса на ЖКИ.

В соответствии с рисунком 6, разъем XS1 (USB-miniBF) соединяют с разъемом USB компьютера стандартным USB-mini кабелем. Корректировку погрешности и переключение режимов выполняют так же, как в первом варианте.

Рисунок 6 – Печатная плата термометра

Третий вариант термометра, имеет ЖКИ АСМ0802С (HG1) (см. Рисунок 7), способный отображать две строки по восемь символов. Оптимальной контрастности изображения на ЖКИ при необходимости добиваются, подбирая резисторы R4 и R5.

Рисунок 7 – Схема термометра


3 Разработка структурной схемы 

Структурная схема устройства определяет основной состав изделия и его функциональные части, их название и взаимосвязь.


4 Разработка алгоритма функционирования устройства

В компьютере для работы с термометром необходимо установить программный драйвер. Он создаст виртуальный СОМ-порт. Режим работы порта: восемь информационных разрядов без контроля четности и один столовый, скорость обмена информацией определяется автоматически.

После подключения Светодиод меняет свой состояние(зажигается/тухнет) при каждом запуске измерения температуры. Если он с хаотической скоростью мигает, тогда термодатчик работает нормально, если постоянно светиться или не светиться – с датчиком проблемы (неправильно подключен, нерабочий, или очень длинный провод, возле которого сильные электромагнитные помехи). Справа расположен разъем для внутрисхемного программирования микроконтроллера. 

По умолчанию опрос микроконтроллером датчика температуры происходит каждые 5 с. Полученное значение в градусах Цельсия передается по интерфейсу USB строкой из пяти символов: десятки, единицы, точка, десятые доли, пробел. Например, «25,3».

После инициализации регистров микроконтроллера устанавливают пределы в текущих регистрах экстремальных значений. В регистры текущих максимальных температур записывается минимальная измеряемая термодатчиком температура (-55,0°С), а в регистры минимальных температур - максимальная измеряемая температура (+99,9°С). При таких установках любое значение температуры, измеренное первым, будет записано в регистр как максимальных, так и минимальных температур, поскольку оно окажется заведомо больше -55,0° и заведомо меньше +99,9 °. Дальнейшие измеренные значения будут сравниваться с первой записанной температурой и, при необходимости, корректировать значения регистров максимума и минимума.


5 Выбор элементов устройства, их технические характеристики

Для разработки  USB термометра требуются:

  •  МК Atmega8 и кроватка для нее на 28 ног;
  •  датчик температуры ds18b20;
  •  резисторы:
  •  10к;
  •  4,7к;
  •  68ом *2шт;
  •  1,5к;
  •  200ом;
  •  конденсаторы:
  •  22пф *2шт;
  •  100мкф на 16в электролит;
  •  2 стабилитрона на 3.6в;
  •  кварцевый резонатор 12mhz;
  •  светодиод.

Микроконтроллер ATmega8 выполнен по технологии CMOS, 8-разрядный, микропотребляющий, основан на AVR-архитектуре RISC. Выполняя одну полноценную инструкцию за один такт, ATmega8 достигает производительности 1 MIPS на МГц, позволяя достигнуть оптимального соотношения производительности к потребляемой энергии.

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

  •  память для программ составляет 8 кб с возможностью перезаписать 10 000 раз;
  •  512 байт флеш-памяти для хранения переменных (100 000 циклов перезаписи);
  •  1 кб ОЗУ и 32 регистра общего назначения;
  •  два 8-разрядных таймера/счетчика с раздельным прескалером, режим сравнения;
  •  16-разрядный таймер/счетчик с раздельным прескалером, режим сравнения, режим захвата;
  •  таймер реального времени с независимым генератором;
  •  3 канала шим;
  •  6 каналов 10-разрядного АЦП;
  •  двухпроводный последовательный интерфейс;
  •  программируемый последовательный usart;
  •  интерфейс spi с режимами master/slave;
  •  программируемый сторожевой таймер с отдельным независимым генератором;
  •  встроенный аналоговый компаратор;
  •  сброс при включении питания, программируемая защита от провалов питания;
  •  встроенный калиброванный rc-генератор;
  •  обработка внутренних и внешних прерываний;
  •  5 режимов с пониженным энергопотреблением: idle, adc noise reduction, power-save, power-down, и standby;
  •  напряжение питания 4,5 - 5,5в;
  •  тактовая частота 0-16 мгц.

Цифровой датчик температуры DS18B20 обменивается данными по технологии 1-проводного последовательного интерфейса 1-Wire®. Разрешающая способность DS18B20 составляет 9, 10, 11 или 12 битов, соответствуя дискретности измерений 0.5°C; 0.25°C; 0.125°C или 0.0625°C, соответственно. По умолчанию установлена 12-бит (0.0625°C). Диапазон измерений по температуре составляет (–55... +125)°C. Точность измерений: ±0.5°C в диапазоне (–10... +85)°C. DS18B20 при отсутствии внешнего источника питания может запитываться от линии данных (паразитное питание). Датчик DS18B20 имеет уникальный 64-битный номер. Он позволяет работу с множеством подключенных к одной шине DS18B20. Датчик может использоваться в качестве термостата. DS18B20 позволяет задание во внутреннюю энергонезависимую память (EEPROM) верхний (TH) и нижний (TL) температурные пороги. Внутренний регистр флага будет выставлен, когда  измеренная температура выше TH или ниже TL. Если эта функция не используется, то два байта энергонезависимой памяти зарезервированные для настройки порогов, могут быть использованы для хранения другой информации.

В исходном состоянии DS18B20 находится в состоянии покоя (в неактивном состоянии). После  преобразования, информация записывается в 2-байтовом регистре оперативной памяти и DS18B20 возвращается к неактивному состоянию. Если датчик включен с внешним питанием, ведущий  может контролировать преобразование температуры по состоянию шины.  DS18B20 будет формировать логический «0» когда происходит  температурное  преобразование или логическую «1», когда преобразование закончено. Если DS18B20 включен с паразитным питанием, эта технология уведомления не может  быть  использована, так как на шину необходимо  подать высокий уровень напряжения питания в течение всего времени температурного преобразования.

Основные технические характеристики DS18B20:

  •  диапазон измерений от –55°c до +125°С;
  •  точность ±0.5°c в диапазоне от -10°c до +85°С;
  •  настраиваемое пользователем разрешение от 9 до 12 бит;
  •  данные передаются посредством 1-проводного последовательного интерфейса 1-wire®;
  •  датчик имеет 64-битныйt уникальный серийный номер;
  •  рабочее напряжение питания от 3,0В до 5,5В;

Кварцевый резонатор 12MHz - прибор, в котором пьезоэлектрический эффект и явление механического резонанса используются для построения высокодобротного резонансного элемента электронной схемы.

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

  •  название продукта: кварцевый резонатор;
  •  рабочая температура, мин.: -10 °С;
  •  размер: 10,8 x 3,8 x 4,3 mm;
  •  рабочая температура: -10...+60 °С;
  •  длина: 10,8 mm;
  •  корпус: hc49/4h;
  •  серии: hc49/4h smx;
  •  рабочая температура, макс.: +60 °С;
  •  частота: 12 mhz;
  •  ширина: 3,8 mm;
  •  высота: 4,3 mm;
  •  допуск по частоте: ±30 ppm;
  •  допуск температуры: ±50 ppm;
  •  емкость нагрузки: 16 pf;
  •  резонансный режим работы: Параллельный.

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

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

  •  допуск: ±5 %;
  •  импеданс: 10 kohm; 10 kω;
  •  испытательное напряжение: 4000 vac;
  •  название продукта: силовой резистор;
  •  температура, макс.: +155 °С;
  •  температура, мин.: -55 °С;
  •  температурный диапазон: -55...+155 °С;
  •  условное обозначение сопротивления: 10k;
  •  номинальные характеристики выхода: 100 w;
  •  температурный коэффициент: ±100 ppm/°С;
  •  винтовое соединение: m4.

Стабилитрон - полупроводниковый диод, работающий при обратном смещении в режиме пробоя.

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

  •  мощность рассеяния, вт1;
  •  минимальное напряжение стабилизации, в 342;
  •  номинальное напряжение стабилизации, в 36;
  •  максимальное напряжение стабилизации, в 378;
  •  статическое сопротивление rст., ом10;
  •  при токе i ст, ма – 69;
  •  максимальный ток стабилизации iст.макс., ма – 252;
  •  рабочая температура, с - -55…200;
  •  способ монтажа - в отверстие;
  •  корпус - do41.

Конденсатор - устройство для накопления заряда и энергии электрического поля.

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

  •  тип - к10-17б;
  •  рабочее напряжение, в – 50;
  •  номинальная емкость – 22;
  •  единица измерения  - пф;
  •  допуск номинала, % - 5;
  •  температурный коэффициент емкости - np0;
  •  рабочая температура, с - -55…125;
  •  выводы/корпус - радиал. пров.


6 Разработка электрической принципиальной схемы

Схема очень простая. Слева расположены все 4 контакты USB. Конденсатор С3 – это тот самый конденсатор по питанию. Стабилитроны VD1 и VD2 снижают напряжение на линии передачи данных до 3,3В. Датчик DS18B20 можно не ставить на плату, а вывести на нужное место, длина провода может быть до 100 метров. Светодиод меняет свой состояние(зажигается/тухнет) при каждом запуске измерения температуры. Если он с хаотической скоростью мигает, тогда термодатчик работает нормально, если постоянно светиться или не светиться – с датчиком проблемы (неправильно подключен, нерабочий, или очень длинный провод, возле которого сильные электромагнитные помехи). Справа расположен разъем для внутрисхемного программирования микроконтроллера.

Термометр питается напряжением 5 В от линии Vbus интерфейса USB, потребляя ток не более 18 мА. Конденсаторы, резисторы и светодиод - типоразмера 0805 для поверхностного монтажа. Кварцевый резонатор в корпусе HC-49US установлен со стороны, обратной печатным проводникам. Разъем ХР1 - USB-AM для поверхностного монтажа, его стыкуют непосредственно с разъемом USB компьютера.


Заключение


Список используемых источников

  1.   Гребенюк Е.И., Гребенюк Н.А. Технические средства информатизации: Учебник для сред. проф. образования. – М.: Издательский центр «Академия», 2011. – 272 с.
  2.   Максимов Н.В., Партыка Т.Л., Попов И.И. Технические средства информатизации: Учебник. – М.: Форум, 2011. – 592 с.
  3.   Партыка Т.Л., Попов И.И. Периферийные устройства вычислительной техники: Уч. пособие. – М.: Форум: ИНФРА-М, 2010. – 432 с.
  4.   Кузин А.В., Жаворонков М.А. Микропроцессорная техника. – М.: Академия, 2010.
  5.   Бигелоу С. Устройство и ремонт ПК: аппаратная платформа и основные компоненты. М.: - Бином, 2010, 975 с.
  6.   Гук М. Ю. Аппаратные средства IBM PC: Энциклопедия. М.: Питер, 2010, 1072 с.
  7.   Мюллер С. Модернизация и ремонт ПК: 18-е изд. – М. «ООО И.Д. Вильямс», 2011. – 2025 с.

Интернет ресурсы:


Приложения А

(обязательное)

Техническое задание

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

Таблица 1 – Технические характеристики устройства

Наименование характеристики

Значение характеристики

Максимальное значение температуры

+125 °C

Минимальное значение температуры

–55 °C

Пределы погрешности

±0,10°C

Точность измерений

±0,5°C

Рабочее напряжение питания

5 В

Потребляемый ток

18 мА

Шаг измерений

0,1 °C

Рабочая температура

-55...+155 °С

Время выхода в рабочий режим

Время непрерывной работы

Не ограничено

Опрос микроконтроллером датчика

Каждые 5с

Габариты

50мм*50мм

Масса

100г

Отображение показаний

°С

Максимальная длина кабели датчика

50м


Приложения Б

(обязательное)

Электрическая принципиальная схема


Приложение В

(обязательное)

 Структурная схема

PAGE  13

КР КС111.В398 ОС


 

А также другие работы, которые могут Вас заинтересовать

83154. Страхование в системе финансов 231.5 KB
  Страхование - это особый вид экономических отношений, призванный обеспечить страховую защиту людей (или организаций) и их интересов от различного рода опасностей. Страхование - одна из древнейших категорий, отражающих особую сферу экономических отношений общества.
83155. Разработка ассортимента современных рыбных блюд 1.09 MB
  Постоянный рост на рынке услуг общественного питания, возникновение и развитие новых концепций и форм обслуживания диктует необходимость гибкого изменения структуры предприятия. Успешная деятельность предприятия питания зависит от того, в какой степени заведению удается привлечь и удержать клиентов.
83156. Эволюция стратегического менеджмента. Основные школы стратегического менеджмента 157 KB
  Актуальность и значение темы доказываются тем, что значение стратегии, позволяющей фирме выживать в конкурентной борьбе в долгосрочной перспективе, резко возросло в последние десятилетия. Ускорение изменений в окружающей среде, появление новых запросов и изменение позиции потребителя...
83158. Численные методы решения инженерных задач на ЭВМ 324.33 KB
  Программа должна работать с любыми значениями аргумента из области определения функции. Обязательно наличие заголовка с указанием функции расположенного над графиком координатной сетки и заданного максимального и минимального значения функции в этом интервале.
83159. Финансы и финансовая система Российской Федерации 90.6 KB
  Финансовая система Российской Федерации. Финансовая политика Российской федерации Выводы Введение Актуальность данной темы обусловлено тем что финансовая система является основой обеспечения государственного суверенитета безопасности и развития страны а финансовые показатели являются основой для оценки эффективности государственной экономической политики. Для достижения указанной цели поставлены следующие задачи: изучить сущность и признаки финансов выявить функции финансов и роль финансов в системе денежных отношений рыночного хозяйства...
83161. Статистико-экономический анализ трудовых ресурсов 142.12 KB
  Решение всего комплекса экономических и социальных задач развития производительных сил и совершенствования производственных отношений требует последовательного и неуклонного повышения эффективности труда всех занятых в общественном производстве.
83162. Разработка технологического процесса перевозки промышленных грузов 136.33 KB
  Кроме того, при транспортировке угля необходимо учитывать влажность воздуха, а также обеспечить защиту груза от сырости и влаги. Поэтому, рекомендуется, чтобы перевозка угля осуществлялась в самосвальных полуприцепах. Самосвальный полуприцеп используется для транспортировки сыпучих грузов низкой плотности...