Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
68
Добавлен:
24.02.2016
Размер:
27.74 Mб
Скачать

3.2. Сравнительные булевы операции

Команды Store If Equal (STR E) и Store If Not Equal (STR NOT E)начинают новую ступеньку лестницы или дополнительную ветвь ступеньки и представляют собой нормальный открытый сравнительный контакт и нормальный закрытый сравнительный контакт соответственно.

Для STR E (см. рис. 3.11.а) контакт будет в состоянии “Вкл.”, когда выполнится равенство V aaa = B bbb.

Для STR NOT E (см. рис.3.11.б) контакт будет в состоянии “Вкл.”, когда выполнится неравенство V aaa B bbb.

Т

Рис. 3.11. Обозначение команд Store If Equal и Store If Not Equal

ипы операндов для данных команд представлены в табл. 3.4.

Тип операнда

Обозначение (В)

Диапазон

aaa

bbb

V-память

V

все

все

Константы

K

0 – FFFF

Таблица 3.4. Типы операндов для команд

Store If Equal и Store If Not Equal

Команды Store (STR) и Store Not (STR NOT) начинают новую ступеньку лестницы или дополнительную ветвь ступеньки и представляет собой нормальный открытый сравнительный контакт и нормальный закрытый сравнительный контакт соответственно.

Для STR (см. рис. 3.12.а) контакт будет в состоянии “Вкл.”, когда выполнится неравенство V aaa B bbb.

Для STR (см. рис. 3.12.б) контакт будет в состоянии “Вкл.”, когда выполнится неравенство V aaa < B bbb.

Типы операндов для данных команд представлены в табл. 3.5.

Рис. 3.12. Обозначение команд Store и Store Not

Тип операнда

Обозначение (А/В)

Диапазон

aaa

bbb

V память

V

все

Все

Константа

K

0 – FFFF

Таймер

T

0 – 177

Счетчик

CT

0 – 177

Таблица 3.5. Типы операндов для команд Store и Store Not

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

Таблица 3.6. Некоторые сравнительные булевы операции

3.3. Таймеры и счетчики

Доступные для контроллера DL205 таймеры и счетчики и их обозначение в программе представлены в табл. 3.7.

Таблица 3.7.

Существует две возможности использования таймеров и счетчиков при написании программ:

  1. Можно их использовать для выполнения функций после достижения таймером (или счетчиком) указанного предварительно установленного значения (Bbbb). В этом случае используют дискретный бит статуса таймера или счетчика.

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

Команды Timer и Timer Fast имеют единственный “разрешающий” вход, который запускает таймер к счету. Для данных команд этот вход тактируется по 0.1 с и по 0.01 с соответственно. Можно установить максимальное время задержки 999.9 с (для Timer) и 99.9 с (для Timer Fast). Таймеры будут запущены, если входная логика истинна (true) и будут сброшены в “0”, если входная логика ложна (false). Для выполнения данных команд необходимо установить следующие параметры: Taaa – номер таймера и Bbbb – предварительно установленное значение таймера.

К текущему значению таймера обращаются, ссылаясь на связанные с ним области V или T-памяти. Например, текущее значение для таймера T3 физически постоянно находится в области V-памяти V3.

К дискретному биту статуса таймера обращаются, ссылаясь на связанную с ним область T-памяти. Он используется, если текущее значение равно или больше предварительно установленного значения. Например, дискретный бит состояния для таймера 2 был бы T2.

Типы операндов для данной команды представлены в табл. 3.8.

Тип операнда

Обозначение

Диапазон

A/B

Aaa

bbb

Таймер

T

0 – 177

V-память (для предварительно установленных значений)

V

2000 – 3777

Константа (для предварительно установленных значений)

K

0 – 9999

Дискретный бит статуса таймера

T/V

0 – 177 или V41100– 41107

Текущее значение таймера

V/T

0 – 177

Таблица 3.8. Типы операндов для команд семейства Timer

Команды Accumulating Timer и Accumulating Fast Timerимеют два входа: “разрешающий” (Enable) и “сбрасывающий” (Reset). Для данных команд эти входы тактируется по 0.1 с и по 0.01 с соответственно. Можно установить максимальное время задержки 999.9 с (для TMRA) и 99.9 с (для TMRAF). Для выполнения данных команд необходимо установить следующие параметры:Taaa – номер таймера и Bbbb – предварительно установленное значение таймера.

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

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

Команда Counterимеет два входа: “считающий” (Count) и “сбрасывающий” (Reset). По числу переключений первого входа из “0” в “1”, осуществляется увеличение числа счетов, при условии, что второй вход выключен. Когда текущее значение счетчика будет равно предварительно установленному значению, активизируется бит статуса счетчика и счетчик продолжит считать до максимально возможного числа счетов 9999. Максимальное значение будет поддерживаться, пока счетчик не сбросить в “0”.

Для выполнения данной команды необходимо установить следующие параметры: CT aaa – номер счетчика и B bbb – предварительно установленное значение счетчика.

К текущему значению счетчика обращаются, ссылаясь на связанные с ним области V или CT памяти. Расположение в V-памяти – это ячейка, номер которой равен: номера счетчика + 1000.

К дискретному биту состояния счетчика обращаются, ссылаясь на связанную с ним область CT памяти. Он используется, если текущее значение счетчика равно или больше предварительно установленного значения.

Типы операндов для данной команды представлены в табл. 3.9.

Тип операнда

Обозначение (А/В)

Диапазон

aaa

bbb

Счетчик

CT

0 – 177

V-память (для предварительно установленных значений)

V

2000 – 3777

Константа (для предварительно установленных значений)

K

0 – 9999

Дискретный бит статуса счетчика

CT/V

0 – 177 или V41140 – 41147

Текущее значение счетчика

V/CT

1000 – 1177

Таблица 3.9. Типы операндов для команд семейства Counter

Команда Stage Counterимеет один вход, при каждом переключении которого из “0” в “1”, осуществляется увеличение на 1 числа счетов. Этот счетчик отличается от других счетчиков тем, что для сброса в “0” его текущего значения необходимо использовать команду RST. Когда текущее значение счетчика будет равно предварительно установленному значению, активизируется бит статуса счетчика и счетчик продолжит считать до максимально возможного числа счетов 9999. Максимальное значение будет поддерживаться, пока счетчик не сбросить в “0”.

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

Использование текущего состояния и бита статуса данного счетчика, а также типы операндов аналогичны счетчику CNT.

Команда Up Down Counterимеет три входа: “прибавляющий” (Up), “вычитающий” (Down) и “сбрасывающий” (Reset). По числу переключений первого входа из “0” в “1”, осуществляется увеличение числа счетов. По числу переключений второго входа из “0” в “1”, осуществляется уменьшение числа счетов. Изменение числа счетов происходит при условии, что третий вход выключен. Максимальное число счетов – 99999999. Счетчик сбрасывается, когда включается вход Reset. Для того, чтобы счетчик работал, необходимо, чтобы текущее число счетов было всегда больше нуля. Для выполнения данной команды необходимо установить следующие параметры:CTaaa – номер счетчика и Bbbb – предварительно установленное значение счетчика.

Использование текущего состояния и бита статуса данного счетчика, а также типы операндов аналогичны счетчику CNT.