Проектирование аппаратной части устройства
Введение
Домофон – это устройство, предназначенное для связи входящего в помещение и лица находящегося в помещении. Домофон является своеобразным устройством контроля и управления входной двери. Устанавливаются они, как правило, на входе в помещение, на частную территорию. Состоит из переговорной панели (устанавливается снаружи) и переговорной трубки, (внутри). В самом простом варианте домофон передает аудиоинформацию на расстояние. Видеодомофон, передает кроме аудиоинформации - видеоизображение, от встроенной в переговорную панель видеокамеры, либо от выносной видеокамеры. При помощи домофона можно управлять электрическим замком, и соответственно дистанционно открывать дверь. В простом варианте обеспечивается связь между двумя абонентами, в более сложных - это уже возможность соединения от двух до 1000 абонентов и управление различными замками (многоквартирные домофоны).
Функциональная спецификация
1. Список функций выполняемых системой:
1. Вызов квартирного абонента с помощью нажатия соответствующих клавиш на клавиатуре установленной на панели устройства.
2. Обеспечить голосовую связь между посетителем и жильцом с помощью микрофона и динамика.
3. Дистанционное открывание двери из квартиры жильца путем нажатия соответствующей кнопки на устройстве находящемся внутри квартиры жильца.
4. Отпирание двери из нутрии подъезда путем нажатия кнопки установленной для этой цели
5. Отпирание двери путем отпирания встроенного замка, использующего в качестве ключей так называемые таблетки.
6. Контроль за вводом символов с помощью встроенного ЖКИ дисплея.
Таблица 1
Векторы | Дверь открыта | Дверь закрыта |
X1 | + | – |
X2 | – | + |
2. Описание интерфейса между системой и пользователем:
1. Клавиатура, содержащая 12 кнопок для ввода нужного номера квартиры.
2. ЖКИ дисплей для отображения вводимых символов.
3. Динамик и микрофон для обеспечения голосовой связи
4. Замок с ключом “Таблетка” для открывания двери.
Проектирование системы
Проектирование системы заключается в определении набора модулей, составляющих ее, разделение их на аппаратные и программные. На основании анализа функциональной спецификации можно выделить следующие блоки, которые необходимо реализовать аппаратным способом:
Входы:
1. Модуль кнопок
2. Модуль микрофона
3. Модуль электронного замка
Выходы:
1. Модуль динамика
2. Модуль ЖКИ дисплея
Функции:
1. Модуль защиты от зависания контроллера (охранный таймер)
Стандартные модули системы:
1. Модуль контроллера
2. Модуль сброса и синхронизации
3. Модуль питания
Программные модули также определяются на основе анализа функциональной спецификации, из которого следует, что система может быть разделена на три части: вход, выход и функции.
Входной и выходной модули реализуют функции взаимодействия с аппаратной частью системы и представляют нижний уровень модульной структуры. Часть спецификации функции может быть разделена на три различных модуля:
1. Входное состояние кнопок и электронного замка считывается с помощью процедуры входного модуля. Однако прежде, чем должно быть предпринято какое-либо действие, необходимо проверить состояние этих входов. Все процедуры, выполняющие проверку и определяющие, какие действия должны быть предприняты по результатам проверки, необходимо сгруппировать вместе в модуле проверки.
2. Модуль обслуживания охранного таймера. Если результат проверки одной из процедур модуля проверки указывает на то, что произошло нажатие кнопки, должна быть вызвана процедура для последовательного установления выходных состояний. Дополнительно к этим модулям необходимо добавить, так называемые, стандартные модули: главный модуль main и модуль инициализации системы. Модули, которые могут быть реализованы как аппаратным, так и программным способом:
1. Модуль таймера, для формирования временных интервалов;
2. Модуль подавления дребезга контактов кнопок.
В настоящее время большинство микроконтроллеров имеют встроенные аппаратные узлы такие как, таймеры, контроллеры прерывания и т.д. Использование встроенных аппаратных частей повышает производительность системы за счет параллельности их работы по отношению к процессору микроконтроллера. Вследствие этого, следует использовать встроенный модуль таймера, а программный модуль таймера будет осуществлять управление аппаратным узлом. В этой же связи, можно объединить входные сигналы от всех кнопок (т.к. реакции на их сработку функционально не отличаются) и подать входной сигнал на встроенный контроллер прерываний. Такое решение позволит уменьшить количество используемых выводов микроконтроллера и уменьшит время реакции на внешнее событие. Модуль подавления дребезга контактов кнопок лучше реализовать программным способом.
В результате разработки проекта системы, можно построить ее структурную схему, взяв за основу, общую модульную структуру аппаратных средств (рис. 1). Структурная схема домофона представлена на рис. 1.
Модуль питания |
Схема сброса и синхронизации |
Модуль кнопок |
Модуль замка |
Модуль микрофона |
Модуль индикатора |
Модуль динамика |
Рис. 1 – Структурная схема
Функционально-модульная структура программной части системы приведена на рис. 2. Каждый из модулей размещается на одном из уровней нисходящей иерархии.
Главный модуль MAIN |
Модуль ПРОВЕРКИ |
Модуль СБРОС WDT |
ВХОДНОЙ модуль |
ВЫХОДНОЙ модуль |
Рис. 2. Функционально-модульная структура ПО контроллера домофона.
Проектирование аппаратной части устройства
Разработка функциональной схемы основывается на структурной схеме устройства, на требованиях технического задания и заключается в выборе принципов реализации ее модулей.
Модуль кнопок реализуем в виде контактов с нормально разомкнутым состоянием. При нажатии на кнопку, произойдет замыкание соответствующего контакта. Для фиксации события, на кнопки должно быть подано от контроллера через резистор напряжение (рис. 3). Величина напряжения, снимаемая с резистора, может принимать два значения, соответствующих событиям сработка/отпускание.
Рис. 3 – Схема модуля кнопок
Модуль электронного замка. На входной двери снаружи располагается только панелька для ibutton и светодиод открывания дверей. Открывание дверей изнутри осуществляется с помощью кнопки. В качестве исполнительного механизма используется стандартная защелка с электромагнитом, который рассчитан на напряжение 12В. Коды ключей хранятся в внутренней памяти контроллера и могут стираться и добавляться пользователем. Для защиты от несанкционированного перепрограммирования замка используется мастер-ключ.
Модуль микрофонадолжен обеспечивать возможность голосового общения между посетилем и жильцом дома. И так как нет ни каких ограничений по его выбору можно взять любой микрофон которой используется в телефонных трубках.
Модуль динамикатак же необходим при общении между посетилем и жильцом квартиры. Так же будет выбран динамик который используется в телефонных трубках.
Модуль индикаторав нашем случае это знакосентизирующий индикатор, который используется для отображения номера вводимого посетителем с помощью кнопок на передней панели устройства. Для этих целей подходит любой однострочный индикатор с количеством символов от 8 до 16. Так как для домофона наличие 2-х и более многострочных индикаторов ведет к замаграждению передней панели устройства и бесполезного их использования в виду малого количества вводимой информации.
Для модуля микроконтроллеранеобходимо определить требования на его архитектуру, в соответствии с заданием и структурной схемой. Так, в нашем случае микроконтроллер должен содержать таймер, контроллер обработки внешних прерываний, желательно наличие охранного таймера (чтобы не реализовать его в виде отдельной микросхемы). Все современные микроконтроллеры имеют встроенный тактовый генератор с внешней времязадающей цепью. Использование варианта с полностью встроенным тактовым генератором также привлекательно, однако номенклатура таких устройств ограничена. На основании анализа структурной схемы получим, что количество внешних линий ввода/вывода должно быть не менее 32 (14 – управления ЖКИ, 7 – выводов управления клавиатурой, 3 – вывода управления замком, 3 – вывода управления динамиком и микрофоном, 2 – вывода под переговорное устройство).
На схему сброса и синхронизации не накладывается каких-либо особых требований, вида: частота генератора должна иметь определенную стабильность, её значение необходимо выбирать с учетом обеспечения требуемой синхронизации последовательного канала и т.д. Поэтому в качестве задающего генератора, если не будет варианта с встроенным тактовым генератором, можно выбрать внутренний генератор с внешними времязадающими цепями, у которого частота определяется подсоединенным к внешним выводам кварцевым резонатором. Такой вариант является самым распространенным и дешёвым.
Схема сброса должна выработать импульс сброса для микроконтроллера при включении питания. Так как схема должна эксплуатироваться в довольно жестких условиях, то логично потребовать от неё выработки сброса при уходе напряжения питания за определенный порог, например, ниже 4,5 В.
Модуль питания в нашем случае преобразует переменное напряжение ~220В в напряжение питания для схемы контроллера и в напряжение питание схемы электронного замка. Остановимся на комбинированном источнике питания.