Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » 6. Языки программирования промышленных контроллеров

6. Языки программирования промышленных контроллеров (Лекции по дисциплине "Управляющие ЭВМ и комплексы")

PDF-файл 6. Языки программирования промышленных контроллеров (Лекции по дисциплине "Управляющие ЭВМ и комплексы") Электронные вычислительные машины (ЭВМ) (84322): Лекции - 8 семестр6. Языки программирования промышленных контроллеров (Лекции по дисциплине "Управляющие ЭВМ и комплексы") - PDF (84322) - СтудИзба2021-01-14СтудИзба

Описание файла

PDF-файл из архива "Лекции по дисциплине "Управляющие ЭВМ и комплексы"", который расположен в категории "". Всё это находится в предмете "электронные вычислительные машины (эвм)" из 8 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст из PDF

6. Языки программирования промышленных контроллеров (ПРК)Прикладное программное обеспечение (ПО) современных ПРК, имеющих встроенную операционную систему (ОС), может быть разработано как с использованием традиционных инструментальных программныхсредств (языки Си, Паскаль и т.д.), так и на основе специализированных языковых средств.Традиционная технология требует от разработчика прикладного ПО знаний не только в области алгоритмических языков программирования, но и особенностей ОС, а также аппаратных возможностей данного ПРК иорганизации системы ввода-вывода.

При этом разработанное ПО будет привязано только к данному типу ПРК ине может быть перенесено на другую аппаратно-программную платформу.Специальные платформо-независимые языки программирования ПРК могут быть применены для различных типов ПРК и разработанные с их помощью программы являются переносимыми, т.к. языки этого типастандартизированы.Одной из первых реализаций стандарта IEC1131-3 стала инструментальная система ISaGRAF, разработанная компанией CJInternational (Франция), в ней используется 5 языков программирования ПРК: 3 графических (SFC, FBD, LD) и 2 текстовых (ST, IL).Широкое распространение находит программная среда CoDeSys (Controller Development System) — инструментальный программный комплекс промышленной автоматизации (Германия), в ней доступны для программирования все пять определяемых стандартом языков.В них заложена методология структурного программирования, позволяющая пользователю представитьавтоматизируемый процесс в наиболее простой и понятной форме.

На рис. 1 отображены области примененияязыков программирования ПРК.УровеньязыкаРис. 1.SFCFlow ChartSTFBDILОбластьпримененияLDАнализПроектированиеПрограммированиеСовременные интегрированные многоязыковые системы программирования ПРК:- позволяют осуществлять разработку и тестирование прикладных программ для ПРК;- обеспечивают единую среду разработки программ для различных типов систем на нескольких языках;- соответствуют стандартам графического интерфейса пользователя Microsoft Windows;- предоставляют возможность создавать пользовательские функциональные блоки (ФБ).- содержат встроенный программный эмулятор работы ПРК (отладка без подключения к реальному ПРК).Язык последовательных функциональных схем - SFC (Sequential Function Chart)Характер многих объектов и технологических процессов предполагает выполнение отдельных операцийпоследовательно. В этих случаях разработчику ПО очень важно иметь средство программирования, которое позволяло бы наглядно воспроизводить структуру процесса.

Именно таким средством и является высокоуровневыйграфический язык SFC. Его основой является математический аппарат сетей Петри, позволяющий описатьпроцессы в форме двудольных ориентированных графов (рис. 2).М(Р2)=2Р1Р2Т1Т2Р3Т1Т3Р2Т2М(Р1)=1М(Р1)=1Р3Р1Р4Рис. 2.а)М(Р4)=1б)Т4М(Р3)=01Язык SFC позволяет описать блок-схему программы на уровне последовательных шагов (steps) и условных переходов (transitions), которые могут включать в себя элементы других языков (ST, IL, LD, FBD).

Каждому переходу сопоставлено логическое условие, а шагу – совокупность действий.Условные обозначения компонентов SFC-программ приведены на рис. 3.Программирование на SFC обычно разделяется на 2 различных уровня:уровень 1 - показывает графически блок-схемы, номера ссылок на шаги, переходы и комментарии, присоединённые к ним; описание шагов и переходов дается внутри прямоугольников, присоединенных к символам шага и перехода, в виде свободного комментария (который не является частью языка);уровень 2 – программирование действий внутри шага или условий, присоединённых к переходу, на языкеST или IL; подпрограммы, написанные на других языках (FDB, ST, LD или IL) могут обращаться к этим действиям или переходам.Начальный шагМакрошагИнициализация1Переход1Номер переходаНомер шага2Длинный переход(переход наконкретныйшаг)12Запуск двигателя2ШагКомментарий шагасравнениеКомментарий перехода33Рис. 3.

Условные обозначения в SFC-программах2Атрибуты шагаУ шага имеются атрибуты, которые могут быть использованы в любом другом языке:- GSnnn.x – характеризует его активность (логическая переменная);- GSnnn.t – характеризует продолжительность (время) его активного состояния;nnn – номер шага.На рис.

4 приведен пример SFC-программы, разработанной в среде ISaGRAF.КомментарийБулево действиеРис. 4.Действия внутри шагов и условия, соответствующие переходам.На втором уровне программирования осуществляется детальное описание действий, которые выполняются во время активности шага, и условий, которые соответствуют переходам. Переходы программируются чаще всего простыми булевыми выражениями, а шаг может содержать несколько различных типов действий (булевы, импульсные, не сохраняемые, SFC-действия).Действия внутри шагов могут быть следующих типов:- Булевы действия и SFC-действия (управление дочерними SFC-программами), описываемые с помощьюограниченных текстовых возможностей самого языка SFC (рис. 5);2- Импульсные действия (“Pulse” и “Non-stored”), программируемые на ST и IL;- Вызов подпрограмм, написанных на любом языке кроме SFC.В одном и том же шаге может быть описано несколько действий одного или разных типов.GS10.х - Атрибут шага - активность шагаGS10.х10Рис.

5. Пример булевскихдействий в шаге SFC-программы(*Булевские действия*)BdirectBdirect(N) ;/Binvert ;Bset(S) ;Breset(R) ;BinvertBsetBresetТипы параллельных соединенийРасхождения – множественные связи от одного шага или перехода ко многим. Схождения – множественные связи от более чем одного шага или перехода к одному другому. При обозначении схождений и расхождений используются одиночные или двойные линии.Альтернативные расхождения и схождения обозначаются одиночными линиями. Расхождение альтернативное (рис.

6) – это множественная связь от одного шага к нескольким переходам. Активной становится однаиз ветвей (в зависимости от активности того или иного перехода). Проверка активности переходов осуществляется слева направо.Рис. 6. Фрагменты программ, написанных на языке SFC(альтернативное расхождение)Каждая альтернативная ветвь начинается и заканчивается собственным условием перехода. Если верноеусловие найдено, то прочие альтернативы не рассматриваются.

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

Каждая параллельная ветвь начинается и заканчивается шагом. Т.е. условие входа в параллельностьвсегда одно, условие выхода тоже всегда одно на всех. Параллельные ветви выполняются теоретически одновременно. Практически – в одном рабочем цикле, слева направо. Условие перехода, завершающее параллельность,проверяется только в случае, если в каждой параллельной ветви активны последние шаги.Расхождение параллельное – это множественная связь от одного перехода к нескольким шагам. Она соответствует параллельному функционированию процесса. Схождение параллельное – это множественная связьот нескольких шагов к одному и тому же переходу.

Используется, чтобы объединить несколько ветвей SFC,начавшихся их параллельного расхождения.Иерархия программы SFC. В системе ISaGRAF каждая SFC-программа может управлять (запускать, уничтожать, и т.д.) другими программами на этом же языке (SFC), которые в таком случае называют дочерними про3граммами той программы, которая ими управляет. SFC-программы объединяются в иерархическое дерево на основе “родственных” отношений (родитель-наследник).Язык функциональных блок-схем - FBD (Function Block Diagram)FBD – графический язык - применяется для построения комплексных процедур, состоящих из различныхфункциональных библиотечных блоков – арифметических, логических, регуляторов и т.д. При этом осуществляется представление функций посредством блоков, связанных между собой.Объектами языка FBD являются: 1) элементарные функции и элементарные функциональные блоки(ФБ), находящиеся в библиотеке; логика их работы/программа написана на языке С и не может быть изменена вредакторе FBD; изменять можно только их параметры; 2) функции и ФБ пользователя (конструируются пользователем из элементов языка FBD).Разработка программы осуществляется с помощью графического редактора посредством формированияблок-схемы из перечисленных выше компонентов, которые объединяются друг с другом.

Последовательностьобработки отдельных компонентов в программе определяется потоком данных.FBD-программа строится из стандартных элементов библиотеки (например, ISaGRAF, КОНГРАФ и др.).На рис. 7,8 приведены примеры FBD-программ в среде КОНГРАФ и ISaGRAF.Рис. 7Рис. 84Язык релейных диаграмм - LD (Ladder Diagram)Язык LD – это графический язык - применяется для описания логических выражений различного уровнясложности, графического представления булевых уравнений. Он содержит контакты (входные аргументы) икатушки (выходные переменные).

Элементы организуются в сеть релейно-контактных схем. При необходимостиможно реализовывать более сложную логику, используя, например элементы языка FBD.Каждому контакту ставится в соответствие логическая переменная, определяющая его состояние. Ее имяставится над контактом и служит его названием. Если контакт замкнут, то переменная имеет значение true, еслиразомкнут – false.Последовательное соединение контактов или цепей соответствует логической операцииИ/AND, параллельное – ИЛИ/OR.

Нормально замкнутый (инверсный) контакт равнозначен логической операцииНЕ.Релейно-контактные схемы и элементыРелейная схема представляет собой 2 вертикальные шины питания, между которыми расположены горизонтальные цепи из контактов и катушек реле. Графические символы языка LD соответствуют элементам электрических цепей и имеют те же названия и обозначения (табл.

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5184
Авторов
на СтудИзбе
436
Средний доход
с одного платного файла
Обучение Подробнее