Сопровождение, диагностика и техническое обслуживание автоматизированных систем управления технологическими процессами н...
347 downloads
565 Views
2MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Сопровождение, диагностика и техническое обслуживание автоматизированных систем управления технологическими процессами на основе программируемых логических контроллеров S7 фирмы Siemens Учебно-методическое пособие
Новокузнецк 2010
АВТОР: Романов В. П., преподаватель высшей квалификационной категории НОУ «РЦПП «Евраз - Сибирь» .
РЕЦЕНЗЕНТ:
Зав. кафедрой «Автоматизация и информационные системы» ФГОУ ВПО «СибГИУ» доктор технических наук, профессор Кулаков С. М.
Методическое пособие разработано в соответствии с рабочей программой курса «Сопровождение автоматизированных систем управления технологическими процессами (АСУ ТП) построенных на основе программируемых контроллеров Simatic S7». В методическом пособии представлены перечень и методика использования встроенных средств диагностики, тестирования и отладки программ управления технологическими процессами построенных на основе программируемых контроллеров Simatic S7. Освоение методов диагностики и ТО АСУ ТП построенных на основе программируемых контроллеров Simatic S7 позволит эксплуатирующему персоналу, не привлекая специалистов сервисных служб, существенно сократить время простоя оборудования в результате нарушений в его работе и тем самым повысить эффективность использования оборудования в целом.
Табл. 9. Ил. 33. Библиогр.: 5 назв.
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
2
Оглавление Введение ..................................................................................................................................................... 4 Диагностика системы (общие сведения)................................................................................................. 5 Встроенные диагностические средства системы..................................................................................... 6 Диагностика с помощью светодиодов.................................................................................................. 6 Обзор инструментов отладки ................................................................................................................ 9 Обнаружение системных ошибок (системная диагностика) .............................................................. 9 Диагностический буфер ................................................................................................................... 10 Диагностика с использованием стеков I, В, L ................................................................................. 12 Отображение диагностики оборудования (Hardware Diagnostics) .............................................. 14 Наблюдение и модифицирование переменных ........................................................................... 16 Принудительная установка переменных (функция Force)............................................................ 17 Изменение выходов в состоянии «Stop»........................................................................................ 18 Статус программы LAD/FBD ............................................................................................................. 19 Управление переменными в режиме статуса программы ........................................................... 21 Функция "Go To Location"................................................................................................................. 21 Точки останова.................................................................................................................................. 22 Поиск логических ошибок................................................................................................................ 23 Сравнение блоков............................................................................................................................. 25 Блоки ошибок.................................................................................................................................... 26 Программные средства обработки ошибок................................................................................... 26 Вывод сообщений (функция CPU Messages) .................................................................................. 29 Перекомпоновка программы .......................................................................................................... 29 Диагностика............................................................................................................................................... 32 Диагностика в состоянии STOP ........................................................................................................ 33 Проверка времен цикла сканирования во избежание временных ошибок ............................... 33 Техническое обслуживание ..................................................................................................................... 35 Сохранение операционной системы .................................................................................................. 35 Обновление операционной системы.................................................................................................. 35 Замена модулей.................................................................................................................................... 36 Замена буферной батареи или аккумулятора (только для CPU с МС) ............................................. 38 Замена предохранителей цифровых выходов................................................................................... 38 Литература................................................................................................................................................. 39
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
3
Введение Ускорение научно-технического прогресса и интенсификация производства невозможны без применения средств автоматизации. Характерной особенностью современного этапа автоматизации состоит в том, что она опирается на революцию в вычислительной технике, на самое широкое использование микропроцессорных контроллеров, а также на быстрое развитие робототехники, гибких производственных систем, интегрированных систем проектирования и управления, SCADA-систем. Применение современных средств и систем автоматизации позволяет решать следующие задачи: вести процесс с производительностью, максимально достижимой для данных производительных сил, автоматически учитывая непрерывные изменения технологических параметров, свойств исходных материалов, изменений в окружающей среде, ошибки операторов; управлять процессом, постоянно учитывая динамику производственного плана для номенклатуры выпускаемой продукции путем оперативной перестройки режимов технологического оборудования, перераспределения работ на однотипном оборудовании и т. п.; автоматически управлять процессами в условиях вредных или опасных для человека. Широкое применение систем автоматизации привело с одной стороны к существенному сокращению количества работников занятых в производстве, а с другой стоны повысила роль персонала занятого обслуживанием и сопровождением систем автоматизации, так как в виду очень высокой производительности автоматизированных систем даже не большой по времени простой системы приводит к существенным экономическим потерям. Решение данной проблемы предусматривает целый комплекс вопросов по сопровождению, диагностированию и техническому обслуживанию систем автоматизации технологических процессов. В данном учебном пособии рассматриваются встроенные средств отладки и диагностирования АСУ ТП построенных на основе программируемых контроллеров Simatic S7 и представлена методика и алгоритм их применения.
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
4
Диагностика системы (общие сведения) На этапе ввода системы в эксплуатацию особенно часто могут возникать ошибки, локализация которых требует больших затрат времени, так как они равным образом вероятны в аппаратном и программном обеспечении. Функции контроля Диагностика очень важна при работе системы (установки). Диагностика обычно вызывается в случае, если неисправность или другая проблема приводит к остановке машины или ее неправильному функционированию. Для снижения затрат от простоя оборудования или его неправильного функционирования, ошибка должна быть быстро обнаружена, оценена и устранена. Неисправности при текущей эксплуатации объясняются почти исключительно ошибками и повреждениями в аппаратуре. Категории ошибок Все ошибки, возникающие при функционировании микропроцессорной системы управления, в общем виду могут быть разделены на следующие группы: Программные; Аппаратные; Программно – аппаратные. Ошибки, которые распознаются CPU S7 и, на которые можете реагировать пользователь с помощью организационных блоков (ОВ), можно разделить на следующие две категории: • Синхронные ошибки: ошибки, которые можно поставить в соответствие определенному месту в программе пользователя (напр., ошибки при обращении к периферийному модулю). • Асинхронные ошибки: ошибки, которые нельзя поставить в соответствие определенному месту в программе пользователя (напр., превышение времени цикла, неисправности модулей). В зависимости от того, могут ли ошибки быть определены в самом CPU или нет возникающие ошибки делятся на две категории: Ошибки, которые отслеживаются операционной системой CPU и приводят к вызову соответствующих организационных блоков или переводу CPU в режим «Stop» (системная ошибка), например: Ошибка в модуле Короткое замыкание в сигнальном кабеле Превышение времени цикла Ошибка программирования (обращение к несуществующему блоку) Ошибки функционирования, которые не переводят CPU в «STOP» , но при этом установка функционирует с ошибками. Найти ошибки такого рода гораздо сложнее, так как для выяснения причины их возникновения приходится анализировать всю логическую часть программы. Ошибки функционирования в свою очередь можно разделить на две большие группы: • Ошибка процесса (например, ошибка монтажа): Ошибка, вызванная неверной информацией, поступившей от процесса из-за неисправности датчиков или исполнительных устройств или дефектов монтажа. Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
5
Логическая ошибка программирования (например, ошибка двойного формирования операнда): Программная ошибка, которая не была обнаружена во время создания и отладки пользовательской программы при наступлении каких-либо непредусмотренных программой событий. Упреждающее программирование и, прежде всего, знание и правильное применение диагностического инструментария дают пользователю при возникновении ошибок следующие преимущества: • Существенно уменьшить влияние ошибок. • Поможет легче локализовать ошибки (например, программируя ОВ ошибок). • Позволит сократить потери рабочего времени. •
Встроенные диагностические средства системы Диагностика с помощью светодиодов Диагностика с помощью светодиодов представляет собой первое вспомогательное средство для локализации ошибок. Для дальнейшей локализации ошибок, как правило, используются встроенные диагностические функции операционной системы ПЛК, пакета программирования «SIMATIC Manager». Светодиоды, установленные на аппаратуре SIMATIC S7, выполнены в следующих трех цветах: Зеленые светодиоды сообщают о протекании нормальных режимов работы (напр., приложено напряжение питания). Желтые светодиоды указывают на особые режимы (напр., активна функция „Force"). Красные светодиоды указывают на неисправности (напр., ошибка в шине). Мигание светодиода указывает на особое событие (напр., общее стирание памяти). Возможные состояния светодиодов представлены в таблице 1.
Таблица 1 -Возможные состояния светодиодов ПЛК
Светодиод SF
5VDC
FRCE
RUN
Выкл
Выкл
Выкл
Выкл
Выкл
Вкл
X
Выкл
Вкл
Вкл
X
X
Вкл
X
X
Вкл
X
X
Вкл
X
X
Вкл
X
Вкл
Вкл
X
X
X
Вкл
Значение
STOP
На CPU отсутствует питающее напряжение. Устранение: Выкл Убедитесь, что блок питания соединен с сетью и включен. Убедитесь, что CPU соединен с блоком питания и включен. CPU находится в состоянии STOP. Устранение: Запустите CPU. Вкл
CPU находится в состоянии STOP в результате ошибки. Устранение: см. следующие таблицы, анализ светодиода SF Мигает CPU требует общего стирания памяти. Выкл (0,5 Гц) Мигает CPU выполняет общее стирание памяти. Выкл (2 Гц) Мигает CPU находится в состоянии запуска. Вкл (2 Гц) CPU остановлен в запрограммированной точке останова. Мигает Вкл Подробности читайте в руководстве по программированию (0,5 Гц) Программирование с помощью STEP 7. Аппаратная или программная ошибка. X X Устранение: см. следующие таблицы, анализ светодиода SF Вы активизировали функцию принудительного задания X X значений(Force) Выкл
Вкл
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
6
Примечание к таблице: состояние X - это состояние не имеет значения для функции, выполняемой в данный момент CPU. Возможные состояния светодиода SF представлены в таблице 2.
Таблица 2 - Возможные состояния светодиода SF
Возможные ошибки Активизировано и запускается прерывание по времени. Но подходящий ОВ не загружен (Программная ошибка/Ошибка параметризации) Был пропущен момент запуска активизированного прерывания по времени. напр., из-за перевода вперед внутренних часов. Функцией SFC 32 запускается прерывание с задержкой. Но подходящий ОВ не загружен (Программная ошибка/Ошибка параметризации) Активизировано и запускается аппаратное прерывание. Но подходящий ОВ не загружен (Программная ошибка/Ошибка параметризации) Генерируется прерывание по состоянию, но соответствующий ОВ 55 не загружен. Генерируется прерывание по обновлению, но соответствующий ОВ 56 не загружен. Попытка обращения к несуществующему или неисправному модулю. (Программная или аппаратная ошибка)
Было превышено время цикла. Возможно, было одновременно вызвано слишком много ОВ прерываний. Ошибка программирования: • блок не загружен • неверен номер блока • неверен номер таймера или счетчика • обращение для чтения или записи к неправильной области • и т.д. Ошибка доступа к периферии При обращении к данным модуля произошла ошибка Ошибка при связи с помощью глобальных данных, напр., DB для связи с помощью глобальных данных слишком мал.
Реакция CPU
Возможности устранения
Вызов ОВ 85. CPU не переходит в STOP, если ОВ 85 загружен.
Загрузить ОВ 10 или 11 (только CPU 318-2) (номер ОВ можно увидеть в диагностическом буфере).
Вызов ОВ 80. При незагруженном ОВ 80 CPU переходит в состояние STOP. Вызов ОВ 85. CPU не переходит в STOP, если ОВ 85 загружен.
Перед установкой часов с помощью SFC 29 заблокировать прерывание по времени.
Вызов ОВ 85. CPU не переходит в STOP, если ОВ 85 загружен.
Загрузить ОВ 40 или 41 (только CPU 318-2) (номер ОВ можно увидеть в диагностическом буфере).
Вызов ОВ 85. CPU не переходит в STOP, если ОВ 85 загружен. Вызов ОВ 85. CPU не переходит в STOP, если ОВ 85 загружен. Вызов ОВ 85. CPU не переходит в STOP, если ОВ 85 загружен или, если при загруженном ОВ 80 время цикла превышается во второй раз без последующего запуска. Вызов ОВ 80. CPU не переходит в STOP, если ОВ 80 загружен или вызван во второй раз.
Загрузить ОВ 55
Загрузить ОВ 20 или 21 (только CPU 318-2) (номер ОВ можно увидеть в диагностическом буфере).
Загрузить ОВ 56 Создать ОВ 85, в стартовой информации этого ОВ находится адрес соответствующего модуля. Заменить этот модуль или устранить ошибку в программе.
Вызов ОВ 121. CPU не переходит в STOP, если ОВ 121 загружен.
Увеличить время цикла (STEP 7 - Конфигурирование аппаратуры), изменить структуру программы. Устранение: при необходимости повторно запустить контроль времени цикла с помощью SFC 43. Устранить ошибку программирования. При поиске ошибки использовать тестовые функции STEP 7.
ВызовОВ 122. CPU не переходит в STOP, если ОВ 122 загружен. Вызов ОВ 87. CPU не переходит в STOP, если ОВ87 загружен.
Проверьте адресацию модулей с помощью утилиты HW Config или, не вышел ли из строя модуль или DP Slave. Проверьте связь с помощью глобальных данных в STEP 7 и, если необходимо, скорректируйте размер DB.
Источник питания имеет диагностику - светодиод "DC24V" на передней панели модуля. Используя этот светодиод можно определить состояние источника питания. Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
7
Состояние светодиода блока питания представлено в таблице 3. Таблица 3 Состояние светодиода блока питания
Светодиод Состояние "DC24V Включен 24 В О.К. Мигает Цепь выхода перегружена; до 130% (динамически.)
Выкл.
Выкл.
Реакция блока питания 24 В ОК.
Падение напряжения, восстановление напряжения когда перегрузки нет. до 130% (постоянно.) До 130% (постоянная перегрузка» понижение напряжения, сокращение срока службы Короткое замыкание в выходных цепях Прекращение подачи напряжения, автоматическое восстановление при устранении короткого Перенапряжение или пониженное Перенапряжение может вызвать напряжение на первичной стороне разрушение. Недостаточное (разрешаемый диапазон: напряжение -автоматическое от 187В до 264 В переменного тока) прерывание работы.
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
8
Обзор инструментов отладки Система PLC S7 имеет развитую систему инструментов отладки программ и поиска ошибок различных видов. Встроенные диагностические функции позволяют получить представленную открытым текстом информацию о возникшей ошибке. Например, определить номер соответствующего ОВ ошибок. А если его создать заблаговременно, то можно воспрепятствовать переходу CPU в состояние STOP. В зависимости от типа ошибки предлагаются следующие методы диагностики и отладки:
Ошибка Системная ошибка: Особенность: CPU переходит в STOP (Например, обращение к незагруженному DB или диагностическое прерывание от модуля) Инструменты отладки: Module Information Диагностический буфер Стек прерываний Стек блоков Локальный стек Hardware Diagnostics
Ошибка функционирования: Особенность: CPU остается в RUN (Ошибка процесса, например, обрыв провода или логическая ошибка, например двойное формирование) Инструменты отладки: Monitor / Modify variable (Управление переменными) Monitor blocks (Состояние блока) Reference Data (Справочные данные): Cross references (перeкрестные ссылки) Assignment of I/O/М/Т/С (план использования) ' Program Structure (Структура программы) Дополнительные возможности поиска ошибок: • Функция Force • Сравнение блоков • Точки останова
Рассмотрим более подробно доступные методы диагностики
Обнаружение системных ошибок (системная диагностика) Все функции наблюдения за функционированием компонентов контроллера группируются вместе под общим названием "Системная диагностика". Все S7-CPU имеют интеллектуальную систему диагностики. При этом, для получения системных диагностических данных, не надо ничего программировать! Эти функции встроены в операционную систему самого CPU и других, способных к диагностике модулей и работают автоматически. CPU сохраняет ошибки и помещает их в диагностический буфер, откуда они могут быть считаны и проанализированы обслуживающим персоналом. Операционная система, при обнаружении ошибки, выполняет определенные процедуры вплоть до изменения рабочего режима (RUN > STOP): Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
9
•
• •
Сообщение, снабженное датой и временем, вводится в диагностический буфер. Последнее сообщение хранится в начале буфера. Если буфер заполнен, наиболее старые данные удаляются. Размер этого буфера зависит от типа CPU (например, CPU 314 = 100 сообщений). Содержимое диагностического буфера не удаляется даже при полном стирании памяти. Ввод событий в системный список состояний. Если необходимо, событие активизирует соответствующий ОВ (организационный блок) обработки ошибки, что дает возможность пользователю произвести программную оценку ошибки.
Рисунок 1 - Потоки диагностической информации в SIMATIC S7
В случаи необходимости, CPU может передать причину перехода в режим STOP всем устройствам отображения, таким как операторская панель и программатор. Функция "Report Cause of STOP" может быть активирована в свойствах CPU в "Diagnostics/Clock" при конфигурировании аппаратных средств.
Диагностический буфер Диагностический буфер организован по принципу FIFO (первым пришел - первым вышел). Он находится в области памяти CPU с батарейной поддержкой и не может быть удален при сбросе памяти. Он содержит записи о всех диагностических событиях в порядке их возникновения. Все события могут быть показаны на программаторе или ПК в виде простого текста и в порядке их возникновения. Информация, необходимая для диагностики, доступна из всех инструментальных средств через команду: PLC > Module Information > закладка : "Diagnostic Buffer" (рисунок 2)
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
10
Рисунок 2 - Внешний вид диагностического буфера
Если выделить событие, в поле "Details on Event" будет показана дополнительная информация: • Идентификационный и порядковый номер события, • Дополнительная информация, относящаяся к событию, например, адреса команд, вызвавших событие, • Тип и номер блока и т.д. При нажатии кнопки Help on Event открывается помощь к событию, выделенному в списке.
Рисунок 3 - Интерпретация сообщения об ошибке
При нажатии кнопки произойдет открытие блока, который привел к ошибке. Если при программировании блока выбран язык STL, курсор устанавливается точно напротив инструкции, приведшей к ошибке. В LAD/FBD, показывается сегмент, содержащий ошибку (см. рисунок 4).
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
11
Рисунок 4 - Открытие блока, содержащего ошибку
Диагностика с использованием стеков I, В, L Для того, чтобы получить дополнительную информацию о месте ошибки, можно прочитать содержание стеков (I - стек, В - стек, L - стек). Это позволяет, например, определить какие величины хранились в аккумуляторах перед тем, как CPU перешел в Stop. B-Stack Блоки часто вызываются по нескольку раз в пользовательской программе. Это означает, что информация в диагностическом буфере о номере блока и инструкции, вызвавшим ошибку, не показывают при каком вызове произошла ошибка. Когда параметрируемый блок вызывается несколько раз, важна информация, при каком вызове блока было прервано выполнение программы. Это может быть важным, т.к. причина ошибки может быть в неверном задании параметров вызываемого блока. Вывод информации о стеках возможен в следующих случаях перехода CPU в режим STOP: • вследствие программной ошибки, • вследствие команды STOP, • при достижении точки останова. Стек блоков (В - стек) - графическое представление последовательности вызовов, то есть в нем отображается последовательность и вложенность блоков, вызываемых до точки прерывания (ошибки). Информация, необходимая для диагностики, доступна из всех инструментальных средств через команду: PLC > Module Information > закладка : "Stack" (рисунок 5) Стек блоков содержит все прерывания, вызванные ОВ прерываний и ОВ ошибок, также как и открытые DB. Выполнение программы было прервано в блоке, показанном внизу списка. Чтобы открыть блок online, Вы выбираете блок в списке В - стека и, затем, нажимаете на кнопку "Open Block". Далее, Вы можете отредактировать этот блок. Курсор располагается слева от ошибочной инструкции.
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
12
Рисунок 5 - Открытие В - стека (B-Stak)
I-Stack I -стек (interrupt stack - стек прерывания) всегда относится к одному классу приоритета. Прежде чем вызвать информацию об I -стеке, выберите интересующий организационный блок в В –стеке и нажмите кнопку I Stak
Рисунок 6 - Открытие окна I - стека (I Stek)
Регистры I -стек показывает содержимое регистров CPU в момент прерывания: Аккумуляторы (Можно выбрать формат числа, в котором должно отображаться содержимое аккумуляторов, используя поле "Display Format) Адресные регистры (можно выбрать формат числа, в котором должно отображаться содержимое адресных регистров, используя поле "Display Format".) Слово состояния (отображаются биты слова состояния (status word). Их значения выводится с указанием аббревиатур) Точка прерывания поле Point of Interruption (точка прерывания) содержит следующую (Point of Interruption) информацию: o Блок, при выполнении которого произошло прерывание, с возможностью непосредственного открытия блока нажатием кнопки "Open Block* (курсор при этом непосредственно указывает на инструкцию, содержащую ошибку). o Класс приоритета того ОВ, уровень программного выполнения которого был прерван. o Открытые блоки данных с указанием их номеров и размера. Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
13
L-Stack Текущие значения временных переменных блоков, незаконченных в момент прерывания (ошибки), содержатся в L - стеке. Прежде чем вызвать информацию об I -стеке, выберите интересующий организационный блок в В –стеке и нажмите кнопку I Stak
Рисунок 7 - Содержимое L - стека (L Stek)
В окне L - стека показываются локальные данные, относящиеся к блоку, выбранному в В - стеке. Блоки, незаконченные в момент перехода CPU в STOP, перечислены в стеке блоков (В - стек). На рисунке , временная переменная #variable1 определена как INT в блоке FC 10. Соответственно, она занимает два байта в L - стеке. В таблице деклараций блока FC 10, относительный начальный адрес переменной в L-стеке показывается в колонке "Address". Переменная #variable1 занимает байты 0 и 1 L-стека и имеет значение 0078Hex. Переменная #variable2 занимает байты 2 и 3 L-стека и имеет значение 0007Hex
Отображение диагностики оборудования (Hardware Diagnostics) Среди сигнальных модулей есть модули с возможностью диагностики. В таких модулях идентифицируются ошибки внутренние или внешние, например, обрыв проводов, что индицируется в модуле светодиодом "SF". В случаи ошибки модуль инициирует диагностическое прерывание OB82 в CPU. Чтобы узнать, какие модули имеют встроенную систему диагностики, необходимо обратиться к каталогу ST 70 или к описаниям модулей. Для активации системы диагностики модуля следует установить флажок параметров “Diagnostic Interrupt“ (диагностическое прерывание), назначить параметры и определить, какие каналы должны контролироваться. Затем отметить поля контроля ошибок, которые должны проверяться, например, обрыв провода. На рисунке для примера показан аналоговый модуль 335 со встроенной системой диагностики. Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
14
Рисунок 8 - Назначение параметров модуля, поддерживающего диагностику
Если в CPU отсутствует OB82, то при ошибке в модуле CPU переходит в прерывание состояние СТОП. Исходная информация для OB82 содержит дополнительную информацию о причине ошибки, которая может оцениваться в программе. Функция Hardware Diagnostics дает быстрый обзор состояния PLC. Эта функция открывает online-станцию, доступную в сети, и позволяет получить информацию о состоянии или рабочем режиме модулей. Информация отображается в виде диагностических символов, которые отображают состояние модулей или рабочий режим CPU. Если выполнить двойной щелчок на неисправном модуле, отображается дополнительная информация. Запуск функции: опция меню: PLC -> Diagnose Hardware в SIMATIC Manager или утилиты из утилиты HW Config, открывая станцию в интерактивном режиме с помощью кнопки на панели инструментов. В представленном примере (рисунок 9) при включении диагностики в окне утилиты отображаются все модули (даже те, что в стойках расширения или в распределенной периферии). Если CPU находится в режиме СТОП или если есть сбой в модуле, это индицируется символами красного цвета. Выполнив двойной щелчок на CPU или на неисправном модуле, можно получить дополнительную диагностическую информацию (см. правый экран на рисунке 9). В этом примере - сбой питания в аналоговом модуле.
Рисунок 9 - Отображение результатов диагностики оборудования утилитой HW Config Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
15
Наблюдение и модифицирование переменных Превосходным ресурсом для диагностики оборудования (поиск аппаратных, программно-аппаратных неисправностей) и отладки программ пользователя является наблюдение и модифицирование переменных с помощью таблиц переменных VAT. C помощью таблицы переменных могут быть отображены сигнальные состояния или значения переменных простых типов данных. Если есть доступ к пользовательской программе, также можно модифицировать переменные, то есть изменить сигнальное состояние или присвоить новые значения. Внимание: вы должны быть уверены в том, что в результате модифицирования переменных не возникнет опасных состояний. Основная последовательность действий при наблюдении и изменении переменных с помощью таблицы переменных Для использования функций Monitor [Наблюдение] и Modify [Изменение] Необходимо выполнить следующие действия: 1. Создайте новую или откройте существующую таблицу переменных. 2. Отредактируйте или проверьте содержимое таблицы переменных. 3. Установите связь online между текущей таблицей переменных и нужным CPU с помощью команды меню PLC > Connect То [ПЛК > Соединить с]. 4. С помощью команды меню Variable > Trigger [Переменная > Запустить], выберите подходящую точку запуска и установите частоту запуска. 5. Команды меню Variable > Monitor [Переменная > Наблюдать] и Variable > Modify [Переменная > Изменить] включают и выключают функции наблюдения и изменения переменных. 6. Сохраните завершенную таблицу переменных с помощью команды меню Table > Save [Таблица > Сохранить] или Table > Save As [Таблица > Сохранить как...], так что вы сможете вызвать ее снова в любое время. Создание таблицы переменных Для наблюдения и изменения переменных необходимо создать таблицу переменных VAT, содержащую переменные и ассоциированные форматы данных. Можно сгенерировать до 255 таблиц переменных (от VAT 1 до VAT 255) и присвоить им имена в таблице символов. Максимальный размер таблицы переменных составляет 1024 строки длиной до 255 знаков (рисунок 10).
Рисунок 10 - внешний вид таблицы переменных
Можно сгенерировать VAT автономно, выбрав Blocks {Блоки} пользовательской программы и команду меню Insert —> S7 Block —> Variable Table (Вставка —> Блок S7 —> Таблица переменных), также можно сгенерировать VAT без имени в онлайновом Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
16
режиме путем выбора S7 Program (S7-программа) и команды меню PLC —> Monitor/Modify Variables (PLC —> Наблюдение/модифицирование переменных). Переменные можно определить либо по абсолютным, либо по символическим адресам и выбрать тип данных (формат отображения), с использованием которого переменная будет отображена и модифицирована (по команде меню View —> Display Format - Вид —> Отобразить формат или щелкнув правой кнопкой мыши прямо на «Display Format» или «Формате отображения»). Условия триггера (пуска) Находясь в таблице переменных, выберите Variable —> Trigger (Переменная —> Триггер), чтобы установить триггерную точку и условия триггера отдельно для наблюдения и модифицирования. Триггерная точка - это точка, в которой CPU считывает значения из системной памяти или записывает значения в системную память. Вы должны определить, как будут осуществлены чтение и запись - один раз или периодически. Если наблюдение и модифицирование имеют одинаковые условия триггера, то наблюдение выполняется перед модифицированием. Если вы для изменения выбираете триггерную точку «Start of circle» («Начало цикла»), переменные модифицируются после обновления входного образа процесса и перед вызовом ОВ 1. Если для наблюдения вы выбираете триггерную точку «End of circle» («Конец цикла»), значения статуса отображаются после завершения ОВ 1 и перед выводом выходного образа процесса. Наблюдение переменных Активируйте функцию наблюдения командой меню Variable —> Monitor (Переменная —> Наблюдение). Переменные в VAT обновляются в соответствии с заданными условиями триггера. Постоянное наблюдение позволяет отслеживать изменения значений на экране. Значения отображаются в формате данных, установленном вами в столбце «Display format» («Формат отображения»). Клавиша ESC завершает постоянную функцию наблюдения. Variable —> Update Monitor Values (Переменная —> Обновить наблюдаемые значения) обновляет отслеживаемые значения один раз и немедленно, несмотря на установленные условия триггера. Контроль и изменение переменных Процедура для изменения значений переменных состоит в следующем: 1. Щелкните в колонке "Modify Value" в строке для переменной, которую Вы желаете изменить. 2. Введите значение в корректном для выбранного типа данных виде. 3. Чтобы активировать изменение переменной однократно, выберите меню Variable -> Activate Modify Values или нажмите кнопку (или, вместо этого, выполните шаг 4). 4. Чтобы активировать изменение переменной каждый цикл, выберите меню Variable -> Modify или нажмите кнопку . 5. Используйте тестовую функцию "Monitor", чтобы проверить, введено или нет новое значение для переменной.
Принудительная установка переменных (функция Force) С помощью функции Force можно установить предопределенные переменные пользовательской программы. В ПЛК S7-400 можно принудительно изменять входы, Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
17
выходы, меркеры и периферию, а ПЛК S7-300 – только входы и выходы. Пользовательская программа не сможет изменить эти значения («принудительная установка»). Принудительная установка допустима в любом режиме работы CPU и исполняется немедленно. Внимание: вы должны быть уверены в том, что в результате принудительной установки переменных не возникнет опасных состояний. Стартовой точкой для принудительной установки является таблица переменных (VAT). Создайте VAT, введите адреса для принудительной установки значений и установите соединение с CPU. Выбрав Variable —> Display Force Values (Переменные —> Отобразить принудительные значения), можно открыть окно, содержащее принудительные значения. Если в CPU принудительные значения уже активизированы, то они выделены в окне принудительных установок значений жирным шрифтом. Теперь вы можете переместить некоторые или все адреса из таблицы переменных в окно принудительных установок или добавить новые адреса. Сохранение содержимого окна принудительных установок в VAT осуществляется по команде меню 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 принимает принудительные значения и изменений принудительно установленных адресов больше не допускает. Пока активна функция принудительной установки, выполняется следующее: Все обращения для чтения к принудительно заданным адресам через пользовательскую программу (например, загрузка) и через системную программу (например, обновление образа процесса) всегда выдают принудительно установленное значение. В S7-400 все обращения для записи к принудительно заданным адресам через пользовательскую программу (например, передача) и через системную программу (например, через SFC - последовательные функциональные схемы) остаются безрезультатными. В S7-300 пользовательская программа может переписать установленные принудительно значения. Принудительная установка в S7-300 аналогична циклическому модифицированию: после обновления образа входов процесса CPU переписывает входы принудительными значениями; перед выводом образа выходов процесса CPU переписывает выходы принудительными значениями. Примечание: принудительная установка не завершается закрытием окна принудительных значений или таблицы переменных или прерыванием соединения с CPU! Удалить задание принудительной установки можно только с помощью Variable —> Delete Force (Переменная —> Снять принудительную установку).
Изменение выходов в состоянии «Stop» В режиме STOP обычно модули выходов деактивированы; с помощью функции разблокировки периферийных выходов можете заблокировать их и, таким образом, изменять модули выходов, даже если CPU находится в состоянии STOP. Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
18
Модифицирование осуществляется посредством таблицы переменных с помощью функции "Enable Peripheral Outputs". Функция "Enable Peripheral Outputs" может быть использована, только когда CPU находится в состоянии STOP. Возможное применение функции "Enable Peripheral Outputs": тест монтажных соединений выхода в режиме STOP и без программы пользователя или даже если CPU перешёл в состояние STOP из-за появления ошибки. Внимание: вы должны быть уверены в том, что в результате модифицирования переменных не возникнет опасных состояний. Необходимо выполните следующее, чтобы разрешить работу выходов периферии: (см. рисунок) 1. Откройте или отредактируйте таблицу переменных (VAT), которая содержит периферию, которую хотели бы проверить или изменить. (задайте периферийные выходы побайтно, пословно или в формате двойного слова; нельзя изменить отдельные биты выходов!) 2. Выберите пункт меню PLC -> Connect to для установки соединения с требуемым CPU. 3. Переключите CPU в режим STOP. 4. Введите необходимые значения периферии в столбце "Modify Value". 5. Для того, чтобы назначить новые значения, введите их и затем выберите Variable -> Activate Modify Values Примечание: Периферия остаётся активной до тех пор, пока Вы не отключите этот режим или не нажмете клавишу ESC.
Рисунок 11 - Изменение выходов в состоянии «Stop»
Статус программы LAD/FBD
С помощью функции Program status (Состояние программы) программный редактор предоставляет дополнительный метод тестирования программы пользователя. Редактор покажет поток двоичного сигнала и цифровых значений в сети (network). Основная последовательность действий для наблюдения статуса программы Настоятельно рекомендуется не вызывать для отладки всю программу, а вызывать по одному блоки и отлаживать их индивидуально. Начинать следует с блоков на последнем уровне вложения иерархии вызовов, например, путем вызова их из ОВ1 и создания среды тестирования для блока с помощью функции наблюдения и изменения переменных. Откройте блок online; Определите способ отображения статуса программы; Определите среду вызова (не обязательно); Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
19
Выберите режим выполнения тестирования; Включите/выключите тестирование; Для тестирования в статусе программы, для установки контрольных точек и для исполнения программы в пошаговом режиме должен быть установлен режим тестирования. Эти функции тестирования невозможны в режиме обработки (process operation). Для тестирования программного блока Вы используете функцию Debug ->Monitor или кнопку инструментального меню.
Запуск данной функции означает перевести блок в режим статуса. Теперь в окне блока (см. рисунок12) можно увидеть поток двоичного сигнала и следить за его изменением. Параметры отображения в программном редакторе (к примеру, цвет) настраиваются на вкладке «LAD/FBD» после вызова Options —> Customize (Опции —> Настроить). Деактивировать функцию состояния программы можно, вновь нажав Debug —> Monitor (Отладка —> Наблюдение).
Рисунок 12 - Внешний вид блока в режиме статуса в разных режимах представления программы
Вы можете установить условия триггера, выбрав команду Debug —> Call Environment (Отладка —> Параметры вызова). Данная установка потребуется, если отлаживаемый блок вызывается в программе более одного раза. Можно инициировать запись состояния либо путем определения порядка вызовов, либо поставив ее в зависимость от открытого блока данных (рисунок 13). Опции функции "Modify Trigger Point" определяют момент времени, в который установленные значения будут записаны в соответствующие переменные. Установки "Monitor Trigger Frequency" определяют, должны ли переменные читаться однократно (только по запросу, когда точка достигнута) или в каждом цикле. Установки "Modify Trigger Frequency" определяют, должны ли новые значения передаваться в соответствующие переменные однократно или в каждом цикле. Если блок вызывается только один раз, отметьте «No condition» («Без условий»).
Рисунок 13 - Окно установок триггера условий
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
20
Для записи информации по статусу программы требуется дополнительное рабочее время в программном цикле. По этой причине для целей отладки вы можете выбрать два рабочих режима: режим отладки и режим процесса.
Рисунок 14 - Выбор режимов отладки
В режиме отладки (debug mode) все функции отладки могут использоваться без ограничения. Данный режим можно избрать, например, для отладки блоков без подключения к системе, так как это может значительно увеличить время исполнения цикла. В режиме обработки (process mode) внимание уделяется сведению к минимуму увеличения времени цикла, что приведет к возникновению ограничений отладки, например, в программных циклах (отображаются не все циклические проходы). В CPU, оснащенных соответствующим образом, установить рабочий режим вы можете во время параметризации CPU на вкладке «Protection» («Защита»). Если режим отладки выбран во время параметризации CPU, то изменить его вы сможете только путем повторной параметризации. В противном случае он может быть изменен в отображаемом диалоговом окне. Установленный режим работы отображается по команде меню Debug — > Operation (Отладка —> Операция) см. рисунок 14 .
Управление переменными в режиме статуса программы Встроенные функции программы «SIMATIC Manager» позволяют оперативно изменить состояние переменных (ячейки из области М, а также блоки данных) в режиме статуса. Для этого, выделите операнд, и выполните функцию "Modify" из контекстного меню.
Рисунок 15 - Управление переменными в режиме статуса программы
Функция "Go To Location" Если выделить ячейку памяти и вызвать функцию "Go То Location", то откроется соответствующее окно, в котором можно увидеть все случаи использования данной Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
21
переменной. Выделив нужную строку и нажав кнопку "Go To", Вы перейдете в новую точку для режима статуса или отображения.
Рисунок 16 - Вызов функции "Go To Location"
Точки останова С помощью этой функции пользователь можете отлаживать программу, созданную на языке STL в пошаговом режиме. Это особенно полезно во время написания программы, например для отладки циклов. Можно устанавливать несколько точек останова в зависимости от CPU. Выбрать функции точек останова можно в редакторе выбрав пункт меню «Test» или посредством Breakpoint Bar (Панель инструментов для точек останова). Перед отладкой убедитесь в выполнении следующих требований: Должны быть включен режим "Test Operation (см. рисунок 15); Отлаживаемый блок должен быть открыт в режиме «online». Во время активации точки останова CPU останавливается на данном выражении. Выходы деактивируются по соображениям безопасности. Примечание: Данная функция реализована только в некоторых версиях CPU (например, CPU 314-1AE03).
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
22
Рисунок 17 - Порядок использования точек останова
Поиск логических ошибок Для поиска логических ошибок, следует использовать инструменты "Program Status" и "Reference Data" (ссылки). Распространенная причина ошибок - повторное присваивание адресов. Это означает, что адрес используется в различных местах программы. Такие ошибки легко найти с помощью "Reference Data" (в SIMATIC Manager или LAD/STL/FBD редакторе через меню Options -> Reference Data -> Display).
Рисунок 18 - Вызов окна «ссылки»
Перекрестные ссылки Вы открываете список перекрестных ссылок, выбирая команду меню View -> Cross References или кликнув мышью на соответствующую кнопку. Список перекрестных ссылок является списком адресов, использованных в конкретной пользовательской программе. Кликнув на выбранное место использования операнда, запускается редактор с указанным блоком и сегментом. Вы можете выбрать адрес в списке перекрестных ссылок, а далее выбрать меню View -> Cross References for Address . При этом откроется новое окно, содержащее перекрестные ссылки только для выбранного адреса.
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
23
Рисунок 19 - Окно перекрестных ссылок
Таблица используемых ячеек (план использования) Этот список дает обзорный план, из которого видно, какие биты и в каких байтах областей памяти I, Q, М, Т, С использованы в вашей программе. Вызывается используя команду меню View -> Assignment или кликнув мышью на соответствующую кнопку.
Рисунок 20 - Таблица используемых ячеек
Структура программы Структура программы показывает иерархию вызовов блоков в программе. В колонке Local показывается глубина использования локального стека для блоков ОВ и для вызываемых блоков.
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
24
Используемые символы: Нормальный вызов блока (CALL FC1) Безусловный вызов блока (UC FC1) Условный вызов блока (СС FC1) Блок данных Рекурсия (вызов блока из самого себя) Блок не вызывается
Рисунок 21 - Структура программы
Сравнение блоков Одной из причин возникновения ошибок (обычно в случае нескольких пользователей) может быть различие между программами в проекте и в CPU. Поэтому поиск логических ошибок (нарушения в логике работы программы) проще начинать со сравнения блоков. Можно сравнить блоки online и offline или в двух программах пользователя на жестком диске программатора. С помощью этой функции, можно определить, какие программные коррекции были сделаны в CPU позже и, в каком сегменте блоки отличаются. Порядок действий (рисунок 22): 1. Правой кнопкой мыши, выберите папку блоков в S7-программе 2. Выберите команду меню Compare Blocks. 3. Выберите, хотите ли Вы сравнить online/offline или 2 offline программы и подтвердите нажатием кнопки «ОК». 4. В окне будут показаны блоки, которые отличаются. 5. Выберите строку, в которой определено различие и нажмите кнопку «Details». 6. В окне "Compare Blocks - Details" (сравнение блоков - детали), Вы можете установить, когда блок был модифицирован и был ли изменен размер блока. 7. После выбора кнопки "Go To..." отличающиеся блоки, например, online и offline, открываются в двух окнах и показываются сегменты, в которых было найдено первое отличие. Изменения программы могут быть сделаны только в окне offline.
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
25
Рисунок 22 - Выполнение сравнения блоков
Блоки ошибок При возникновении большинства ошибок операционная система CPU вызывает различные организационные блоки (ОВ) в зависимости от типа ошибок. При отсутствии данных блоков CPU переходит в STOP (кроме ОВ81, ОВ84). Ниже приведена таблица ОВ ошибок. Тип ошибки Ошибка программы
Пример Вызываемого блока нет в CPU
Error OB ОВ 121
Ошибка Прямой доступ к модулю, который неисправен или ОВ122 доступа неправильно указан Ошибка Превышено максимального время цикла ОВ80 времени Дефект блока Неисправность резервной батареи ОВ81 питания Диагностическ Обрыв проводов на входах модуля, ОВ82 ое прерывание поддерживающего диагностику Неисправность Ошибка в памяти операционной системы ОВ84 CPU Ошибка Ошибка обновления области отображения ОВ85 выполнения (неисправность модуля) программы Неисправность Неисправность удаленной стойки или DP Slave ОВ86 стойки Коммуникацио Ошибка в передаче "Global Data" ОВ87 нная ошибка Блоки ошибок подготавливаются пользователем. В простейшим случаи блок ОВ может быть "пустым", т.е. не содержать команд пользователя.
Программные средства обработки ошибок Когда обнаруживаются ошибки в обработке программы (синхронные ошибки) и ошибки в программируемом контроллере (асинхронные ошибки), CPU вызывает соответствующий организационный блок (ОВ) для обработки ошибки: Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
26
Ошибка ОВ для ошибки Ошибка резервирования ввода/вывода ОВ70 Ошибка резервирования CPU ОВ72 Ошибка времени ОВ80 Сбой источника питания ОВ81 Диагностическое прерывание ОВ82 Прерывание при вставке/снятии модуля ОВ83 Отказ аппаратных средств CPU ОВ84 Ошибка класса приоритета ОВ85 Отказ стойки или отказ станции в децентрализованной периферии ОВ86 Ошибка связи ОВ87 Ошибка программирования ОВ121 Ошибка доступа для ввода/вывода ОВ122 Если соответствующий OB отсутствует, то CPU переходит в режим STOP. В противном случае в ОВ может содержать команды относительно того, как он должен реагировать на такую сбойную ситуацию. Это означает, что воздействие ошибки можно уменьшить или устранить. Пример использования организационного блока ошибки ОВ81 Используя локальные данные (стартовую информацию) в ОВ ошибки, Вы можете оценить тип произошедшей ошибки. Например, если CPU обнаруживает неисправность батареи, то операционная система вызывает ОВ81 (см. рисунок).
Рисунок 23 - Порядок использования ОВ81
Локальные данные организационного блока ошибки ОВ81 Таблица 4 показывает временные переменные, которые должны быть описаны в этом случае в таблице описания переменных ОВ81. Символ Battery error [сбой батареи] (BOOL) должен быть идентифицирован как выход (например, Q 4.0) так, чтобы другие части программы могли обращаться к этим данным.
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
27
Описание
Имя
Таблица 4 - Временные переменные блока OB81 Объяснение
Тип
TEMP
OB81EVCLASS
BYTE
Класс ошибки/Идентификатор ошибки 39хх
TEMP
OB81FLTID
BYTE
TEMP TEMP TEMP TEMP TEMP TEMP
OB81 PRIORITY OB810BNUMBR OB81RESERVED1 OB81RESERVED2 OB81MDLADDR OB81RESERVED3
BYTE BYTE BYTE BYTE INT BYTE
TEMP TEMP TEMP TEMP
OB81RESERVED4 OB81RESERVED5 OB81RESERVED6 OB81DATETIME
BYTE BYTE BYTE
Код ошибки: B#16#21 = по крайней мере, одна батарея резервного питания CPU истощена 1) B#16#22 =нет резервного напряжения в CPU b#16#23 =отказ источника питания 24 В в CPU 1) B#16#31 =по крайней мере, одна батарея резервного питания стойки расширения истощена 1J b#16#32 =нет резервного напряжения в стойке расширения1) B#16#33 =отказ источника питания 24 В стойки расширения 1) Класс приоритета = 26/28 81 = ОВ81 Зарезервировано Зарезервировано Зарезервировано Имеет смысл толbко для кодов ошибки В#16#31, В#16#32, В#16#33
1)
DATE ANDTI ME
Дата и время запуска ОВ
= = нет в случае S7-300
Типовая программа для организационного блока ошибки ОВ81 Типовая программа на языке STL показывает, как Вы можете считывать код ошибки в ОВ81. Программа структурирована следующим образом: • В ОВ81 (ОВ81FLTID) считывается код ошибки и сравнивается со значением для события "battery exhausted [истощение батареи]" (В#16#3921). • Если код ошибки соответствует коду события "battery exhausted [истощение батареи]", то программа переходит к метке Вегг и активизирует выход batteryerror. • Если код ошибки не соответствует коду события "battery exhausted [истощение батареи]", то программа сравнивает этот код с кодом события "battery failure [отказ батареи]". • Если код ошибки соответствует коду события "battery failure [отказ батареи]", то программа переходит к метке Вегг и активизирует выход batteryerror. В противном случае блок завершается.
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
28
Рисунок 24 - Пример листинга программы
Вывод сообщений (функция CPU Messages) Запуск этой функции позволяет немедленно отобразить сообщение об ошибке на экране программаторе (PG) или устройстве HMI. Окно сообщения выводится поверх других окон на PG или ОР, как только CPU перейдет из-за ошибки в STOP . Используя в программе системные функции (SFC17, SFC18), Вы можете также выводить пользовательские сообщения, содержащие собственные тексты и, при необходимости, значения переменных.
Рисунок 25 - Вызов функции CPU Messages
Бокс "W" активируется для приема системных и пользовательских диагностические сообщения. Бокс"А", активируется для приема сообщения, передаваемых через системные функции (ALARM-функции). Вы можете модифицировать размер архива (40 - 3000 сообщений) или очистить архив через функцию меню "Option -> Customize". Архив сообщений можно сохранить, например, в текстовом файле с помощью функции "Flle->Export Archive".
Перекомпоновка программы Необходимость перекомпоновки программы возникает, если в результате диагностики системы установили, что во входном блоке неисправен канал (например, I Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
29
16.7). В этом блоке еще не все входы заняты, так что для устранения неисправности можно переключиться на свободный канал. После перемонтажа должна, быть адаптирована программа к новому аппаратному обеспечению. Значит, везде, где был запрограммирован неисправный вход (в нашем случаи I16.7), он должен заменяться на исправный вход (допустим, что на I 17.0). Программа пользователя может быть перекомпонована (каждый опрос операнда 116.7 должен быть заменен на 117.0) тремя способами: • Перемонтаж с помощью SIMATIC Manager: указание старых и новых операндов. Этот метод не предполагает использования таблицы символов (Symbol Table). • Перемонтаж с помощью таблицы символов с использованием "приоритета символов" • Перемонтаж с помощью исходного текста программы. При этом требуется таблица символов Перекомпоновка с помощью SIMATIC Manager Вне зависимости от таблицы символов, старый адрес (I 16.7 в примере) заменяется в программе пользователя новым (I 17.0 в примере). Первоначальный блок перезаписывается новым, „перемонтированным" блоком. При перемонтаже с помощью SIMATIC® Manager, должен быть установлен "Приоритет : Абсолютных значений" в свойствах объекта Blocks. Блоки, в которых необходимо произвести замену должны быть выделены перед запуском процедуры Следует учитывать, что при активации этой опции, все отдельные биты указанного байта, слова или двойного слова будут также переназначены. В примере, I16.7, является отдельным "старым адресом " из байта IB 16, переназначается отдельному входу 117.0 входного байта IB 17. Порядок действий (рисунок 26): 1. Закройте LAD/STL/FBD редактор для уверенности, что блоки не обрабатываются 2. В SIMATIC® Manager, выделите папку Blocks или те блоки, в которых необходимо сделать переназначения 3. Запустите перемонтаж: SIMATIC® Manager -> Options -> Rewiring... 4. Введите старые и новые операнды, если необходимо, активируйте "Аll accesses within the specified addresses" (Все доступные в пределах определенных адресов (не для периферийных устройств))в экране Rewire 5. Нажмите "OK".
Рисунок 26 - Перекомпоновка с помощью SIMATIC Manager
После перекомпоновки, Вы можете распечатать протокол, который показывает сколько изменений в каком блоке было произведено. Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
30
Перекомпоновка с использованием "Приоритета символов" перекомпоновку S7 программы можно выполнить, используя "Приоритет символов" в LAD/STL/FBD редакторе или функцией "Check Block Consistency". Для применения данного метода предварительно должно быть выполнено: • созданна таблица символов • в свойствах объекта папки Block, выбрано "Symbol has priority.... For all accesses (I, Q, M, T, C, and DB)" (рисунок 23) Порядок действий (рисунок 24): 1. Выделите папку Blocks в S7 программе в offline виде SIMATIC® Manager 2. Откройте Object Properties папки Blocks 3. Меню Edit или щелчек правой кнопкой мыши на папке Blocks •> и выбор опции Object Properties 4. Выберите кнопку "Address Priority" в предложенном диалоге 5. Выберите следующие свойства: "Symbol has priority.....For all accesses (I, Q, M, T, C, and DB)".
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
31
Диагностика Диагностика состояния всех модулей системы осуществляется с использованием диагностических символов Диагностические символы отображаются в окне проекта в представлении online, а также в быстром обзоре (установка по умолчанию) или в диагностическом обзоре, когда вы вызываете функцию "Diagnose Hardware [Диагностика аппаратуры]"(см. раздел «Отображение диагностики оборудования»). Подробная диагностическая информация отображается в приложении "Module Information [Информация о модуле]", которое вы можете запустить двойным щелчком по диагностическому символу в быстром обзоре или в диагностическом обзоре.
Рисунок 27 - Отображение информации о состоянии CPU и модулей
Определение неисправного модуля 1. 2. 3. 4. 5. 6.
7. 8.
Последовательность действий при установки местоположения неисправностей Откройте окно проекта online при помощи команды меню View > Online [Вид > Online]. Откройте все станции так, чтобы были видимы сконфигурированные в них программируемые модули. Выясните, какой CPU отображает диагностический символ, указывающий на ошибку или неисправность. С помощью клавиши F1 вы можете открыть справочную страницу с объяснением диагностических символов. Выберите станцию, которую вы хотите проверить. Выберите команду меню PLC > Module Information [ПЛК > Информация о модуле], чтобы отобразить информацию для CPU в этой станции. Выберите команду меню PLC > Diagnose Hardware [ПЛК > Диагностика аппаратуры], чтобы отобразить вывести на экран "быстрый обзор" с CPU и неисправными модулями этой станции. Отображение быстрого обзора установлено по умолчанию (команда меню Options > Customize [Параметры > Настройка], вкладка "View" [Вид]). Выберите в быстром обзоре неисправный модуль. Щелкните на кнопке "Module Information [Информация о модуле]", чтобы получить информацию об этом модуле. Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
32
Щелкните по кнопке "Open Station Online [Открыть станцию online]" в быстром обзоре, чтобы отобразить диагностический обзор. Диагностический обзор содержит все модули станции в порядке расположения их слотов. 10. Дважды щелкните по модулю в диагностическом обзоре, чтобы отобразить информацию о нем. Этим способом вы можете получить информацию также для тех модулей, которые не вышли из строя и поэтому не отображаются в быстром обзоре. При достаточном опыте не обязательно выполнять все эти шаги; можно остановиться, как только получите требуемую диагностическую информацию. 9.
Диагностика в состоянии STOP STOP
Основная последовательность действий для определения причины перехода в
Чтобы определить причину перехода CPU в режим "STOP", следует действовать следующим образом: 1. Откройте окно проекта online при помощи команды меню View > Online [Вид > Online]. 2. Откройте все станции так, чтобы были видимы сконфигурированные в них программируемые модули. 3. Выделите CPU, перешедший в STOP. 4. Выберите команду меню PLC > Module Information [ПЛК > Информация о модуле]. 5. Выберите вкладку "Diagnostic Buffer [Диагностический буфер]". 6. Вы можете определить причину перехода в STOP по последним записям в диагностическом буфере. Если встречается ошибка программирования: Например, входное сообщение "STOP because programming error OB not loaded [STOP, так как ОВ обработки ошибок программирования не загружен]" означает, что CPU обнаружил ошибку в программе и затем попытался запустить (несуществующий) ОВ, чтобы обработать ошибку программирования. Предыдущие записи указывают на фактическую ошибку программирования. 1. Выберите сообщение, относящееся к ошибке программирования 2. Щелкните по кнопке "Open Block [Открыть блок]". 3. Выберите вкладку "Stacks [Стеки]". Оценивая содержимое диагностического буфера и стеков можно определить причину сбоя в обработке программы. Например, если CPU перешел в STOP вследствие ошибки программирования или команды STOP, то вкладка "Stacks [Стеки]" в информации о модулях отображает стек блоков. Вы можете отображать содержимое других стеков, используя кнопки "I Stack [Стек прерываний]", "L Stack [Локальный стек]" и "Nesting Stack [Стек вложений]". Содержимое стека дает вам информацию о том, какая команда и в каком блоке привела к переходу CPU в STOP (порядок обращения к стекам представлен в соответствующим разделе).
Проверка времен цикла сканирования во избежание временных ошибок С целью исключения остановки технологического процесса из-за «зависания» CPU операционная система постоянно выполняет контроль времени выполнения цикла программы (см. рисунок 26) и в случаи его превышения перевод CPU в режим STOP. Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
33
Вкладка "Scan Cycle Time [Время цикла сканирования]" в информации о модулях дает сведения о временах цикла сканирования программы пользователя.
Рисунок 28 - Работа системы в пределах одного цикла
Если продолжительность самого длинного цикла близка к сконфигурированному максимальному времени цикла, то имеется опасность того, что флуктуации времени цикла могут вызвать временную ошибку. Этого можно избежать, если вы увеличите максимальное время цикла (контрольное время) для программы пользователя. Если длительность цикла меньше, чем сконфигурированное минимальное время цикла сканирования, то CPU/FM автоматически продлевает цикл до сконфигурированного минимального времени цикла сканирования. В данном случаи CPU в течение этого продленного времени обрабатывает фоновый ОВ (ОВ90) (если он был загружен). Установка максимального и минимального времени цикла производится при конфигурации аппаратные средства. Для этого в представлении конфигурационной таблицы в режиме offline дважды щелкните на CPU/FM, чтобы определить его характеристики. Вы можете вводить соответствующие значения во вкладке "Cycle/Clock Memory [Цикл/Тактовые меркеры]".
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
34
Техническое обслуживание S7 - это система автоматизации, не требующая обслуживающего персонала. Поэтому под обслуживанием понимаем выполнение следующих операций: сохранение операционной системы на плате памяти (МС) или на плате микропамяти (ММС). Использование в качестве средства хранения информации МС или ММС зависит от типа используемого CPU. обновление операционной системы с МС или ММС замену модулей замену буферной батареи или аккумулятора (только для CPU с МС) замену предохранителей цифровых модулей вывода
• • • • •
Сохранение операционной системы Необходимость сохранить операционную систему CPU может возникнуть в следующих случаях: При замене CPU установленного на установке другим CPU из запаса, и при этом необходимо гарантировать, что этот CPU снабжен такой же операционной системой, что и заменяемый CPU; При создании резервной копии операционной системы; При обновлении операционной системы. Сохранение операционной системы производится следующим образом: Таблица 5 - Сохранение операционной системы на МС или ММС
Шаг 1. 2. 3. 4.
5.
6.
Требуемое действие
Реакция CPU
Вставить в CPU новую плату памяти или плату микропамяти. Удерживать переключатель режимов работы в положении MRES. Выключить/включить питание и удерживать переключатель режимов работы в положении MRES, пока ... Перевести переключатель режимов работы в положение STOP. Кратковременно перевести переключатель режимов работы в положение MRES, а затем отпустить его, чтобы дать ему возможность вернуться в STOP.
CPU требует общего стирания. ... не начнут мигать светодиоды STOP, RUN и FRCE. -
• CPU начинает сохранять операционную систему на МС/ММС. • Во время сохранения горят все светодиоды. • По окончании процесса сохранения мигает светодиод STOP. Тем самым CPU требует общего стирания памяти. Вытащить плату памяти или микропамяти. -
Обновление операционной системы После расширения (совместимого) функциональных возможностей или увеличения производительности операционной системы следует переходить к самой новой версии операционной системы, обновить ее (update). Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
35
Самую новую версию операционной системы вы можете получить у представителя фирмы Siemens или из Интернета (базовая страница фирмы Siemens; Automation and Drives [Автоматизация и приводы], Customer Support [Поддержка клиентов]). Если перед обновлением вы сохраните свою операционную систему на пустой плате МС/ММС (см. предыдущий раздел), то при возможном возникновении проблем вы сможете снова загрузить "старую" операционную систему. Обновление операционной системы (ОС) производится следующим образом: Таблица 6 - Обновление операционной системы с помощью МС/ММС
Шаг
1. 2. 3.
Требуемое действие
Реакция CPU
Перенести файл изменений с помощью STEP 7 и своего устройства программирования на пустую плату МС/ММС.
-
У CPU с батареей или аккумулятором вынуть его/их из CPU. Включить CPU, не подавая питания, и вставить МС/ММС с новой версией ОС. Включить напряжение.
-
Выключить питание CPU и вытащить МС/ММС с новой версией ОС. У CPU с батареей или аккумулятором вставить их в CPU.
_
4.
5. 6.
• CPU автоматически распознает МС/ММС с новой версией ОС и запустит обновление. • Во время обновления ОС горят все светодиоды. • По окончании процесса обновления ОС мигает светодиод STOP. Тем самым CPU требует общего стирания памяти.
-
Замена модулей Для демонтажа модуля следует действовать следующим образом см. рисунок 29:
Таблица 7 - Порядок демонтажа модуля
Шаг 1. 2. 3. 4.
20-контактный фронтштекер Переведите CPU в STOP
40-контактный фронтштекер
Отключите напряжение нагрузки для модуля Вытащите из модуля маркировочную ленту Откройте переднюю дверцу Разблокируйте фронтштекер и вытащите его
5.
Для этого одной рукой нажмите вниз Отвинтите крепежный винт в середине деблокирующую кнопку (5), а другой рукой фронтштекера. Вытащите фронтштекер за вытащите фронтштекер за поверхности для поверхности для захвата. захвата (5а).
6. 7.
Отвинтите крепежный(е) винт(ы) модуля. Поверните модуль наружу.
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
36
Рисунок 29 - Порядок демонтажа модуля
Удаление кодирующего устройства фронтштекера из модуля Перед монтажом нового модуля следует удалить верхнюю часть кодирующего устройства фронтштекера на этом модуле (см. рисунок 30), так как эта часть уже находится в подсоединенном к проводам фронтштекере
Рисунок 30 - Удаление кодирующего устройства фронтштекера
1. 2. 3.
1. 2. 3. 4. 5.
Монтаж нового модуля Для монтажа нового модуля действуйте следующим образом: Навесьте новый модуль того же самого типа и поверните его вниз. Привинтите модуль до упора. Вдвиньте маркировочную полоску демонтированного модуля смонтированный модуль. Ввод в действие нового модуля Для ввода в действие нового модуля действуйте следующим образом: Откройте переднюю дверцу. Снова установите фронтштекер. Закройте переднюю дверцу. Включите снова напряжение нагрузки. Снова переведите CPU в состояние RUN.
во
Рисунок 31 - Монтаж нового модуля Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
37
вновь
Замена буферной батареи или аккумулятора (только для CPU с МС) Буферную батарею или аккумулятор следует менять только при включенном питании CPU, чтобы не потерялись данные из внутренней памяти пользователя или не остановились часы CPU. Для замены буферной батареи или аккумулятора следует действовать следующим образом (см. рисунок32): Таблица 8 - Порядок замены буферной батареи
Шаг
CPU 314 IFM/315/315-2 DP/ 316-2 DP/318-2 DP
CPU 313/314
2.
Откройте переднюю дверцу CPU. С помощью отвертки выньте буферную Вытащите буферную батарею или батарею или аккумулятор из ниши для батареи. аккумулятор за кабель из ниши для батареи
3.
Вставьте штекер новой буферной батареи или аккумулятора в соответствующее гнездо в нише для батареи на CPU. Вырез на штекере батареи должен показывать налево!
4.
Вложите новую буферную батарею или аккумулятор в нишу для батареи на CPU
5.
Закройте переднюю дверцу CPU.
1.
Рисунок 32 - Замена буферной батареи на CPU 313/314
Замена предохранителей цифровых выходов Цифровые выходы следующих цифровых модулей вывода защищаются группами каналов от короткого замыкания предохранителями: • Цифровой модуль вывода SM 322; DO 16 х А 120 V • Цифровой модуль вывода SM 322; DO 8 х АС 120/230 V Прежде чем выполнять замену предохранителей следует устранить причины, которые привели к выходу из строя предохранителей. Расположение предохранителей Цифровые модули вывода имеют по одному предохранителю на группу каналов. Предохранители находятся на левой стороне цифрового модуля вывода. Следующий рисунок показывает, где находятся предохранители на цифровых модулях вывода.
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
38
Рисунок 33 - . Расположение предохранителей у цифрового модуля вывода переменного тока 120/230 В
Предохранители находятся на левой стороне модуля. При замене предохранителя действуйте следующим образом: 1. Переведите CPU в STOP. 2. Выключите напряжение нагрузки цифрового модуля вывода. 3. Вытащите фронтштекер из цифрового модуля вывода. 4. Отвинтите крепежный винт цифрового модуля вывода. 5. Отклоните модуль цифрового вывода наружу. 6. Вывинтите держатель плавкой вставки из цифрового модуля вывода. 7. Замените предохранитель. 8. Снова завинтите держатель плавкой вставки в цифровой модуль вывода. 9. Снова смонтируйте цифровой модуль вывода.
Литература 1. Бергер Г. Автоматизация посредством STEP 7 с использованием STL и SCL и программируемых контроллеров SIMATIC S7-300/400. Siemens AG, Нюрнберг, 2001. 2. Программирование с помощью STEP 7 V5.3. Руководство 6ES7810-4CA07-8BW1. Siemens AG, Нюрнберг, 2004. 3. Программируемый контроллер S7-300. Аппаратура и монтаж. Руководство 6ES73988FA10-8BA0, Нюрнберг, 2005 4. Программирование в помощью STEP 7 версии 5.0 C79000-G7076-C562-02, Нюрнберг, 2002 5. Романов В. П. Основы языка программирования STEP7 и базового программного обеспечения промышленных контроллеров SIEMENS. Учебно-методическое пособие, Новокузнецк 2009.
Романов В. П. Диагностика и техническое обслуживание АСУ ТП на основе ПЛК S7 фирмы Siemens
39