Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Языки, основанные на применении аппарата алгебры логики
Каждая команда на таком языке выполняет элементарную логическую функцию и записывается в виде мнемокода, например RD (Read) считать (опросить) состояние начального операнда цепи или логического уравнения; AND – логическое умножение (функция И); ОR- логическое сложение (функции ИЛИ); WRT (Write)- запись (посылка) результата логической операции на выход.
Рис.6.4. Схема программирования на языке алгебры логики
Уравнение, соответствующее этой схеме Y = (X1 + X2) X3 Программирование:
Мнемокод позволяет записывать программу по логическому уравнению. Необходимо составление распечатки программы, содержащей 4 поля: 1-шаг программы; 2-команда; 3-операнд; 4-коментарий. Это трудоемко, но позволяет легко ориентироваться в программе и вносить необходимые изменения. Языки широко распространены, так как сочетают простоту освоения с хорошими техническими возможностями и при достаточном наборе функциональных инструкций позволяют решать многие за дачи (они получили наибольшее распространение). 6.5. Языки типа мнемокода Языки типа мнемокода или языки символического кодирования для программирования применяются значительно реже, чем СБА и РКС. Применение мнемокодов в ПЛК явилось некоторым переходным этапом от явно выраженного машинного языка типа ассемблера к языкам более высокого уровня, поэтому мнемокоды, применяемые в ПЛК, можно рассматривать как версию специализированного, проблемно-ориентированного макроассемблера. Рассмотрим несколько команд языка программирования микроконтроллера, приведенных в табл. 6.1, и примеры составления управляющих программ с использованием этих команд. Для реализации логической функции " И" для сигналов, поступающих на входы 01 и 02, и возбуждения при этом выхода 01 программа: 000 1Е01 001 0402 002 0В00 003 0501. Таблица 6.1 Команды языка программирования
а для реализации логической функции " ИЛИ" для тех же сигналов программа будет иметь такой вид: 000 1Е01 001 0А05 002 1Е02 003 0А05 004 0900 005 0501. В сравнении с языком СБА для выполнения логических операций " И" и " ИЛИ" затрачивается в 2-3 раза большее число команд, а управляющая программа выглядит менее наглядной.
6.6. Основные направления развития и совершенствования языков программирования ПЛК Во многих ПЛК стали применять языки, которые имеют различные названия, но по существу являются вариантами одного языка - языка команд. Язык команд следует рассматривать как развитие и расширение языка СБА, так как в нем кроме команд, реализующих логические функции, имеются, например, три команды описания разветвляющихся алгоритмов: " ЕСЛИ", " ТО", " ИНАЧЕ", ряд вспомогательных команд, обеспечивающих запоминание, пересылку, форматирование данных а также и арифметические операции. (Языки, формирующие задачи на обиходном языке). Примером служит ПК типа FPC фирмы “Фесто” (ФРГ). Для той же схемы
Языки несколько непривычны и требуют привыкания.
Язык функциональных диаграмм Графсет (Grafcet), Франция. Программирование ПЛК на данном языке осуществляется в два этапа: на первом строится граф, интерпретирующий алгоритм управления, а на втором - осуществляется привязка переменных графа ко входам-выходам контроллера и составляются соответствующие булевы уравнения. Графическое представление алгоритма по методологии Графсет следует рассматривать как усовершенствованную модель традиционной блок-схемы алгоритма, в которой используются не только два основных типа операторов блок-схем (функциональный и условия перехода), но и целый ряд других, что позволяет приблизить графическое представление алгоритма управления к детальному технологическому описанию функционирования объекта управления. В языке Графсет используются следующие понятия: этап (соответствует традиционному шагу алгоритма), воздействия, связанные с этапом (функциональные операторы), переходы, символы расхождения (начало параллельной ветви), символы схождения (возврат к одной ветви). Этапы в свою очередь подразделяются на активные и неактивные, при этом неактивные бывают либо пассивными либо активируемыми и ряд других понятий. Язык Графсет не получил сколько-нибудь широкого распространения, - его применяют лишь несколько французских фирм. При описании алгоритмов программного управления агрегатами ограниченной сложности язык Графсет позволяет исключительно наглядно (прозрачно) представить процесс функционирования объекта управления. По мере увеличения уровня сложности управляемых объектов наглядность представления процесса управления резко снижается (так же, как и при использовании в этом случае традиционных блок-схем алгоритмов). Графсет оказался весьма полезным при разработке новых вариантов языков функциональных диаграмм. Язык функциональных блоковых диаграмм (Function Block Diagram, FBD)(Zelio Logic), который с помощью современных инструментальных средств (инструментального пакета Ultralogik,) позволяет пользователю осуществить так называемое объектное визуальное (непосредственно на экране дисплея) программирование алгоритмов управления промышленными объектами. Язык функциональных блоковых диаграмм (ФБД) позволяет на экране дисплея строить по существу функциональную электрическую схему управляющего устройства путем компоновки логических и других функциональных модулей, в том числе таких, как регуляторы, усилители, преобразователи и др. В языке ФБД снижение наглядности компенсируется удобствами технологии программирования, предоставляемой пакетом Ultralogik, а именно: " не отходя" от компьютера можно осуществить конфигурирование ПЛК (т.е. выбор необходимых по типу и количеству модулей ввода-вывода и их размещение в каркасе), привязку входов-выходов ПЛК к датчикам и исполнительным механизмам управляемого объекта, составление функциональной схемы, автоматическое преобразование ее в управляющую программу, объединение отдельных программных модулей в единый проект, а также отладку и корректировку разработанного программного обеспечения.
Контрольные вопросы:
/. Перечислите основные требования, предъявляемые к языкам программирования ПЛК. 2. Перечислите известные языки программирования ПЛК. 3. Дайте характеристику языка релейно-контактных символов. 4. Дайте характеристику языка символов булевой алгебры. 5. Дайте характеристику языков типа мнемокода. 5. Дайте характеристику языка основанного на применении аппарата алгебры логики. 5. Дайте характеристику языка формирующего задачи на обиходном языке. 6. Охарактеризуйте основные направления развития и совершенствования языков программирования ПЛК. Приложение к лекции 4 Функциональные команды
Работа с подпрограммами
Таймер
Счетчики
Работа с данными при (R0=1)
Инструкции сравнения
Загрузка констант в аккумулятор
Прочие
Арифметические инструкции
Операции с файлами
Экстренные сообщения
Преобразования кодов
|