По просьбе наших посетителей, данный материал перенесен с сайта plc4good.org.ua, в связи с полной его потерей. Всё возражения принимаются через форму обратной связи.
plc4good.org.ua/view_post.php?id=70
Данная интересная системная функция используется в FC630 (описание в конце материала), при помощи которой можно программно увеличить текущее время цикла контроллера S7-300, для того чтобы при очень коротком времени цикла CPU, увеличить время коммуникации с HMI.
Интересно еще и то, что при открытии FC630 в STL редакторе, не позволяет себя сохранить, подсвечивая вызовы SFC красными. Ошибка при этом звучит так: ‘ No PLC type description found for called or addressed block SFC 65025’ .
Соответственно использовать непосредственно SFC65025 без FC630 не представляется возможным. Еще это значит, что для написания этой функции использовался редактор STL, отличающийся от стандартного редактора.
Судя по параметрам функции SFC65025 – она предназначена не только для увеличения времени цикла, а возможно предоставляет универсальный доступ к некоторой системной области памяти, зная структуру которой можно влиять на работу операционной системы контроллера.
Учитывая что применение функции FC630 разрешено только на firmware версий V2.3.2 / V2.1.6 / V2.0.10 можно предположить что недокументированные SFC появились относительно недавно.
Ниже приведен перевод статьи с официального сайта о работе с функцией FC630
Дата материала: 2008-09-22
Описание:
Благодаря постоянным инновациям, производительность контроллеров возросла в пять-десять раз в течение последних трех лет. Времена цикла контроллеров стали все более короткими. Времена циклов S7-300 контроллеров, например, часто лежат между 9мс и 16мс.
Время для связи с устройствами HMI поэтому становятся все короче, потому что только определенный процент от всего времени цикла используется для коммуникаций. Минимальная доля времени, которое процессор использует для связи, является как минимум около 3,5% от времени цикла 15мс.FC630 функция повышает эффективность обмена с HMI. SFC вызываемеая в FC630, увеличивает время назначенное на обмен с HMI в соответствии с значением параметра TSX:
- TSx = 0: восстанавливает начальное состояние
- TSx = 1: значение по умолчанию
- TSx = 8: увеличивает время цикла CPU приблизительно на 50%
Обработка RET_VAL:
- 0000: нет ошибок, фактор времени корректен и принят.
- 800x: ошибка, блок должен быть перезапущен.
Корректный фактор времени эффективен без модификаций до выключения питания.
”HMI” задача:
Программа CPU выполняется в различных задачах (подпрограммах). В ”задаче HMI”, связь процессора с устройствами HMI управляется операционной системой (сбор данных, обработка данных, передачи данных и выборки данных). ”Задача HMI” имеет определенную часть цикла отведенное ей. Если это время истекает, ”задача HMI” прерывается и процессор продолжает свою циклическую программу обработки. ”Задача HMI” может быть прервана более высокими приоритетными задачами. Задачи более приоритетные, включают, например, временные прерывания и т.д.Важно:
FC630 не может быть использована в S7-400 процессорах, потому что нет необходимой встроенной поддержки. Кроме того, раз HMI ответ не может быть сокращен, так как ”задача HMI” уже имеет второй приоритет по важности в S7-400 процессорах.
Разница между FC630 и настройкой в свойствах процессора (цикл нагрузки с помощью коммуникации):В свойствах процессоров есть также параметр ”Цикл нагрузки через связи”. Этот параметр влияет только на движение сообщений процессора. FC630 действует раньше на сбор и обработку данных, поэтому S7-цикл 300 процессора может значительно расшириться, если FC630 не будет обрабатывается должным образом.Протоколы, для которых можно использовать FC630:
Вы можете использовать FC630 для связи по
- MPI
- PROFIBUS
- PROFINET
Требования перед использованием FC630:
Поскольку неправильное применение FC630 может привести к сбоям, в частности, время цикла процессора может возрасти неограниченно, вы должны проверить следующее перед использованием FC630.
- Какое время цикла вашего процессора? Функция особенно применима для цикла между 9ms и 16ms, так как доля времени, используемый для связи является как минимум около 3,5% от времени цикла 15 мс. Доля времени, используемая для связи с циклом около 32ms минимум около 4,8%. Именно поэтому она применима для циклов с временем между 25 мс и 32ms. Обычно функция не применима для цикла больше, чем 50 мс. Тем не менее, является ли она применима всегда зависит от вашей системы (число устройств HMI, количество тегов опрошенных …).
- Есть ли критические подпроцессы в системе, которые не допускают увеличения времени цикла? Если это так, вы также можете проверить, соответствует ли время критических подпроцессов может контролироваться с помощью циклического прерывания. Следует отметить, что циклические прерывания прерывают ”задачу HMI”, при вызове и таким образом влияют на производительность HMI.
Вы можете использовать функцию FC630 с S7-300 процессорами и C7 устройствами. Возможность применения FC630 зависит от типа процессора и версии микропрограммы.
Источники:
Проект с функцией – P_FC630.zip ( 30 KB ) – удалено.
Официальная статья – support.automation.siemens.com
спасибо camelkrak обратившему внимание на тему – plc.net.ru
Оцените статью!