step7-pro
голосование
Чего не хватает сайту
поиска
новых статей
статей о подключении оборудования
примеров решения задач
форума
ничего не нужно
поиск


новости
Появился поиск по сайту. Обещаю его улучшить и сделать более адекватным
--------------11.10.11
Новая гостевая книга надеюсь избавит от спама. Еще немного и появится поис и многое другое
--------------11.07.11
C НАСТУПАЮЩИМ НОВЫМ ГОДОМ И РОЖДЕСТВОМ!
--------------30.12.10
Новые статьи по системным функциям и блокам
--------------25.12.10
Теперь у нас новый дизайн, конечно не супер но надеюсь всем понравиться
--------------05.12.10
Форум закрыт по причине ненадобности
--------------08.09.10
Гостевая книга временно отключена из спама
--------------15.10.10
Наш форум forum.step7-pro.ru общайтесь на здоровье!
--------------03.06.10
Наш сайт в twitter Вы сможете подписаться на рассылку новостей и узнавать о новых статьях на нашем сайте.
--------------20.03.10
После долгого перерыва наш сайт снова начал работать
--------------26.02.10
реклама

Введение

FBD(FUP) - это сокращенное обозначение для функционального плана. FBD - это графический язык программирования, использующий для представления логических операций логические блоки, известные в булевой алгебре. Сложные функции (например, математические) тоже могут быть представлены непосредственно
соединенными с логическими блоками.

Язык программирования “Функциональный план” обладает всеми элементами, необходимыми для создания полной программы пользователя. Он содержит широкий спектр команд, включающий в себя различные основные команды и способы их адресации. Функции и функциональные блоки позволяют наглядно структурировать программу на языке FUP. На мой взгляд язык FUP намного проще и более нагляднее контактного плана, а кроме того многие функции FUP состоят из одного элемента в то время как для LAD понадобиться достаточно много элементов и очень сложная структура.

Ещё раз повторю, что в стандартном программном обеспечении имеется три языка программирования: AWL, FUP и LAD(КОР). Вы можете переключаться из одного языка в другой почти без ограничений и выбирать наиболее подходящий язык для конкретного блока, который Вы программируете.

 

Структура программы пользователя

Программа пользователя состоит из логических блоков и блоков данных. Логические блоки - это блоки, содержащие кодовую часть, например, организационные блоки, функциональные блоки и функции.

Организационные блоки

Организационные блоки (OB) представляют собой между операционной системой и программой пользователя. Различные организационные блоки выполняют разные функции. Для создания прикладной программы на FUP для своего CPU S7 Вы выбираете организационные блоки, необходимые, для Вашей конкретной задачи автоматизации. Для выполнения основной задачи Вам потребуются блоки:
• запуска (OB100, OB101)
• циклической обработки (OB1)
• обработки ошибок (от OB80 до OB87, OB121, OB122), если Вы не хотите, чтобы CPU переключался в STOP при возникновении ошибок. Имеются также организационные блоки для обработки прерываний в CPU или прерываний от процесса.

Функции /функциональные блоки

Вы можете программировать каждый организационный блок (OB) как структурную программу, создавая функции (FC) и функциональные блоки (FB) и вызывая их в кодовой части OB. При вызове блоков Вы снабжаете их данными, требуемыми для объявленных параметров.

Данные

Операционная система делает доступными следующие данные:
• Периферийные входы и выходы
• Образ процесса на входах и выходах
• Меркеры
• Таймеры
• Счетчики
Вы можете также определить свои собственные данные:
• Вы можете определить в блоках данных разделяемые (глобальные) данные. Эти данные доступны всей программе пользователя.
• Статические переменные действительны только в функциональном блоке, где определены. При каждом вызове функционального блока указывается экземпляр блока данных, который кроме всех параметров содержит также статические данные. Если определена многоэкземплярная модель, то экземпляры данных, включая статические данные, хранятся в экземпляре блока данных.
• При создании логического блока Вы можете определить временные данные. Эти данные требуют только стековой памяти во время текущей обработки блока.

Блоки данных

Блоки данных хранят данные программы пользователя. Имеются два типа блоков данных: разделяемые (глобальные) блоки данных и экземпляры блоков данных.
• К разделяемым блокам данных возможен доступ из всех блоков в программе.
• Экземпляры блоков данных ставятся в соответствие функциональным блокам и содержат помимо данных FB также данные определенных при необходимости мультиэкземпляров. Поэтому Вы должны обращаться к экземплярам блоков данных только в связи с этими функциональными блоками.

 

Создание программы пользователя. Обзор

Программа пользователя, работающая на CPU S7, в основном состоит из блоков. Она содержит также такую информацию, как данные о конфигурации системы и о её включении в сеть. В зависимости от Вашего приложения программа пользователя будет включать в себя следующие элементы:
• организационные блоки (OB)
• функциональные блоки (FB)
• функции (FC)
• блоки данных (DB)
Для облегчения работы Вы можете создавать свои собственные типы данных, определенные пользователем (UDT – User-defined Data Type), которые могут использоваться или как типы данных в собственном смысле, или как шаблон для создания блоков данных.
Некоторые из часто используемых блоков, такие, как системные функциональные блоки (SFB) и системные функции (SFC), встроены в CPU. Другие блоки (например, блоки для функций IEC или блоки управления по замкнутому контуру) имеются в виде отдельных пакетов. Эти блоки не нужно программировать, их просто загружают в программу пользователя.

Примечание
Вы можете проверить, какие SFB и SFC встроены в Ваш CPU, щелкнув мышью в режиме online на команде меню PLC > Module Information [Контроллер >Информация о модуле]

Редактор FUP при каждом вводе данных совершает синтаксическую проверку (было бы хорошо если эта возможность была при верстке этих страниц). При этом синтаксические ошибки отображаются, неправильное размещение элементов FUP и ошибочные адреса отвергаются немедленно.

Запуск из SIMATIC Manager

Редактор FUP запускается из SIMATIC Manager. Для начала Вы должны сначала создать в SIMATIC Manager проект, содержащий S7-программу. S7-программу можно создать так, чтобы она зависила или не зависила от аппаратных средств. Можно или вставить S7-программу непосредственно в проект, или редактировать S7- программу, соответствующему программируемому модулю. Сама программа может служить в качестве контейнера для блоков, файлов с исходными текстами или планов. Используя редактор FUP, можно работать только с блоками, хранящимися в папке ”Blocks” [“Блоки”].


Создание блока

Для создания первого блока сначала необходимо создать в SIMATIC Manager’е пустой блок, с помощью которого Вы затем сможете открыть редактор. Открыв редактор FUP, Вы затем сможете создавать другие блоки.
• В SIMATIC Manager’е Вы можете выбрать папку ”Blocks” [“Блоки”] и вставить желаемый тип блока, выбрав Insert > S7 Block ... [Вставить > Блок S7 ...]. Новый блок появляется в правой стороне окна проекта.
• Оказавшись в редакторе, Вы можете создать новый блок, выбрав File > New [Файл > Новый]. В появившемся диалоговом окне предлагается определить требуемый тип и номер блока.

При создании блока Вы одновременно выбираете язык программирования, который хотите использовать. На основе этого выбора открывается соответствующий редактор. Для программирования на FUP выберите его в качестве рабочего языка следующим образом:
• В SIMATIC Manager’е в диалоговом окне ”Properties” [“Свойства”]
• В редакторе FUP в диалоговом окне ”LAD/STL/FBD” [в немецком варианте -“KOP/AWL/FUP”] в закладке ”Editor” [“Редактор”], которая выбирается в строке меню через Options > Customize [Параметры > Настройка].
PLC > Download [Контроллер > Загрузить] загружает открытый блок в CPU. Создав блоки для своей программы, загрузите их в CPU S7, используя SIMATIC Manager.

Примечание
Загрузка созданных блоков по отдельности в CPU не всегда достаточна, так как иногда могут потребоваться данные о конфигурации системы. Кроме того всегда есть риск забыть загрузить какой то блок или потерять путь к определенному блоку. Поэтому следует загружать полную программу в SIMATIC Manager’е.

Редактор FUP имеет следующие функции, которые могут оказаться полезными при создании и запуске программ.

Функция
Команда меню
Вызов справочных данных о программе пользователя Options > Reference Data [Параметры > Справочные данные]
Редактирование таблицы символов или отдельных символов Options > Symbol Table [Параметры >
Таблица символов] или
Options > Edit Symbols [Параметры >
Редактировать символы]
Наблюдение/управление переменными PLC > Monitor/Modify Variables [Контроллер > Наблюдение/управление переменными]
Отображение/изменение режима работы или сброс памяти CPU PLC > Operating Mode [Контроллер > Режим работы] или PLC > Clear/Reset [Контроллер > Сбросить]
Отображение состояния выбранного модуля PLC > Module Information [Контроллер > Информация о модуле]
Установка времени и даты CPU PLC > Set Time and Date [Контроллер > Установить время и дату]

 

Правила, которые необходимо соблюдать

Порядок, в котором создаются логические блоки и блоки данных в программе пользователя, имеет важное значение. Как правило: если блоки вызываются внутри других блоков, то вызываемые блоки уже должны существовать перед тем, как программируются их вызовы. Ввод несуществующего блока в качестве элемента FUP невозможен. Если несуществующий блок программируется с использованием команды CALL, то сообщение об ошибке появляется при сохранении программы, так как вызываемый блок не может быть найден. Используя STEP 7, Вы можете редактировать программу пользователя, хранящуюся в CPU, в режиме online, когда CPU находится в RUN.

Предупреждение
Модификация работающей программы в режиме online может привести к неправильному функционированию и непредвиденным реакциям в Вашей установке, что может вызвать травмы персонала или нанести ущерб оборудованию. Если CPU включен online и находится в режиме RUN, изменение программы пользователя, хранящейся в CPU, может привести к ситуациям, при которых машины и устройства внезапно включаются или выключаются, при этом возможно травмирование персонала или повреждение оборудования. Всегда планируйте последовательность событий в Вашем процессе в соответствии с правилами техники безопасности. Никогда не пытайтесь изменять работающую программу в режиме online, не обдумав сначала последствия своих действий и не приняв надлежащих мер, предотвращающих несчастные случаи. И если это произойдет Вы будете нести полностью ответственность!!!

Хочу напоследок добавить, лучше всего править Вашу рабочую программу стационарно а затем перегружать в Вашу установку. Необходимо понимать, что даже если Вы все и продумали заранее то при включенной машине процессор может запросить именно тот блок который Вы в данный момент переносите и в результате код может быть прочитан не полностью, а последствия сказаны выше!

 

    Следующая статья-->
сделано djoni политика конфидициальности Rambler's Top100