- Главная
- Информатика
- Операции управления программой
Содержание
- 2. Операции управления программой Операция Переход на метку выполняет ответвление программы к заданной метке перехода (n). Операция
- 3. Операции управления программой Операция Программный цикл с FOR выполняет операции между FOR и NEXT. Вы должны
- 4. Операции управления программой Операция Загрузка реле шагового управления отмечает начало сегмента SCR. Если n = 1
- 5. • В этом примере с помощью специального меркера SM0. ( первого цикла ) устанавливается S0.1. В
- 6. Управление потоками Разделение потоков управления Сведение потоков управления
- 7. Операции управления программой. Определение подпрограмм 1. В разделе Program Block дерева инструкций необходимо вызвать контекстное меню
- 8. П Р Е Р Ы В А Н И Я
- 9. П Р Е Р Ы В А Н И Я
- 10. П Р Е Р Ы В А Н И Я Определение программы обработки прерываний • В
- 11. П Р Е Р Ы В А Н И Я Определение прерываний в программе циклической обработки
- 12. Прерывания от ввода/вывода К прерываниям от ввода / относятся прерывания при нарастающем или спадающем фронте ,
- 13. Высокоскоростные счетчики Определение режима для быстрых счетчиков и их активизация Операция Определение режима для быстрых счетчиков
- 14. Работа счетчика со входом сброса и без входа запуска назад
- 15. Работа счетчика со входом сброса и запуска
- 16. Режимы быстрых счетчиков
- 17. Режимы быстрых счетчиков
- 18. Режимы быстрых счетчиков
- 19. Режимы быстрых счетчиков
- 20. Операнды управления HSC1 и HSC2 имеют в своем распоряжении три управляющих бита , с помощью которых
- 21. Операнды управления Каждый быстрый счетчик имеет в своем распоряжении текущее значение и предварительно установленное значение размером
- 22. Операнды управления Каждый быстрый счетчик имеет байт состояния , предоставляющий в распоряжение меркеры состояния . Эти
- 23. Пример инициализация счетчика Чтобы инициализировать HSC1 например как однофазный реверсивный счетчик с внешним управлением направлением счета
- 24. Операции с быстрыми выходами Операция Вывод импульсов проверяет специальные меркеры для этого импульсного выхода (x). Потом
- 25. Специальные меркеры быстрых выходов
- 26. Специальные меркеры быстрых выходов
- 27. Инициализация выхода в режиме РТО 1. Сбросьте выход в “0” с помощью меркера первого цикла и
- 28. Инициализация выхода в режиме РWM 1. Сбросьте выход в “0” с помощью меркера первого цикла и
- 29. Прерывания управляемые временем S7–200 может поддерживать одно или несколько прерываний , управляемых временем. С помощью прерываний
- 30. Пример считывания состояния аналогового входа 1. Под управлением бита первого скана, вызывается подпрограмма инициализации управляемого временем
- 32. Скачать презентацию
Слайд 2Операции управления программой
Операция Переход на метку выполняет ответвление программы к заданной метке
Операции управления программой
Операция Переход на метку выполняет ответвление программы к заданной метке

Операция Определение метки перехода указывает целевой пункт (n), в который нужно перейти .
Операнды :n: 0 - 255
Операция перехода и относящаяся к ней метка перехода должны обе находиться либо в главной программе , либо в одной подпрограмме , либо в одной программе обработке прерываний . Вы не можете перейти из главной программы на метку , расположенную в подпрограмме или в программе обработке прерываний . Вы также не можете из подпрограммы или программы обработки прерываний перейти на метку , расположенную вне соответствующей подпрограммы или программы обработки прерываний .
Слайд 3Операции управления программой
Операция Программный цикл с FOR выполняет операции между FOR и
Операции управления программой
Операция Программный цикл с FOR выполняет операции между FOR и

Операция Конец программного цикла с FOR (NEXT) отмечает конец программного цикла с FOR и устанавливает вершину стека в “1”.
Операнды : INDEX:VW, T, Z, EW, AW, MW, SMW, AC, *VD, *AC, SW
INITIAL:VW, T, Z, EW, AW, MW, SMW,AC, AEW, константа , *VD,*AC, SW
FINAL: VW, T, Z, EW, AW, MW, SMW, AC, AEW, константа , *VD, *AC, SW
Слайд 4Операции управления программой
Операция Загрузка реле шагового управления отмечает начало сегмента SCR. Если
Операции управления программой
Операция Загрузка реле шагового управления отмечает начало сегмента SCR. Если

Операция Фронт реле шагового управления отмечает SCR– бит , который должен разблокироваться ( S–бит ,который должен быть установлен ). Если поток сигнала поступает к катушке , то включается указанный S–бит и выключается S–бит операции LSCR ( разблокировал данный сегмент SCR).
Операция Конец реле шагового управления отмечает конец сегмента SCR.
Операнды :n: бит в области S, размер которой 16 байт (SB0… SB15)
Указание
Вы можете использовать реле шагового управления в главной программе , однако их нельзя вставлять в подпрограммы или программы обработки прерываний .
С помощью операций перехода можно совершать переходы внутри сегментов SCR, а также перескакивать через сегменты SCR. Однако нельзя совершать переходы снаружи внутрь сегмента SCR или изнутри сегмента SCR наружу .
Слайд 5• В этом примере с помощью специального меркера SM0. ( первого цикла
• В этом примере с помощью специального меркера SM0. ( первого цикла

устанавливается S0.1. В первом цикле S0.1 находится на активном шаге 1 .
• После 2-секундной задержки T37 вызывает переключение на следующий шаг 2. Это
переключение деактивизирует сегмент SCR для шага 1 (S0.1 ) и активизирует сегмент
SCR для шага 2 (S0.2).
Пример программы шагового управления
Слайд 6Управление потоками
Разделение потоков управления
Сведение потоков управления
Управление потоками
Разделение потоков управления
Сведение потоков управления

Слайд 7Операции управления программой. Определение подпрограмм
1. В разделе Program Block дерева инструкций необходимо
Операции управления программой. Определение подпрограмм
1. В разделе Program Block дерева инструкций необходимо

2. Выбрать команду Insert Subroutine.
3. Вы можете изменить имя подпрограммы, выбором пункта Properties в контекстном меню выбранной подпрограммы.
4. Список созданных подпрограмм отображается в разделе Subroutines дерева инструкций, и в цепочку программы, подпрограмма вставляется двойным щелчком мыши.
Слайд 8П Р Е Р Ы В А Н И Я
П Р Е Р Ы В А Н И Я

Слайд 9П Р Е Р Ы В А Н И Я
П Р Е Р Ы В А Н И Я

Слайд 10П Р Е Р Ы В А Н И Я Определение программы
П Р Е Р Ы В А Н И Я Определение программы

• В программах обработки прерываний нельзя использовать операции DISI, ENI, CALL, HDEF, FOR/NEXT, LSCR, SCRE, SCRT и END.
1. В разделе Program Block дерева инструкций необходимо вызвать контекстное меню (правой клавишей мыши).
2. Выбрать команду Insert Interrupt.
3. Вы можете изменить имя программы обработки прерывания, выбором пункта Properties в контекстном меню выбранной программы.
4. Соответствие между программой обработки прерывания и событием прерывания вы устанавливаете при использовании специальной функции в структуре программы циклической обработки.
Слайд 11П Р Е Р Ы В А Н И Я
Определение прерываний в
П Р Е Р Ы В А Н И Я Определение прерываний в

Операция Разблокировка всех событий прерываний разблокирует обработку всех назначенных событий прерываний .
Операция Блокировка всех событий прерываний блокирует обработку всех событий прерываний .
Операнды : нет
При переходе в режим RUN Вы блокируете прерывания . Если CPU находится в режиме RUN, то Вы можете с помощью операции ENI разблокировать все события прерываний . Команда “Блокировка всех событий прерываний ” допускает постановку прерываний в очередь , но не разрешает вызывать программы обработки прерываний .
Операция Назначение прерывания назначает событию прерывания
(EVENT) номер программу обработки прерываний (INT) и затем
разблокирует это событие .
Операция Отделение прерывания отделяет событие прерывания
(EVENT) от всех программ обработки прерываний и затем блокирует это
событие .
Операнды :INT : от 0 до 127
EVENT: от 0 до 20
Слайд 12Прерывания от ввода/вывода
К прерываниям от ввода / относятся прерывания при нарастающем
Прерывания от ввода/вывода
К прерываниям от ввода / относятся прерывания при нарастающем

В данном примере используется событие прерывания 2 для установки маркера
Слайд 13Высокоскоростные счетчики
Определение режима для быстрых счетчиков и их активизация
Операция Определение режима
Высокоскоростные счетчики
Определение режима для быстрых счетчиков и их активизация
Операция Определение режима

Операция Активизация быстрых счетчиков конфигурирует и управляет режимом работы быстрых счетчиков через сигнальные состояния битов специальных меркеров HSC. Параметр N задает номер быстрого счетчика .
Вы можете использовать для каждого счетчика только один блок HDEF.
Операнды :HSC: от 0 до 2 MODE: 0 (HSC0) от 0 до 11 (HSC1 или 2) N: от 0 до 2
Быстрые счетчики подсчитывают быстрые события , которыми невозможно управлять с частотой циклической обработки программы контроллера .
• HSC0 представляет собой реверсивный счетчик , который поддерживает тактовый вход . Ваша программа управляет направлением счета ( или назад ) через бит управления направлением . Максимальная частота счета данного счетчика составляет 2 кГц .
• HSC1 и HSC2 представляют собой универсальные счетчики , которые можно конфигурировать согласно одному из двенадцати различных режимов счета . Различные режимы счета приведены в таблице 9–6. Максимальная частота счета счетчиков HSC1 и HSC2 определяется Вашим CPU
Каждый счетчик имеет в своем распоряжении особые входы , поддерживающие такие функции , как датчик тактовых импульсов , управление направлением счета , сброс и запуск . Для двухфазных счетчиков оба датчика тактовых импульсов могут работать с максимальной частотой . В случае A/B– счетчиков ( квадратурных режимах ) Вы можете выбирать однократную или четырехкратную скорость счета . HSC1 и HSC2 полностью не зависят друг от друга и не влияют на другие быстрые операции . Оба счетчика работают с максимальной частотой , не оказывая друг на друга отрицательного воздействия .
Работа счетчика со входом
сброса
и без входа запуска
Работа счетчика со входом
сброса и запуска
Слайд 14Работа счетчика со входом сброса и без входа запуска
назад
Работа счетчика со входом сброса и без входа запуска
назад

Слайд 15Работа счетчика со входом сброса и запуска
Работа счетчика со входом сброса и запуска

Слайд 16Режимы быстрых счетчиков
Режимы быстрых счетчиков

Слайд 17Режимы быстрых счетчиков
Режимы быстрых счетчиков

Слайд 18Режимы быстрых счетчиков
Режимы быстрых счетчиков

Слайд 19Режимы быстрых счетчиков
Режимы быстрых счетчиков

Слайд 20Операнды управления
HSC1 и HSC2 имеют в своем распоряжении три управляющих бита
Операнды управления
HSC1 и HSC2 имеют в своем распоряжении три управляющих бита

После определения счетчика и режима счета Вы можете программировать динамические параметры счетчика . Каждый быстрый счетчик имеет управляющий байт , который активизирует или блокирует счетчик , а также устанавливает , в каком направлении должен происходить счет ( режимы 0, 1 и 2). Управляющий байт задает также начальное направление счета для всех других режимов счета , а также текущее и предварительно установленное значения , которые должны загружаться . Управляющий байт и назначенные текущее и предварительно установленное значения проверяются при выполнении операции HSC.
Слайд 21Операнды управления
Каждый быстрый счетчик имеет в своем распоряжении текущее значение и
Операнды управления
Каждый быстрый счетчик имеет в своем распоряжении текущее значение и

Дополнительно к управляющим байтам и байтам , содержащим новые текущие и предварительно установленные значения , можно считывать текущее значение быстрого счетчика также путем задания области памяти HC ( значение быстрого счетчика ) и номера счетчика (0, 1 или 2). Таким способом , Вы можете считывать текущее значение непосредственно . Однако для записи Вам нужно использовать описанную выше операцию HSC.
Слайд 22Операнды управления
Каждый быстрый счетчик имеет байт состояния , предоставляющий в распоряжение
Операнды управления
Каждый быстрый счетчик имеет байт состояния , предоставляющий в распоряжение

Биты состояния HSC0, HSC1 и HSC2 действительны только во время обработки программы прерываний для быстрых счетчиков . Когда Вы контролируете состояния быстрых счетчиков Вы можете разблокировать прерывания для событий , влияющих на обрабатываемую операцию .
Слайд 23Пример инициализация счетчика
Чтобы инициализировать HSC1 например как однофазный реверсивный счетчик
Пример инициализация счетчика
Чтобы инициализировать HSC1 например как однофазный реверсивный счетчик

Режим
3,4,5
1. Вызовите с помощью меркера первого цикла подпрограмму , в которой выполняется инициализация . Если Вы вызываете эту подпрограмму , то последующие циклы ее больше не вызывают , за счет чего сокращается время цикла и программа имеет более наглядную структуру .
2. В подпрограмме инициализации загрузите SM47 желаемыми установками . Например :
SM47 = 16#F8, активизирует счетчик записывает новое текущее значение записывает новое предварительно установленное значение устанавливает прямой счет устанавливает активность входов запуска и сброса на значение “высокая”.
3. Выполните операцию HDEF. При этом вход HSC установлен в “1”, а вход MODE установлен либо в “3”, если нет внешнего сброса или запуска , либо в “4”, если есть внешний сброс и нет запуска , либо в “5”, если есть внешний сброс и запуск . 4. Загрузите желаемое текущее значение в SM48 ( слово ). (Если Вы загружаете значение “0”, то меркер сбрасывается ). 5. Загрузите желаемое предварительно установленное значение в SM52 ( слово ).
6. Запрограммируйте прерывание , назначив событие прерывания PV = CV (13) соответствующей программе обработке
Слайд 24Операции с быстрыми выходами
Операция Вывод импульсов проверяет специальные меркеры для этого
Операции с быстрыми выходами
Операция Вывод импульсов проверяет специальные меркеры для этого

Операнды :x: от 0 до 1
Некоторые CPU могут через выходы A0.0 и A0.1 либо порождать быстрые последовательности импульсов (PTO = pulse train output), либо управлять широтно –импульсной модуляцией (PWM = pulse width modulation).
Функция PTO обеспечивает на выходе последовательность прямоугольных импульсов (относительная длительность включения 50%) с определенным количеством импульсов и фиксированным периодом следования .
Количество импульсов может лежать в диапазоне от 1 до 4.294.967.295. Период может задаваться в микросекундах ( 250 до 65.535) или в миллисекундах ( 2 до 65.535). Нечетное число микросекунд или миллисекунд вызывает искажение относительной длительности включения .
Функция PWM обеспечивает фиксированный период следования импульсов с переменной относительной длительностью включения . Период следования и длительность импульсов могут задаваться в микро - или миллисекундах . Период следования лежит в диапазоне от 250 до 65.535 микросекунд или в диапазоне от 2 до 65.535 миллисекунд . Длительность импульсов лежит в диапазоне от 0 до 65.535 микросекунд или в диапазоне от 0 до 65.535 миллисекунд . Если длительность импульсов и период следования равны , то относительная длительность включения составляет 100%, и выход является постоянно включенным . Если длительность импульсов равна нулю , то относительная длительность включения составляет 0%, и выход выключается . Если период следования задается меньшим , чем две единицы времени , то период следования принимает значение по умолчанию , равное двум единицам времени.
Слайд 25Специальные меркеры быстрых выходов
Специальные меркеры быстрых выходов

Слайд 26Специальные меркеры быстрых выходов
Специальные меркеры быстрых выходов

Слайд 27Инициализация выхода в режиме РТО
1. Сбросьте выход в “0” с помощью меркера
Инициализация выхода в режиме РТО
1. Сбросьте выход в “0” с помощью меркера

Слайд 28Инициализация выхода в режиме РWM
1. Сбросьте выход в “0” с помощью меркера
Инициализация выхода в режиме РWM
1. Сбросьте выход в “0” с помощью меркера

Слайд 29Прерывания управляемые временем
S7–200 может поддерживать одно или несколько прерываний , управляемых
Прерывания управляемые временем
S7–200 может поддерживать одно или несколько прерываний , управляемых

Управляемое временем событие прерывания вызывает соответствующую программу обработки прерываний каждый раз , когда истекает время . В общем случае с помощью управляемых временем событий прерываний Вы управляете регулярным опросом аналоговых входов . Управляемое временем прерывание разблокируется и время начинает отсчитываться , когда Вы назначаете программу обработки прерываний управляемому временем событию прерывания . При этом система фиксирует период , чтобы последующие изменения не влияли на период . Если Вы хотите изменить период , то Вам нужно задать новое значение для периода и затем снова назначить программу обработки прерываний управляемому временем событию прерывания . При новом назначении эта функция стирает накопленное значение времени предыдущего назначения , и время начинает отсчитываться с новым значением периода . После разблокировки прерывание , управляемое временем , функционирует непрерывно и обрабатывается каждый раз , когда истекает заданный интервал времени . Если Вы выходите из режима RUN или отделяете прерывание от программы обработки прерываний (DTCH), то управляемое временем прерывание блокируется . Если Вы выполняете операцию “Блокировка всех событий прерываний ”, то управляемые временем прерывания в дальнейшем хотя и появляются , однако ставятся в очередь ( тех пор , пока либо прерывания снова не разблокируются , либо очередь не переполнится ).
Слайд 30Пример считывания состояния аналогового входа
1. Под управлением бита первого скана, вызывается
Пример считывания состояния аналогового входа
1. Под управлением бита первого скана, вызывается

2. Командой перемещения устанавливается временной интервал 100 мс. Разблокируются все прерывания, и событию 10 присваивается программа обработки прерывания с номером 0.
3. Программа обработки прерывания будет исполняться с периодичностью 100 мс., тем самым считывая значение аналогового входа в память VW100