Тема 3
Рекомедуемая литература
1. Хофманн М. Микромикроконтроллеры для начинающих: Пер. с нем. – СПб.: БХВ – Петербург, 2010. – 304 с.
2. Голубцов М.С. Микромикроконтроллеры AVR: от простого к сложному. – М.: СОЛОН-Пресс, 2003. – 288 с.
3. Схемотехника электронных систем. Микропроцессоры и микромикроконтроллеры / В.И. Бойко, А.Н. Гуржий, В.Я. Жуйков, А.А. Зори, В.М. Спивак, Т.А. Терещенко, Ю.С. Петергеря. – СПб.: БХВ – Петербург, 2004. – 464 с.
Основные понятия и определения микропроцессорной техники
Микропроцессорная система (микроконтроллер, компьютер) представляют собой совокупность аппаратных средств (АС) и программного обеспечения (ПО), которые тесно взаимосвязаны и практически бесполезны друг без друга.
Микропроцессорная система (МП система) - информационная или управляющая система, построенная с применением микропроцессорных средств.
Микропроцессор (МП - CPU) – устройство обработки данных (информации) - выполняет арифметические и логические операции и осуществляет программное управление процессом обработки.
Микромикроконтроллер (МК - МС) – микропроцессорное устройство, в основном, с небольшими вычислительными ресурсами и упрощенной системой команд, ориентированный не на производство вычислений, а на выполнение логического управления машинами или, технологическими процессами.
Адаптер – устройство для согласования физических параметров (входных и выходных сигналов) устройств с целью их сопряжения.
Интерфейс – полная совокупность физических и логических соглашений о входных и выходных сигналах устройств с целью их сопряжения.
Совокупность аппаратных, программных и конструктивных средств, обеспечивающих взаимодействие функциональных устройств ЭВМ, называется внутренним системным интерфейсом (ШУ, ШД, ША).
|
Структура микропроцессора
Внешний вид микропроцессора приведен на рисунке 1.
Рисунок 1 - Внешний вид микропроцессора
Микропроцессор (МП) состоит из следующих структурных блоков (см. рисунок 1):
─ внутренней шины;
─ регистров общего назначения;
─ арифметико-логического устройства (АЛУ);
─ буфера шины адреса;
─ буфера шины данных;
─ устройства управления и синхронизации;
─ регистра команд.
(Регистр— последовательное логическое устройство, используемое для хранения n-разрядных двоичных чисел и выполнения преобразований над ними. Регистр представляет собой упорядоченную последовательность триггеров, число которых соответствует числу разрядов в слове.
Для связи между собой структурных блоков микропроцессора предназначена внутренняя шина.
Регистры общего назначения (РОН) содержат регистр адреса; программный счетчик; указатель стека; оперативные парные регистры: W Z; D C. D E, H L,мультиплексор.
В состав АЛУ входят буфер и аккумулятор для промежуточного хранения исходной цифровой информации; арифметико-логическое устройство; регистр признаков.
Регистр адреса служит для промежуточного хранения адреса обращения микропроцессора к конкретному структурному блоку системы. Этот адрес в регистр заносится перед посылкой его в шину адреса.
Рисунок 1 – Структурная схема микропроцессора
Программный счетчик служит для формирования адреса обращения к ячейкам памяти, в которых хранятся команды программы управления микропроцессорной системы. При выполнении очередной команды алгоритма управления объектом содержание счетчика увеличивается автоматически на единицу, если этот алгоритм линейный.
|
Стеком называют часть оперативной памяти, в ячейки которой последовательно записывают оперативную информацию. При записи этой информации указатель стека автоматически увеличивается на число заполненных при записи ячеек памяти. И наоборот, при считывании информации из стека его ячейки последовательно очищаются, а указатель стека уменьшается на число таких очищенных ячеек.
Кроме того, для хранения оперативной информации служат парные оперативные регистры общего назначения W и Z, B и C, D и E, H и L, обращение к которым осуществляется через мультиплексор. Часть этих регистров предназначена для хранения адресной части команд, в то время как их исполнительная часть хранится в регистре команд.
Структура микроконтроллера
На рисунке 1 приведена упрощённая типичная структура микроконтроллер (МК) предназначенного для обработки данных или управления некоторой машиной или технологическим процессом.
В этой структуре центральное место занимает микропроцессор (МП), который выполняет арифметические и логические операции над данными, осуществляет программное управление процессом обработки информации, организует взаимодействие всех устройств входящих в МК.
Работа МП происходит под воздействием сигналов (тактовых прямоугольных импульсов – ГТИ) схемы синхронизации и начальной установки.
|
Приведенная структура МК, отражает магистрально-модульный принцип организации микропроцессорного устройства. Отдельные блоки являются унифицированными функционально законченными модулями со своими схемами управления.
Обмен информацией между модулями микроконтроллера осуществляется посредством коллективных шин (магистралей – ША, ШД, ШУ) к которым имеют доступ модули микроконтроллера, то есть обмен информацией производится путём разделения использования во времени, модулями системы коллективных шин. Магистральный принцип сопряжения модулей предполагает наличие унифицированных аппаратных, программных и конструктивных средств, обеспечивающих установление связей и взаимодействие всех модулей микроконтроллера, и называется внутренним системным интерфейсом.
Для микроконтроллера характерна трех шинная структура, содержащая шину адреса (ША), шину данных (ШД) и шину управления (ШУ). Типовая структура микроконтроллера, предполагает наличие общего сопряжения (интерфейса) для модулей памяти - постоянных и оперативных запоминающих устройств (ПЗУ и ОЗУ) и периферийных устройств ввода/вывода (УВВ) и внешнего ОЗУ.
Постоянное запоминающее устройство (ПЗУ) служит для хранения отлаженного алгоритма управления объектом или для хранения мало меняющейся цифровой информации, используемой в управлении объектом. Микропроцессор может только считывать информацию из ПЗУ.
Оперативное запоминающее устройство (ОЗУ) служит для хранения любой информации, используемой в управлении объектом, в том числе и для хранения программ управления объектом. ОЗУ имеет двустороннюю связь с микропроцессором.
В качестве внешних (периферийных) устройств для микроконтроллера являются: органы управления, клавиатура, дисплей, органы индикации, внешняя память, различные датчики, исполнительные устройства и. т. д.
Периферийные устройства подключаются к шинам интерфейса через интерфейсные БИС – параллельный программируемый адаптер (ППА – PPI), микроконтроллер клавиатуры и дисплея (ККД), программируемый универсальный синхронно-асинхронный приёмник-передатчик (УСАПП – USART)- последовательный интерфейс и другие аппаратные средства.
Программируемый параллельный интерфейс служит для связи микропроцессора с дискретными или аналоговыми объектами управления, в качестве которых могут быть датчики или исполнительные устройства объектов управления.
Программируемый последовательный интерфейс служит для передачи в последовательном коде цифровых сигналов к объектам управления или к другим микропроцессорным системам, расположенным на значительном расстоянии от микропроцессора. Двусторонняя (дуплексная) передача сигнала по линии последовательной связи осуществляется по некоторым правилам, которые называют протоколом передачи данных
Внутренний системный интерфейс
Шина адреса - ША
Шина данных ШД
Шина управления - ШУ
• • •
Интерфейс памяти Устройства ввода-вывода - УВВ
Интерфейс периферийного оборудования
Рисунок 1 - Структурная схема микроконтроллера
В структуре микроконтроллера интерфейс является узким местом из-за ограниченного числа выводов корпуса МП. Узкий интерфейс приводит к необходимости применения двунаправленных линий передачи информации, что усложняет схемы буферов и вызывает необходимость использования временного мультиплексирования шин. Мультиплексирование шин позволяет при ограниченном числе линий интерфейса передавать по ним различную информацию; адреса, данные, команды. Однако это приводит к снижению скорости передачи информации через интерфейс.
Принцип работы микроконтроллера при автоматизации технологических машин или процессов состоит в выполнение следующего
цикла операций:
1. Сбор сигналов с датчиков;
2. Обработка сигналов согласно прикладному алгоритму управления;
3. Выдача управляющих воздействий на исполнительные устройства.
В нормальном режиме работы микроконтроллер непрерывно выполняет
этот цикл с частотой от 50 раз в секунду. Время, затрачиваемое контроллером на выполнение полного цикла, часто называют временем (или периодом) сканирования; в большинстве современных ПЛК сканирование может настраиваться пользователем в диапазоне от 20 до 30000 миллисекунд. Для быстрых технологических процессов, где критична скорость реакции системы и требуется оперативное регулирование, время сканирования может составлять 20 мс, однако для большинства непрерывных процессов период 100 мс считается вполне приемлемым.
В отличие от персонального компьютера он рассчитан на решение ограниченного круга задач и должен обладать следующими основными свойствами:
1) работа в режиме реального времени, т.е. обеспечение высокой
реактивности (быстродействия) на запросы обслуживания со стороны объекта управления (обеспечение управления в темпе протекания технологического процесса);
2) повышенные требования к надежности функционирования:
– автоматический перезапуск в случае «зависания» программы;
– конструкция, приспособленная для работы в подземных условиях шахт;
– минимальное потребление энергии и рассеяние тепла в условиях
ограниченной мощности источника питания и отсутствия элементов
принудительной вентиляции и охлаждения;
3) модульность архитектуры и возможность встраивания дополнительных блоков управляющей, регистрирующей, сопрягающей аппаратуры, что помимо специальных конструкторских решений обеспечивается использованием стандартных шин и увеличением числа плат расширения.
Программное обеспечение
Основные требования к программному обеспечению для PLC:
автономность;
поддержка процессов сбора, анализа информации и управления, а также локальных баз данных в реальном времени;
возможность дистанционного управления со стороны диспетчерского пункта (уровень SCADA-систем);
сетевая поддержка.
Программное обеспечение включает следующие основные компоненты:
тестовое программное обеспечение;
базовое программное обеспечение;
прикладное технологическое программное обеспечение.
Тестовое программное обеспечение. Выполняет тестирование (отладку) отдельных PLC и системы в целом (включая тестирование и диагностику различных конфигураций) и содержит следующие компоненты:
программы инициализации и конфигурирования, а также начальные тесты для PLC и сетевых адаптеров (внутреннее программное обеспечение, расположенное в ПЗУ);
программы для тестирования PLC через линию связи с компьютером высшего уровня или специализированной наладочной аппаратурой;
программы для тестирования, наладки и сбора статистики локальной сети распределенной системы;
комплексное тестирование распределенной системы в целом;
специализированное тестовое программное обеспечение для наладочных пультов, панелей, стендов, эмуляторов и т.д.
Отладка PLC выполняется с помощью компьютеров или специальных пультов, обеспечивающих доступ к памяти и портам PLC с целью отладки и оперативного ввода данных, уставок, управляющей информации. Отладчик позволяет перевести работу PLC в режим пошагового исполнения внутренних программ, эмулировать подачу внешних сигналов, отслеживать изменения состояний регистров и т. п.
Базовое программное обеспечение. В его состав входят:
операционные системы реального времени, управляющие выполнением прикладной технологической программы и устройствами PLC;
сетевые программные средства, обеспечивающие информационный обмен между отдельными узлами и возможность дистанционного доступа и управления в распределенной системе.
Прикладное технологическое программное обеспечение. Прикладное технологическое программное обеспечение – это машинно-ориентированые языки (ассемблеры), используемые для разработки прикладных программ, Языки ассемблера представлены в виде перечня команд конкретного микропроцессора. Команды ассемблера включают в себя обычно арифметические и логические операции, средства организации циклов подключения и отключения портов, средства управления прерываниями (запрет/разрешение, установка приоритетов), средства работы с интервалами времени и обработки событий, а также средства для динамической загрузки и запуска программ. Элементами языка являются имена портов ввода-вывода и отдельных их разрядов, имена счетчиков, таймеров и контактов, флаги, а также параметры технологического процесса. Преимуществом языков ассемблера является компактность итогового машинного кода, высокое быстродействие. Недостатком – высокая трудоемкость разработки, большой объем текста, отсутствие сложных математических функций (тригонометрических, логарифмических и т.д.). Для реализации сложных алгебраических вычислений необходимо создавать громоздкие подпрограммы.
Для разработки технологических программ используются следующие средства: редакторы, системы программирования (поддержка тассемблеров и языков высокого уровня, а также языков технологического программирования), средства отладки и тестирования, а также инструментарий для функционально-ориентированных языков программирования, позволяющих с минимальными трудозатратами осуществлять проектирование системы «под ключ».
Современные средства автоматизации проектирования технологических программ позволяют программировать PLC с использованием библиотеки стандартных программных модулей – «алгоблоков»,реализующих типовые алгоритмы управления АСУТП: компараторы, формирователи широтно-импусных сигналов (ШИМ) и др.