РАЗРАБОТКА УНИВЕРСАЛЬНОГО МИКРОПРОЦЕССОРНОГО БЛОКА ДИСКРЕТНОГО ВВОДА-ВЫВОДА ДЛЯ УПРАВЛЕНИЯ ИСПЫТАНИЯМИ ЭЛЕКТРОННЫХ УСТРОЙСТВ Д.А. Баланин, К.Ю. Кирпичёв., Е.С. Неретин
Д.А. Баланин, К.Ю. Кирпичёв., Е.С. Неретин РАЗРАБОТКА УНИВЕРСАЛЬНОГО МИКРОПРОЦЕССОРНОГО БЛОКА ДИСКРЕТНОГО ВВОДА-ВЫВОДА ДЛЯ УПРАВЛЕНИЯ ИСПЫТАНИЯМИ ЭЛЕКТРОННЫХ УСТРОЙСТВ Задачи дискретного измерения и управления на сегодняшний день широко распространены. Цифровая обработка сигналов имеет повсеместное применение в технике, поэтому интересной задачей является разработка универсального легко модернизируемого блока, осуществляющего дискретное управление периферийными устройствами с различным типом управляющих сигналов, различными напряжениями питаниями и алгоритмами управления. Разработанный универсальный микропроцессорный блок (УМБ) представляет собой устройство, обеспечивающее управление различными периферийными устройствами, первичную обработку информации и обмен данными с персональным компьютером или другими устройствами, а, следовательно, может найти широкое применение в управлении различным электрооборудованием. УМБ позволяет осуществлять гибкую настройку каналов управления и дискретного ввода, а также имеет интуитивно понятный дружественный пользователю интерфейс. Дискретные измерения и управление возможны как в однополярном, так и на биполярном диапазонах. В результате проведенного анализа УМБ был спроектирован по классической схеме «вычислитель + устройства ввода-вывода + коммуникации». Основным процессорным элементом выбран 8-разрядный однокристальный микроконтроллер RISC-архитектуры ATmega128 производства фирмы Atmel, выполняющий 16 млн. операций в секунду при тактовой частоте 16 МГц, что соответствует производительности, приближающейся к 1 MIPS на 1 MГц. Результат применения архитектуры AVR - повышение эффективности программного кода при достижении производительности до десяти раз большей, чем у традиционных CISC-микроконтроллеров. Подсистема ввода-вывода контроллера УМБ обеспечивает каналы дискретных вводов с напряжением коммутации до +27 В (12 шт.), каналы дискретного ввода ТТЛ/КМОП (4 шт.), дискретные выводы с напряжением коммутации до +27 В (12 шт.), дискретные выводы управляющих сигналов ТТЛ уровня (14 шт.). Т.к. преимущественно УМБ предполагается использовать в системах управления авиационным и космическим оборудованием, то разработанный для УМБ блок питания выдает 4 основных напряжения питания с защитой от перегрузок и короткого замыкания: ● +5 В (максимальный выходной ток 1 А) для питания цифровой части УМБ; ● +27 В (максимальный выходной ток 11 А) для реализации управляющих релейных команд авиационных и космических устройств; ● ±28 В (максимальный выходной ток, 2,2 А), обеспечивающей напряжение бортовой сети спутников. По функциональному назначению в УМБ можно выделить три части: управляющая, коммуникационная и узел программирования и отладки. Рис. 1. Функциональная схема УМБ. Силовой частью схемы блока являются ключи, выполненные на КМОП-транзисторах с малым сопротивлением канала в открытом состоянии, что обеспечивает меньшее падение мощности на ключах по сравнению с биполярными транзисторами. Максимальное напряжение коммутации составляет +28 В, максимальный ток коммутации 4 А. Для исключения проникновения возможных импульсных сигналов, возникающих при работе с индуктивной нагрузкой, на микроконтроллер, а также для возможности подключения внешних источников питания в схему включены оптические развязки. Опторазвязка также предотвращает выход из строя микроконтроллера при выходе из строя ключей. Таким образом, все каналы управления и каналы дискретных входов с напряжением +27 В, ±28 В оптически изолированных от микроконтроллера, а для непосредственной работы с микроконтроллером выделяется специальная шина питания +5 В. Для управления также используется встроенный в микроконтроллер АТmega128 10-разрядный 2-канальный ШИМ-генератор, построенный на реверсивных счётчиках. Соотношение между длительностью импульса и длительность паузы задается числом в диапазоне 0…1023, записываемым в соответствующий регистр микроконтроллера АТmega128. Для изменения значения регистра, определяющего соотношение между длительностью импульса и длительность паузы, в протоколе обмена данными УМБ предусмотрена команда, позволяющая менять значение ШИМ. Подсистема ввода-вывода УМБ обеспечивает каналы дискретного ввода ТТЛ/КМОП (4 шт.), каналы дискретного вывода ТТЛ (14 шт.), каналы дискретного вывода с напряжением коммутации до +28 В (12 шт.). Каналы дискретного ввода используются для получения различных признаков, характеризующих состояние или режим работы подключенного оборудования (наличие питания, режим работы, возникновение неполадок и т.д.). Коммуникационная часть схемы используется для обмена информацией с другими устройствами, в которой используется универсальный синхронный/асинхронный приемо-передатчик (УСАПП), встроенный в микроконтроллер ATmega128 (асинхронный режим). Для сопряжения УМБ с другими устройствами интерфейс УСАПП преобразуется в интерфейс RS-232С, реализованный с помощью микросхемы-драйвера ADM202 производства фирмы ANALOG DEVICES. По умолчанию установлена скорость передачи данных 115200 бод. Для обмена данными и управления используется открытый документированный протокол типа «запрос-ответ» с подтверждением и контролем корректности передаваемой информации. Протокол содержит команды управления состоянием выходных каналов, чтения входных каналов, однократного или непрерывного чтения результатов измерений, управления ШИМ-генератором, получения статусной и диагностической информации, а также конфигурации всех элементов УМБ. Узел программирования и отладки Программирование микроконтроллера ATmega128 осуществляется при помощи программатора AS-2M компании Argussoft через интерфейс SPI или при помощи программатора, входящего в состав AVR JTAG ICE через интерфейс JTAG. Отладка программы для микроконтроллера ATmega128 может осуществляться при помощи среды программирования и отладки AVR Studio как на стадии программирования в режиме программной эмуляции микроконтроллера, так и в режиме реальной работы программы в микроконтроллере при помощи подключения к нему отладочных модулей AVR JTAGICE или AVR JTAGICE mkII. Программное обеспечение для УМБ представляет собой последовательную схему взаимодействия компонентов (рис. 2). В зависимости от применения, структурная схема может модифицироваться. Рис. 2. Схема взаимодействия компонентов ПО. Программное обеспечение верхнего уровня позволяет осуществлять гибкую настройку каналов ввода/вывода; управление выходными каналами; отображать и производить обработку полученной информации; выполнять циклограммы по заданным пользователем алгоритмам. Для разработки программно-математического обеспечения верхнего уровня использовались среда программирования Delphi 7.0 для реализации протокола обмена с УМБ и среда разработки Wonderware SCADA-Intouch для создания графического интерфейса управления УМБ. Для разработки программно-математического обеспечения нижнего уровня для расположенного на УМБ микроконтроллера ATmega128 использовался язык программирования С++ в среде ImageCraft IDE for ICCAVR v.7. Разрабатанное программно-математическое обеспечение имеет внутренние средства тестирования и управления системой; хранит набор настроек для микроконтроллера, ШИМ-регулятора, каналов ввода/вывода; отображает полученные результаты на экране в виде графиков; осуществляет экспорт полученных результатов в другие приложения (например, Microsoft Excel). Тестирование представленного программного обеспечения подтвердило его работоспособность и эффективность. Разработанное устройство используется в ОАО «Концерн радиостроения «Вега» в автоматизированном рабочем месте тестирования разрабатываемых приборов задержки сигналов для использования в радиолокаторах с синтезируемой апертурой авиационных и космических летательных аппаратах, где УМБ выступает в роли имитатора сигналов управления и питания. УМБ создает управляющие сигналы ТТЛ уровня (основной и резервный каналы) для управления встроенным в прибор задержки сигналов управляемым высокочастотным аттенюатором, а также выдает релейные команды для переключения СВЧ-коммутатора между каналами фазированной антенной решетки радиолокатора. С использованием УМБ поставлены две лабораторные работы в экспериментальной учебной лаборатории «Электрические измерения неэлектрических величин» на кафедре 303 Московского Авиационного Института: «Построение микропроцессорных управляющих устройств на базе микроконтроллеров RISC-архитектуры» и «Методы и технические средства определения давления». Составными частями УМБ являются элементы, входящие в состав большого количества устройств, а, следовательно, он может являться отладочным набором для освоения принципов работы микроконтроллеров, Flash-памяти, усилительных транзисторных каскадов, гальванических развязок, интерфейсов JTAG, SPI, RS-232С, Ethernet и др., а также основами управления и обмена данными с периферийными устройствами. Список использованных источников: 1. Егоров А.А., Осипов В.Г., Соловьев С.Ю. Программирование микроконтроллеров семейства AVR: Учебное пособие. – М.: Изд-во МАИ, 2005. – 80 с. 2. Неретин Е.С., Чубаров О.Ю. Лаборатория методов и технических средств изучения неэлектрических величин // Сборник статей V Межрегиональной научно-практической конференции студентов и аспирантов «Инновационные технологии в экономике, информатике и медицине». – Пенза: ПГТА, 2008. – с. 99-102. 3. Каган Б.М., Сташин В.В. Основы проектирования микропроцессорных устройств автоматики. – М.: Энерго |