Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
STEP7_V53_Programming_r.pdf
Скачиваний:
2
Добавлен:
29.05.2025
Размер:
5.18 Mб
Скачать

15Метка времени как свойство блока и конфликты меток времени

15.1Проверка совместимости блоков

Введение

Если интерфейс или код индивидуальных объектов адаптирован или расширен, это может привести к конфликтам меток времени. Конфликты меток времени могут привести к несовместимости между вызванными объектами или ссылающимися блоками и, следовательно, к большому числу исправлений.

Функция "Проверка совместимости блоков" облегчает исправления. Функция "Проверка совместимости блоков" исключает большую часть конфликтов меток времени и несовместимость блоков. Для объектов, где несовместимость блоков не исключается автоматически, функция находится в той позиции, которую Вы определили в редакторе, когда выполняли нужные изменения. Все несовместимые блоки исключаются и компиляция объекта проводится шаг за шагом.

Требования

Если возможно, проверьте совместимость блоков для проектов, созданных в STEP 7 V5.0, Service Pack 3. Для других проектов, Вы должны сначала откомпилировать каждый из них, когда запускаете проверку совместимости

(команда меню Program > Compile All).

Для объектов, созданных в дополнительных пакетах, пакеты должны быть инсталлированы для проверки совместимости.

Запуск проверки совместимости блоков

При запуске проверки совместимости блоков проверяются метки времени интерфейсов блока и объекты, которые могут привести к несовместимости блоков тремя способами (Дерево зависимости: References / Call Tree).

1.В SIMATIC Manager, идите в окно проекта, выберите нужную папку блока и затем инициируйте совместимость блока через команду меню Edit >

Check Block Consistency [Редактировать > Проверка совместимости блоков].

2.В "Проверке совместимости блоков" выберите команду меню Program >

Compile [Программа > Компилировать].

STEP 7 автоматически распознает язык программирования для соответствующих объектов и вызывает нужный редактор. Настолько возможно, конфликт меток времени и несовместимость блоков исправляется автоматически и объекты компилируются. Если конфликт

Программирование с помощью STEP 7 v5.3

15-1

A5E00261405-01

Error! Style not defined.

меток времени или несовместимость нельзя исправить автоматически, появляется сообщение об ошибке в окне выхода (обратитесь к шагу 3 для дальнейших действий). Этот процесс повторяется автоматически для всех объектов в дереве просмотра.

3.Если невозможно исправить несовместимость блоков автоматически в течение процесса компиляции, соответствующие объекты маркируются в окне выхода как сообщение об ошибках. Расположите курсор на сообщении об ошибках и используйте правую кнопку мыши для вызова экрана ошибки в выпадающем меню. Откроется соответствующая ошибка и программа перейдет в измененную позицию. Исправьте все несовместимые блоки, сохраните и закройте объект. Повторите этот процесс для всех выделенных объектов.

4.Повторите Шаг 2 и 3 снова. Повторяйте этот процесс до тех пор, пока не исправите все ошибки, показанные в окне сообщений.

15.2Метка времени как свойство блока и конфликты меток времени

Блоки содержат метку времени кода и метку времени интерфейса. Эти метки времени отображаются в диалоговом окне свойств блока. С помощью этих меток Вы можете контролировать непротиворечивость программ STEP 7.

STEP 7 отображает конфликт меток времени, если при сравнении меток времени он обнаруживает нарушение правил. Могут произойти следующие нарушения:

вызываемый блок является более новым, чем вызывающий блок (CALL)

блок, на который ссылаются, является более новым, чем блок, который его использует

Примеры нарушений второго типа:

UDT является более новым, чем блок, который его использует, т. е. DB, или другой UDT, или FC, или FB, или OB, который использует UDT в таблице описания переменных.

FB является более новым, чем соответствующий экземплярный DB.

FB2 определен как мультиэкземпляр в FB1, и FB2 является более новым,

чем FB1.

Замечание

Даже если соотношение между метками времени интерфейсов правильно, могут возникнуть противоречия:

Определение интерфейса для блока, на который производится ссылка, не соответствует определению в том месте, где он используется.

Эти противоречия известны как конфликты интерфейсов. Они могут возникнуть, например, когда блоки копируются из разных программ или когда при компиляции исходного файла в формате ASCII не все блоки в программе оказываются сгенерированными.

15-2

Программирование с помощью STEP 7 v5.3

A5E00261405-01

Отображение справочных данных

15.3Метки времени в логических блоках

Метка времени кода

Здесь вводятся время и дата создания блока. Эта метка времени обновляется:

когда изменяется код программы

когда изменяется описание интерфейса

когда изменяется комментарий

когда в первый раз создается и компилируется исходный ASCII-файл

когда изменяются свойства блока (диалоговое окно "Properties [Свойства]")

Метка времени интерфейса

Эта метка времени обновляется:

когда изменяется описание интерфейса (изменения типов данных или начальных значений, новые параметры)

когда в первый раз создается и компилируется исходный ASCII-файл, если интерфейс изменяется структурно

Эта метка времени не обновляется:

когда изменяются символы

когда изменяется комментарии в описании переменных

когда производятся изменения в области TEMP

Правила для вызовов блоков

Метка времени интерфейса вызываемого блока должна быть старше метки времени вызывающего блока.

Изменяйте интерфейс блока только в том случае, если не открыт ни один блок, который вызывает данный блок. В противном случае, если Вы сохраняете вызывающие блоки позднее, чем измененный блок, Вы не сможете распознать это противоречие из метки времени.

Последовательность действий при возникновении конфликта меток времени

Конфликт меток времени отображается, когда открывается вызывающий блок. После выполнения изменений в интерфейсе FB или FC все обращения к этому блоку в вызывающих блоках показываются в расширенной форме.

Если интерфейс блока был изменен, все блоки, вызывающие этот блок, также должны быть скорректированы.

После выполнения изменений в интерфейсе FB должны быть обновлены существующие определения мультиэкземпляров и экземплярные блоки данных.

Программирование с помощью STEP 7 v5.3

15-3

A5E00261405-01

Error! Style not defined.

15.4Метки времени в глобальных блоках данных

Метка времени кода

Эта метка времени обновляется:

когда исходный ASCII-файл создается в первый раз

когда исходный ASCII-файл компилируется

когда выполняются изменения в отображении описаний или в отображении данных блока

Метка времени интерфейса

Эта метка времени обновляется:

когда изменяется описание интерфейса в отображении описаний (изменения типов данных или начальных значений, новые параметры)

15.5Метки времени в экземплярных блоках данных

Экземплярный блок данных сохраняет формальные параметры и статические данные для функциональных блоков.

Метка времени кода

Здесь вводятся время и дата создания экземплярных блоков данных. Метка времени обновляется, когда Вы вводите текущие значения в отображении данных экземплярного блока данных. Пользователь не может изменить структуру экземплярного блока данных, так как эта структура получается из соответствующего функционального блока (FB) или системного функционального блока (SFB).

Метка времени интерфейса

При создании экземплярного блока данных вводится метка времени интерфейса соответствующего FB или SFB.

15-4

Программирование с помощью STEP 7 v5.3

A5E00261405-01