Н.П. Курышкин Программирование микроконтроллера MKП-1
.pdfМинистерство образования Российской Федерации
Кузбасский государственный технический университет
Кафедра прикладной механики
ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРА МКП-1
Методические указания к лабораторной работе по программированию и управлению промышленных роботов
для студентов специальности 210200 – Автоматизация технологических процессов и производств
Составитель Н.П. Курышкин
Утверждены на заседании кафедры Протокол № 3 от 20.11.2000
Рекомендованы к печати учебнометодической комиссией специальности 210200 Протокол №283 от 22.11.2000
Электронная копия находится в библиотеке главного корпуса КузГТУ
Кемерово 2001
1
ЦЕЛЬ И СОДЕРЖАНИЕ РАБОТЫ
Цель работы - изучение устройства и освоение методики программирования микроконтроллера МКП-1, входящего в состав промышленного робота ЦПР-1П,
При выполнении работы необходимо изучить функциональные схемы микроконтроллера во всех режимах его работы, органы управления и порядок программирования микроконтроллера. Кроме этого, для предложенного преподавателем варианта задачи необходимо составить программу работы промышленного робота, ввести эту программу в память микроконтроллера и проверить её пробным запуском.
Работа рассчитана на два часа.
ОПИСАНИЕ ОБОРУДОВАНИЯ
Микроконтроллер МКП-1 предназначен для управления манипулятором промышленного робота и представляет собой цикловую систему, работающую по временному, путевому или совмещенному принципам.
Микроконтроллер выполняет следующие программируемые функции:
-управление выходами на исполнительные устройства манипулятора;
-приём информации от датчиков состояния технологического оборудования;
-формирование выдержек времени;
-управление счётчиками;
-обращение к подпрограммам;
-организация условных и безусловных переходов по программе.
Микроконтроллер обеспечивает следующие режимы работы:
1) под управлением программы, записанной в память (автоматическое управление);
2)под управлением команд, поданных с пульта управления (ручное управление);
3)пошаговое выполнение программы;
4)запись программ в память (программирование);
5)просмотр программы (вывод на индикацию содержимого памяти).
2
Микроконтроллер сконструирован по модульному принципу (рис. 3). Основным модулем является микропроцессор. Он осуществляет сбор, цифровую обработку и вывод информации в соответствии с исполнительной программой. Исполнительная программа записана в перепрограммируемое постоянное запоминающее устройство (ПЗУ) модуля памяти (МП). Она является неотъемлемой частью микроконтроллера, невидимой и недоступной для пользователя. Её назначение – преобразование инструкций в последовательность кодов машинного языка. Инструкции могут быть введены оператором с пульта управления или поступать от управляющей программы. Управляющая программа написана пользователем в кодах команд входного языка (описание системы команд приведено ниже) и обеспечивает выполнение заданного алгоритма управления манипулятором и внешним оборудованием. Программа размещается в модулях энергонезависимого запоминающего устройства (ЭНЗУ). Пульт управления (ПУ) совместно с модулем управления (МУ) составляют технические средства общения оператора с микроконтроллером. Пульт управления включает в себя клавиатуру и однострочный дисплей. Клавиатура служит для ввода команд и управления режимом работы микроконтроллера. Однострочный дисплей предназначен для отображения контролируемой оператором информации. Модуль управления обеспечивает сопряжение ПУ с внутренней магистралью обмена информацией микроконтроллера. Модуль вводавывода обеспечивает связь модуля микропроцессора с манипулятором,
технологическим оборудованием и ЭВМ верхнего уровня. |
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
В каждый текущий мо- |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
мент времени |
микрокон- |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
Ввод-вывод |
|
|
|
|
|
|
ЭНЗУ |
|
|
троллер может находиться |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
в одном из пяти режимов |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
Управляющая прогр. |
|
|
||||||||||||
|
|
|
|
|
|
работы: |
АВТОМАТИЧЕ- |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
СКОМ, РУЧНОМ, ПО- |
|||
|
|
|
|
|
|
Исполнит. |
|
|
ОЗУ |
|
|
|||||||
|
Микропроцессор |
|
|
|
МП |
ШАГОВОМ, |
ВВОДА |
|||||||||||
|
|
|
прогр. |
|
|
|
|
ПРОГРАММЫ |
и |
ПРО- |
||||||||
|
|
|
|
|
|
|
|
|
ПЗУ |
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
СМОТРА ПРОГРАММЫ. |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
Рис.1. Структура микроконтроллера в |
Режимы |
отображаются на |
|||||||||||||||
|
режиме АВТОМАТИЧЕСКИЙ |
|
|
пульте |
управления |
свето- |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
выми индикаторами А, Р, |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ш, ВП, ППсоответственно. |
Рассмотрим структуры микроконтроллера в каждом из режимов.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Режим работы АВТО- |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
МАТИЧЕСКИЙ |
(рис.1) |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
Ввод-вывод |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
является основным и при- |
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
меняется для |
управления |
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
технологическим оборудо- |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ванием и манипулятором в |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ОЗУ |
|
|
|
|
|
|
|
|
|||||||||
|
|
Микропроцессор |
|
|
Исполнит. |
|
|
|
|
МП |
|
|
соответствии с управляю- |
|||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
прогр. |
|
|
ПЗУ |
|
|
|
|
|
|
|
|
щей программой, храни- |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
мой в ЭНЗУ. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
Код команды |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
В |
режиме |
РУЧНОЙ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
МУ |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(рис. 2) необходимая ко- |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
манда |
набирается опера- |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
тором на клавиатуре ПУ. |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
Клавиатура |
|
|
|
|
|
ПУ |
|
|
|
|
|
Дисплей |
|
|
|
|
|
|
Микропроцессор |
под |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
управлением |
|
исполни- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
Ввод команды |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Код команды |
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
тельной программы счи- |
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
Рис.2. Структура микроконтроллера в |
|
|
тывает коды нажатых кла- |
|||||||||||||||||||||||||||||||||||
|
|
|
|
виш, формирует из них |
||||||||||||||||||||||||||||||||||||
|
|
режиме РУЧНОЙ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
код команды и через мо- |
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
дуль ввода-вывода посы- |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
лает их на исполнение. |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Вводимая |
информация |
||
|
|
|
|
|
Ввод-вывод |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ЭНЗУ |
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
отображается |
на |
дисплее |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
Управляющ. прогр. |
|
|
|
|
|
|
|
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ПУ. При этом содержимое |
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
счетчика команд, |
который |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
Микропроцессор |
|
Исполнит. |
|
|
|
ОЗУ |
|
МП |
|
|
|
размещен в ОЗУ, не изме- |
||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
прогр. |
|
|
|
ПЗУ |
|
|
|
|
|
|
|
|
няется и не индицируется. |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ПОШАГОВЫЙ |
режим |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
Шаг операции Адрес и код команды |
|
|
|
|
|
|
|
||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
работы |
микроконтроллера |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
МУ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(рис. 3) является эффек- |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
тивным средством отладки |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
управляющих программ. |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
Клавиатура |
|
|
|
|
|
|
ПУ |
|
|
|
|
Дисплей |
|
|
|
|
|
|
|
В этом режиме каждое на- |
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
жатие |
клавиши заставляет |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
Шаг операции |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Адрес и код |
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
микропроцессор |
выбрать |
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
команды |
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
из ОЗУ и послать на выполне- |
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
Рис.3. Структура микроконтроллера в |
|
|
||||||||||||||||||||||||||||||||||||
|
|
|
|
ниеочереднуюкоманду. |
||||||||||||||||||||||||||||||||||||
|
|
режиме ПОШАГОВЫЙ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4
ЭНЗУ
Код команды
ОЗУ Микропроцессор Исполнит. МП
прогр. ПЗУ
Код команды |
Адрес и код команды |
|
МУ |
Клавиатура ПУ Дисплей
Ввод команды |
Адрес и код |
|
команды |
|
Затем микропроцессор модифицирует содержимое счетчика команд и переходит в режим ожидания. В паузах между выполнением команд микропроцессор выводит на индикацию адрес и содержимое ячейки ЭНЗУ, хранящей команду, которая будет выполняться на следующем шаге.
Режим ВВОД ПРОГРАММЫ (рис.4) используется для записи кодов команд управляющей программы в ЭНЗУ.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Процессор |
взаимодейст- |
||
|
|
|
|
|
|
|
|
ЭНЗУ |
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
вует с |
ПУ |
аналогично |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
Код команды |
|
|
|
|
|
|
режиму РУЧНОЙ. Одна- |
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ко сформированный код |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
Микропроцессор |
Исполнит. |
|
|
|
|
ОЗУ |
|
МП |
команды не выполняется, |
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
прогр. |
|
|
|
|
ПЗУ |
|
|
а записывается в ЭНЗУ. |
||||||
|
|
|
|
|
|
|
|
Адрес и код |
|
|
|
|
|
|
|
|
|
По окончании пересылки |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
Шаг операции |
|
команды |
|
|||||||||||||||||||
|
|
|
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
каждой |
команды |
содер- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
МУ |
|
|
|
|
|
|
жимое счетчика |
команд |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
увеличивается |
на |
единицу. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Вводимая |
информация со- |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
вместно с текущим значени- |
||||
|
|
Клавиатура |
|
|
|
ПУ |
|
|
|
Дисплей |
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ем счетчика команд отобра- |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Адрес и код |
||||||
|
|
Шаг операции |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
жаетсяна дисплее ПУ. |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
команды |
|
Структура техниче- |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
Рис.5. Структура микроконтроллера в |
ских средств микрокон- |
||||||||||||||||||||||
|
режиме ПРОСМОТР ПРОГРАММЫ |
|
троллера в режиме ПРО- |
|||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
СМОТР |
ПРОГРАММЫ |
(рис. 5) аналогична режиму ВВОД ПРОГРАММЫ. Однако направление прохождения информации противоположно. В соответствии с адресом ячейки ЭНЗУ, записанном в счетчике команд, процессор производит
5
считывание содержащейся в этой ячейке информации и вывод ее на индикацию совместно с текущим значением счетчика команд. Содержимое счетчика команд модифицируется и процессор переходит в режим ожидания нажатия какой-либо клавиши. Режим используется для контроля оператором управляющей программы, хранящейся в ЭНЗУ.
ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРА
Управление промышленным роботом и технологическим оборудованием осуществляется в соответствии с управляющей программой, которая состоит из последовательности команд. При вводе управляющей программы с клавиатуры и выводе информации на дисплей используется шестнадцатиричная система счисления. Команда микроконтроллера делится на два поля длиной по восемь двоичных разрядов
(рис. 6).
|
|
N3 |
|
|
N2 |
|
|
|
|
N1 |
|
|
|
N0 |
|
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
|
Код операции |
|
|
|
|
|
|
Операнд |
|
|
|
|||
|
|
|
Рис. 6. Формат команды микроконтроллера |
|
|
|
Первое поле, код операции, представляет собой двухразрядное шестнадцатиричное число (N3 и N2), говорящее о том, какое действие нужно выполнить. Второе поле, операнд, дает необходимую информацию для выполнения этого действия (числа N1 и N0). Каждый шестнадцатиричный символ N3, N2, N1, N0 кодируется в соответствии с табл. 1.
Все управляющие программы хранятся в ЭНЗУ, которое состоит из четырех модулей. Объем каждого модуля позволяет записать 256 команд управляющей программы. Каждый модуль, в свою очередь, делится на две страницы по 128 команд. Каждая страница имеет свой не-
изменный базовый адрес – 08, 09, 0А, 0В, 0С, 0D, 0E, 0F. Имя базового адреса и значение счетчика команд представляют собой адрес команды. Например, адрес команды 090А говорит о том, что данная команда
6
|
|
|
|
Таблица 1 |
Шестнадцати- |
|
Двоичный код |
|
|
ричный код |
|
|
|
|
23=8 |
22=4 |
21=2 |
20=1 |
|
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
2 |
0 |
0 |
1 |
0 |
3 |
0 |
0 |
1 |
1 |
4 |
0 |
1 |
0 |
0 |
5 |
0 |
1 |
0 |
1 |
6 |
0 |
1 |
1 |
0 |
7 |
0 |
1 |
1 |
1 |
8 |
1 |
0 |
0 |
0 |
9 |
1 |
0 |
0 |
1 |
A |
1 |
0 |
1 |
0 |
B |
1 |
0 |
1 |
1 |
C |
1 |
1 |
0 |
0 |
D |
1 |
1 |
0 |
1 |
E |
1 |
1 |
1 |
0 |
F |
1 |
1 |
1 |
1 |
записана на странице с базовым адресом 09 под присвоенным счетчиком команд номером 0А в шестнадцатиричном коде. Структура ЭНЗУ микроконтроллера представлена на рис. 7.
|
Модуль 0 |
|
Модуль 1 |
|
Модуль 2 |
|
Модуль 3 |
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
08 |
|
|
09 |
|
|
0А |
0В |
|
0С |
0D |
|
0E |
0F |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рис. 7. Структура ЭНЗУ Система команд микроконтроллера включает:
-команды ввода-вывода;
-команды управления программой;
-команды управления счетчиками;
-команды контроля и редактирования программы;
-команды текстового контроля функциональных блоков. Последние два типа команд здесь не рассматриваются.
Команды ввода-вывода (табл. 2) обеспечивают ввод информации от датчиков положения робота и технологического оборудования, а также выдачу управляющих воздействий на их исполнительные устройства.
|
|
7 |
|
|
Таблица 2 |
|
|
Команды ввода-вывода |
Код опе- |
Операнд |
Краткое содержание |
рации |
|
команды |
01 |
Адрес |
Ожидание отсутствия входного сигнала. Переход к вы- |
|
входа |
полнению следующей команды происходит только при |
|
|
отсутствии сигнала на входе с заданным адресом |
02 |
Адрес |
Ожидание наличия входного сигнала. Переход к выпол- |
|
входа |
нению следующей команды происходит только при нали- |
|
|
чии сигнала на входе с заданным адресом |
03 |
Адрес |
Проверка входа на отсутствие сигнала. При отсутствии |
|
входа |
сигнала бит условия сохраняет свое предыдущее значе- |
|
|
ние, в противном случае он обнуляется |
04 |
Адрес |
Проверка входа на наличие сигнала. При наличии сигнала |
|
входа |
бит условия сохраняет свое предыдущее значение, в про- |
|
|
тивном случае он обнуляется |
05 |
Адрес |
Включение выхода с заданным адресом |
|
выхода |
|
06 |
Адрес |
Выключение выхода с заданным адресом |
|
выхода |
|
12 |
Адрес |
Вывод бита условия прямой. Выход с заданным адресом |
|
выхода |
устанавливается в соответствии с содержанием бита ус- |
|
|
ловия |
13 |
Адрес |
Вывод бита условия инверсный. Выход с заданным адре- |
|
выхода |
сом устанавливается в соответствии со значением, проти- |
|
|
воположным содержимому бита условия |
07 |
t |
Выдержка времени t, кратная 0,1 с. Например, выдержка |
|
|
0,1 с запишется в шестнадцатиричной системе – 01, а 1 с |
|
|
– 0А. |
1Е |
Адрес |
Бит условия принимает значение сигнала на входе с за- |
|
входа |
данным адресом |
1F |
Адрес |
Бит условия принимает инверсное значение сигнала на |
|
входа |
входе с заданным адресом |
При использовании микроконтроллера для управления манипулятором ЦПР-1П адрес выхода выбирается в соответствии с табл. 3, а адрес входа с датчиков положения – в соответствии с табл. 4.
При использовании бита условия необходимо иметь в виду, что он принимает исходное состояние, равное логической единице при включении питания, при нажатии кнопки «СБР» и при выполнении команд условного перехода.
8
|
|
|
Таблица 3 |
|
Адреса выходов микроконтроллера |
||
Адрес |
Исполнительное |
Действие при значении выхода |
|
выхода |
устройство |
включен |
выключен |
00 |
Механизм подъема |
Движение вниз |
Движение вверх |
01 |
Механизм поворота |
Против часовой |
По часовой стрелке |
|
|
стрелки |
|
02 |
Механизм горизон- |
Движение вперед |
Движение назад |
|
тального перемещения |
|
|
03 |
Механизм сгиба (ро- |
Сгибание |
Разгибание |
|
тации) |
|
|
04 |
Схват |
Сжимание |
Разжимание |
|
|
|
|
Таблица 4 |
|
Адреса входов микроконтроллера |
|||
Адрес |
Исполнительное |
Положения, соответствующие состояниям |
||
входа |
устройство |
|
датчиков |
|
|
|
«+»-сигнал есть |
|
«-»-сигнала нет |
00 |
Механизм подъема |
Внизу |
|
Вверху |
01 |
То же |
Вверху |
|
Внизу |
02 |
Механизм поворота |
Слева |
|
Справа |
03 |
То же |
Справа |
|
Слева |
04 |
Механизм горизон- |
Выдвинут |
|
Задвинут |
|
тальных перемещений |
|
|
|
05 |
То же |
Задвинут |
|
Выдвинут |
Таким образом, чтобы запрограммировать, например, поворот манипулятора против часовой стрелки, необходимо записать код этой операции так – 0501. А поворот по часовой стрелке – 0601. Еще один пример. Чтобы состоялась операция контроля окончания выдвижения руки манипулятора, следует набрать код – 0204.
Команды управления программой (табл. 5) служат для организации хода выполнения программы. Адрес перехода в пределах зоны памяти задается в операнде этих команд. Для того чтобы перейти к команде, расположенной на другой странице памяти ЭНЗУ (с другим базовым адресом), необходимо перед командой перехода изменить базовый адрес. Например, из программы, расположенной на странице с базовым адресом 08, осуществляется переход к подпрограмме, расположенной на странице с базовым адресом 0А командой 0950, имеющей
|
|
9 |
|
|
Таблица 5 |
|
Команды управления программой |
|
Код |
Операнд |
Краткое содержание |
операции |
|
команды |
00 |
00 |
Нет операции. Безусловный переход к выполнению |
|
|
следующей команды |
08 |
00 |
Останов программы |
09 |
Адрес |
Безусловный переход к выполнению команды, содер- |
|
команды |
жащейся по указанному адресу |
0А |
Адрес |
Переход к выполнению команды, содержащейся по |
|
команды |
указанному адресу, если в бите условия «1». В против- |
|
|
ном случае выполняется следующая команда |
0В |
Адрес |
Переход к выполнению команды, содержащейся по |
|
команды |
указанному адресу, если в бите условия «0». В против- |
|
|
ном случае выполняется следующая команда |
0F |
0 уставка |
Изменение базового адреса программы. Базовый адрес |
|
|
становится равным уставке (8, 9, А, В, С, D, E, F) |
10 |
Адрес |
Переход к подпрограмме. Переход к выполнению ко- |
|
команды |
манды, содержащейся по указанному адресу с запоми- |
|
|
нанием адреса возврата |
11 |
00 |
Возврат из подпрограммы |
адрес 0803. Для организации такого перехода необходимо перед этой командой набрать команду 0F0А, имеющую адрес 0802. Адреса команд можно назначать принудительно, в противном случае их присваивает микроконтроллер, занимая на страницах ЭНЗУ свободное место.
Команды управления счетчиками (табл. 6) позволяют управлять шестнадцатью встроенными счетчиками, содержимое которых может изменяться от 0 до F.
|
|
|
Таблица 6 |
|
|
Команды управления счетчиками |
|
Код |
Операнд |
Краткое содержание |
|
операции |
|
|
команды |
0D |
0 Номер |
Сброс счетчика. Обнуление счетчика с заданным |
|
|
|
счетч. |
номером |
0C |
0 Номер |
Содержание счетчика с заданным номером увеличи- |
|
|
|
счетч. |
вается на единицу |
0E |
Ус- |
Номер |
Сравнение счетчика. Если содержимое счетчика с |
|
тав- |
счет- |
заданным номером равно уставке, то бит условия |
|
ка |
чика |
сохраняет предыдущее значение. В противном слу- |
|
|
|
чае он обнуляется |