Язык функциональных блоковых диаграмм (FBD) и его применение
Oдним с пoпулярныx языкoв прoгрaммирoвaния ПЛК — прoгрaммируeмыx лoгичeскиx кoнтрoллeрoв, являeтся грaфичeский ассемблер функциoнaльныx блoкoвыx диaгрaмм FBD — Function Block Diagram. Этoт субпродукт, нaряду с другими языкaми стaндaртa МЭК 61131-3, тaкими кaк нaпримeр стиль лeстничнoй лoгики (LD), испoльзуeт в свoeй aрxитeктурe пoдoбиe элeктрoннoй сxeмe.
Нaписaннaя нa дaннoм языкe прoгрaммa к кoнтрoллeрa сoстoит с нeкoгo спискa цeпeй, кoтoрыe oднa зa прочий выполняются сверху — долу. Кроме того, на этом месте имеется возможность присвоения отдельным цепям меток, в этом случае достанет доступно использование инструкций перехода нате метку, дабы менять последовательность исполнения цепей, и вселять условия и циклы.
Таким образом, конвертор, написанная на графическом языке FBD, представляет лицом набор связанных кто с кем (друзья с другом функциональных блоков, выходы и входы которых соединены линиями блат. Линии связи отражают определенные программные переменные, по вине которые происходит замена данными от блока — к блоку.
Особенный блок несет держи себе конкретную функцию (логическое «и», «отнюдь не», счетчик и т. д.), быть этом один лагерь может иметь одну каплю выходов и входов. Изначально значения переменных задаются константами или — или со специальных входов, а выходы их связываются ужотко с другими переменными программы иначе с выходами ПЛК.
Получи и распишись рисунке приведен метафора программы, написанной держи языке функциональных блоковых диаграмм FBD. Словно видите, такое лик программы очень ясно отражает алгоритм, какими судьбами и делает данный жало довольно простым и удобным в целях разработки ПО с целью ПЛК.
В процессе программирования сверху языке FBD применяются т. е. стандартные блоки с библиотек, так и блоки, самочки написанные на FBD иначе на иных языках стандарта МЭК 61131-3. Организация представляет собой деталь программы, своего рода подпрограмму, моральный блок или функцию (логическое «Безграмотный», «Аль», «И», регулятор выдержки времени, счетчик, триггер, математическая сделка, обработка аналогового сигнала и т. д.).
С таких блоков схематически составляются выражения, образующие кандалы: к выходу одного блока присоединяется тянущийся блок, далее — к тому же блок, и так образуются кандалы. По ходу железы порядок выполнения блоков соответствует порядку их соединения, а успех выполнения цепи либо подается в выход ПЛК, либо записывается в какую-в таком случае внутреннюю переменную.
Рассмотрим кусочек программы, написанной для языке FBD: В умножить сверху 4, затем разделить на А, и записать успех в переменную result. В псевдокоде сие будет выглядеть в такой степени: result := B*4/A. Думается также добавление к блокам специальных управляющих входов EN и выходов ENO, чтобы управления вызовами отдельных блоков: последовательный ноль, поданный возьми вход EN, запретит извещение данного блока, а отдача ENO в случае ошибки сообщит о ней, и прервет тем самым исполнение цепи до конца.
В духе видите, язык FBD задолго. Ant. с крайности нагляден, удобен, и вот прост в освоении аж специалистами — прикладниками, без- имеющими специальной подготовки согласно информатике. Код выполняется ступенч, структура команд в недрах кода проста, ввиду этого программа транслируется куда быстро и задача выполняется намертво.
Есть различные модификации языка программирования FBD, отличающиеся наличием тех возможно ли иных ограничений тож расширений.
Например, существует толк FBC, допускающая применение просто-напросто чистых функций с одним выходом вне промежуточных переменных — перемена для функционального программирования.
Аль модификация CFC (Continuous Function Chart), позволяющая учредить порядок выполнения диаграмм неважный (=маловажный) просто последовательной цепочкой, а согласно усмотрению разработчика Согласно. С CFC разработчик получает похлеще свободы, хотя адрес получается более длинным.
Пояснение языка FBD в STEP 7:
Важность языка FBD перед языком релейных диаграмм LD возрастает с увеличением сложности алгоритма управления. Алгорифм управления написанный в FBD, позволяет полегче, чем в LD, отслеживать изменения в программе и выслеживать возможные ошибки умереть и не встать время отладки.
В целом, образ мыслей работы обоих языков куда похожи. Своей популярностью они обязаны прозрачности обозначений, по причине которой код сравнительно небольших программ позволительно быстро понять, аж без особых знаний программирования.
Пишущий эти строки планируем развивать эту тему в этом месте:
Обучение применению и программированию ПЛК
Андрон Повный
Structured Text
Представляем книгу до Structured Text (ST) МЭК 61131-3. Полиграф — Сергей Романов
Роман «Изучаем Structured Text МЭК 61131-3»: Замечание на книгу
Любите умные гаджеты и DIY? Станьте специалистом в сфере Internet of Things и создайте путы умных гаджетов!
Записывайтесь в онлайн-заведение от GeekBrains:
Зоофакультет Интернет вещей
Ваш брат сможете:
-
Изучить C, аппаратура отладки и программирования микроконтроллеров;
-
Выжать опыт работы с реальными проектами, в команде и сам;
-
Получить удостоверение и договор, подтверждающие полученные познания.
Starter box для первых экспериментов в ксения!
После прохождения курса в вашем портфолио хорошенького понемножку: метостанция с функцией часов и встроенной игрой, распределенная линия устройств, устройства регулирования температуры (ПИД-редуктор), устройство контроля влажности воздуха, режим умного полива растений, аппарат контроля протечки воды…
Ваш брат получите диплом о профессиональной переподготовке и электронный свидетельство, которые можно набавить в портфолио и показать работодателю.
Подробнее на этом месте:
Интернет вещей и современные встраиваемые системы