- Главная
- Информатика
- Операции управления программой
Содержание
- 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Операции управления программой
Операция Переход на метку выполняет ответвление программы к заданной метке
Операции управления программой
Операция Переход на метку выполняет ответвление программы к заданной метке
![Операции управления программой Операция Переход на метку выполняет ответвление программы к заданной](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-1.jpg)
Операция Определение метки перехода указывает целевой пункт (n), в который нужно перейти .
Операнды :n: 0 - 255
Операция перехода и относящаяся к ней метка перехода должны обе находиться либо в главной программе , либо в одной подпрограмме , либо в одной программе обработке прерываний . Вы не можете перейти из главной программы на метку , расположенную в подпрограмме или в программе обработке прерываний . Вы также не можете из подпрограммы или программы обработки прерываний перейти на метку , расположенную вне соответствующей подпрограммы или программы обработки прерываний .
Слайд 3Операции управления программой
Операция Программный цикл с FOR выполняет операции между FOR и
Операции управления программой
Операция Программный цикл с FOR выполняет операции между FOR и
![Операции управления программой Операция Программный цикл с FOR выполняет операции между FOR](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-2.jpg)
Операция Конец программного цикла с 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.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-3.jpg)
Операция Фронт реле шагового управления отмечает SCR– бит , который должен разблокироваться ( S–бит ,который должен быть установлен ). Если поток сигнала поступает к катушке , то включается указанный S–бит и выключается S–бит операции LSCR ( разблокировал данный сегмент SCR).
Операция Конец реле шагового управления отмечает конец сегмента SCR.
Операнды :n: бит в области S, размер которой 16 байт (SB0… SB15)
Указание
Вы можете использовать реле шагового управления в главной программе , однако их нельзя вставлять в подпрограммы или программы обработки прерываний .
С помощью операций перехода можно совершать переходы внутри сегментов SCR, а также перескакивать через сегменты SCR. Однако нельзя совершать переходы снаружи внутрь сегмента SCR или изнутри сегмента SCR наружу .
Слайд 5• В этом примере с помощью специального меркера SM0. ( первого цикла
• В этом примере с помощью специального меркера SM0. ( первого цикла
![• В этом примере с помощью специального меркера SM0. ( первого цикла](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-4.jpg)
устанавливается S0.1. В первом цикле S0.1 находится на активном шаге 1 .
• После 2-секундной задержки T37 вызывает переключение на следующий шаг 2. Это
переключение деактивизирует сегмент SCR для шага 1 (S0.1 ) и активизирует сегмент
SCR для шага 2 (S0.2).
Пример программы шагового управления
Слайд 6Управление потоками
Разделение потоков управления
Сведение потоков управления
Управление потоками
Разделение потоков управления
Сведение потоков управления
![Управление потоками Разделение потоков управления Сведение потоков управления](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-5.jpg)
Слайд 7Операции управления программой. Определение подпрограмм
1. В разделе Program Block дерева инструкций необходимо
Операции управления программой. Определение подпрограмм
1. В разделе Program Block дерева инструкций необходимо
![Операции управления программой. Определение подпрограмм 1. В разделе Program Block дерева инструкций](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-6.jpg)
2. Выбрать команду Insert Subroutine.
3. Вы можете изменить имя подпрограммы, выбором пункта Properties в контекстном меню выбранной подпрограммы.
4. Список созданных подпрограмм отображается в разделе Subroutines дерева инструкций, и в цепочку программы, подпрограмма вставляется двойным щелчком мыши.
Слайд 8П Р Е Р Ы В А Н И Я
П Р Е Р Ы В А Н И Я
![П Р Е Р Ы В А Н И Я](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-7.jpg)
Слайд 9П Р Е Р Ы В А Н И Я
П Р Е Р Ы В А Н И Я
![П Р Е Р Ы В А Н И Я](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-8.jpg)
Слайд 10П Р Е Р Ы В А Н И Я Определение программы
П Р Е Р Ы В А Н И Я Определение программы
![П Р Е Р Ы В А Н И Я Определение программы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-9.jpg)
• В программах обработки прерываний нельзя использовать операции DISI, ENI, CALL, HDEF, FOR/NEXT, LSCR, SCRE, SCRT и END.
1. В разделе Program Block дерева инструкций необходимо вызвать контекстное меню (правой клавишей мыши).
2. Выбрать команду Insert Interrupt.
3. Вы можете изменить имя программы обработки прерывания, выбором пункта Properties в контекстном меню выбранной программы.
4. Соответствие между программой обработки прерывания и событием прерывания вы устанавливаете при использовании специальной функции в структуре программы циклической обработки.
Слайд 11П Р Е Р Ы В А Н И Я
Определение прерываний в
П Р Е Р Ы В А Н И Я Определение прерываний в
![П Р Е Р Ы В А Н И Я Определение прерываний](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-10.jpg)
Операция Разблокировка всех событий прерываний разблокирует обработку всех назначенных событий прерываний .
Операция Блокировка всех событий прерываний блокирует обработку всех событий прерываний .
Операнды : нет
При переходе в режим RUN Вы блокируете прерывания . Если CPU находится в режиме RUN, то Вы можете с помощью операции ENI разблокировать все события прерываний . Команда “Блокировка всех событий прерываний ” допускает постановку прерываний в очередь , но не разрешает вызывать программы обработки прерываний .
Операция Назначение прерывания назначает событию прерывания
(EVENT) номер программу обработки прерываний (INT) и затем
разблокирует это событие .
Операция Отделение прерывания отделяет событие прерывания
(EVENT) от всех программ обработки прерываний и затем блокирует это
событие .
Операнды :INT : от 0 до 127
EVENT: от 0 до 20
Слайд 12Прерывания от ввода/вывода
К прерываниям от ввода / относятся прерывания при нарастающем
Прерывания от ввода/вывода
К прерываниям от ввода / относятся прерывания при нарастающем
![Прерывания от ввода/вывода К прерываниям от ввода / относятся прерывания при нарастающем](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-11.jpg)
В данном примере используется событие прерывания 2 для установки маркера
Слайд 13Высокоскоростные счетчики
Определение режима для быстрых счетчиков и их активизация
Операция Определение режима
Высокоскоростные счетчики
Определение режима для быстрых счетчиков и их активизация
Операция Определение режима
![Высокоскоростные счетчики Определение режима для быстрых счетчиков и их активизация Операция Определение](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-12.jpg)
Операция Активизация быстрых счетчиков конфигурирует и управляет режимом работы быстрых счетчиков через сигнальные состояния битов специальных меркеров 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Работа счетчика со входом сброса и без входа запуска
назад
Работа счетчика со входом сброса и без входа запуска
назад
![Работа счетчика со входом сброса и без входа запуска назад](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-13.jpg)
Слайд 15Работа счетчика со входом сброса и запуска
Работа счетчика со входом сброса и запуска
![Работа счетчика со входом сброса и запуска](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-14.jpg)
Слайд 16Режимы быстрых счетчиков
Режимы быстрых счетчиков
![Режимы быстрых счетчиков](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-15.jpg)
Слайд 17Режимы быстрых счетчиков
Режимы быстрых счетчиков
![Режимы быстрых счетчиков](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-16.jpg)
Слайд 18Режимы быстрых счетчиков
Режимы быстрых счетчиков
![Режимы быстрых счетчиков](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-17.jpg)
Слайд 19Режимы быстрых счетчиков
Режимы быстрых счетчиков
![Режимы быстрых счетчиков](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-18.jpg)
Слайд 20Операнды управления
HSC1 и HSC2 имеют в своем распоряжении три управляющих бита
Операнды управления
HSC1 и HSC2 имеют в своем распоряжении три управляющих бита
![Операнды управления HSC1 и HSC2 имеют в своем распоряжении три управляющих бита](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-19.jpg)
После определения счетчика и режима счета Вы можете программировать динамические параметры счетчика . Каждый быстрый счетчик имеет управляющий байт , который активизирует или блокирует счетчик , а также устанавливает , в каком направлении должен происходить счет ( режимы 0, 1 и 2). Управляющий байт задает также начальное направление счета для всех других режимов счета , а также текущее и предварительно установленное значения , которые должны загружаться . Управляющий байт и назначенные текущее и предварительно установленное значения проверяются при выполнении операции HSC.
Слайд 21Операнды управления
Каждый быстрый счетчик имеет в своем распоряжении текущее значение и
Операнды управления
Каждый быстрый счетчик имеет в своем распоряжении текущее значение и
![Операнды управления Каждый быстрый счетчик имеет в своем распоряжении текущее значение и](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-20.jpg)
Дополнительно к управляющим байтам и байтам , содержащим новые текущие и предварительно установленные значения , можно считывать текущее значение быстрого счетчика также путем задания области памяти HC ( значение быстрого счетчика ) и номера счетчика (0, 1 или 2). Таким способом , Вы можете считывать текущее значение непосредственно . Однако для записи Вам нужно использовать описанную выше операцию HSC.
Слайд 22Операнды управления
Каждый быстрый счетчик имеет байт состояния , предоставляющий в распоряжение
Операнды управления
Каждый быстрый счетчик имеет байт состояния , предоставляющий в распоряжение
![Операнды управления Каждый быстрый счетчик имеет байт состояния , предоставляющий в распоряжение](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-21.jpg)
Биты состояния HSC0, HSC1 и HSC2 действительны только во время обработки программы прерываний для быстрых счетчиков . Когда Вы контролируете состояния быстрых счетчиков Вы можете разблокировать прерывания для событий , влияющих на обрабатываемую операцию .
Слайд 23Пример инициализация счетчика
Чтобы инициализировать HSC1 например как однофазный реверсивный счетчик
Пример инициализация счетчика
Чтобы инициализировать HSC1 например как однофазный реверсивный счетчик
![Пример инициализация счетчика Чтобы инициализировать HSC1 например как однофазный реверсивный счетчик с](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-22.jpg)
Режим
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Операции с быстрыми выходами
Операция Вывод импульсов проверяет специальные меркеры для этого
Операции с быстрыми выходами
Операция Вывод импульсов проверяет специальные меркеры для этого
![Операции с быстрыми выходами Операция Вывод импульсов проверяет специальные меркеры для этого](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-23.jpg)
Операнды :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Специальные меркеры быстрых выходов
Специальные меркеры быстрых выходов
![Специальные меркеры быстрых выходов](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-24.jpg)
Слайд 26Специальные меркеры быстрых выходов
Специальные меркеры быстрых выходов
![Специальные меркеры быстрых выходов](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-25.jpg)
Слайд 27Инициализация выхода в режиме РТО
1. Сбросьте выход в “0” с помощью меркера
Инициализация выхода в режиме РТО
1. Сбросьте выход в “0” с помощью меркера
![Инициализация выхода в режиме РТО 1. Сбросьте выход в “0” с помощью](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-26.jpg)
Слайд 28Инициализация выхода в режиме РWM
1. Сбросьте выход в “0” с помощью меркера
Инициализация выхода в режиме РWM
1. Сбросьте выход в “0” с помощью меркера
![Инициализация выхода в режиме РWM 1. Сбросьте выход в “0” с помощью](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-27.jpg)
Слайд 29Прерывания управляемые временем
S7–200 может поддерживать одно или несколько прерываний , управляемых
Прерывания управляемые временем
S7–200 может поддерживать одно или несколько прерываний , управляемых
![Прерывания управляемые временем S7–200 может поддерживать одно или несколько прерываний , управляемых](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-28.jpg)
Управляемое временем событие прерывания вызывает соответствующую программу обработки прерываний каждый раз , когда истекает время . В общем случае с помощью управляемых временем событий прерываний Вы управляете регулярным опросом аналоговых входов . Управляемое временем прерывание разблокируется и время начинает отсчитываться , когда Вы назначаете программу обработки прерываний управляемому временем событию прерывания . При этом система фиксирует период , чтобы последующие изменения не влияли на период . Если Вы хотите изменить период , то Вам нужно задать новое значение для периода и затем снова назначить программу обработки прерываний управляемому временем событию прерывания . При новом назначении эта функция стирает накопленное значение времени предыдущего назначения , и время начинает отсчитываться с новым значением периода . После разблокировки прерывание , управляемое временем , функционирует непрерывно и обрабатывается каждый раз , когда истекает заданный интервал времени . Если Вы выходите из режима RUN или отделяете прерывание от программы обработки прерываний (DTCH), то управляемое временем прерывание блокируется . Если Вы выполняете операцию “Блокировка всех событий прерываний ”, то управляемые временем прерывания в дальнейшем хотя и появляются , однако ставятся в очередь ( тех пор , пока либо прерывания снова не разблокируются , либо очередь не переполнится ).
Слайд 30Пример считывания состояния аналогового входа
1. Под управлением бита первого скана, вызывается
Пример считывания состояния аналогового входа
1. Под управлением бита первого скана, вызывается
![Пример считывания состояния аналогового входа 1. Под управлением бита первого скана, вызывается](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1109349/slide-29.jpg)
2. Командой перемещения устанавливается временной интервал 100 мс. Разблокируются все прерывания, и событию 10 присваивается программа обработки прерывания с номером 0.
3. Программа обработки прерывания будет исполняться с периодичностью 100 мс., тем самым считывая значение аналогового входа в память VW100