Дипломная (вкр): Разработка электронных часов с использованием микроконтроллера

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

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

Время на дисплее отображается в виде цифр (например: 13:20).

Питание - от сети переменного тока или химических элементов питания, в том числе миниатюрных (в наручных электронных часах).

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

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

Часы с радиоприемником имеют ручку регулятора громкости, ручку настройки и переключателя диапазонов AM\MW\FM, который одновременно является выключателем.

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

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

Электронные часы могут быть со своим собственным дисплеем (в основном ЖК - в моделях с автономным питанием от гальванических элементов, или вакуумно-люминесцентный индикатор - в моделях, питающихся от электросети) или могут выводить данные на экран устройства, в состав которого они входят. В компьютерах электронные часы входят в состав материнской платы и могут настраиваться через BIOS или ОС; для бесперебойной работы в то время, когда компьютер выключен, они используют элемент питания, установленный на материнской плате (батарейка, аккумулятор или ионистор).

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

.3 Описание структурной схемы электронных часов

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

Структурная схема электронных часов (см. Приложение «Электронные часы» Схема структурная 220301.51 Э1) состоит из следующих частей: источник питания, устройство управления нагревательным элементом, индикатор состояния, датчик температуры, индикатор реальной температуры, устройство сравнения, устройство задания температуры, индикатор заданной температуры, нагревательный элемент.

Источник питания предназначен для подачи питающего напряжения 220В на устройство управления нагревательным элементом. Блок питания преобразует напряжение в + 12В.

Устройство управления нагревательным элементом предназначено для включения и отключения нагревательного элемента, путём преобразования сигнала, поступающего с устройства сравнения.

Индикатор состояния, подключённый к устройству управления нагревательным элементом, отражает состояние нагревательного элемента (включен или отключен).

Датчик температуры является чувствительным элементом, измеряющим температуру пола. Результаты измерения передаются в устройство сравнения и на панель температуры, где отображается реальная температура для визуального слежения [7].

Устройство сравнения предназначено для сравнения реальной температуры пола с температурой, задаваемой пользователем. По результату сравнения подаётся сигнал на устройство управления нагревательным элементом, который либо включит, либо отключит нагревательный элемент.

Устройство задания температуры предназначено для установки пользователем желаемой температуры пола. Результат выбранной температуры отражается на панели температуры.

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

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

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

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

Устройство сравнения сравнивает полученные результатам от датчика температуры и устройства задания температуры и передаёт их на устройство управления нагревательным элементом, который включит или отключит нагрев пола.

.4 Описание функциональной схемы электронных часов

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

Функциональная схема электронных часов состоит из следующих элементарных звеньев (см. Приложение «Электронные часы» Схема функциональная 220301.51Э2): резистор (R), реле - узел управления нагревателем (K1), датчик температуры тёплого пола (DA1), дешифратор (DC - DD3, DD4), аналого-цифровой преобразователь (DD1, DD2), светодиод (HL1), LCD дисплей.

Аналоговый сигнал с резистора R поступает в аналого-цифровой преобразователь DD1 и формирует выходной дискретный двоичный код, подаваемый на дешифратор DD4. Дешифратор преобразует двоичный код в семисегментный код для LCD дисплея и на дисплее отражается заданная пользователем температура[4].

Резистор (R) - пассивный элемент электрических цепей, обладающий определённым или переменным значением электрического сопротивления, предназначенный для линейного преобразования токав напряжение инапряжениев ток, ограничения тока, поглощения электрической энергии. В данной схеме переменный резистор служит для определения уровня температуры нагревательного элемента, устанавливаемой пользователем.

Дешифратор (DD3, DD4) - комбинационная схема, преобразующая n-разрядный двоичный, троичный или k-ичный код в -ичныйодноединичный код, где - основание системы счисления. Логический сигнал активен на том выходе, порядковый номер которого соответствует двоичному, троичному или k-ичному коду. Дешифраторы являются устройствами, выполняющими двоичные, троичные или k-ичные логические функции (операции).

Аналого-цифровой преобразователь (АЦП, ADC) - устройство, преобразующее входнойаналоговый сигналв дискретный код (цифровой сигнал). Обратное преобразование осуществляется при помощи ЦАП (цифро-аналогового преобразователя, DAC). Как правило, АЦП -электронноеустройство, преобразующее напряжениев двоичный цифровой код. Простейшим одноразрядным двоичным АЦП является компаратор[5].дисплей модуль для Arduino. Модуль используется для преобразования сигналов от контроллеров и датчиков в графическую информацию. Управление LCD 1602 модулем для Arduino осуществляется или от Arduino контроллера, или от другого микропроцессорного управляющего устройства через соответствующие выводы. LCD дисплей с ЖК-дисплеем имеет интерфейс для ввода и вывода информации. Имеет поддержку латиницы и кириллицы (с установкой дополнительных библиотек).

Датчик температуры DA1, являющийся чувствительным элементом, измеряющим температуру пола, выдаёт аналоговый сигнал пропорционально температуре тёплого пола на аналого-цифровой преобразователь DD2. Полученный цифровой код подаётся на дешифратор, который так же преобразует двоичный код в семисегментный код для LCD дисплея и отображается на нём.

Затем, на узел сравнения поступают аналоговые сигналы с резистора R и датчика температуры DA1. В результате сравнения формируется сигнал, подаваемый на реле K1. Реле - электрическое или электронное устройство (ключ), предназначенное для замыкания и размыкания различных участков электрических цепейпри заданных изменениях электрических или неэлектрических входных воздействий. В данном случае включение или выключение нагревательного элемента тёплого пола.

О состоянии нагревательного элемента показывает светодиод HL1, подключённый в реле K1.

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

.5 Выбор элементной базы

Основной особенностью современного этапа развития микропроцессорных систем является завершение перехода от систем, выполненных на основе нескольких больших информационных систем, к однокристальному микроконтроллеру, которые объединяют в одном кристалле все основные элементы микропроцессорных систем: центральный процессор, постоянное запоминающее устройство, оперативное запоминающее устройство, порты ввода/вывода, таймеры[8].

Для выполнения дипломного проекта был выбран микроконтроллер фирмы Arduino Mega.Mega построена на микроконтроллере ATmega2560 (техническое описание). Плата имеет 54 цифровых входа/выходов (14 из которых могут использоваться как выходы ШИМ), 16 аналоговых входов, 4 последовательных порта UART, кварцевый генератор 16 МГц, USB коннектор, разъем питания, разъем ICSP и кнопка перезагрузки. Для работы необходимо подключить платформу к компьютеру посредством кабеля USB или подать питание при помощи адаптера AC/DC, или аккумуляторной батареей. Arduino Mega 2560 совместима со всеми платами расширения, разработанными для платформ Uno или Duemilanove.

Характеристики

Микроконтроллер

ATmega2560

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

Входное напряжение (рекомендуемое)

7-12В

Входное напряжение (предельное)

6-20В

Цифровые Входы/Выходы

54 (14 из которых могут работать также как выходы ШИМ)

Аналоговые входы

16

Постоянный ток через вход/выход

40 mA

Постоянный ток для вывода 3.3 В

50 mA

Флэш-память

256 KB (из которых 8 КB используются для загрузчика)

ОЗУ

8 KB

Энергонезависимая память

4 KB

Тактовая частота

16 MHz

Mega может получать питание как через подключение по USB, так и от внешнего источника питания. Источник питания выбирается автоматически.

Внешнее питание (не USB) может подаваться через преобразователь напряжения AC/DC (блок питания) или аккумуляторной батареей. Преобразователь напряжения подключается посредством разъема 2.1 мм с положительным полюсом на центральном контакте. Провода от батареи подключаются к выводам Gnd и Vin разъема питания (POWER).

Платформа может работать при внешнем питании от 6В до 20В. При напряжении питания ниже 7В, вывод 5В может выдавать менее 5В, при этом платформа может работать нестабильно. При использовании напряжения выше 12В регулятор напряжения может перегреться и повредить плату. Рекомендуемый диапазон от 7В до 12В.

Плата Mega2560, в отличие от предыдущих версий плат, не использует FTDI USB микроконтроллер. Для обмена данными по USB используется микроконтроллер Atmega8U2, запрограммированный как конвертер USB-to-serial.. Вход используется для подачи питания от внешнего источника (в отсутствие 5В от разъема USB или другого регулируемого источника питания). Подача напряжения питания происходит через данный вывод. Если питание подается на разъем 2.1mm, то на этот вход можно запитаться.

В. Регулируемый источник напряжения, используемый для питания микроконтроллера и компонентов на плате. Питание может подаваться от вывода VIN через регулятор напряжения, или от разъема USB, или другого регулируемого источника напряжения 5В.

V3. Напряжение на выводе 3.3В генерируемое микросхемой FTDI на платформе. Максимальное потребление тока 50 мА.. Выводы заземления.

Микроконтроллер ATmega2560 имеет: 256 кБ флэш-памяти для хранения кода программы (4 кБ используется для хранения загрузчика), 8 кБ ОЗУ и 4 Кб EEPROM (которая читается и записывается с помощью библиотеки EEPROM).

Каждый из 54 цифровых выводов Mega, используя функции pinMode(), digitalWrite(), и digitalRead(), может настраиваться как вход или выход. Выводы работают при напряжении 5В. Каждый вывод имеет нагрузочный резистор (стандартно отключен) 20-50 кОм и может пропускать до 40 мА. Некоторые выводы имеют особые функции:

Последовательная шина: 0 (RX) и 1 (TX); Последовательная шина 1: 19 (RX) и 18 (TX); Последовательная шина 2: 17 (RX) и 16 (TX); Последовательная шина 3: 15 (RX) и 14 (TX). Выводы используются для получения (RX) и передачи (TX) данных TTL. Выводы 0 и 1 подключены к соответствующим выводам микросхемы последовательной шины ATmega8U2.

Внешнее прерывание: 2 (прерывание 0), 3 (прерывание 1), 18 (прерывание 5), 19 (прерывание 4), 20 (прерывание 3), и 21 (прерывание 2). Данные выводы могут быть сконфигурированы на вызов прерывания либо на младшем значении, либо на переднем или заднем фронте, или при изменении значения. Подробная информация находится в описании функции attachInterrupt().: 2 до 13 и 44-46. Любой из выводов обеспечивает ШИМ с разрешением 8 бит при помощи функции analogWrite().: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS). Посредством данных выводов осуществляется связь SPI, например, используя библиотеку SPI. Также выводы SPI могут быть выведены на блоке ICSP, который совместим с платформами Uno, Duemilanove и Diecimila.: 13. Встроенный светодиод, подключенный к цифровому выводу 13. Если значение на выводе имеет высокий потенциал, то светодиод горит.C: 20 (SDA) и 21 (SCL). Посредством выводов осуществляется связь I2C (TWI). Для создания используется библиотека Wire (информация на сайте Wiring). Расположение выводов на платформе Mega не соответствует расположению Duemilanove или Diecimila.

На платформе Mega2560 имеется 16 аналоговых входов, каждый разрешением 10 бит (т.е. может принимать 1024 различных значения). Стандартно выводы имеют диапазон измерения до 5В относительно земли, тем не менее имеется возможность изменить верхний предел посредством вывода AREF и функции analogReference().

Дополнительная пара выводов платформы:. Опорное напряжение для аналоговых входов. Используется с функцией analogReference().. Низкий уровень сигнала на выводе перезагружает микроконтроллер. Обычно применяется для подключения кнопки перезагрузки на плате расширения, закрывающей доступ к кнопке на самой плате Arduino.

На платформе Arduino Mega2560 установлено несколько устройств для осуществления связи с компьютером, другими устройствами Arduino или микроконтроллерами. ATmega2560 поддерживает 4 порта последовательной передачи данных UART для TTL. Установленная на плате микросхема ATmega8U2 направляет один из интерфейсов через USB, предоставляя виртуальный COM порт программам на компьютере (машинам под упровлением Windows для корректной работы с виртуальным COM портом необоходим.inf файл, системы на базе OSX и Линукс, автоматически распознаю COM порт). Утилита мониторинга последовательной шины (Serial Monitor) среды разработки Arduino позволяет посылать и получать текстовые данные при подключении к платформе. Светодиоды RX и TX на платформе будут мигать при передаче данных через микросхему ATmega8U2 и USB подключение (но не при использовании последовательной передачи через выводы 0 и 1).

Источник: https://www.bibliofond.ru/detail.aspx?id=882453