Вы находитесь на странице: 1из 79

Контроллеры DirectLogic Основы программирования

ОГЛАВЛЕНИЕ

ВВЕДЕНИЕ

2

ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ КОНТРОЛЛЕРОВ DirectLOGIC

2

СРЕДСТВА ДЛЯ ПРОГРАММИРОВАНИЯ КОНТРОЛЛЕРОВ

2

ПАКЕТ ПРОГРАММИРОВАНИЯ DirectSOFT

2

ФУНКЦИОНИРОВАНИЕ СИСТЕМЫ

5

ОСНОВНЫЕ ФУНКЦИИ DL440

5

РЕЖИМ ПРОГРАММИРОВАНИЯ

6

РАБОЧИЙ РЕЖИМ

6

ВРЕМЯ РЕАКЦИИ МЕСТНОГО ВВОДА/ВЫВОДА

9

ДЛИТЕЛЬНОСТЬ РАБОЧЕГО ЦИКЛА DL440

10

РАСПРЕДЕЛЕНИЕ ПАМЯТИ DL440

14

GX - РЕЛЕ УДАЛЕННОГО И ОТДЕЛЬНОГО ВВОДА/ВЫВОДА

19

X

- РЕЛЕ МЕСТНОГО ВВОДА

20

Y

- РЕЛЕ МЕСТНОГО ВЫВОДА

20

С

- УПРАВЛЯЮЩИЕ РЕЛЕ

21

S

- РЕЛЕ УПРАВЛЕНИЯ СТАДИЯМИ

22

- СТ - РЕЛЕ СЧЕТЧИКОВ

Т

РЕЛЕ ТАЙМЕРОВ

23

23

ОСНОВЫ ПРОГРАММИРОВАНИЯ НА RLL

24

ЛОГИЧЕСКИЕ КОМАНДЫ

25

ТАЙМЕРЫ

32

СЧЕТЧИКИ

33

РЕГИСТРЫ СДВИГА

34

АККУМУЛЯТОР

35

УКАЗАТЕЛИ

39

ТАБЛИЧНЫЕ ПРЕОБРАЗОВАНИЯ

40

ОСНОВЫ ПРОГРАММИРОВАНИЯ НА RLL PLUS

41

ПРИМЕР ЗАДАЧИ

42

РЕШЕНИЕ НА RLL

43

РЕШЕНИЕ НА RLL PLUS

44

СТАДИИ ПРОГРАММЫ

45

УСТАНОВКА И СБРОС РЕЛЕ В СТАДИЯХ

50

ИСПОЛЬЗОВАНИЕ ТАЙМЕРОВ И СЧЕТЧИКОВ В СТАДИЯХ

51

КОМАНДЫ ОБРАБОТКИ ДАННЫХ В СТАДИЯХ

54

ЛОГИКА СРАВНЕНИЯ В СТАДИЯХ

55

ПАРАЛЛЕЛЬНЫЕ ПРОЦЕССЫ

56

БЛОКИ СТАДИЙ

61

НЕОБЫЧНЫЕ ОПЕРАЦИИ В СТАДИЯХ

65

ДВА СПОСОБА ПРОСМОТРА ПРОГРАММ RLL PLUS

67

РАЗРАБОТКА ПРОГРАММ С ИСПОЛЬЗОВАНИЕМ КОМАНД RLL PLUS

68

РАБОТА С МОДУЛЯМИ (на примере аналогового

77

ВХОДНАЯ ИНФОРМАЦИЯ

77

СЧИТЫВАНИЕ ИНФОРМАЦИИ ИЗ МОДУЛЯ

79

Введение

ВВЕДЕНИЕ

Настоящее пособие является сборником минимально необходимых сведений для освоения программирования контроллеров DirectLogic поставляемых фирмой PLC Direct by Koyo Inc.

Контроллеры DirectLogic представлены четырьмя семействами: D105, D205, D305 и D405, в каждом

семействе (за исключением D105) предлагается три варианта процессоров DL DL и DL

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

и RLL PLUS . Для программирования и отладки программ используют один программный пакет DirectSOFT. Мы собрали материалы по работе со "средним" процессором контроллера серии D405 - DL440. В процессорах DL440 используются все системные и программные возможности старших моделей за исключением:

- встроенных ПИД-регуляторов,

- математики с "плавающей" запятой и тригонометрических функций,

- использования сети MODBUS.

30,

40

50,

ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ КОНТРОЛЛЕРОВ DirectLOGIC

Модель контроллера

DL450

DL440

DL350

DL340

DL250

DL240

DL130

Объем памяти (слов),

30.8 К

22.5 К

14.8 К

3.9

К

14.8 К

3.8 К

2.4 К

- память команд

15.5

К

15.5 К

7680

3.7

К

7680

2560

2048

- память переменных

15.3

К

7К

7168

192

7168

1280

384

Всего входов/выходов,

3584

1164

184

184

1152

1152

18

- локальных с расширением

2048

640

184

184

128

128

18

- удаленных

1536

1024

нет

нет

1024

1024

нет

Количество входов/выходов на один модуль

8/16/32/64

8/16/32/64

8/16

8/16

4/8/12/16

4/8/12/16

фиксир.

Количество модулей в каркасе

4/6/8

4/6/8

5/8/10

5/8/10

3/4/6/9

3/4/6/9

нет

Время выполнения команды, мкс

0.96

0.33

1.4

0.87

1.4

1.4

3.3

Среднее время сканирования (1К входов/выходов), мс

4-5

2-3

1-2

4-5

1-2

3-4

5-6

Коммуникационные порты

     

422222

   

1

Число выполняемых команд

210

170

165

63

165

129

91

Математика

целочисл.

целочисл.

целочисл.

целочисл.

целочисл.

целочис.

целочис.

плавающ.

плавающ.

плавающ.

Часы/календарь

да

да

да

Нет

да

да

нет

ПИД регулирование

встроен

модуль

встроен

нет

встроен

нет

нет

СРЕДСТВА ДЛЯ ПРОГРАММИРОВАНИЯ КОНТРОЛЛЕРОВ DirectLOGIC.

Программирование контроллеров может производиться при помощи ручных программаторов (HHP) или с помощью пакета программирования под Windows – DirectSOFT. Пакет работает на ПК с процессором 486DX (SX), 25 МГц (не хуже) и не менее 8 Мб ОЗУ под Windows 3.1 или старше, WIN95, WINDOWS NT 3.51 или старше. На ПК должен быть свободный последовательный порт. Первоначальное программирование производится через программный порт при помощи специального RS232 кабеля. В дальнейшем возможно дистанционное программирование и отладка (через модем или по сети RS422/485). Пакет поставляется в трех модификациях: для всех типов контроллеров PC-PGMSW, для DL205 серии - PC-PGM-205, для DL105 серии - PC-PGM-105.

ПАКЕТ ПРОГРАММИРОВАНИЯ DirectSOFT

Программное обеспечение DirectSOFT представляет множество различных возможностей, которые помогут сократить время разработки и отладки программ. Далее приведен краткий перечень предоставляемых возможностей на разных стадиях создания программ. Редактирование программ:

Полноэкранное редактирование при помощи мышки и пиктограмм

Панель с набором пиктограмм и набор горячих клавишдля всех элементов программы

Контекстная помощь, помогающая Вам найти нужный контакт, реле, инструкцию

Введение

Окно Взаимосвязи элементов - адресов - команд

Окно использованных адресов группами по 8,10 или 16 точек в строчке

Псевдонимы для большинства элементов, таких, как Таймеры и Счетчики

Присвоение логических имен и использование их программе

Окно Редактора памяти для быстрого доступа к V-памяти (Регистрам данных)

Копирование, вставка и удаление программных элементов, одиночных цепей или групп цепей

Копирование, вставка и удаление одиночных цепей или групп цепей с документацией из программы в программу

Слияние цепей

Поиск программных элементов по имени, адресу, номеру цепи или типу команды

Поиск констант Документирование программ:

Табличный редактор с простым доступом

16-ти символьные имена для адресов облегчают программирование и отладку

16-ти символьная маркировка входных цепей контроллера позволяет обеспечить безошибочную связь программ и технических средств

Подробное (до 6х18 символов) описание программного элемента

Комментарий к каждой цепи объемом до 20х69 символов

Копирование, вставка и удаление документации между программными элементами

Титульная страница программы произвольной формы Печать документов и программ:

Печать любого экрана, включая цепи релейной логики, блок схемы и мнемонику

Многоколонная печать

Механизм увеличения и уменьшения размера страницы

Просмотр подготовленных для печати страниц

Выбор элементов выводимых на печать в составе каждого документа

Печать программы с логическими именами, описаниями, комментариями и др.

Печать Таблиц взаимосвязи и Таблиц использованных адресов

Печать содержимого V- памяти (Регистров данных) Отображение на экране:

Программ в виде цепей Релейно-контактной схемы

Программ в виде команд Мнемокода

Блок схем программ для команд RLL Plus

Выбор диапазона номеров цепей или адресов для показа

Просмотр нескольких программ одновременно

Просмотр одной программы в разных видах одновременно

Использование окон произвольного размера

Настройка пользователем цвета элементов и состояний элементов

Установка системных параметров контроллеров:

Установка параметров ПИД-контуров при помощи диалогового окна

Конфигурирование операторской панели DV-1000

Установка режима работы контроллера

Очистка памяти контроллера

Установка и изменение диапазона сохраняемой области памяти данных

Чтение текущей конфигурации ввода/вывода контроллеров

Изменение конфигурации ввода/вывода контроллеров (если это допустимо)

Установка параметров коммуникационных портов контроллера и модемов

Чтение версии программного обеспечения контроллера

Операции во время работы программы:

Автоматическая настройка и сохранение параметров канала связи, включая модем

Индикация состояния линии связи с контроллером

Просмотр значений и состояния программных элементов, текущих значений параметров в режиме ”Status”

Создание пользовательских Окон Просмотра с произвольным набором элементов

Использование логических имен в Окнах Просмотра

Сохранение сконфигурированных Окон Просмотра

Возможность изменять формат представления данных в Окнах Просмотра (BCD, двоичный, +16- тиричный, целочисленный, реальный и др.)

Введение

Возможность изменять символ отображения дискретных параметров в Окнах Просмотра (переключатель, текст и др.)

Возможность изменять значения величин в контроллере с помощью Окон Просмотра

Наблюдение за работой нескольких контроллеров одновременно

Настройка и отладка системы:

Автоматический контроль ошибок при вводе программы

Контроль синтаксиса программ

Контроль текущего, минимального и максимального времени цикла контроллера

Представление диагностических сообщений состояния модулей ввода/вывода

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

Функционирование системы

ФУНКЦИОНИРОВАНИЕ СИСТЕМЫ

Взаимодействие аппаратуры DL405 организует Операционная Система Центрального Процессора - DL440. Она в решающей мере определяет функциональную мощь DL405. Поэтому управляющую систему DL405 с ЦП модификации 440 чаще именуют DL440. Грамотное проектирование и программирование системы DL405, используя все ее ресурсы, возможно лишь при ясном представлении того:

1) как DL440 взаимодействует с подсистемой Ввода/Вывода DL405; 2) как DL440 использует коммуникационные и сетевые средства DL405; 3) как DL440 обрабатывает данные и какие ресурсы ЦП при этом использует; 4) сколько времени занимают операции и в каких режимах работает DL440. В качестве примечания к пункту 1) поясним, что модули имеют два варианта обмена данными с ЦП:

битовый по однопроводной линии каркаса - допускает максимум 32 бит ввода и 32 бит вывода на один модуль (бит-модуль);

байтовый по 8-битной шине каркаса, которая представляет собой расширение шины данных ЦП - допускает максимум 512 байт ввода/вывода на один модуль (байт-модуль).

По первому варианту обмениваются модули дискретного и аналогового ввода/вывода, кроме 64-канальных

дискретных. Второй вариант обмена характерен для сопроцессоров (напр. F4-PID, F4-CP и модулей передачи данных (D4-DCM). Некоторые модули, например D4-HSC, используют оба варианта. DL440 поддерживает байтовый обмен только на Каркасе ЦП.

)

ОСНОВНЫЕ ФУНКЦИИ DL440

После подачи питания DL440 производит сброс аппаратуры и обнуление переменных памяти ЦП вне области сохранения, определяет место и тип каждого модуля подсистемы В/В. Далее DL440 начинает свой первый цикл. В начале цикла DL440 читает состояние каждого входа бит-модулей Местного Ввода, заполняя X-область памяти ЦП, а также опрашивает мастер модули Удаленного и Отдельного В/В (если они есть), заполняя память ЦП (обычно GX-область). Подробности этого процесса можно узнать из Руководств по Удаленному и Отдельному В/В (D4-REMIO-M и D4-SLICE-M). Затем DL440 обслуживает возможные сетевые запросы от встроенных портов ЦП, производит обмен данными с байт модулями Каркаса ЦП, обслуживает часы/календарь и устанавливает некоторые системные флаги SP (Специальные Реле). Дальнейшие действия в цикле DL440 зависят от режима, в котором находится система. В Рабочем Режиме выполняется программа пользователя, затем Y-память ЦП копируется в бит модули Местного Вывода, а мастер модули Удаленного и Отдельного В/В загружаются данными для вывода. В Режиме Программирования DL440 пропускает указанные действия и приступает к диагностике системы DL405. При положительном результате диагностики, DL440 начинает новый цикл.

Если диагностика определяет неисправность, то фиксирует ее на светодиодах верхней панели Блока ЦП, в Специальных Реле (SP) и регистрах V- памяти. Если при этом диагностика определяет неработоспособность DL405, DL440 переходит в Режим Программирования и начинает новый цикл. Режим Программирования и Рабочий Режим являются для DL440 основными.

ВКЛЮЧЕНИЕ ПИТАНИЯ

Начальная установка системы (Сброс) Опрос модулей и проверка
Начальная установка системы (Сброс)
Опрос модулей и проверка конфигурации В/В
Обнуление V-памяти ЦП вне границ сохранения
Бит-ввод из модулей Местных Каркасов
в Х-память ЦП
Загрузка состояний Удаленного и Отдельного Ввода
в память ЦП
Обслуживание встроенной периферии ЦП
Байтовый обмен с модулями Каркаса ЦП
Обслуживание часов и Специальных Реле SP
Программирования
Режим ?
Рабочий
Выполнение прикладной программы
Бит-вывод в модули Местных Каркасов из Y-памяти ЦП
Выгрузка состояний Удаленного и Отдельного Вывода
из памяти ЦП
Диагностика DL405 ?
Норма
Неисправность
Запись в журнал неисправностей, установка флагов (бит)
и регистров ошибок, включение индикаторов
(светодиодов).
DL405 ?
Работоспособна
Неработоспособна
Переход в Режим Программирования

Функционирование системы

РЕЖИМ ПРОГРАММИРОВАНИЯ

В Режим Программирования систему DL440 можно перевести принудительно двумя способами:

1) повернув Ключ Блока ЦП в положение “STOP”; 2) подав с программирующего устройства (Портативного Программатора или компьютера с пакетом DirectSOFT) соответствующую команду, если только Ключ не в положении “RUN”. В Режиме Программирования DL440 не выполняет прикладные программы и не изменяет состояние подсистемы Вывода. Основное назначение этого режима - ввод и редактирование прикладных программ. Он также используется для установки некоторых параметров системы: сетевого адреса и параметров передач по Порту 1 Блока ЦП, времени и даты, областей V-памяти, не обнуляемых при старте, и т.д.

РАБОЧИЙ РЕЖИМ

Если диагностика подтверждает работоспособность DL405, то DL440 переводится в Рабочий Режим:

1) поворотом Ключа Блока ЦП в положение “RUN”; 2) подачей с программирующего устройства (Портативного Программатора, компьютера с пакетом DirectSOFT) соответствующей команды, если только Ключ не в положении “STOP”. Основа Рабочего Режима DL440 - Рабочий цикл, фазы которого рассмотрим подробнее. Рабочий Режим предназначен для

выполнения прикладных программ и изменения состояния подсистемы Вывода, но допускает просмотр и изменение (по сети или из программирующего устройства) некоторых областей памяти ЦП:

состояние Местного В/В (Х/Y- память);

Бит-ввод из модулей Местных Каркасов в Х-память ЦП

Загрузка состояний Удаленного и Отдельного Ввода в GX-память ЦП

Обслуживание встроенной периферии ЦП

Байтовый обмен с модулями Каркаса ЦП

Обслуживание часов и Специальных Реле SP

Выполнение прикладной программы

Бит-вывод в модули Местных Каркасов из Y-памяти ЦП

Выгрузка состояний Удаленного и Отдельного Вывода из GX-памяти ЦП

Диагностика DL405

состояние Удаленного и Отдельного В/В (GX-память);

значения

и

флаги

таймеров/счетчиков;

позволяет

V-память переменных пользователя и т.д.

также

редактировать прикладную программу в Рабочем цикле, удерживая подсистему Вывода в неизменном состоянии, пока не загрузит новую программу. Если в этой программе обнаружится ошибка, DL440 отключит (обнулит) подсистему Вывода и перейдет в Режим Программирования.

DL440

!!!

Только очень подготовленный персонал, хорошо знающий все аспекты управляемого процесса, может вносить изменения в программу в Рабочем Режиме. Эти изменения проявятся немедленно. Чтобы избежать травмирования обслуживающего персонала или повреждения оборудования, убедитесь, что учтены все последствия изменений.

DL440 читает состояния всех бит-модулей ввода, расположенных на Местных Каркасах. ЦП

из модулей делает это, последовательно обращаясь к модулям Каркаса 0 слева направо и далее

переходя к Каркасам 1,2 и 3, в соответствии с конфигурацией Местного Ввода. В результате, состояние каждого дискретного входа подсистемы Местного Ввода отображается в какой-либо бит X-памяти ЦП. Способ отображения Местных аналоговых входов в Х-память изложен в Руководстве по использованию аналоговых модулей В/В. Максимальное количество Местных дискретных входов в DL440 - 320. В загрузке Х-памяти помимо бит-модулей ввода Местных Каркасов участвуют специальные модули (такие, как Скоростной Счетчик D4-HCS), которые имеют средства бит обмена с ЦП (подробнее об этом - в руководствах по применению специальных модулей). Обычно прикладные программы работают с X-образом Местного Ввода, обновляющимся в начале каждого цикла DL440. В среднем Рабочий цикл занимает несколько миллисекунд, которые в основном и определяют время реакции Местного В/В. Если приложение (напр., подпрограмма прерывания) требует текущих состояний каких-либо Местных входов, следует применять инструкции Немедленного Ввода.

ЦП

Х-память

Каркасов в

Местных

Бит-ввод

! Следует учитывать, что Немедленный Ввод не изменяет Х-образ Местного Ввода

Функционирование системы

Загрузка состояний Удаленного/ Отдельного Ввода в GX- память ЦП

Обслуживание

встроенной

периферии ЦП

После формирования X-памяти ЦП DL440 вводит массив данных о состоянии входов Удаленного и Отдельного Ввода из мастер модулей D4-RM/D4-SM, если они есть в Каркасе ЦП (Местном Каркасе 0). На основании этих данных формируется GX-память ЦП, которая используется как для удаленных/отдельных входов, так и для выходов. В руководствах по Удаленному и Отдельному В/В DL405 имеются достаточно подробные сведения по привязке Удаленного и Отдельного В/В к областям памяти ЦП. Может показаться, что состояние какого-либо Удаленного или Отдельного Входа может менять соответствующий GX-бит в каждом цикле DL440. Это не совсем так. Хотя DL440 загружает GX-память ЦП из буферной памяти мастер-модулей в каждом своем цикле, но он (цикл DL440) может оказаться короче цикла опроса Удаленных Каркасов или Отдельных Блоков соответствующими мастер-модулями. Максимальное количество Удаленных/Отдельных дискретных входов в DL440 может достигать 1024.

В следующей фазе своего цикла DL440 опрашивает все периферийные устройства ЦП,

прежде всего коммуникационные порты. У программирующего устройства здесь имеется возможность модифицировать любую доступную область V-памяти, например, GX- или Х-память с целью имитации входов для отладки последующей прикладной программы. Следует учитывать, что если Х-бит соответствует реальному Местному входу, то модификация Х-памяти будет действовать только до начала следующего цикла DL440, когда загрузка Х-памяти приведет ее в соответствие с состоянием Местного Ввода. Модификации можно подвергнуть любую доступную область V-памяти ЦП, например Y-память - эта возможность будет рассмотрена ниже. Запрос на переход DL440 в Режим Программирования или запрос на редактирование программы в Рабочем цикле также обслуживается в этой фазе цикла. В последнем случае DL440 приостанавливает все процессы, пока не введет новую программу. Если в этой программе обнаружится ошибка, DL440 отключит (обнулит) все выходы подсистемы Вывода и перейдет в Режим Программирования.

!!!

Только очень подготовленный персонал, хорошо знающий все аспекты управляемого процесса, может вносить изменения в программу в Рабочем Режиме. Эти изменения проявятся немедленно. Чтобы избежать травмирования обслуживающего персонала или повреждения оборудования, убедитесь, что учтены все последствия изменений.

Обмен

данными с

байт-модулями

Как уже упоминалось во Введении, DL440 поддерживает байтовый обмен только на Каркасе ЦП (Местном Каркасе 0). Это означает, что в DL440 байт-модули будут работать только на Каркасе ЦП:

Каркаса ЦП

мастер-модули Удаленного (D4-RM) и Отдельного (D4-SM) Ввода/Вывода;

передачи данных и сетевые (D4-DCM, F4-SDS, F4-SDN, F4-MAS-MB, F4-SLV-MB,

F4-SLV-TW);

сопроцессоры (F4-CP, F4-16PID);

специальные (F4-4LTC, F4-08MPI);

модуль D4-HSC, если применение требует использования всех его возможностей.

 

Указанные модули имеют встроенную двухпортовую память, в которой Центральному Процессору доступно до 512 байт, и через внешний порт которой, выходящий на

байтовую шину Каркаса, ЦП обменивается данными.

В

этой фазе цикла байтовый обмен инициирует модуль.

 

!

Байтовый обмен возможен также и в прикладной программе по инициативе ЦП при использовании инструкций RD/WT и RX/WX.

Обслуживание

часов и

Если в работе DL405 необходимо использовать показания Часов и Календаря, есть регистры памяти (V7766 8 ÷V7774 8 ), где в двоично-десятичном упакованном формате

Специальных

Реле SP

представлено текущее время DL440: секунда, минута, час, день недели, число, месяц и год столетия (см. “Системные параметрыв разделе Карта памятиэтой Главы).

В этой же фазе цикла DL440 устанавливает некоторые системные биты SP, связанные

с поддержкой реального времени системы.

Функционирование системы

Выполнение

прикладной

программы

В этой фазе Рабочего цикла DL440 выполняет пользовательскую программу, результаты которой, как правило, помещаются в различные области V-памяти ЦП:

Y-биты - прообразы Местного Вывода;

GX-биты состояний Удаленного и Отдельного Ввода/Вывода;

C-биты - управляющие флаги;

S-биты - флаги Стадий программы;

T-биты - флаги Таймеров;

TA-регистры - текущие значения Таймеров;

CT-биты - флаги Счетчиков;

CTA-регистры - текущие значения Счетчиков и т.д.

Реально Местные выходы обновляются только в следующей фазе цикла DL440, но можно применить инструкции Немедленного Вывода. Немедленный Вывод, в отличие от Немедленного Ввода, изменяет не только состояние Местного физического выхода, но и состояние его Y-прообраза. Если ранее в фазе обслуживания периферии Блока ЦП были модифицированы какие-либо области V-памяти (напр. Y-память), а прикладная программа изменила их, то упомянутая модификация будет безрезультатной.

Бит-вывод в

модули

Местных

Каркасов из

Y-памяти ЦП

Выгрузка

состояний

Удаленного/

Отдельного

Вывода из

GX-памяти

ЦП

Подготовленный прикладной программой Y-прообраз Местного Вывода копируется в бит- модули вывода, расположенные на Местных Каркасах. DL440 делает это, последовательно обращаясь к модулям Каркаса 0 слева направо и далее, переходя к Каркасам 1,2 и 3, в соответствии с конфигурацией Местного Вывода. Именно на этом этапе результаты работы DL440 проявляются в виде выходных сигналов. Выгрузка Y-памяти помимо Местных бит-модулей вывода задевает специальные модули (такие, как Скоростной Счетчик D4-HCS), которые имеют средства бит-обмена с ЦП (подробнее об этом - в руководствах по применению специальных модулей). Максимальное количество Местных дискретных выходов в DL440 - 320.

После Местного бит-вывода DL440 загружает буферную память мастер-модулей подсистемы Удаленного/Отдельного В/В, если она задействована. Может показаться, что состояние Удаленного/Отдельного выхода может изменяться в каждом Рабочем цикле DL440. Это не совсем так - хотя ЦП загружает буферную память мастер-модулей (D4- RM/D4-SM) каждый цикл DL440, но этот цикл может быть короче цикла обмена Удаленных Каркасов или Отдельных Блоков с мастер-модулями. Максимальное число Удаленных/Отдельных дискретных выходов в DL440 может достигать 1024.

В этой фазе цикла DL440 диагностирует систему, подсчитывает длительность текущего

Системная

диагностика Рабочего цикла, сбрасывает Сторожевой Таймер, модифицирует некоторые Специальные

Реле и регистры V-памяти ЦП. DL440 фиксирует более ста различных неисправностей DL405. Важнейший момент - подсчет длительности Рабочего цикла DL440. Команда AUX 53 Портативного Программатора позволяет просмотреть в миллисекундах текущее (V7775 8 ), минимальное (V7776 8 ) и максимальное (V7777 8 ) значение этого параметра, начиная с момента последнего перехода в Рабочий Режим. Регистр V7765 8 подсчитывает количество Рабочих циклов с этого же момента. ЦП оборудован Сторожевым Таймером, который следит за превышением интервала времени, отпущенного DL440 на фазу выполнения прикладной программы. Изготовитель устанавливает Сторожевой Таймер на 200 мс, но можно изменить это время командой AUX 55. При превышении контрольного времени DL440 обнулит подсистему Вывода - выключит выходы - и перейдет в Режим Программирования, автоматически формируя сообщение об этом. Портативный Программатор, например, выведет на табло: "E003 S/W TIMEOUT". Прикладная программа может применить инструкцию RSTWT для сброса Сторожевого Таймера, когда необходимо блокировать его действие.

DL405

Функционирование системы

ВРЕМЯ РЕАКЦИИ МЕСТНОГО ВВОДА/ВЫВОДА

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

фаза Рабочего цикла DL440, когда вход модуля ввода меняет состояние;

задержка модуля ввода на переключение по входу;

длительность Рабочего цикла DL440;

задержка модуля вывода на переключение по выходу.

Время реакции Удаленного/Отдельного В/В обсуждается в соответствующих руководствах по применению, здесь же мы обсудим проблему применительно к бит-модулям Местного В/В.

Обычный

минимум

времени

реакции

Местного

В/В

Время реакции Местного В/В будет наименьшим, когда задержка на переключение по входу бит-модуля ввода закончится непосредственно перед обращением к этому модулю в фазе Местного бит-ввода в Х-память Рабочего цикла DL440. Тогда изменение состояния входа, модифицируя Х-память, в этом же Рабочем цикле приведет к модификации Y-памяти прикладной программой, и в этом же Рабочем цикле проявится результат в виде выходного сигнала в фазе Местного бит-вывода. В этом случае время реакции Местного В/В слагается из следующих компонентов:

задержка модуля ввода на переключение по входу;

время обработки - интервал времени между бит-вводом состояния конкретного Местного входа и бит-выводом конкретного Местного выхода, включающий в себя:

1) время завершения фазы бит-ввода; 2) время загрузки памяти ЦП из мастер-модулей Удаленного/Отдельного В/В, если они есть, иначе эта компонента в сумму не входит; 3) время обслуживания периферии Блока ЦП; 4) время обмена с байт-модулями Каркаса ЦП; 5) время обслуживания часов/календаря и модификации специальных бит SP; 6) время выполнения прикладной программы; 7) время от начала фазы Местного бит-вывода до момента записи конкретного Y- бита в модуль вывода;

задержка модуля вывода на переключение по выходу.

Сумма перечисленных параметров - обычное минимальное время реакции Местного В/В.

Обычный

максимум

времени

реакции

Местного

В/В

Ускорение

реакции

Местного

В/В

Наибольшее время реакции Местного В/В получается, когда бит-модуль ввода почувствуетизменение на своем входе сразу после обращения к нему в начале Рабочего цикла DL440 (фаза Местного бит-ввода в Х-память). Тогда Х-память отразит изменение состояния входа только в следующем Рабочем цикле, и только в следующем цикле проявится результат в виде выходного сигнала. В этом случае время реакции Местного В/В по сравнению с минимальным (см. предыдущий параграф) увеличится на длительность текущего Рабочего цикла. При этом компоненты обычного минимального времени реакции Местного В/В должны быть подсчитаны для следующего Рабочего цикла.

Для ускорения реакции Местного В/В можно принять некоторые меры, из которых наиболее действенной является, вероятно, применение инструкций Немедленного Ввода/Вывода. Это сокращает время обработки, фигурирующее в предыдущих параграфах, оставляя в нем только пункт 6), который к тому же можно свести к минимуму за счет сокращения количества инструкций, выполняемых между инструкцией Немедленного Ввода и инструкцией Немедленного Вывода. Но эта мера окажет существенное влияние только на оценку снизу”. Сократить же время выполнения Рабочего цикла можно, например, подбирая инструкции с меньшим временем выполнения и улучшая структуру прикладной программы, хотя все это сильно зависит от опыта программиста. Можно, наконец, подобрать модули с более короткими задержками на срабатывание.

Функционирование системы

ДЛИТЕЛЬНОСТЬ РАБОЧЕГО ЦИКЛА DL440

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

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

Некоторые проблемы в DL405 можно решить аппаратно. Например, для подсчета импульсов высокой частоты следует использовать модуль Скоростного Счетчика D4-HSC. Если входное воздействие требует немедленной реакции, можно применить модуль прерывания D4- INT.

ВКЛЮЧЕНИЕ ПИТАНИЯ

Начальная установка системы (Сброс) Опрос модулей и проверка
Начальная установка системы (Сброс)
Опрос модулей и проверка конфигурации В/В
Обнуление V-памяти ЦП вне границ сохранения
Бит-ввод из модулей Местных Каркасов
в Х-память ЦП
Загрузка состояний Удаленного и Отдельного Ввода
в GX-память ЦП
Обслуживание встроенной периферии ЦП
Байтовый обмен с модулями Каркаса ЦП
Обслуживание часов и Специальных Реле SP
Программирования
Режим ?
Рабочий
Выполнение прикладной программы
Бит-вывод в модули Местных Каркасов из Y-памяти ЦП
Выгрузка состояний Удаленного и Отдельного Вывода
из GX-памяти ЦП
Диагностика DL405 ?
Норма
Неисправность
Запись в журнал неисправностей, установка флагов (бит)
и регистров ошибок, включение индикаторов
(светодиодов).
DL405 ?
Работоспособна
Неработоспособна
Переход в Режим Программирования

Есть и другие обстоятельства, увеличивающие Рабочий цикл. Когда есть цепи ввода/вывода за несколько сотен метров от ЦП, то обычно применяют более медленный Удаленный В/В, т.к. легче проложить экранированную пару проводов, чем тянуть провода всех цепей В/В.

Ниже даны длительности фаз цикла DL440.

Начальная После включения питания ЦП выполняет массу различных операций по подготовке системы

установка

к работе. Длительность такой подготовки, зависит от многих обстоятельств: количество и

системы

типы установленных модулей, тип памяти на Картридже и т.п. Этот процесс выполняется

Местный

только раз и не включается в Рабочий цикл DL440, поэтому его продолжительность не влияет на время выполнение прикладной программы. В DL440 начальная установка системы занимает от 1 до 2,5 секунд.

Ввод

Время, необходимое для загрузки состояния Местного Ввода в Х-память ЦП зависит от количества бит-модулей ввода на Местных Каркасах (Х1) и общего количества Местных бит-вводов (Х2). Длительность Местного бит-ввода:

Т Х = Т Х0 + (Т Х1 Х1) + (Т Х2 Х2),

где для DL440:

Т Х0 = 14,5 мкс - время подготовки к Местному бит-вводу; Т Х1 = 22,6 мкс - время обращения к одному бит-модулю Местного Каркаса; Т Х2 = 2,5 мкс - время на один бит-ввод. Например, длительность ввода состояний двух 16- и трех 32-входовых дискретных модулей:

Т Х = 14,5 мкс + (22,6 мкс 5) + (2,5 мкс 128) = 447,5 мкс

Функционирование системы

Ввод из

Аналогичная формула применяется для подсчета длительности ввода из специальных

специальных

модулей (таких, как D4-HSC), но с другими временными параметрами:

модулей

Т SX = Т S0 + (Т SX1 SX1) + (Т SX2 SX2),

где для DL440:

Т SX0 = 20,0 мкс - время подготовки к Местному бит-вводу из специальных модулей; Т SX1 = 67,0 мкс - время обращения к одному специальному модулю для ввода; Т SX2 = 54,0 мкс - время на один бит-ввод из специального модуля; SX1 - количество специальных модулей на Местных Каркасах (имеющих бит-ввод); SX2 - общее количество бит-вводов из специальных модулей. Например, время, требуемое DL440 для ввода из одного модуля D4-HSC:

Т SX = 20,0 мкс + (67,0 мкс 1) + (54,0 мкс 16) = 951,0 мкс

Ввод из

Продолжительность загрузки состояний Удаленного Ввода подсчитывается аналогично:

мастер-

Т RX = Т RX0 + (Т RX1 RX1) + (Т RX2 RX2),

модулей

где для DL440:

Удаленного В/В

Т RX0 = 22,0 мкс - время подготовки ко вводу из мастер-модулей Удаленного В/В; Т RX1 = 100,0 мкс - время обращения к данным одного Удаленного модуля ввода; Т RX2 = 17,0 мкс - время на ввод состояния одного Удаленного дискретного входа; RX1 - количество модулей ввода на Удаленных Каркасах; RX2 - общее количество Удаленных дискретных входов. Например, продолжительность загрузки состояний двух 32- и одного 8-входового модулей дискретного ввода, расположенных на Удаленных Каркасах:

Т RX = 22,0 мкс + (100,0 мкс 3) + (17,0 мкс 72) = 1546,0 мкс

Обслуживание

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

периферии ЦП

на протяжении цикла DL440 постоянно, “отмечаясьв памяти ЦП, но обрабатываются

Байт-обмен на

только в фазе обслуживания периферии. Если нет устройств, подключенных к встроенным портам ЦП, DL440 не тратит время на их обслуживание. На обслуживание приема от устройства, подключенного к верхнему порту Блока ЦП (Порт 1, Программирующий, верхний разъем DB15) DL440 тратит 52÷63 мкс, а на обслуживание передачи - 40÷48 мкс. Аналогичные параметры для нижнего порта Блока ЦП (Порт 2, Сетевой, нижний разъем DB25) составляют 66÷70 мкс и 46÷50 мкс. Кроме того, DL440 анализирует коммуникационный запрос и готовит ответ. На это уходит минимум 120 мкс, а максимум зависит от режима DL440. В Рабочем Режиме он составляет 26 мс, а в Режиме Программирования достигает 15 секунд.

Каркасе ЦП

Байт-модули, располагающиеся на Местном Каркасе 0, обмениваются данными через расширение шины ЦП. Длительность этого процесса полностью зависит от количества

Обслуживание

и типов байт-модулей (см. также параграф Обмен данными с байт-модулями Каркаса ЦПв разделе Рабочий Режимэтой Главы). Временные параметры байт-модулей даются в соответствующих Руководствах.

часов-

Длительность фазы обслуживания часов-календаря и модификации некоторых SP (Специальных Реле) зависит от режима DL440 - в Режиме Программирования она

календаря

составляет 35÷48 мкс, в Рабочем Режиме - 60÷65 мкс.

Прикладная

Продолжительность прикладной программы зависит от типа и числа используемых

программа

инструкций и от размера заголовка, который в DL440 занимает от 80 мкс до 7 мс. К указанному времени следует добавить суммарную длительность всех использованных в программе инструкций. На следующей странице дан пример прикладной программы на RLL в мнемоническом и видеографическом представлении. Мнемоническое представление каждой инструкции сопровождается двумя параметрами - минимальным и максимальным временем ее выполнения.

Функционирование системы

Средства

Управления

Программой

 

Миним.

Макс.

ИНСТРУКЦИЯ

время,

время,

мкс

мкс

STR X0

0,33

0,33

OR C0

0,33

0,33

ANDN X1

0,33

0,33

OUT Y0

0,33

0,33

STRN C100

0,33

0,33

LD K10

4,00

110,00

STRN C101

0,33

0,33

OUT V2002

4,00

15,40

STRN C102

0,33

0,33

LD K50

4,00

110,00

STRN C103

0,33

0,33

OUT V0006

4,00

15,40

STR X5

0,33

0,33

ANDN X10

0,33

0,33

OUT Y3

0,33

0,33

END

11,60

11,60

ВСЕГО:

31,23

266,03

X0 X1 Y0 OUT C0 C100 LD K10 C101 OUT V2002 C102 LD K50 C103
X0
X1
Y0
OUT
C0
C100
LD
K10
C101
OUT
V2002
C102
LD
K50
C103
OUT
V0006
X5
X10
Y3
OUT

END DL440 имеет средства изменения нормального порядка выполнения программы. Это циклы FOR/NEXT, Подпрограммы и Обработчики Прерываний. Использование этих средств увеличивает время выполнения программы. Если, например, обрабатываются прерывания по таймеру (INT O17) каждые 10 мс, то через каждые 10 мс к длительности Рабочего цикла будет добавляться время обработки прерывания.

В регистр V737 необходимо записать интервал прерываний по
В регистр V737
необходимо
записать
интервал
прерываний по
таймеру в
миллисекундах
от 3 до 999.
Если записать
нуль, таймер
прерывать не
будет
SP0
LD
K10
OUT
V737
ENI
END
INT
O17
K3
FOR
Y100
OUTI
Y101
OUTI
NEXT
IRT
0 10 20
0
10
20
END INT O17 K3 FOR Y100 OUTI Y101 OUTI NEXT IRT 0 10 20 Время ,
END INT O17 K3 FOR Y100 OUTI Y101 OUTI NEXT IRT 0 10 20 Время ,

Время, мс

Функционирование системы

Местный

Вывод

Вывод в

специальные

модули

Время, необходимое для загрузки состояния Местного Вывода из Y-памяти ЦП зависит от количества бит-модулей вывода на Местных Каркасах (Y1) и общего количества Местных бит-выводов (Y2). Длительность Местного бит-вывода:

Т Y = Т Y0 + (Т Y1 Y1) + (Т Y2 Y2),

где для DL440:

Т Y0 = 12,6 мкс - время подготовки к Местному бит-выводу; Т Y1 = 21,0 мкс - время обращения к одному бит-модулю Местного Вывода; Т Y2 = 2,5 мкс - время на один бит-вывод. Например, длительность вывода состояний двух 16- и трех 32-выходовых дискретных модулей:

Т Y = 12,6 мкс + (21,0 мкс 5) + (2,5 мкс 128) = 437,6 мкс

Аналогичная формула применяется для подсчета длительности вывода в специальные модули (такие, как D4-HSC):

Т SY = Т SY0 + (Т SY1 SY1) + (Т SY2 SY2),

где для DL440:

Т SY0 = 20,0 мкс - время подготовки к Местному бит-вводу из специальных модулей; Т SY1 = 67,0 мкс - время обращения к одному специальному модулю для вывода; Т SY2 = 54,0 мкс - время на один бит-вывод в специальный модуль; SY1 - количество специальных модулей на Местных Каркасах (имеющих бит-вывод); SY2 - общее количество бит-выводов в специальные модули. Например, время, требуемое DL440 для вывода в один модуль D4-HSC:

Т S = 20,0 мкс + (67,0 мкс 1) + (54,0 мкс 32) = 1815,0 мкс

Вывод в

мастер-

модули

Удаленного

В/В

Диагностика

Продолжительность выгрузки состояний Удаленного Вывода определяется аналогично:

Т RY = Т RY0 + (Т RY1 RY1) + (Т RY2 RY2),

где для DL440:

Т RY0 = 22,0 мкс - время подготовки к выводу в мастер-модули Удаленного В/В; Т RY1 = 100,0 мкс - время обращения к данным одного Удаленного модуля вывода; Т RY2 = 17,0 мкс - время на вывод состояния одного Удаленного дискретного выхода; RY1 - количество модулей вывода на Удаленных Каркасах; RY2 - общее количество Удаленных дискретных выходов. Например, продолжительность выгрузки состояний двух 32- и одного 8-выходного модулей дискретного вывода, расположенных на Удаленн