Главная страница
Навигация по странице:

  • Конфигурирование параметров запуска

  • Указание CPU после загрузки всегда выполняет новый пуск

  • 3.1.1 Режимы работы CPU

  • Обработка запуска (STARTUP)

  • Вход Тип данных Описание

  • Обработка цикла в режиме RUN

  • Организационные блоки (OB)

  • Руководство по программированию 6 profinet 7 Двухточечная связь (PointtoPoint, PtP) 8


    Скачать 3.76 Mb.
    НазваниеРуководство по программированию 6 profinet 7 Двухточечная связь (PointtoPoint, PtP) 8
    Дата27.07.2022
    Размер3.76 Mb.
    Формат файлаpdf
    Имя файлаs71200_system_manual_r.pdf
    ТипРуководство
    #636782
    страница5 из 40
    1   2   3   4   5   6   7   8   9   ...   40
    Основы ПЛК
    3
    3.1
    Исполнение программы пользователя
    CPU поддерживает следующие виды блоков, позволяющие создать эффективную структуру вашей пользовательской программы:
    ● Организационные блоки (OB) определяют структуру программы. Некоторые OB имеют предопределенное поведение и стартовые события, но вы можете также создавать OB со своими собственными стартовыми событиями.
    ● Функции (FC) и функциональные блоки (FB) содержат программный код, соответствующий конкретным задачам или комбинациям параметров. Каждая функция и каждый функциональный блок предоставляет в распоряжение набор входных и выходных параметров для совместного использования данных с вызываемым блоком. FB использует также связанный с ним блок данных
    (называемый экземплярным DB) для сохранения данных о состоянии во время исполнения, которые могут быть использованы другими блоками в программе.
    ● Блоки данных (DB) хранят данные, которые могут быть использованы программными блоками.
    Исполнение программы пользователя начинается одним или несколькими необязательными организационными блоками (OB), которые после перехода в режим
    RUN обрабатываются один раз, затем следует один или более OB программного цикла, которые обрабатываются циклически. OB может быть также поставлен в соответствие прерывающему событию, которое может быть стандартным событием или событием-ошибкой; затем он исполняется, когда происходит соответствующее событие.
    Функция (FC) или функциональный блок (FB) – это блок с кодом программы, который может быть вызван из OB или из другой функции или другого функционального блока.
    При этом возможны следующие уровни вложения:
    ● 16 из циклического OB или OB запуска
    ● 4 из OB прерываний с задержкой, OB циклических прерываний, OB аппаратных прерываний, OB ошибок по времени или OB диагностируемых ошибок
    FC не ставятся в соответствие никакому конкретному блоку данных (DB), тогда как FB непосредственно связаны с DB и используют этот DB для передачи параметров и сохранения промежуточных значений и результатов.
    Размер пользовательской программы, данных и конфигурации ограничен имеющейся в распоряжении загрузочной памятью и рабочей памятью в CPU. В рамках свободной рабочей памяти число поддерживаемых блоков не ограничено.
    Каждый цикл включает в себя запись выходов, чтение входов, исполнение команд программы пользователя и выполнение обслуживания системы или фоновая обработка. Этот цикл называется также циклом сканирования или просто сканированием.
    Сигнальная плата, сигнальные и коммуникационные модули обнаруживаются и регистрируются только при запуске.

    Основы ПЛК
    3.1 Исполнение программы пользователя
    Программируемый контроллер S7-1200 40
    Системное руководство, 11/2009, A5E02669003-02
    Указание
    Вставка и извлечение сигнальной платы, сигнальных и коммуникационных модулей при включенном устройстве невозможны. Единственным исключением является карта памяти SIMATIC, которая может быть вставлена и извлечена при включенном CPU.
    При стандартной конфигурации все цифровые и аналоговые входы и выходы обновляются синхронно с циклом с помощью внутренней области памяти, называемой образом процесса. Образ процесса содержит моментальное отображение физических входов и выходов (физических входов/выходов CPU, сигнальной платы и сигнальных модулей).
    CPU выполняет следующие задачи:
    ● CPU записывает выходы из области выходов образа процесса в физические выходы.
    ● CPU считывает физические входы непосредственно перед исполнением программы пользователя и сохраняет значения входов в области входов образа процесса. Это гарантирует, что эти значения во время исполнения команд пользователя останутся согласованными.
    ● CPU выполняет логику команд пользователя и обновляет значения выходов в области выходов образа процесса, вместо того чтобы записывать их в фактические физические выходы.
    Этот процесс обеспечивает согласованность логики в соответствующем цикле во время исполнения команд пользователя и предотвращает дрожание физических выходов, которое могло бы возникнуть из-за многократного изменения состояния выходов в образе процесса.
    Вы можете указать, должны ли сохраняться цифровые и аналоговые входы/выходы в образе процесса. Если вы вставляете модуль в отображение набора устройств, то его данные находятся в образе процесса CPU S7-1200 (по умолчанию). CPU автоматически выполняет обмен данными между модулем и образом процесса во время обновления образа процесса. Чтобы удалить цифровые или аналоговые входы или выходы из автоматического обновления образа процесса, выберите соответствующее устройство конфигурации устройств, обратитесь к вкладке Properties
    [Свойства], расширьте ее, если необходимо, чтобы желаемые входы и выходы, а затем выберите "IO addresses/HW identifier [Адреса входов/выходов/Идентификатор аппаратуры]". Затем измените запись для образа процесса "Process image:" вместо "Cyclic PI [Циклический образ процесса]" вставьте "---". Чтобы снова ввести входы и выходы в автоматическое обновление образа процесса, снова установите для этого параметра "Cyclic PI".
    При исполнении операции вы можете вы можете непосредственно считывать значения физических входов, а также непосредственно записывать значения в физические выходы. При непосредственном считывании происходит обращение к текущему состоянию физического входа. Область входов образа процесса при этом не обновляется, независимо от того, сконфигурирован ли этот вход для сохранения в образе процесса. При непосредственной записи в физический выход обновляется как область выходов образа процесса (если этот выход сконфигурирован для сохранения в образе процесса), так и физический выход. Добавьте окончание ":P" к адресу входа или выхода, если вы хотите, чтобы программа обращалась к данным ввода/вывода прямо через физический вход или выход, а не через образ процесса.

    Основы ПЛК
    3.1
    Исполнение программы пользователя
    Программируемый контроллер S7-1200
    Системное руководство, 11/2009, A5E02669003-02 41
    Конфигурирование параметров запуска
    С помощью свойств CPU вы можете настроить поведение CPU при запуске после выключения и последующего включения питания.
    Выберите состояние
    (STOP, RUN или последнее перед выключением питания), в которое будет переходить CPU после восстановления питания.
    Пояснения к рисунку: Startup – Запуск; Startup mode – Режим запуска; Warm restart – Теплый пуск; No restart
    (stay in STOP mode) – Нет запуска (оставаться в состоянии STOP); Warm restart –Operating mode before
    POWER OFF – Теплый пуск – Режим работы перед выключением питания.
    CPU выполняет теплый пуск перед переходом в режим RUN. При теплом пуске вся несохраняемая память сбрасывается на начальные значения по умолчанию, но текущие значения в сохраняемой памяти сохраняются.
    Указание
    CPU после загрузки всегда выполняет новый пуск
    Если вы загружаете в CPU какой-нибудь элемент вашего проекта (напр., программный блок, блок данных или аппаратную конфигурацию) CPU перед следующим переходом в режим RUN выполняет новый пуск. Наряду со стиранием входов, инициализацией выходов и инициализацией несохраняемой памяти при новом пуске инициализируются также и области сохраняемой памяти.
    После нового пуска, который следует за процессом загрузки, при всех последующих переходах из STOP в RUN выполняется теплый пуск (при этом сохраняемая память не инициализируется).

    Основы ПЛК
    3.1 Исполнение программы пользователя
    Программируемый контроллер S7-1200 42
    Системное руководство, 11/2009, A5E02669003-02
    3.1.1
    Режимы работы CPU
    CPU имеет три режима работы: режим STOP, режим STARTUP и режим RUN.
    Светодиоды состояния на передней стороне CPU показывают текущий режим работы.
    ● В режиме STOP CPU не выполняет программу, и вы можете загружать проект.
    ● В режиме STARTUP один раз выполняются OB запуска (если имеются). События, связанные с прерываниями, на этапе запуска режима RUN не обрабатываются.
    ● В режиме RUN многократно выполняется цикл сканирования. События, связанные с прерываниями, могут возникнуть и быть обработаны в любых точках внутри программного цикла.
    В режиме RUN нет возможности загрузить проект.
    CPU поддерживает теплый пуск для перехода в режим RUN. При теплом пуске не производится полное стирание памяти. При теплом пуске все несохраняемые системные и пользовательские данные инициализируются. Сохраняемые данные сохраняются.
    При полном стирании рабочая память, а также все сохраняемые и несохраняемые области памяти стираются, а загрузочная память копируется в рабочую. Полное стирание не очищает диагностический буфер или постоянно хранимые значения IP- адресов.
    Вы можете определить поведение CPU при запуске и вид запуска с помощью программного обеспечения. Эти настройки вы найдете в аппаратной конфигурации
    CPU под названием Startup [Запуск]. При запуске CPU проводит ряд диагностических проверок, а затем инициализацию системы. После этого CPU переключается в соответствующий режим запуска. Определенные ошибки препятствуют тому, чтобы
    CPU перешел в режим RUN. CPU поддерживает следующие режимы запуска:
    ● Режим STOP
    ● Переход в режим RUN после теплого пуска
    ● Переход в предыдущий режим после теплого пуска
    Пояснения к рисунку: Startup – Запуск; Startup mode – Режим запуска; Warm restart – Теплый пуск; No restart
    (stay in STOP mode) – Нет запуска (оставаться в состоянии STOP); Warm restart –Operating mode before
    POWER OFF – Теплый пуск – Режим работы перед выключением питания.
    Вы можете изменить текущий режим работы с помощью команд "STOP" и "RUN" в онлайновых инструментальных средствах программного обеспечения. Вы можете также включить в свою программу команду STP для перевода CPU в режим STOP. Это позволяет вам прервать выполнение вашей программы в зависимости от ее логики.
    В режиме STOP CPU обрабатывает коммуникационные запросы (по обстановке) и выполняет самодиагностику.
    В режиме STOP CPU не выполняет программу пользователя, и отсутствует автоматическое обновление образа процесса.

    Основы ПЛК
    3.1
    Исполнение программы пользователя
    Программируемый контроллер S7-1200
    Системное руководство, 11/2009, A5E02669003-02 43
    Вы можете загрузить свой проект только в том случае, если CPU находится в состоянии STOP.
    В режиме RUN CPU выполняет задачи, показанные на следующем рисунке.
    STARTUP [Запуск] RUN
    A
    Очищается область памяти входов (I)
    Область памяти Q записывается в физические выходы
    B
    Выходы инициализируются последним или заменяющим значением
    Состояние физических входов копируется в область памяти I
    C
    Исполняются OB запуска
    Исполняются OB программного цикла
    D
    Состояние физических входов копируется в область памяти входов
    (I)
    Выполняется самодиагностика
    E
    Все события, связанные с прерываниями, сохраняются в очереди ожидания для обработки в режиме RUN
    Во всех частях цикла обрабатываются прерывания и коммуникации
    F
    Активизируется запись области памяти выходов (Q) в физические выходы
    Обработка запуска (STARTUP)
    Всякий раз, когда режим работы изменяется со STOP на RUN, CPU стирает область входов образа процесса, инициализирует область выходов образа процесса и обрабатывает OB запуска. Все обращения команд на чтение к области входов образа процесса в OB запуска дают значение ноль, а не текущее значение физического входа. Поэтому, чтобы прочитать текущее состояние физического входа в режиме запуска, вы должны выполнить непосредственное чтение. Затем выполняются OB запуска и относящиеся к ним FC и FB. Если имеется несколько OB запуска, то они выполняются последовательно в соответствии с их номерами, начиная с OB с наименьшим номером.
    Каждый OB запуска содержит информацию о запуске, чтобы вы могли выяснить действительность сохраняемых данных и часов реального времени. Вы можете запрограммировать внутри OB запуска команды для проверки этих значений запуска и принятия соответствующих мер. OB запуска поддерживают следующие адреса запуска:
    Вход
    Тип
    данных
    Описание
    LostRetentive BOOL
    Этот бит принимает значение истина, если область хранения сохраняемых данных потеряна
    LostRTC BOOL
    Этот бит принимает значение истина, если потеряны часы реального времени

    Основы ПЛК
    3.1 Исполнение программы пользователя
    Программируемый контроллер S7-1200 44
    Системное руководство, 11/2009, A5E02669003-02
    Во время запуска CPU выполняет также следующие задачи.
    ● В фазе запуска прерывания ставятся в очередь, но не обрабатываются
    ● В фазе запуска отсутствует контроль времени цикла
    ● При запуске может быть изменена конфигурация модулей быстрых счетчиков (high- speed counter, HSC), широтно-импульсной модуляции (pulse-width modulation, PWM) и двухточечной связи (point-to-point communication, PtP)
    ● Фактическое функционирование модулей HSC, PWM и PtP происходит только в режиме RUN
    По окончании выполнения OB запуска CPU переходит в режим RUN и обрабатывает задачи управления в непрерывном цикле.
    Обработка цикла в режиме RUN
    В каждом цикле CPU производит запись в выходы, считывает входы, выполняет программу пользователя, обновляет коммуникационные модули, выполняет внутренние задачи обслуживания и отвечает на события, связанные с прерываниями пользователя, и коммуникационные запросы. Коммуникационные запросы регулярно обрабатываются в течение цикла.
    Эти действия (за исключением событий, связанных с прерываниями пользователя) непрерывно обрабатываются циклически. Активизированные события, связанные с прерываниями пользователя, обрабатываются в соответствии с приоритетом в том порядке, в котором они возникают.
    Система гарантирует, что цикл будет завершен за интервал времени, называемый максимальным временем цикла; в противном случае генерируется ошибка времени.
    ● Каждый цикл начинается опросом текущих значений цифровых и аналоговых выходов в образе процесса и записью этих значений в физические выходы CPU, SB и SM, которые сконфигурированы для автоматического обновления входов/выходов
    (конфигурация по умолчанию). Если команда обращается к физическому выходу, то обновляется как выход в образе процесса, так и сам физический выход.
    ● Цикл продолжается считыванием текущих значений цифровых и аналоговых входов из CPU, SB и SM, сконфигурированных для автоматического обновления входов/выходов (конфигурация по умолчанию), и последующей записью этих значений в образ процесса. Если команда обращается к физическому входу, то значение физического входа изменяется, но вход в образе процесса не обновляется.
    ● После считывания входов программа пользователя исполняется от первой до последней команды. Она включает в себя все OB программного цикла плюс все связанные с ними FC и FB. OB программного цикла выполняются постоянно в порядке номеров OB, начиная с OB с наименьшим номером.
    Обработка коммуникаций происходит периодически в течение цикла, прерывая, если это возможно, исполнение программы пользователя.
    К самодиагностике относятся периодические проверки системы и опрос состояния модулей ввода/вывода.
    Прерывания могут возникнуть в любой части цикла, они управляются событиями.
    Когда происходит событие, CPU прерывает выполнение цикла и вызывает OB, который был спроектирован для обработки этого события. Когда OB заканчивает обработку события, CPU возобновляет исполнение программы пользователя с места, в котором произошло прерывание.

    Основы ПЛК
    3.1
    Исполнение программы пользователя
    Программируемый контроллер S7-1200
    Системное руководство, 11/2009, A5E02669003-02 45
    Организационные блоки (OB)
    OB управляют исполнением программы пользователя. Каждый OB должен иметь уникальный номер. Некоторые номера ниже 200 зарезервированы для определенных
    OB. Все остальные OB должны обладать номерами больше 200.
    Исполнение организационного блока инициализируется определенными событиями в
    CPU. OB не могут вызывать друг друга или вызываться из FC или FB. Только стартовое событие, например, диагностическое прерывание или интервал времени, может запустить исполнение OB. CPU обрабатывает OB в соответствии с их классами приоритета, причем в первую очередь обрабатываются OB с боле высоким классом приоритета. Самым низким классом приоритета является 1 (для главного программного цикла), а наивысшим классом приоритета является 27 (для ошибок, связанных с временем).
    OB управляют следующими процессами:
    ● OB программного цикла исполняются циклически, когда CPU находится в режиме
    RUN. Основной блок программы является OB программного цикла. Он содержит команды для управления вашим приложением, и из него вызываются другие пользовательские блоки. Допустимы несколько OB программного цикла, они выполняются в порядке номеров. OB 1 является стандартным блоком. Другие OB программного цикла должны быть обозначены как OB 200 или выше.
    ● OB запуска выполняются один раз, когда режим работы CPU меняется из STOP в
    RUN, при запуске в режим RUN и в случае предписанного перехода из STOP в RUN.
    Затем начинается исполнение OB программного цикла. Допустимы несколько OB запуска. Стандартным блоком является OB 100. Все остальные OB должны иметь номера, начиная с 200.
    ● OB прерываний с задержкой исполняются с определенным запаздыванием после события, сконфигурированного в команде запуска прерывания (SRT_DINT). Время задержки указывается во входном параметре расширенной команды SRT_DINT. OB прерываний с задержкой прерывает нормальное исполнение циклической программы, когда истекает указанное время задержки. Вы можете сконфигурировать до 4 событий типа "Задержка времени" в любой момент, причем для каждого такого события допустим только один OB. OB прерываний с задержкой должен иметь номер 200 или выше.
    ● OB циклических прерываний исполняются через определенные интервалы времени. OB циклических прерываний прерывает исполнение циклической программы через интервалы, определенные пользователем, например, каждые 2 секунды. Вы можете сконфигурировать до 4 событий типа "Циклическое прерывание", причем для каждого такого события допустим только один OB. Этот
    OB должен иметь номер 200 или выше.
    ● OB аппаратных прерываний исполняются, когда происходит соответствующее событие в аппаратуре, например, нарастающий или падающий фронт на встроенном цифровом входе или событие, связанное с HSC. OB аппаратных прерываний прерывает нормальное исполнение циклической программы в ответ на сигнал от события в аппаратуре. Эти события определяются в свойствах конфигурации аппаратуры. Для каждого сконфигурированного события в аппаратуре допустим один OB. Этот OB должен иметь номер 200 или выше.
    ● OB ошибок времени исполняются при обнаружении такой ошибки. OB ошибок времени прерывает нормальное исполнение циклической программы, если превышено максимальное время цикла. Максимальное время цикла определяется в свойствах ПЛК. Для ошибок времени допустим исключительно OB 80. Вы можете определить, что должно произойти, если OB 80 отсутствует: игнорировать ошибку или перейти в STOP.
    ● OB диагностических прерываний исполняется, когда обнаруживается диагностируемая ошибка, и о ней поступает сообщение. OB диагностических прерываний прерывает нормальное исполнение циклической программы, если модуль, обладающий диагностическими свойствами, распознает ошибку (если диагностическое прерывание активизировано для этого модуля). Для диагностических прерываний допустим только OB 82. Если в программе нет OB 82, то вы можете настроить CPU, чтобы игнорировать ошибку или перейти в STOP.

    Основы ПЛК
    3.1 Исполнение программы пользователя
    Программируемый контроллер S7-1200 46
    Системное руководство, 11/2009, A5E02669003-02
    1   2   3   4   5   6   7   8   9   ...   40


    написать администратору сайта