Система команд МПЦУ



 

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

Система команд МПЦУ реализована исполнительной программой, хранящейся в ППЗУ модуля памяти.

2. Основные команды МПЦУ можно разделить по функциональному назначению на следующие группы:

1) команды ввода-вывода;

2) команды управления программой;

3) команды управления счётчиками;

4) команды контроля и редактирования программы;

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

6) команды ориентированные на управление пневматическими манипуляторами по путевому признаку.

 

Система команд МПЦУ групп приведена в табл. 1.6.1, где АВ – адрес входа, АВЫХ – адрес выхода, АК- адрес команды, НСЧ – номер счетчика, НС – номер страницы памяти.

В табл. 1.6.7 и 1.6.8 приведены команды управления манипуляторами и работы с технологическим оборудованием и пультом.

3. Слово команды МПЦУ делится на два поля длиной по восемь разрядов - поле кода операции и поле операнда.

4. Совокупность команд МПЦУ, образующая управляющую программу, записывается и хранится в модуле (модулях) ЭНЗУ. В зависимости от варианта исполнения в состав МПЦУ могут входить от 2 до 4 модулей ЭНЗУ. Объём модуля ЭНЗУ позволяет записать 256 команд управляющей программы (512 байт) и составляет одну зону памяти. Каждая зона памяти, в свою очередь, делится на две страницы, объёмом по 128 команд (256 байт).

Таблица 1.6.1. Система команд МПЦУ

Сокращенное обозначение команды Формат команды Краткое описание команды
Код Операции Операнд  
Команды ввода-вывода
ОЖО   АВ Ожидание отсутствия входного сигнала. Переход к выполнению следующей команды программы происходит только при отсутствии сигнала на входе с заданным адресом.
ОЖ1   АВ Ожидание наличия входного сигнала. Переход к выполнению следующей команды программы происходит только при наличии сигнала на входе с заданным адресом.
ПРО   АВ Проверка входа на отсутствие сигнала. При отсутствии сигнала на входе с заданным адресом бит условия сохраняет предыдущее значение, в противном случае бит условия обнуляется.
ПР1   АВ Проверка входа на наличие сигнала. При наличии сигнала на входе с заданным адресом бит условия сохраняет предыдущее значение, в противном случае бит условия обнуляется.
ВКЛ   АВЫХ Включить выход с заданным адресом.
ВЫКЛ   АВЫХ Выключить выход с заданным адресом.
БУ   АВЫХ Вывод бита условия прямой. Выход с заданным адресом устанавливается в соответствии с содержимым бита условия.  
 
Продолжение таблицы 1.6.1.
БУ   АВЫХ Вывод бита условий инверсный. Выход с заданным адресом устанавливается в соответствии со значением, противоположным содержимому бита условия
Т   Т Выдержка времени. Команда задержки выполнения управляющей программы на время Т 0,1 с.
УСТ БУ ВХ 1F АВ Бит условия принимает значение сигнала на входе с заданным адресом
УСТ БУ ВХ   АВ Бит условия принимает инверсное значение сигнала на входе с заданным адресом
Команды управления программой
НОП     Нет операции. Безусловный переход в выполнении следующей команды программы
СТОП     Останов программы
БУП   АК Безусловный переход к выполнению команды, содержащейся по указанному адресу.
УП1 АК Переход к выполнению команды, содержащейся по указанному адресу, если в бите условия "1". В противном случае происходит выполнение следующей команды программы.
УП0 АК Переход к выполнению команды, содержащейся по указанному адресу, если в бите условия "0". В противном случае происходит выполнение следующей команды программы
БАП 0F АК Изменение базового адреса программы
ПП   АК Переход к подпрограмме. Переход к выполнению команды, содержащейся по указанному адресу, с запоминанием адреса возврата
ВОЗВРАТ     Возврат из подпрограммы. Команды управления счётчиками
 
Окончание таблицы 1.6.1.
ОСЧ 0D НСЧ Сброс счётчика. Обнуление счётчика с заданным номером.
+СЧ 0C НСЧ Содержимое счётчика с заданным номером увеличивается на 1.
=СЧ 0E   Сравнение счётчика. Если содержимое счётчика с заданным номером равно уставке, то бит условия сохраняет своё предыдущее значение. В противном случае бит условия обнуляется.
Команды контроля и редактирования
РЕД   АК Команды управляющей программы, начиная с указанного адреса и до первого адреса, содержащего команду НОП, сдвигается в сторону увеличения адресов на один шаг. По указанному адресу записывается код0000 команды НОП. Команда РЕД используется для вставки команд в управляющую программу.
КСП   НС Вычисление контрольной суммы кодов команд, содержащихся в странице памяти с указанным номером

 

Номер зоны является базовым адресом для отсчёта команд управляющей программы, записанной в этой зоне, и храниться в служебном регистре БА, организованной исполнительной программой в ОЗУ МПЦУ. Помимо БА в ОЗУ организованы следующие регистры:

1) СК - счётчик команд МПЦУ, содержимое которого определяет адрес команды в пределах зоны памяти;

2) БУ - бит условия, значение которого устанавливается в зависимости от результата выполнения ряда операций; анализ бита условия используется для управления ходом выполнения управляющей программы;

3) УС - регистр указатель стека, определяющий адреса ячеек ОЗУ (стековой памяти), в которых запоминаются значения БА и СК при обращении к подпрограмме, и откуда они выбираются при выполнении команды «Возврат»;

4) шестнадцать счётчиков, содержание которых может изменяться от 0 до F. При необходимости счётчик может быть использован как однобитная память. Изменение состояния служебных регистров приведено в описании соответствующих команд.

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

6. В командах вывода информации адрес выхода, определяемый значением поля операнда, кодируется двумя шестнадцатеричными цифрами, первое из которых может принимать значение от 0 до 2 и определяет один из трёх модулей вывода дискретных сигналов, которые могут быть установлены в МПЦУ.

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

Примеры связи команд вывода с управляемыми по ним внешними нагрузками приведены в табл. 1.6.2.

7. В командах опроса датчиков состояния технологического оборудования и манипулятора адреса датчиков определяются аналогично адресам выходов.

Состояние каждого входа отображается на индикаторах 0-F, выведенных на переднюю панель модулей ввода дискретных сигналов.

Примеры связи команд опроса датчиков с их адресами и подключением к входным разъёмам МПЦУ приведены в табл. 1.6.3.

8. При использовании БУ необходимо иметь ввиду, что БУ принимает исходное состояние соответствующее логической «1» в следующих случаях:

1) при включении питания МПЦУ;

2) при нажатии кнопки СБР;

3) после выполнения команд условных переходов.

Кроме того, возможно установить БУ в определённое состояние используя команды УСТ БУ ВХ и УСТ БУ ВХ.

Выполнение команды БУП не изменяет состояния БУ. Используя БУ, можно реализовать алгоритм управляющей программы, заданной булевыми функциями.

Таблица 1.6.2. Примеры связи команд вывода с управляемыми по ним внешними нагрузками.

Адрес команды Формат команды Содержание
Код операции Операнд
      Включить нагрузку Z0, подключённую к выходному разъёму 00-0A
    1A Включить нагрузку ZA, подключённую к выходному разъёму 10-1F (10-1A)
    2F Нагрузку ZF, подключённую к выходному разъёму 20-2F включить, если бит условия установлен в "1", в противном случае выключить
      Нагрузку Z5, подключённую к выходному разъёму 10-1F включить, если бит условия установлен в "0", в противном случае выключить

 

Пример. Допустим, закон управления внешним оборудованием определяется выражениями:

У1 = Х0 * Х1 * Х2 * Х3 * Х4

У2 = У1, где У1, У2 - исполнительные элементы с адресами 2F и 1A соответственно;

Х0, Х1, Х3 - датчики состояния технологического оборудования с адресами 00, 01 и 03 соответственно, эквивалентны нормально разомкнутым контактам реле;

Х2, Х4 - датчики состояния технологического оборудования с адресами 02, 04 соответственно, эквивалентные нормально замкнутыми контактами реле.

Программа, реализующая эти выражения, приведена в табл. 1.6.4.

9. Команда «Выдержка времени» предназначена для реализации алгоритмов задач циклового управления, построенного по временному принципу.

 

Таблица 1.6.3. Примеры связи команд опроса датчиков с их адресами и подключением к входным разъёмам МПЦУ.

Адрес команды Формат команды Содержание
Код операции Операнд  
      Ожидание размыкания датчика D0, подключённого к разъёму 00-0A. Вход "0" будет опрашиваться до тех пор, пока напряжение не станет близким к нулю (уровень лог. 0)
    Вход "A" будет опрашиваться до тех пор, пока напряжение не установиться в пределах 20-30 В. (уровень лог.1)
    2F Проверка входа на отсутствие сигнала. Если напряжение на контактах разъёма 20-2F, к которым подключён датчик DF, близко к нулю (лог.0), бит условия сохраняет своё предыдущее значение, в противном случае обнуляется
      Проверка входа на наличие сигнала. Если напряжение на контактах разъёма 00-0A, к которым подключён датчик D5, находится в пределах 20-30 В (уровень лог.1), бит условия сохраняет своё предыдущее значение, в противном случае устанавливается в "0"

 

В поле операнда команды задаётся величина выдержки времени, кратная 0,1с.

Например, минимальная выдержка, равная 0,1 с, задаётся командой 0701, выдержка, равная 1 с, задаётся командой 070A, а максимальное значение, равное 25,5 с - командой 07FF. Если необходимо получить временную задержку большую чем 25,5 с, в управляющую программу необходимо последовательно включить две или несколько команд выдержки времени, обеспечивающих суммарную задержку, равную требуемой.

 

Таблица 1.6.4. Пример управления внешним оборудованием

Адрес команды Формат команды Содержание
Код операции Операнд
  1F   Проверка состояния датчика Х0 с занесением его значения в бит условия
      Проверка включённого состояния датчика Х1
      Проверка включённого состояния датчика Х2
      Проверка включённого состояния датчика Х3
      Проверка включённого состояния датчика Х4
    2F Установка выхода 2F в соответствии со значением "БУ" (включение, если результат предыдущих проверок положительный, и выключение, если хотя бы одна из проверок не подтвердилась)
    1A Установка выхода 1A в соcтояние противоположное значению "БУ" (включить, если хотя бы одна из проверок не подтвердилась, в противном случае выключить).

 

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

11. Команды управления программой можно разделить на две группы:

1) команды, сохраняющие нормальную последовательность выполнения команд программы (т.е. выполнение команд одна за другой). Это команды «Нет операции» и «Стоп»;

2) команды, изменяющие нормальную последовательность выполнения программы-команды безусловного и условных переходов, команды обращения к подпрограммам и возврата из них.

12. Заранее предусмотренный останов программы можно осуществить командой «Стоп». Программа останавливается со значением СК, указывающим на адрес, следующий за адресом команды «Стоп». Значение СК и код команды, записанный по этому адресу, выводятся на дисплей ПУ. Для дальнейшего запуска программы нажмите любую информационную клавишу ПУ. Выполнение программы начнётся с команды, адрес и код которой индицировались на дисплее ПУ при останове программы. При запуске программы дисплей ПУ гасится.

13. Команда «Нет операции» может стоять в любом месте программы. При её выполнении содержимое СК увеличится на единицу, т.е. произойдёт условный переход к выполнению следующей команды программы.

14. Ветвление программы производится относительно СК при помощи команд условного перехода. Переход осуществляется только при выполнении определённого условия, в противном случае СК выбирает следующую команду.

Условием, анализируемым при выполнении команд УП0 (УП1) является содержимое БУ. Условный переход осуществляется, если БУ=1 при выполнении команды УП1 при БУ=0 при выполнении команды УП0. В поле операнда команд УП1 и УП0 задаётся адрес команды, с которой начнётся работа программы при выполнении анализируемого условия. Адрес перехода задаётся в пределах зоны памяти. По окончании выполнения команд УП0, УП1, БУ устанавливается в исходное состояние, соответствующее логической «1». Например, при выполнении команды УП1 с кодом 0A0F в случае, если БУ=1, СК примет значение 0F и программа будет выполняться с команды, записанной на этом адресе. Если БУ=0, то значение СК увеличится на 1 и будет выполняться команда, следующая за командой 0A0F.

15. В случае, когда необходимо изменить нормальную последовательность выполнения команд управляющей программы без БУ, используется команда безусловной передачи управления.

Адрес перехода в пределах зоны памяти задаётся в поле операнда команды БУП.

Например, по команде безусловного перехода 09FF значение СК станет равным FF и следующей будет выполнена команда, записанная на этом адресе.

Команда БУП не изменяет значение БУ.

16. Использование команды обращения к подпрограмме ПП является эффективным средством экономии памяти, если в процессе выполнения управляющей программы необходимо многократное обращение к неизменной её части. Эта часть однократно записывается в запоминающее устройство и заканчивается командой «Возврат». Обращение к ней осуществляется командой ПП, в поле операнда которой занесён её начальный адрес.

При выполнении команды ПП, записанной на адресе N, содержимое СК увеличивается на 1, т.е. принимает значение N+1 и загружается в стек вместе со значением БА зоны памяти.

В СК будет заслан адрес, находящийся в поле операнда команды «ПП». Адрес задаётся в пределах зоны памяти. Начиная с этого адреса, происходит последовательное выполнение команд подпрограммы вплоть до адреса, на котором стоит команда «Возврат». При выполнении этой команды содержимое стека (№+1) перемещается в СК и восстанавливается значение «БА» и продолжается выполнение команды основной программы, записанной на адресе N+1. Стек, организованный в МПЦУ, позволяет реализовать восемь уровней подпрограммы.

17. Для того, чтобы перейти к выполнению управляющей программы, расположенной в другой зоне памяти, необходимо изменить базовый адрес программы и выполнить команду условного, безусловного перехода или перехода к подпрограмме, в поле операнда которой содержится адрес команды изменённой зоны памяти. Значение БА изменяется командой БАП, в поле операнда которой задаётся номер зоны памяти от 0 до F.

Например, чтобы осуществить безусловный переход с адреса A0 нулевой зоны памяти на адрес 02 первой зоны, необходимо в нулевой зоне выполнить последовательность команд, приведённую в таблице 1.6.5.

 

Таблица 1.6.5. Безусловный переход.

Номер зоны Адрес команды Формат команды Содержание
Код Операции   Операнд
  0А0 0F   БА принимает значение 01
  0А1     Безусловный переход на адрес 02 первой зоны памяти

 

Для осуществления условного перехода из зоны 2 с адреса 20 на нулевой адрес нулевой зоны необходимо выполнить последовательность команд, приведённую в таблице 1.6.6.

При включении питания МПЦУ после сброса значение БА устанавливается равным 0. Если объём управляющей программы занимает несколько зон памяти при её составлении необходимо своевременно осуществлять изменение базового адреса программы одним из выше описанных способов.

Команды управления счётчиками осуществляют операции очистки, инкремента и сравнения над шестнадцатью счётчиками, содержимое которых может изменяться в пределах от 0 до F.

18. Величиной в поле операнда этих команд (см. табл. 1.6.1) задаётся номер счётчика от 0 до F.

Например, команда с кодом 0C0A осуществляет инкремент счётчика 2. В случае совпадения БУ сохраняет предыдущее значение, в противном случае - обнуляется. Например, команда с кодом 0E3F осуществляет сравнение содержимого счётчика F с тройкой.

Таблица 1.6.6. Условный переход из зоны 2 с адреса 20 на нулевой адрес нулевой зоны

Номер зоны Адрес команды Формат команды Содержание
Код Операции   Операнд
    0F   БА принимает значение 00.
    0A   При БУ=1 переход на нулевой адрес нулевой зоны

 

19. С помощью несложной программы можно организовать счётчик ёмкостью более 15.

20. Счётчики могут использоваться не только как накопители, но и служить регистровой памятью объёмом в 16 бит с последовательным занесением информации.

 

Таблица 1.6.7. Команды управления манипуляторами.

N Команда Описание
    Вперед
    Назад
    Вправо
    Влево
    Вверх
  051A Разжать
    Отключение Вперед
    Отключение Назад
    Отключение Вправо
    Отключение Влево
    Отключение Вверх, Вниз
  061A Сжать
    Задержка 0,1c
    Задержка 0,5c
    Задержка 1,5c

 

Таблица 1.6.8. Команды работы с технологическим оборудованием и пультом.

N Команда Описание
    Нет операции
    Ожидание замыкания кнопки "Вкл"
    Ожидание замыкания "+Х"
    Ожидание замыкания "-Х"
    Ожидание замыкания "+У"
  021E Ожидание замыкания "-У"
    Ожидание замыкания "Откл"
    Ожидание замыкания "ПУ1"
  021C Ожидание замыкания "ПУ2"
  021A Ожидание замыкания "ПУ3"
  020B Опрос кнопки "Готов"
  020D Опрос кнопки "Стоп"
    Опрос датчика №3
    Проверка кнопки "Вкл" и БУ=0
  051F Включение лампы "Готов"
  051D Включение "Вызов оператора"
  051B Включение "Конец графика"
  051C Включение "Ожидание данных"
  051E Включение "Сбой в оборудовании"
  061F Отключение "Готов"
  061D Выключение индикации
  061B Отключение "Конец графика"
  061C Выключение красной лампы
  061E Выключение зеленой лампы
  105C Переход к подпрограмме
    Переход к 26
  0B5C Если БУ=0 то переход к 50
    Выход из п/п

 


Дата добавления: 2016-01-04; просмотров: 14; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!