Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Комплекс аппаратно-программных средств для реализации распределенных систем управления малой и средней сложности Маунг Маунг Латт

Комплекс аппаратно-программных средств для реализации распределенных систем управления малой и средней сложности
<
Комплекс аппаратно-программных средств для реализации распределенных систем управления малой и средней сложности Комплекс аппаратно-программных средств для реализации распределенных систем управления малой и средней сложности Комплекс аппаратно-программных средств для реализации распределенных систем управления малой и средней сложности Комплекс аппаратно-программных средств для реализации распределенных систем управления малой и средней сложности Комплекс аппаратно-программных средств для реализации распределенных систем управления малой и средней сложности Комплекс аппаратно-программных средств для реализации распределенных систем управления малой и средней сложности Комплекс аппаратно-программных средств для реализации распределенных систем управления малой и средней сложности Комплекс аппаратно-программных средств для реализации распределенных систем управления малой и средней сложности Комплекс аппаратно-программных средств для реализации распределенных систем управления малой и средней сложности
>

Данный автореферат диссертации должен поступить в библиотеки в ближайшее время
Уведомить о поступлении

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - 240 руб., доставка 1-3 часа, с 10-19 (Московское время), кроме воскресенья

Маунг Маунг Латт. Комплекс аппаратно-программных средств для реализации распределенных систем управления малой и средней сложности : Дис. ... канд. техн. наук : 05.13.05 : М., 2005 154 c. РГБ ОД, 61:05-5/3365

Содержание к диссертации

Введение

Глава 1. Общая структура, элементная база и программное обеспечение распределенных систем управления 7

1.1.Общая структура распределенных систем управления 7

1.2. Микроконтроллеры как базовые элементы современных систем управления 14

1.3. Программное обеспечение современных систем управления 31

1.4. Выводы и постановка задачи 35

Глава 2. Контроллерные модули для технологического управления устройствами и блоками 38

2.1. Варианты реализации контроллерных модулей на базе 8-разрядных микроконтроллеров 38

2.2. Критерии выбора функционального состава универсального модуля для реализации локальных контроллеров 42

2.3. Универсальный контроллерный модуль rdam08-gp 47

2.4. Методы и средства разработки и отладки программного обеспечения для локальных контроллеров на базе модуля rdamp08-gp 58

2.5. Варианты применения модуля rdam08-gp в системах управления 61

2.6. Выводы 64

Глава 3. Тоцессорно-коммут^икационньш модули для реализации уровня управления объектом 67

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

3.2. Методика оценки эффективности применения коммуникационного контроллера при организации потоков данных в распределенных системах управления 70

3.3. Универсальный процессорно-коммуникационный модуль en360dk-m..76

3.4. Методы и средства отладки систем, реализованных на базе модуля en360dk-m 85

3.5. Возможности применения модуля en360dk-m в системах управления..90

3.6. Выводы 92

Глава 4. Программное обеспечение для контроллерных и процессорно - коммуникационных модулей 95

4.1. Комплект прикладного программного обеспечения для контроллерного модуля на базе 8-разрядного микроконтроллера 95

4.1.1. Опрос клавиатуры 96

4.1.2. Инициализация и вывод данных на жки 99

4.2. Реализация протокола ethernet в системах, использующих процессорно-коммуникационный модуль 68en360dk-m 109

4.3. Реализация в локальных контроллерах многозадачного режима реального времени 113

4.4. Выводы 118

Заключение 119

Список литературы

Введение к работе

Современный этап развития систем управления различными объектами

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

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

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

стоимость аппаратных средств, медленное восстановление после рестарта системы ("медленный" старт компьютеров), что ограничивает применение в системах реального времени, особенно на нижнем (технологическом) уровне, где необходима очень быстрая реакция системы на определенные события.

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

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

Аналогичная проблема стоит и при создании программного обеспечения для систем управления. В сложных и ответственных системах широко используются коммерческие операционные системы реального времени (ОСРВ), стоимость которых составляет десятки тысяч долларов. Для многих проектов покупка и

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

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

Результаты работы предполагается использовать при реализации проектов в Союзе Мьянмы. На базе разработанных аппаратно-программных средств планируется также постановка лабораторного практикума по изучению современных микроконтроллеров в Янгонском техническом университете (г. Янгон, Союз Мьянмы).

Микроконтроллеры как базовые элементы современных систем управления

В связи с широким диапазоном задач, решаемых современными системами управления, требования, предъявляемые к основным характеристикам микроконтроллеров - производительности процессора, объему внутренней памяти команд и данных, набору необходимых периферийных устройств, оказываются весьма разнообразными. Для удовлетворения запросов потребителей выпускается большая номенклатура 8-, 16- и 32-разрядных микроконтроллеров.

Наиболее многочисленную группу представляют 8-разрядные микроконтроллеры, имеющие относительно низкую производительность, которая, однако, вполне достаточна для решения широкого круга задач управления различными объектами. Они содержат внутреннюю память программ (ROM, EEPROM, Flash) объемом от нескольких единиц до десятков Кбайт. Для хранения данных используется регистровый блок, организованный в виде нескольких регистровых банков, или внутреннее ОЗУ. Объем внутренней памяти данных составляет от нескольких десятков байт до нескольких Кбайт. Ряд микроконтроллеров этой группы позволяет, в случае необходимости, дополнительно подключать внешнюю память команд и данных объемом до 64 — 256 Кбайт. Обычно 8-разрядные микроконтроллеры выполняют относительно небольшой набор команд (40-100), используя наиболее простые способы адресации. Различные модели 8-разрядных микроконтроллеров могут быть использованы для реализации локальных контроллеров, обеспечивающих нижний (технологический) уровень управления в распределенных системах.

В современных системах управления наиболее широко используются следующие семейства 8-разрядных микроконтроллеров [22]: - семейство MCS-51 (производители Intel, Atmel, Philips, Winbond, Texas Instruments и ряд других), - семейство 68НС08 (производитель Freescale Semiconductor), - семейство A VR (производитель Atmel), - семейство РІС (производитель Microchip Technology).

Описание этих семейств микроконтроллеров дано в ряде работ [23-31]. Каждое из указанных семейств имеет свои особенности, которые определяют специфику их применения для решения конкретных прикладных задач.

Микроконтроллеры с базовой архитектурой MCS-51, предложенной фирмой Intel 25 лет назад, в настоящее время выпускаются рядом производителей, которые произвели существенную модификацию первоначальной структуры [32-38]. Проведенная модификация позволила существенно повысить производительность. Если в первоначальной структуре выполнение команды требовало 12 тактов, то в последних моделях микроконтроллеров, выпускаемых компаниями Winbond и Philips команды выполняются за 2-4 такта. Значительно увеличился объем памяти программ (до 128 Кбайт) и данных (до 2 Кбайт). Широкое применение в контрольно-измерительных устройствах и системах нашли микроконверторы фирмы Analog Devices, в которых процессорное ядро MSC-51 интегрировано с 12-или 16-разрядным АЦП и 12-разрядными ЦАП. Благодаря проведенным усовершенствованиям микроконтроллеры с архитектурой MCS-51 продолжают широко использоваться в управляющих устройствах и системах.

Компания Freescale Semiconductor является ведущим мировым производителем микроконтроллеров. Семейство 68НС08 является основным промышленным стандартом компании Freescale Semiconductor в сфере 8-разрядных микроконтроллеров и насчитывает около 40 моделей, рекомендованных для применения [26, 28, 39, 40]. Все микроконтроллеры семейства 68НС08 содержат процессорное ядро CPU08, внутреннюю память программ - масочно-программируемое ПЗУ емкостью до 32 Кбайт или FLASH-память емкостью до 60 Кбайт, ОЗУ данных емкостью от 128 байт до 2 Кбайт. Используемая в микроконтроллерах FLASH-память допускает выполнение до 10000 циклов стирания-программирования. В ряде моделей имеется также память EEPROM емкостью 512 байт или 1 Кбайт. Большинство микроконтроллеров семейства работают при напряжении питания 5.0 В, обеспечивая максимальную тактовую частоту Ft = 8 МГц. Многие модели работают при пониженном напряжении питания 3.3, 3,0, 2,0 и 1.8 В. Основной диапазон рабочих температур составляет -40...85С, однако многие выпускаемые модели работают в расширенном температурном диапазоне -40... 105 С или -40... 125 С, что является необходимым в ряде промышленных применений.

Микроконтроллеры AVR (семейства Classic и Atmega), выпускаемые компанией Atmel, имеют RISC-архитектуру, которая позволяет выполнять большинство команд за один такт. Они обеспечивают более высокую производительность по сравнению с микроконтроллерами семейств MCS-51 и 68НС08, имеющими классическую CISC-архитектуру, но при этом реализуют ограниченный набор команд и способов адресации. Микроконтроллеры AVR содержат достаточно широкий набор периферийных модулей, имеют высокие технические характеристики и в последние годы находят все более широкое применение [36,38,41,42].

Микроконтроллеры РІС (семейства РІС 12, РІС 16, РІС 18) компании Mocrochip Technology также имеют RISC-архитектуру [25, 31, 38], благодаря чему выполняют команду за меньшее число тактов, чем CISC-микроконтроллеры семейств MCS-51 и 68НС08. Микроконтроллеры PIC12, PIC16 реализуют очень ограниченный набор команд (менее 40), имеют малый объем внутренней памяти данных (до 368 байт). Более широкими возможностями обладает семейство РІС 18, в котором реализован ряд дополнительных команд, в том числе команда умножения (деление отсутствует) и увеличен до 1 Кбайт объем памяти данных. Ввиду низкой стоимости и малого энергопотребления основной областью использования микроконтроллеров РІС являются недорогие портативные устройства массового применения.

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

Семейство 68НС08 компании Freescale Semiconductor содержит широкую номенклатуру моделей с программируемой в системе Flash-памятью и большим набором периферийных модулей.

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

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

1. Выбор типа микроконтроллера. Как показывают результаты обзора, проведенного в разделе 1.3, для реализации функций управления устройствами и блоками на технологическом уровне во многих приложениях можно использовать современные 8-разрядные микроконтроллеры, имеющие достаточно высокую производительность (до 10 миллионов операций/с) и большой набор внутренних периферийных модулей.

Проведенный обзор показывает, что для реализации функций управления на технологическом уровне наиболее перспективны следующие семейства микроконтроллеров: CISC-микроконтроллеры семейства 68HC908/HCS08, RISC-микроконтроллеры семейства Atmega. RISC-микроконтроллеры имеют значительно более высокую скорость выполнения программы (в 2-3 раза выше, чем для CISC-микроконтроллеров). Однако ввиду ограниченного набора выполняемых команд и способов адресации их реальная производительность при решении задач управления превышает производительность CISC-микроконтроллеров приблизительно в 1,5 раза (средняя оценка). В тоже время широкий набор команд и способов адресации CISC-микроконтроллеров оказывается более простым и эффективным для программирования на языке Ассемблера, который часто используется для создания программного обеспечения локальных контроллеров, имеющих ограниченные ресурсы внутренней памяти. Поэтому для реализации универсального одноплатного модуля, реализующего функции локального контроллера, был выбран микроконтроллер семейства 68НС08. Выбор конкретной модели микроконтроллера производится по следующим критериям (см. раздел 2.2): - достаточный объем внутренней Flash-памяти программ, обеспечивающий загрузку и хранение необходимого прикладного и системного программного обеспечения (не менее 32 Кбайт); - наличие необходимого состава внутренних устройств, обеспечивающих обслуживание объекта управления: АЦП, таймеры, порты параллельного и последовательного ввода-вывода данных; - наличие служебных устройств, упрощающих реализацию и повышающих надежность работы локального контроллера (встроенный генератор тактовых импульсов, сторожевой таймер, схема контроля напряжения питания); - наличие средств, поддерживающих процедуру отладки систем, реализуемых на базе микроконтроллера; - невысокая стоимость.

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

Параллельный ввод-вывод данных, поступающих в цифровой форме, обычно производится непосредственно через параллельные порты микроконтроллера. При этом порты современных микроконтроллеров имеют возможности программирования функций отдельных линий (ввод или вывод данных), обеспечивают подключение резисторов, «подтягивающих» потенциалы отдельных выводов к напряжению питания («pull-up») или к «земле» («pull-dawn»).

Для последовательного ввода-вывода данных в современных системах управления используются различные варианты последовательных шин и протоколов обмена, обзор которых дан в разделе 1.1. Ввиду широкого применения интерфейса RS-232 представляется необходимым его реализация в составе проектируемого универсального модуля. Несмотря на относительно небольшую скорость обмена, этот интерфейс удовлетворяет требованиям, предъявляемым к организации связи с локальными контроллерами во многих системах управления, обеспечивает достаточно надежную пересылку сообщений и массивов данных малого и среднего объема (до сотен Кбайт), реализуется с использованием дешевых компонентов. При необходимости передачи данных на значительные расстояния (до 1200 м) целесообразным является реализация интерфейса RS-485.

Более сложные сетевые интерфейсы (CAN и другие) целесообразно реализовать в специализированных контроллерах, ориентированных на использование в составе соответствующих сетей.

Большинство современных микроконтроллеров имеют в своем составе многоканальные 8- или 10-разрядные АЦП. Во многих применениях их разрядность удовлетворяет требованиям, предъявляемым в реализуемых системах управления. Поэтому для обработки данных, представленных в аналоговой форме, достаточно обеспечить подачу соответствующих сигналов на входы АЦП микроконтроллера. При этом для получения заданной точности преобразования необходимо удовлетворить определенные требования, предъявляемые к монтажу аналоговых цепей и обеспечению питания АЦП. Эти требования содержатся в технической документации для соответствующего микроконтроллера.

Общее число линий ввода-вывода данных (аналоговых и цифровых), которые должен иметь локальный контроллер, определяется областью его использования. Для многих применений достаточно иметь 8-16 линий ввода-вывода, хотя в ряде приложений могут использоваться контроллеры, имеющие несколько десятков каналов ввода-вывода данных.

Методика оценки эффективности применения коммуникационного контроллера при организации потоков данных в распределенных системах управления

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

На рис. 3.1 представлена функциональная схема преобразователя потоков данных, идущих от контроллеров нижнего уровня через интерфейсы RS-485, RS-232 или CAN, в поток данных, уходящих по дублированному (для повышения надежности) каналу Ethernet к центральному блоку управления. Для реализации последовательного обмена в данной модели используются контроллеры SCC, SMC, входящие в состав коммуникационных контроллеров МС68360 компании Freescale Semiconductor (см. раздел 1.2).

Исходя из справочных данных, получаем, что на обработку протоколов контроллером MC68EN360 с частотой 33 МГц требуются следующие ресурсы. Ethernet (10Mbps, Half Duplex) = 10/29 = 34% суммарной производительности процессора = 2,8MIPS; KS(115200 bps)= 3,6% = 0,3MIPS; CAN (l Mbps) = 3,6% = 0,3 MIPS. Из тех же справочных данных получаем, что для организации копирования блока данных из одного раздела памяти в другой (процедура memcopy) со скоростью 1Mbps необходимо затратить 0,44 MIPS.

Отсюда получаем, что для обеспечения копирования суммарного потока данных, приходящих на два интерфейса RS и один CAN, необходимо затратить следующие ресурсы: RS (115200 bps) = 0,115200 0,7 0,44 = 0,035 MIPS = 0,43%; CAN (1 Mbps) = 1 0,7 0,44 = 0,31MIPS = 3,7%; Суммарная нагрузка составит 2RS + CAN = 0,43 2 + 3,7 4,6%; В соответствии с моделью на рис. 3.2 такая операция выполняется 7 раз, поэтому микроконтроллер должен затратить: 7 . = 7 4,6 32%. Для реализации соответствующих протоколов используется: 2Eths + 2RS- + CAN = 2 34 +2 3,6 +3,6 = 78,8%;

В сумме получаем: 78,8 + 32 =110,8% ресурса производительности . Таким образом проведенная оценка показывает, что реализация данной функциональной модели не обеспечивается ресурсом производительности данной модели коммуникационного контроллера. Можно предложить следующие варианты решения данной проблемы: 1. Использовать более высокопроизводительный процессор, например, с архитектурой PowerPC (семейства МРС860 или МРС8260). 2. Снизить интенсивность потока данных по каналам нижнего уровня (до 46%) или отказаться от дублирующего канала Ethernet. 3. Реализовать модифицированную функциональную модель, представленную на рис 3.3.

Использование более высокопроизводительной модели (вариант 1) вызовет повышение стоимости процессорно-коммуникационного модуля, а снижение интенсивности потока данных или отказ от дублирования канала Ethernet (вариант 2) приведут к снижению надежности функционирования из-за возможной потери данных. Поэтому целесообразно рассмотреть возможность реализации модифицированной функциональной модели (вариант 3).

Модификация функциональной модели проведена с учетом следующих факторов: пропускная способность канала Ethernet намного превосходит пропускную способность каналов связи с контролерами нижнего уровня, а поэтому существует возможность пересылки принятых данных на центральный пульт управления без предварительной обработки; пакеты данных, передаваемых по каналам связи нижнего уровня, имеют одинаковый размер.

Проведем расчет необходимой производительности для модифицированной модели с учетом того, что количество необходимых операций по передаче блоков данных сократилось с семи до двух: для двукратного выполнения операции копирования контроллер должен затратить 2 = 2 4,6 9,2% производительности (по сравнению с ранее рассмотренным случаем требования к ресурсу снижаются в 32/9,2 = 3,4 раза); требуемый ресурс производительности составит 78,8 + 9,2 = 88%

Таким образом предложенный вариант модели позволяет выполнить поставленную задачу при пониженных требованиях к производительности процессора за счет организации промежуточного хранения данных в памяти коммуникационного контроллера. Получаемый в данном случае резерв производительности (12% от общего ресурса) может использоваться для выполнения некоторого объема дополнительных функций обработки данных.

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

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

Компания Motorola выпускает три семейства коммуникационных контроллеров: МС68302, МС68360 и МРС8хх/82хх, которые различаются архитектурой процессорного ядра, объемом внутренней памяти, составом реализуемых коммуникационных интерфейсов. Общими для этих семейств является наличие в их структуре трех основных блоков: высоко производительного центрального процессора CPU (Central Processor Unit), модуля системной интеграции SIM (System Integration Module) и коммуникационного процессора СРМ (Communication Processor Module), обеспечивающего обмен данными по нескольким каналам, каждый из которых программируется на реализацию определенного протокола обмена.

Для реализации процессорно-коммуникационных модулей, предназначенных для применения в распределенных системах управления сложными объектами, перспективными являются коммуникационные контроллеры MC68EN360/EN360V [27, 28, 51, 52], которые имеют достаточно высокие показатели по производительности и скорости обмена данными, позволяют использовать большой объем имеющегося системного и прикладного программного обеспечения, включая ОС реального времени. Они отличаются относительно низкой стоимостью и простотой применения, обеспечивают возможности эффективного выполнения тестирования и отладки систем с помощью имеющейся аппаратной поддержки протоколов JTAG и BDM.

Инициализация и вывод данных на жки

Типовая структура распределенной системы управления, использующей в качестве локальных контроллеров разработанные модули RDAM08-GP, приведена на рис. 2.7. Прикладное программное обеспечение для контроллерного модуля RDAM08-GP, работающего в составе распределенной системы, должно обеспечить выполнение следующих основных функций: - прием и хранение данных, поступающих в аналоговой и цифровой форме, - обработка данных и выдача управляющих воздействий, - обмен данными по протоколу RS-232 с центральным управляющим модулем, - обслуживание клавиатуры, - отображение данных на экране жидко-кристаллическом индикаторе (ЖКИ).

В реальных системах обработка данных и выдача управляющих воздействий производится с помощью программ, реализующих заданные алгоритмы управления в соответствии со спецификой конкретного объекта. В данной работе решается задача разработки алгоритмов и рабочих программ для выполнения стандартных функций: опрос клавиатуры, инициализация и вывод данных на ЖКИ, инициализация и обеспечение приема-передачи данных по каналу RS-232. Для удобства пользования реализована возможность работы оператора с контроллерным модулем в интерактивном режиме с использованием меню. Разработанная программа реализации этого режима описана в данном разделе.

В процессе создания программного обеспечения использовалась интегрированная среда разработки CodeWarrior CW08 фирмы Metrowerks, которая позволяет разрабатывать программы на языке Ассемблер и Си, и отлаживать их в реальном масштабе времени. Рабочие программы разрабатывались на языке Ассемблера, чтобы обеспечить минимальный объем программ с учетом, ограниченного объема внутренней памяти контроллерного модуля (32 Кбайт). Отладка производилась с использованием опытного образца разработанного модуля RDAM08-GP. В режиме отладки модуль работал с тактовой частотой 2,5 МГц под управлением встроенного отладчика, который обеспечивал связь с персональным компьютером, выполняющим функции системы отладки. . Опрос клавиатуры Состояние клавиатуры можно контролировать путем опроса или по запросам прерывания, поступающим от блока KBI08 микроконтроллера. В данной программе используется механизм опроса клавиатуры. Клавиатура (4 ряда по 3 кнопки) подключена к выводам РТА1-РТА7 порта А. Так как контроль состояния клавиатуры осуществляется по опросу, то необходимо сконфигурировать выводы управления строками РТА4-РТА7 на ввод данных, а выводы управления столбцами РТА1-РТАЗ на вывод данных. Для этого в регистре направления DDRA (адрес $0004) устанавливаются значения битов DDRA4-DDRA7 равными 0, а значения битов DDRA1-DDRA3 равными 1. Далее, разрешается подключение подтягивающих резисторов на выводах управления строками РТА4-РТА7, путем установки в регистре PTAPUE (адрес $000D) значений битов PTAPUE4-PTAPUE7 равными 1. Если кнопки не нажаты, на выводах РТА4-РТА7 будет присутствовать высокий потенциал, что соответствует состоянию логической 1.

В процедуре опроса клавиатуры на выводы управления столбцами РТА1-РТАЗ последовательно подается низкий потенциал (логический 0), и считывается состояние клавиатуры с выводов управления строками РТА4-РТА7. Это осуществляется путем установки и считывания соответствующих битов в регистре РТА. В случае нажатия 13 выводе PTAi установится состояние логического 0, а на остальных выводах сохранится состояние логической 1. Алгоритм процедуры приведен на рис.4.1. Текст соответствующей программы включен в программный модуль, обеспечивающий выполнение функций в режиме меню, который приведен в Приложении 2.

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

Входящий в состав модуля алфавитно-цифровой ЖКИ, выполнен на основе контроллера HD44780, имеет две строки по 16 символов, с матрицей символа 5x7 точек. Особенностью функционирования ЖКИ в данном модуле является обмен данными по 4-разрядной шине.

Вывод данных на ЖКИ заключается в записи кодов отображаемых символов во регистр данных DR, входящий в состав ЖКИ. Это достигается путем формирования необходимой последовательности кодов на линиях управления и линиях данных ЖКИ, что реализуется посредством записи этих кодов в регистры данных определенных портов микроконтроллера MC68HC908GP32. Для управления ЖКИ используются семь выводов РТС0-РТС6 порта С, которые необходимо сконфигурировать на вывод данных. Для этого надо в регистре направления DDRC установить значения битов DDRC0-DDRC6 равными 1.

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

Процедура записи в командный регистр IR отличается от записи в регистр данных DR значением сигнала RS. Для записи байта во внутренний регистр ЖКИ в режиме 4-разрядного обмена необходимо выполнить следующую процедуру. 1. Выбрать регистр для текущего цикла обмена с помощью сигнала RS (регистр IR, если RS = 0; регистр DR, если RS = 1). 2. Вывести значение старшей тетрады байта данных на линии DB4-DB7. 3. Установить значение сигнала Е равным 1. 4. Установить значение сигнала Е равным 0. 5. Вывести значение младшей тетрады байта данных на линии DB4-DB7. 6. Установить значение сигнала Е равным 1.

Похожие диссертации на Комплекс аппаратно-программных средств для реализации распределенных систем управления малой и средней сложности