Главная страница
qrcode

Предисловие Краткий обзор содержания книги


Скачать 12.75 Mb.
НазваниеПредисловие Краткий обзор содержания книги
Дата24.10.2019
Размер12.75 Mb.
Формат файлаpdf
Имя файлаBerger_Step7-STLSCL_r.pdf
оригинальный pdf просмотр
ТипУказатель
#38220
страница14 из 87
Каталог
1   ...   10   11   12   13   14   15   16   17   ...   87
Блоки данных в интерактивном (online) и автономном (offline) режимах
Адресам данных в блоке данных могут быть назначены начальные значения
(initial value) и фактические значения (actual value) (см. раздел 3.6
"Программирование блоков данных"). Если блок данных загружен в CPU, то начальные (initial) значения пересылаются в загрузочную (load) память, а фактические значения (actual) пересылаются в рабочую (work) память.
Каждое изменение значения в соответствии с адресацией данных в программе предопределяет изменение соответствующего фактического значения.
Если Вы выгружаете блок данных из CPU, значения данных блока берутся из рабочей (work) памяти, в которой хранятся все фактические (actual) значения данных. Вы можете наблюдать фактические (actual) значения данных во время их считывания с помощью опций меню: View -> Data View (Вид -> Вид
данных). Если Вы модифицируете фактические (actual) значения данных в блоке данных, а затем вновь записываете блок в CPU, то модифицированные значения поступают в рабочую (work) память.
Если в качестве загрузочной (load) используется модуль памяти типа флэш
EPROM, то блоки из модуля памяти переносятся в рабочую (work) память после сброса памяти CPU. При этом блок памяти сохраняет первоначально запрограммированные в нем значения данных. То же самое происходит при включении питания при отключенной резервной батарее. Для S7-300 Вы можете предотвратить загрузку первоначальных значений данных, если Вы объявите эти области данных реманентными (retentive)
Блок данных, созданный с активированным свойством "UNLINKED"
("несвязанный"), не переносится в рабочую (work) память; он остается в загрузочной (load) памяти. Блок данных с активированным свойством "UNLINKED" ("несвязанный") может быть считан только с помощью функции
SFC 20 BLKMOV.
2.7 Тестирование программы
После выполнения соединения с CPU и загрузки пользовательской программы Вы можете тестировать (отлаживать) программу в целом или по частям, отдельными блоками. Необходимо инициализировать переменные значениями, определенными, например, с помощью модулей симулятора, и оценить информацию отклика, полученного программой в виде значений данных. Если в результате ошибки CPU переходит в состояние STOP, Вы можете использовать, в частности, информацию о CPU.
Большие программы обычно отлаживаются по частям. Если Вам, например, необходимо отлаживать один блок, то загрузите этот блок в CPU и вызовите его в организационном блоке OB1. Если блок OB1 построен таким образом, что программа может быть отлажена фрагмент за фрагментом от начала до конца, то Вы можете выбирать для отладки отдельные блоки или фрагменты программы, используя функции перехода, чтобы миновать разделы,
2. Программное обеспечение STEP 7
Automating with STEP 7 in STL and SCL
2- 53
Автоматизация посредством STEP 7 с использованием STL и SCL
не нуждающиеся в отладке.
С помощью опционного (поставляемого по отдельному заказу) программного обеспечения PLCSIM, Вы можете моделировать CPU в программаторе PG и таким образом отлаживать Вашу программу без дополнительного оборудования.
2.7.1 Диагностика оборудования
В случае отказа Вы можете считать диагностическую информацию из отказавших модулей с помощью функции диагностики оборудования "Diagnose Hardware". Для этого Вам сначала необходимо подключить программатор PG к MPI-шине и запустить утилиту SIMATIC Manager.
Если проект, связанный с конфигурацией установки, доступен в базе данных программатора PG, то откройте интерактивное (online) окно проекта с помощью опций меню: View -> Online (Вид - Интерактивный режим). В противном случае выберите опции: PLC -> Display Accessible Nodes (PLC -
Отобразить доступные узлы) и затем выберите CPU.
Теперь Вы можете получить краткий обзор сбойных модулей с помощью опций: PLC -> Diagnose Hardware (PLC - Диагностика оборудования) (по умолчанию). Утилита конфигурирования оборудования Hardware Configuration поддерживает функцию детальной диагностической информации о модулях при интерактивном режиме; этот режим устанавливается в утилите SIMATIC
Manager на вкладке "View" ("Вид") при выборе опций меню: Options ->
Customize (Опции -> Установки пользователя).
Вы можете получить информацию о состоянии (status) и рабочем состоянии
(operating state) модулей, доступных в интерактивном режиме, в форме отображения проекта (project view - отображение станций проекта, сообщающих об ошибках), в форме отображения станции (station view - отображение модулей станции, сообщающих об ошибках) и в форме отображения модуля (module view - отображение соответствующей диагностической информации).
2.7.2 Определение причины перехода в состояние STOP
Если CPU переходит в состояние STOP из-за ошибки, первое, что нужно сделать для определения причины перехода в это состояние, - это вывести для чтения содержимое диагностического буфера. CPU вводит в диагностический буфер все сообщения, в том числе, сообщение о причине перехода в состояние STOP и сообщения об ошибках, которые привели к этому.
Для вывода содержимое диагностического буфера переключите программатор PG в интерактивный (online) режим, выберите S7-программу и активируйте вкладку Diagnostics Buffer (Диагностический буфер) с помощью опций меню: PLC -> Module Information (PLC -> Информация о модуле).
Последнее событие из буфера (первое событие имеет номер 1) и есть причина перехода CPU в состояние STOP, например, "STOP because programming error OB not loaded" ("Состояние STOP из-за ошибки программы - блок ОВ не загружен").
2. Программное обеспечение STEP 7 2- 54
Automating with STEP 7 in STL and SCL
Автоматизация посредством STEP 7 с использованием STL и SCL
Ошибка, которая привела к переходу CPU в состояние STOP, описана в предыдущем сообщении, например: "FC not loaded" ("FC не загружен").
Щелчком на номере сообщения Вы можете вывести на экран дополнительный комментарий в следующем нижнем поле экрана. Если сообщение касается ошибок программирования в блоке, Вы сможете открыть и отредактировать тот блок, нажав кнопку "Open Block" ("Открыть блок").
Если, например, причиной перехода CPU в состояние STOP является ошибка программирования, Вы можете установить "обстоятельства окружения" фрагмента программы, содержащего ошибку, с помощью вкладки "Stacks"
("Стеки"). Когда Вы откроете вкладку "Stacks" ("Стеки"), Вы увидите B-стек
(block stack - стек блоков), который показывает расположение вызова всех незавершенных блоков вплоть до блока, в котором находится точка прерывания. Используя кнопку "I stack", Вы получите данные стека прерываний (interrupt stack), показывающего содержание регистров CPU
(аккумуляторов, адресного регистра, регистра блока данных, слово состояния) в точке прерывания в тот момент, когда произошла ошибка.
Используя кнопку "L stack" (local data stack - стек локальных данных), Вы получите доступ к локальным данным блока, который можно выбрать в окне
B-стека. Перейти к окну B-стека можно с помощью щелчка манипулятора "мышь" на соответствующей кнопке.
2.7.3 Мониторинг и модификация переменных (Monitoring and
Modifying Variables)
Есть замечательное средство для отладки пользовательской программы - функция для мониторинга и модификации переменных (Monitoring and
Modifying of Variables), использующая VAT-таблицу (таблицу размещения переменных). Состояния сигналов или значения переменных простых типов данных могут быть отображены с помощью этого средства. При наличии доступа к пользовательской программе Вы можете также модифицировать переменные, т.е. изменять состояния сигналов или назначать новые значения.
Предупреждение: Вы должны избегать опасных состояний в Вашей
установке, могущих возникать при изменении значений переменных!
Создание таблицы переменных
Для того, чтобы использовать функцию для мониторинга и модификации переменных (Monitoring and Modifying of Variables), Вы должны создать VATтаблицу (таблицу размещения переменных), содержащую переменные и форматы соответствующих данных. Вы можете генерировать до 255 таблиц переменных (VAT1 … VAT255) и назначить им имена в таблице символов
(Symbol Table). Максимальный размер VAT-таблицы составляет 1024 строки с содержанием до 255 символов (см. рис. 2.11).
Вы можете создать VAT-таблицу автономно (offline), выбрав пользовательскую программу Blocks (Блоки), а затем опции меню: PLC ->
Monitor/Modify Variables (PLC -> Мониторинг/модификация переменных).
Вы можете определять переменные с помощью абсолютной или символьной адресации и выбрать для них тип данных (формат отображения переменной).
2. Программное обеспечение STEP 7
Automating with STEP 7 in STL and SCL
2- 55
Автоматизация посредством STEP 7 с использованием STL и SCL
Для изменения выберите строки, затем: View -> Display Format (Вид ->
Отобразить формат), или просто щелкните правой кнопкой мыши на заголовке столбца "Display Format" ("Отобразить формат").
Рис. 2.11 Пример таблицы переменных (Variable Table)
Используйте строки комментариев для разделения таблицы на отдельные секции и придания отдельным частям таблицы заголовков. Вы можете также определять вид таблицы, а именно, какие столбцы должны быть отображены.
В любое время Вы можете изменить переменные или формат их отображения, добавить или удалить строки таблицы. Таблица переменных должна быть сохранена в каталоге объекта Blocks (Блоки) с помощью опций:
Table -> Save (Таблица -> Сохранить).
Установление интерактивного (online) соединения
Для работы с VAT-таблицей, которая была создана автономно (offline), переключите ее в интерактивный режим с помощью опций меню: PLC ->
Connect To … (PLC -> Подключить к …). Вы должны переключать в интерактивный режим каждую таблицу отдельно, а после работы с таблицей - отключать это соединение с помощью опций: PLC -> Disconnect (PLC ->
Разъединить) .
Условия запуска (Trigger conditions)
В таблице переменных выберите опции меню: Variable -> Trigger (Переменная
-> Запуск) для установки точки запуска (trigger point) и условий запуска (trigger conditions) отдельно для функций мониторинга и модификации. Точка запуска
(trigger point) - это такая точка, в которой CPU считывает значения из системной памяти или записывает значения в системную память.
2. Программное обеспечение STEP 7 2- 56
Automating with STEP 7 in STL and SCL
Автоматизация посредством STEP 7 с использованием STL и SCL
Вы должны определить, будет ли считывание или запись происходить один раз или будет периодическим.
Если для функции мониторинга и модификации имеются одинаковые условия запуска, то функция мониторинга будет выполняться до функции модификации. Если Вы выбрали для функции модификации точку запуска "Start of cycle" ("Начало цикла"), то переменные будут модифицированы после обновления отображения входов процесса и перед вызовом блока OB
1. Если Вы выбрали для функции мониторинга точку запуска "End of cycle"
("Конец цикла"), то состояния переменных будут выведены после завершения
OB1 и перед установкой выходов в соответствии с отображением выходов процесса.
Мониторинг переменных (Monitoring of Variables)
Для выбора функции мониторинга используйте опции меню: Variable ->
Monitor (Переменная -> Мониторинг).Переменные из VAT-таблицы обновляются в соответствии с определенными условиями запуска.
Постоянный мониторинг позволит Вам следить за изменениями значений переменных на экране. Значения отображаются в формате данных, который
Вы задаете в столбце Display Format (Формат отображения). Закончить непрерывный процесс мониторинга позволяет кнопка Esc.
Использование опций: Variable -> Update Monitor Values (Переменная ->
Обновить отслеживаемые значения) позволяет однократно обновить наблюдаемые переменные, причем это обновление происходит мгновенно и не зависит от заданных условий запуска.
Модификации переменных (Modifying of Variables)
Для выбора функции модификации переменных (для пересылки в CPU измененных значений переменных) в соответствии с заданными условиями запуска используйте опции меню: Variable -> Modify (Переменная ->
Модификация).Вводите модифицированные значения только в те строки
VAT-таблицы, в которых содержатся переменные, которые нужно изменить.
Вы можете распространить комментарий на значение ("закомментировать" значение переменной) с помощью символов "//" или с помощью опций:
Variable -> Modify Value Valid (Переменная -> Модификация значения
разрешена); такие значения не берутся в расчет при модификации переменных. Значения отображаются в формате данных, который Вы задаете в столбце Display Format (Формат отображения). Закончить непрерывный процесс модификации можно с помощью кнопки Esc.
Использование опций: Variable -> Activate Modify Values (Переменная ->
Активировать
модификацию
значений)
позволяет однократно модифицировать переменные, причем это происходит мгновенно и не зависит от заданных условий запуска.
2.7.4 Форсирование переменных (Forcing Variables)
Отдельные типы CPU позволяют использовать особую функцию форсирование переменных (Forcing Variables), заключающуюся в том, что Вы с ее помощью можете задавать фиксированные значения некоторым переменным.
2. Программное обеспечение STEP 7
Automating with STEP 7 in STL and SCL
2- 57
Автоматизация посредством STEP 7 с использованием STL и SCL
При этом пользовательская программа не сможет изменить эти значения.
Форсирование разрешено для любого режима CPU и выполняется немедленно после запуска функции.
Предупреждение: Вы должны избегать опасных состояний в Вашей
установке, могущих возникнуть при форсировании значений переменных!
Отправной точкой для форсирования переменных является VAT-таблица. Вы должны создать VAT-таблицу, после этого - задать адреса, для которых требуется форсирование значений.
Затем необходимо установить соединение с CPU. Вы можете открыть окно, содержащее форсируемые значения, выбрав опции меню: Variable -> Display Force Values (Переменная -
> Отобразить форсированные значения).
Если форсированные значения уже активны в CPU, это отображается в окне функции форсирования (force window) с помощью выделенного шрифта. Вы можете теперь перенести некоторые или все адреса из таблицы переменных в окно функции форсирования или внести в этом окне новые адреса. После определения переменных для форсирования значений Вы должны сохранить содержание окна функции форсирования с помощью опций меню: Table ->
Save As (Таблица -> Сохранить как).
Функция форсирования значений может быть использована для следующих адресных областей:
•Входы I (отображение процесса)
[S7-300 и S7-400]
•Выходы Q (отображение процесса)
[S7-300 и S7-400]
•Периферийные входы PI
[только S7-400]
•Периферийные выходы PQ
[S7-300 и S7-400]
•Меркеры М
[только S7-400]
Вы можете запустить функцию форсирования с помощью опций меню:
Variable -> Force (Переменная -> Активировать форсирование значений).
CPU использует форсированные значения для заданных переменных и не разрешает в дальнейшем изменять значения этих переменных.
Пока активна функция форсирования:
•Все попытки чтения по адресу форсированной переменной из пользовательской программы (например, load [загрузить]) и из системной программы (например, обновление образа процесса) всегда оканчиваются с одним результатом: величина переменной соответствует форсированному значению.
•В S7-400 все попытки записи по адресу форсированной переменной из пользовательской программы (например, transfer [переслать]) и из системной программы (например, посредством SFC) всегда оканчиваются без результата: изменения переменной запрещены. В S7-300 из пользовательской программы можно изменить ранее форсированное значение переменной.
2. Программное обеспечение STEP 7 2- 58
Automating with STEP 7 in STL and SCL
Автоматизация посредством STEP 7 с использованием STL и SCL
Функция форсирования переменных в S7-300 соответствует функции модификации в циклическом режиме: после обновления отображения входов процесса CPU перезаписывает входы форсированными значениями; перед установкой выходов процесса в соответствии с отображением выходов процесса CPU перезаписывает последние форсированными значениями.
Примечание: функция форсирования не завершается с закрытием окна
функции форсирования, таблицы переменных или при разрыве связи с CPU!
Остановить работу функции форсирования переменных можно, если
только Вы используете опции меню: Variable -> Delete Force (Переменные ->
Отменить функцию форсирования).
Функция форсирования также может быть остановлена, если выполнить сброс памяти или выключить (перевключить) питание, при условии, что CPU не имеет резервной батареи питания.
Если функция форсирования остановлена, соответствующие адреса продолжают содержать форсированные значения до тех пор, пока они не будут изменены или из пользовательской, или из системной программы.
Функция форсирования имеет стабильный эффект только для изменения I/O в CPU. Если после перезапуска форсированные PI и PQ больше не назначаются (например, в результате новой параметризации), то эти PI и PQ не поддерживают форсированные значения.
Обработка ошибок
Если при считывании оказывается, что "ширина доступа" (access width) больше, чем размер форсируемых данных (например, форсируется байт
[byte] в слове [word]), то не форсируемая часть значения адреса считывается как обычно. Если при этом происходит ошибка синхронизации (ошибка доступа или ошибка длины данных [access or area length error]), то программой пользователя или CPU фиксируется "ошибка вставки значения"
["error substitute value"] или же CPU переходит в состояние STOP.
Если при записи оказывается, что "ширина доступа" (access width) больше, чем размер форсируемых данных (например, форсируется байт [byte] в слове
[word]), то не форсируемая часть значения адреса записывается как обычно.
При подобной ошибке доступа при записи форсированный компонент адреса остается неизменным, то есть защита от записи (write protection) не отменяется ошибкой синхронизации (synchronization error).
Считывание (loading) форсированных периферийных выходов дает в результате форсированные значения. Если "ширина доступа" (access width) соответствует размеру форсируемых данных, входные модули, которые вставляются в стойку взамен отказавших или для расширения, могут получить форсированные значения.
Вход I в образе процесса, связанный с форсированным периферийным входом PI, не форсируется; заранее он не определен и может быть переопределен. При обновлении образа процесса данный вход получает форсированное значение периферийного входа.
При форсировании периферийных выходов PQ связанный выход Q в образе процесса не обновляется и не форсируется (форсирование действует только "внешне" ["externally"] на выходы модуля). Значения выходов сохраняются и могут быть перезаписаны; считывание с выходов показывает записанные значения (не форсированные значения). Если выходной модуль форсирован,
2. Программное обеспечение STEP 7
Automating with STEP 7 in STL and SCL
2- 59
Автоматизация посредством STEP 7 с использованием STL и SCL
и если потом этот модуль отказал или удален, то он будет вновь принимать форсированные значения, когда он будет вновь включен в стойку в работоспособном состоянии.
Выходные модули выводят состояние сигнала "0" или предустановленное значение (substitute value) по OD сигналу (блокировка выходных модулей в режимах STOP [стоп], HOLD [пауза] и RESTART [перезапуск]) - даже если периферийные выходы форсированы (исключение составляют аналоговые модули без распознавания сигнала OD, которые продолжают выдавать на выход форсированное значение сигнала). Если сигнал OD выключен, функция форсирования вновь продолжает действовать.
Если в режиме STOP активирована функция Enable PQ (Разблокировать
PQ), то форсированные значения также имеют эффект в режиме STOP
(благодаря деактивации OD-сигнала). Кода действие функции Enable PQ
(Разблокировать PQ) прекращается, модули вновь переходят в безопасное
("safe") состояние (состояние сигнала "0" или предустановленное значение
[substitute value]); при этом форсированное значение выхода вновь становится действительным при переходе в режим RUN.
1   ...   10   11   12   13   14   15   16   17   ...   87

перейти в каталог файлов


связь с админом