Густав Олссон, Джангуидо Пиани - Цифровые системы автоматизации и управления (1087169), страница 66
Текст из файла (страница 66)
Рмс.7. мс 7.20.!?Рпмер компактного ПЛК для промышленного применения. Кабеля ввода/ выво меода присоединяются непосредственно к устройству (с разрешения А!Га 1лча! Лпеоп|аеюп, Швеция) ПЛК ЛК можно программировать различными способами — с помощью асссмблсРеподобнь лобных команд, проблемно-ориентированных языков высокого уровня или рямым ап пциопальн |м описанием операций последовательностного управления с помощью фунециональн альных карт (раздел 7.4). В Европе наиболее популярно использование фуньо сях по альных блоков с графическими символами логических элементов, а в СШЛ Евв посл пор достаточно широко распространены принципиальныс схемы Однако 'Ра следних метода постепенно заменяются ВЛ8?С-подобными языками проммнрования, ' Рис.
7.21 показана основная структура ~р~граммируемого логического канна ера. Сначала входные сигналы считываются в регистр буферной памяти. Эта рояле Гик! ция всегда включается в системное пРограммное обеспечение ПЛК и не требу"яв ного программирования пользователем. Входной регистр может состоять н из 297 296 фаза 3: вывод сигналов фаза 2: обработка фаза 1: ввод данных выходной регистр втвдивй регистр входиые сипгалы ПРимер 7.4 7.3.2. Основные команды Глава 7. Комбинационное и последовательностное Упр авве „, одного бита, и из целого байта. В последнем случае один оператор считывали ил („ дет выдавать одновременно значения восьми входных бит. Рис. 7.21.
Основная структура программируемого логического контроллера (ш|фРг ми обозначены различные входные и выходные каналы) Программа может выбрать входное значение из этого регистра и затем обри або|а|| отдельно или вместе с другими данными. Выработанный результат можно ° о либо го. хранить для дальнейшей обработки, либо направить на выход. ежиме оеачьи В системах промышленной автоматики ПЛК должны работать в режим Р го времени, т, е.
быстро реагировать на внешние события, Ввод и обраб аботка инеи|ни сигналов осуществляется в ПЛК двумя способами — по опросу или по |треРыв ( аздел 10.бА). Основной недостаток опроса — можно потерять некотор события, если ПЛК не обладает достаточным быстродействием, хотя такой " проще для программирования.
Управление по прерываниям с мирования, но риск пропустить какое-либо внешнее событие намного минни ' гг равления по опросу обычно вполне достаточно для простых систем, а управ"е" прерыванию используется в сложных случаях. ие и авли'» ПРогРаммиРование ПЛКв основном пРедставлает собой описание УпРавл и1а.
последователь едовательностей. Функции вводаУвывода уже реализованы в базовом ииы иэ 1. ь мнем обеспечении 11ЛК. Программные инструкции, задаваемые одни' „э». санных выше способов (раздел 7.3.1), транслируются в машинный код П „„Рг' сказ пение программы происходит в бесконечном цикле. Кажлыи полныи цикл П ограммируемые логические контроллеры 73 Прог малых ПЛК составляет примерно 15-30 мс, и это время приблизительно игиия дл. рционально размеру программы „ епорц С орость реа ции ПЛК, очевидно, зависит от продолжите алости цикла, по- Скоро во время исполнения программы процессор ПЛК не может считывать или гквльку „какие-либо новые сигналы.
Обычно это не очень серьезная проблема, так вплавить , „иннство сигналов в промьппленной автоматике изменяются сравнительно ггк боль „„о либо имеют относительно большую продолжительность. иедлеии В большого набора базовых машинных команд, как правило, достаточно для болье»ииств' ва задач последовательностного управления. Программа, состоящая из этих ковали, н называется списком команд (гткзггисггоп Ы).
Некоторые основные команды пере- числе „,левы ниже; обычно они могут оперировать как битами, так и байтами. 13 131 загрузка значения из входного порта в сумматор, непосредственно (!г() либо с инверсией (1й); гаг(, аш операция АХП или ХАМ() между значениями в сумматоре и на входном порту; результат сохраняется в сумматоре; ог,оп' операция ОК или МОК между значениями в сумматоре и на входном порту; результат сохраняется в сумматоре; ои1 содержимое сумматора копируется в конкретный выходной порт и управляет выходными сигналами; значение в сумматоре не изменяется, поэтому его можно подвергнуть дальнейшей обработке или переслать на другой выходной порт. ПРограммирование ПЛК с помощью принципиальной схемы и списка команд Ло огическис операторы управления для ПЛК можно описать как с помощью "Ринципиальной схемы, так и списка команд (рис.
7.22). Ри с 7,22 уп чги пРавлиюш еоператоРы ПЛКв виде вР|п и алиной схе ы и списка ко и чог ая последовательность или принципиа|'ьвая схема часто бывают ическ ыми развет" что вынуждает сохранять промежуточные данные лля позднейшей обра- 299 Пример '7. Б П 12 13 О! 14 15 16 Пример 7.6 298 Глава 7. Комбинационное и последовательностное Уп, пРаиии„ ииа ботки. В репейных схемах это можно сделать с помощью специального рел „ е(с сач, удержанием); в ПЛК для этих целей существуют операторы огЬ (ОК В!ось) ) илии (АХР В!ос)с), которые помещают свой результат в стековую память ПЛК ааа Программа 1. Использование внутренней стековой памяти ПЛК принципиальная схема и список команд На рис.
7.23 показана принципиальная схема. Рве. 7.23. Пример использования стековой памяти в принципиальной схеме Соответствующий ей список команд: !д 11 значение из канала 1 считывается в сумматор (А); апг! 12 результат операции АХР сохраняется в Л; Ы 13 содержимое А помещается в стек, а значение из канала 3 считывается в Л: апа! 14 операция АХР со значениями из каначов 3 и 4; результат сохраняется в Л. огЬ операция ОК между значениями сумматора А и последним сохранен. цым в стеке значением; при этом результат остается в сумматоре А а временный элемент удаляется из стека; оцс О! вывод значения А в канал !.
Программа 2. Использование внутренней стековой памяти ПЛК— функциональные блоки и список команд На рис. 7.24 показана логическая цепь в виде функциональных блоков. Соответствующий список команд: Ы! ! значение из канала ! считывается в сумматор; апа! 12 результат операции АХР помещается в Л; !6 13 содержимое Л записывается в стек, а значение из канала 3 считывается сявЛ' апа! 14 операция АХР со значениями из каналов 3 и 4; результат сохраняется в А Ы 15 содержимое А записывается в стек, в значение из канала 5 считывается вА, апг( 16 операция ЛХР со значениями нз каналов 5 и 6; результат сохраняется вА; огЬ операция ОК между сумматором А и последним сохраненным в стеке значением; результат остается в А, а временный элемент удаляется из стека; аммируемые логические контроллеры .Р ПрогР ' оперирует с последним элементом стека — т.
е. результат операции АХР между данными из каналов ! и 2 — и содержимым сумматора Л; результат помещается в А, а последний элемент стека удаляется; Р! вывод значения А в канал 1. оог Рис. 7.24. Пример логической цепи в виде функциональных блоков 7.3.3. Дополнительные команды ПЛК Базовый набор команд программируемого логического контроллера может включать 'вгяческие операции ХОК, ХАХР, ХОК и др, Кроме того, современные ПЛК имеют оиераторы для обработки буквенно-цифровых данных и для связи с внешними устройоиам гиамн, а также дополнительные функции в виде счетчиков, таймеров и генераторов ии я 'пульсов.
Импульсные сигналы можно, например, использовать для сброса (обнулеиия) в„ ° внешнего счетчика. С помощью модулей задержки входные и выходные сигналы мжво с "о ~двинуть по времени. Более сложные ПЛК могут генерировать прямоугольные !вагап в лКв!агриЬея) и пилообразные импульсы (гатруипсг!опз), а также содержать алгоРитмы ф ' фильтрации сигналов и управления с обратной связью. 73,4 Программирование ПЛК "!'!К обь Рои, 1, о ь'чно программируются с помощью внешних устройств — программатопр'пило, зти устройства не нужны для непосредственной работы ПЛК.
Проачмато лпивиы оры — это либо ручные специализированные устройства, либо обычные норме персональные компьютеры. Ручной ой программатор ПЛК выглядит как болыпой карманный калькулятор с про'" дисп вийон плеем. Каждый логический элемент принципиальной схемы нли програмоператор вводится специальными клавишами или их комбинацией. Воле ее мощный и набирающий популярность вид программатора ПЛК вЂ” это пер'иалы 'аольк ныи компьютер с графическим дисплеем Обычно дисплей показывает неко горизонталей принципиальной схемы од""временно. Для облегчения отлад- зоо Глава 7.
Комбинационное и поспедовательиостное у Упрннн няня ки и тестирования на экране иногда показывают ток, протекающий по ка. днйна при выполнении операции, чтобы сразу был виден эффект влияния вхо В некоторых случаях можно программировать, рисуя на дисплее схемы и ф дн на ны„ нальных блоков, каждый из которых вводится комбинацией клавиш иунл "~няня НЛН Ныл ется мышью из заранее сформированной таблицы. В последнее время все чаше применяются языки высокого уровня н сложные функции, например обработку аналоговых сигначов или специаньн , пото ньнын яя . ритмы регулирования, нельзя удовлетворительно описать с помощью огра„„„ ннченнян числа заранее определенных символов.
Поддержка программирования ПЛК „ няяян ке высокого уровня становится обязательным условием по мере возрастан„ ння слл„ ности операций. Новый стандарт 1ЕС 1131-3, ранее называвшийся 1ЕС 65А(БЕС)67, опрея,я пРедеяяе пять типов языковых средств для программирования ПЛК; — список команд (гпэггисггоп Ъг — 1Е); — функциональная блок-схема, т.е. схема на основе функциональных блея„ Ципсгюп Ь(осЬ Йидгат — ЕВ1)); — принципиальная схема (1агйвгйабтат — Е1)); — функциональная карта (эвдивпгга1 ) ипсггоп сЬагг — 5РС); — язык типа "структурированный текст" (заисгигвд Гвхг) с синтаксисом, пняяя ным языку программирования Разса1.
Структурированный текст и список команд представляют собой формулвронную го ритма в виде текста. Функциональная блок-схема, принципиальная схема и фуням опальная карта являются, наоборот, графическим представлением функций и сгР)я туры логических цепей. Таким образом, международный стандарт 1ЕС1!Л1. гарантирует широкий спектр возможностей для программирования ПЛК. 7.4.
Функциональные карты 7.4.1. Синтаксис функциональных карт и анленн' Необходимость структурирования процесса последовательностного упр чивается слн для неболыпих задач не сразу очевидна, но по мере того, как увеличивае ность управляющих действий, хорошее функциональное описание станов новится обия являютс~ "" тельным.