3. Часть 1-5 (1229611), страница 4
Текст из файла (страница 4)
Рисунок 2.4 - Управление проездом при распределенной тяге
Так же дело обстоит и с частотой несущей – для профессионального использования комплекса можно установить ПП с уникальной частотой, а для демонстрационной модели можно использовать диапазоны частот, предоставленные радиолюбителям и охранным устройствам.
3 РАЗРАБОТКА ИНТЕРФЕЙСОВ УПРАВЛЕНИЯ
3.1 Интерфейс «ЭВМ - базовая станция»
Для передачи данных и команд микроконтроллеру, требуется соединить их линией связи, обеспечивающей бесперебойную доставку данных МК от ЭВМ и обратно, причем связь должна сохраняться при подключении к различным ЭВМ и в различных условиях (при различной рабочей температуре и напряжении питания). Реализация стандартного интерфейса RS-232 потребовала бы от МК точного соблюдения временных интервалов между выдаваемыми сигналами. Для обеспечения связи в различных условиях пришлось бы синхронизировать тактовую частоту МК кварцевым резонатором.
Рисунок 3.1 - Принципиальная схема соединения МК и ЭВМ
В реальной ситуации кварцевый резонатор микроконтроллера может не соответствовать частоте передачи данных, а сам МК обычно занят чем-то более важным, чем формирование точных временных интервалов.
Рисунок 3.2 - Временная диаграмма обмена данными
В результате оказывается проще программно реализовать последовательный синхронный вариант обмена, когда каждый бит данных подтверждается импульсом синхронизации (рисунок 3.2).
Принципиальная схема предлагаемого интерфейса показана на рисунке 3.1. Для преобразования уровней RS-232 в ТТЛ используются резистивные делители R1R4 и R2R5. Диоды VD1 и VD2 необходимы для того, чтобы не пропускать отрицательное напряжение, соответствующее логическому нулю. Выходной ТТЛ сигнал МК в преобразовании не нуждается и может быть подан на входные линии СОМ порта непосредственно. Резистор R3 ограничивает выходной ток МК при возможном случайном коротком замыкании. Как видно из рисунка 3.2, для связи с компьютером требуются четыре провода. Компьютер инициирует обмен данными, выдавая синхронизирующие импульсы в линию DTR, выставляя при этом на линии RTS передаваемые данные и получая по линии CTS принимаемые. Изменять данные компьютер и МК могут только при низком логическом уровне сигнала синхронизации. Такой вариант реализации интерфейса позволяет реализовать дуплексный режим передачи данных.
Номера контактов XS1 на схеме указаны для розетки DB-25F при использовании стандартного модемного кабеля. Номера контактов для других разъемов и при использовании нуль-модемного кабеля приведены в таблице 3.1.
Таблица 3.1 - Номера выводов для различных разъемов
Сигнал | Контакт разъема | |||
DB-25F | DB-9F | DB-25M (нуль-модем) | DB-9M (нуль-модем) | |
CTS | 5 | 8 | 4 | 7 |
RTS | 4 | 7 | 5 | 8 |
DTR | 20 | 4 | 6 | 6 |
GND | 7 | 5 | 7 | 5 |
Частота следования синхронизирующих импульсов должна выбираться такой, чтобы МК гарантированно успевал обрабатывать данные от компьютера, реагируя на каждый синхронизирующий импульс. Информационные биты передаются последовательно. По окончании передачи битов одного байта следует передача битов следующего, при этом первым передается старший информационный бит. Для приведения интерфейса в исходное состояние (установка номера передаваемого байта в 0) компьютер должен при лог. 1 на линии синхронизации изменить состояние линии данных. МК выдает новый бит данных на линии CTS по спаду импульсов положительной полярности на входе синхронизации DTR, а считывает данные с линии RTS по фронту импульсов положительной полярности. Обмен можно в любой момент прервать, прекратив подачу импульсов синхронизации. Временная диаграмма обмена данными приведена на рисунке 3.2.
Вышеописанный интерфейс позволяет передать несколько байтов за один сеанс связи, причем одновременно в обоих направлениях (дуплексный режим связи), что позволяет в текущем сеансе связи передать микроконтроллеру данные, команду (какое действие МК должен совершить над полученными данными) и контрольную информацию (обеспечивающую контроль достоверности доставленных данных). МК, в свою очередь, передает информацию, запрошенную ЭВМ в предыдущем сеансе, контрольную информацию и идентификатор МК, позволяющий ЭВМ определить, какого рода устройство подключено, и предотвра предотвращающий перехват данных, при попытке заменить контроллер (если идентификатор не входит в таблицу идентификаторов, то ЭВМ игнорирует информацию, полученную от МК). Структура данных передаваемых от ЭВМ к МК и обратно изображена на рисунке 3.3.
Рисунок 3.3 - Структура данных передающихся в нескольких сеансах связи
Представим принцип обмена данными между ЭВМ и МК с использованием вышеописанного интерфейса.
а) управляющая программа, работающая на ЭВМ, в результате вычислений, определенных алгоритмом работы программы, формирует команду и данные, которые необходимо переслать МК;
б) управляющая программа вычисляет значение контрольного байта (контрольная информация = FUNCTION(данные));
в) управляющая программа вызывает процедуру, реализующую обмен информацией по вышеописанному интерфейсу;
г) МК получает данные от микроконтроллера и сравнивает рассчитанное и полученное значения контрольной информации;
д) в следующем сеансе связи, когда ЭВМ передает МК следующую команду и данные, если не было ошибок при предыдущем сеансе, МК одновременно передает подтверждение выполнения предыдущей команды или запрошенную информацию;
е) если в предыдущем сеансе возникла ошибка (например, в момент соответствующий пункту (г) или после получения), то вместо запрошенной информации или подтверждения, МК отсылает код ошибки;
ж) получив код ошибки, ЭВМ приостанавливает выполнение текущих процессов и повторяет передачу данных до тех пор, пока МК не получит достоверные данные;
з) если количество неудачных попыток передать данные превышает некоторое значение, ЭВМ информирует оператора об отсутствии соединения с МК.
3.2 Разработка аппаратного обеспечения
3.2.1. Базовая станция
Структурная схема устройства «Базовая станция» (БС), представлена на рисунке 3.4. Устройство реализует функции, требуемые для:
- связи с ЭВМ;
- связи с удаленной станцией;
- управления устройствами на удаленной станции;
- для индикации режимов работы;
- автономного управления системой (без ЭВМ);
- модификации устройства путем обновления прошивки МК;
- модификации устройства путем установки блока расширения.
Рисунок 3.5- Структурная схема «Базовой станции»
Микроконтроллер отвечает за обеспечение связи с ЭВМ и удаленной станцией, производит обработку данных, полученных от ЭВМ и удаленной станции, управляет ЖКИ, ПП и блоком светодиодов, а также обрабатывает данные, введенные с клавиатуры. МК осуществляет работу с энергонезависимой памятью и с блоком расширения. Для удобства работы, в устройстве предусмотрена индикация режимов работы и различных параметров функционирования. Индикация осуществляется при помощи модуля индикации, содержащего жидкокристаллический индикатор с микроконтроллерным управлением и блок светодиодов для осуществления простейшей индикации (включения питания, состояния приемо-передатчика). Часть информации для пользователя отображается на экране ЭВМ подключенной к БС. Для обмена данных с ЭВМ используется блок сопряжения с ЭВМ в модуле ввода-вывода, его функциональное назначение – производить конвертирование уровней сигналов от ЭВМ и от МК, так как уровни логических единицы и нуля на выходе COM-порта соответственно равны +25 и -25 вольт, что не соответствует +5 и 0 вольт для МК.
Модуль ввода-вывода включает в себя блок внутрисхемного программирования, который позволяет изменить управляющую программу микроконтроллера без извлечения его из готового устройства (например, для обновления и отладки новых версий программного обеспечения). Блок внутрисхемного программирования представляет собой электрическую схему, при программировании, соединяющую определенные ножки МК со специально выведенным разъемом. Помимо блока внутрисхемного программирования модуль ввода-вывода содержит блок расширения. Блок расширения представляет собой разъем внутри БС, к которому можно подключить дополнительный блок, реализующий определенную дополнительную функцию. В блоке имеются практически все необходимые элементы для подключения цифрового или цифро-аналогового устройства. К блоку подводится питание, шина управления ПП и некоторое количество линий данных от МК. Благодаря наличию такого блока можно будет совершенствовать устройство добавлением блока, реализующего какую-либо функцию, и обновлением «прошивки» МК.
Энергонезависимая память, подключенная к МК, может хранить коды процедур, реализующих ту или иную функцию устройства, может хранить расписание исполнения команд в автономном режиме (при отсутствии соединения с ЭВМ). В энергонезависимую память можно использовать для хранения служебной информации, различных идентификаторов. Память может использоваться нововведенными функциями, разработанными при дальнейшем совершенствовании устройства.
Клавиатура, встроенная в БС, используется для управления БС при отсутствии соединения с ЭВМ, с её помощью можно непосредственно управлять УС, находящимися в радиусе действия БС.
Приемо-передатчик используется для связи базовой станции и удаленной станции. К нему подключается внешняя антенна, для увеличения дальности связи. ПП управляется микроконтроллером или устройством, установленным в блок расширения. Передатчик может программно настраиваться на одну из двух частот. Допустимо использовать дополнительный передатчик, устанавливаемый в блок расширения.
Блок питания обеспечивает всем устройствам БС необходимые напряжения питания и токи, а также формирует сигнал сброса, для приведения всех узлов БС в начальное состояние.
3.2.2. Выбор элементной базы
При разработке устройства необходимо определиться с выбором элементов схемы, которые будут удовлетворять требованиям, реализовывать требуемые функции. Микроконтроллер должен успевать обрабатывать данные, поступающие от ЭВМ, и управлять периферийными модулями, осуществлять индикацию, обработку данных, вводимых с помощью клавиатуры, работу с микросхемой памяти, и управлять удаленными устройствами. Следовательно, выбранный контроллер должен быть достаточно быстродействующим, и тактовую частоту придется выбирать в диапазоне 4-20 МГц. Такую высокую тактовую частоту придется стабилизировать кварцевым резонатором.
Наиболее рациональным является питание всех элементов устройства одним источником питания, а так как большинство цифровых устройств запитывается напряжением +5 вольт, МК должен быть пятивольтовым. Для управления всеми блоками устройства необходимо достаточное количество портов ввода-вывода. Количество требуемых портов и их функциональное назначение указаны в таблице 3.2
Таблица 3.2 - Назначение портов ввода-вывода.
Назначение портов ввода-вывода | Количество | |
Управление ЖКИ | 8 | |
Управление блоком светодиодов | 3 | |
Поддержка шины I2C (микросхема памяти и блок расширения) | 2 | |
Ввод данных с клавиатуры | 8 | |
Взаимодействие с ЭВМ | 3 | |
Управление ПП | 5 | |
ICSP (внутрисхемное программирование) | 2 | |
ИТОГО | 31 |
МК должен поддерживать режим внутрисхемного программирования и иметь достаточный запас памяти программ, для совершенствования устройства посредством обновления программного обеспечения МК.
Так как наиболее распространенными и доступными являются МК семейства PICmicro, то выбран контроллер из данного семейства, удовлетворяющий всем требованиям – PIC16F877-20/P. Данная микросхема обладает необходимым количеством портов ввода-вывода. Схема расположения выводов микросхемы представлена на рисунке 3.2.
В качестве приемо-передатчика выбрана микросхема RXQ1-433.9 фирмы Telecontrolli. ПП – сложное устройство, поэтому гораздо удобней использовать готовый модуль, чем разрабатывать и отлаживать сложный ЧМ приемо-передатчик. Данная микросхема может работать в двух различных диапазонах. Один из двух диапазонов можно выбрать при помощи внешних сигналов, совместимых с ТТЛ. Связь между такими микросхемами происходит в симплексном режиме.
Рисунок 3.6. - Внешний вид и расположение выводов МК.
Сигналы управления приемником и передатчиком, а также сигналы данных на выходе и входе микросхемы совместимы с ТТЛ, что делает возможным использование с выбранным МК. Напряжение питания микросхемы +5 вольт и в дежурном режиме она потребляет не более 8 мкА. Сама микросхема и расположение ее выводов изображены на рисунках 3.6, 3.7