Примеры программ сименс лого

Недавно был у меня спор с одним товарищем (монтажником) по поводу программируемых реле, их отличий от ПЛК и т.п. В общем-то закончилось всё предсказуемо, во-первых, тем, что нет строго определения «программируемого реле», поскольку понятие «контроллер» слишком широкое и включает в себя и программируемые реле тоже. Во-вторых, надо выбирать оборудование в зависимости от решаемой задачи. Нет смысла переплачивать тысячи долларов за какой-нибудь дорогой ПЛК, если можно купить дешевле, долларов за 500, равно как и нет смысла покупать программируемое реле за 10 000 рублей то, что не позволит быстро и эффективно решить задачу, которую можно решить с помощью ПЛК за 20 000 рублей.

В этой статье я хочу рассказать о некоторых нюансах при программировании наноконтроллера (программируемого реле) Siemens LOGO! Сравнивать его я буду с микроконтроллером Siemens S7-200, который стоит вдвое дороже, но при этом имеет гораздо больше функций. Контроллер S7-200 был снят с производства в Германии в конце 2012 года и формально заменён на линейку S7-1200.

Siemens LOGO! Базовые функции

Однако, сравнивать LOGO! с S7-1200 не имеет смысла, поэтому сравним всё же с S7-200, к тому же в Китае их по прежнему производят, и своей актуальности они не потеряли. Я здесь не буду описывать что-то невероятное для LOGO!, например, сложные математические операции, которые запросто можно осуществить на S7-200. Остановимся на булевой алгебре, т.е. на том, что можно осуществить на языках LAD и FBD, представленных в обоих рассматриваемых контроллерах. Я не использую язык FBD с некоторых пор, поэтому примеры будут только на LAD и, дополнительно, на STL (STL или обобщённое название IL — Instruction List — аналог языка Ассемблера, только для ПЛК), который есть в S7-200.

Адреса я буду писать в формате для S7-200, а в фигурных скобках после них — те же адреса для программы для LOGO!.

Многократное присвоение

Главная проблема LOGO! — невозможность многократного присвоения значения одному и тому же элементу в разных частях программы.

Например, у нас имеется три дискретных входа: I0.1 , I0.2 , I0.3 , по которым срабатывает авария. И есть вход I0.7 для подтверждения аварии. Бит аварии храним в V0.1 .

Напишем программу на Step-7/MicroWIN на языке STL (IL) для S7-200:

Переведём эту программу на LAD для того же S7-200:

А теперь попытаемся изобразить нечто подобное на LOGO!

На первый взгляд проблем нет. Но мы видим явные отличия от программы для S7-200. Заключаются они в том, что у нас нет возможности создать несколько блоков с названием SF001 и для каждого из них производить операции присвоения (S) и сброса (R). Вот для S7-200 мы как раз могли сделать их все вместе, получив программу вида:

SIEMENS LOGO! — обзор и применение ПЛК от Siemens, замена импульсным реле | KonstArtStudio

LD I0.1
O I0.2
O I0.3
S V0.1, 1
LD I0.7
R V0.1, 1

Она работала бы как мой пример для LOGO!, но нам этого как раз не нужно, нам, наоборот, нужно присваивать значения одному и тому же элементу в разных частях программы. На LOGO! мы этого сделать так просто не можем (т.е. теоретически можем, но такую программу будет невозможно нормально просматривать и редактировать), поэтому придётся изворачиваться. Для начала создадим переменные, которые будут отвечать установку бит SF001. Для I1, I2 и I3 это будут биты SF002, SF003 и SF004 соответственно.

Теперь, по идее, нужно по битам SF002, SF003 и SF004 установить бит SF001. Но и тут есть нюанс, а заключается он в том, что поскольку установленный бит SF001 сбрасывает любой из битов его устанавливающих, то LOGO! не даст вам создать такую программу.

Чисто теоретически, такое ограничение — бред, ибо мы имеем дело лишь с пародией на настоящюю релейную схему. На самом деле у нас тут самая обычная программа, которая в машинном коде никаких «блоков» не содержит. Т.е. программа выполняется сверху вниз слева направо, и все ограничения на «рекурсию» искусственны. Но сделать мы ничего с этим не можем, кроме как дополнительно усложнять программу:

Задействовав промежуточный бит M1, мы решили задачу.

Чтобы понять, насколько больше стало бы кода, напишим программу в таком виде на STL для S7-200:

Знаете, что такое «китайский код»? Это вот он самый.

Казалось бы, уж таймеры в программируемом реле должны быть коронной фишкой. Ну, например, есть не самый удобный способ установки бита и его сброса по таймеру в ПЛК S7-200:

Пришлось написать 8 строк кода и задействовать два таймера для простейшей, казалось бы вещи: по одному и тому же биту I0.1 устанавливать с задержкой в 1 секунду бит M0.1, по нему же с такой же задержкой сбрасывать тот же бит.

Читайте также:
Топ программ для учебы

Попробуем воспользоваться стандартной функцией On-/Off-Delay.

. и получаем совсем не то, что хотели. Т.е. первоначально бит устанавливается с задержкой 1 секунда. Но впоследствии, если сигнал I1 пропадает (меньше, чем установленная на выключение 1 секунда), а затем снова появляется, то T001 всё равно сбросится в 0 на некоторое время, которое будет проходить между тем, как таймер на выключение досчитает, а таймер на включение ещё нет. Зачем нужен такой элемент как On-/Off-Delay — мне не понятно.

Попробуем другой способ, задействуем On-Delay (T002) и Off-Delay (T001):

Опять ничего не вышло. Дело в том, что T002 и T001 не должны быть одновременно включены, согласно нашей логике, а именно так оно и получается, поскольку Off-Delay не включается при выключении входа (с паузой), как нам надо, а просто включается вместе с включение входа, а при его выключении с паузой выключается.

Такой способ тоже ничего не даст:

В итоге, прекращаем заниматься ерундой и реализуем по аналогии с S7-200:

Короче говоря, никаких преимуществ перед S7-200 мы не увидели, а нашли лишь пару ненужных функций.

Итог: если вам надо реализовать управление контроллера безопасности (Safety Controller), управление системой загазованности или простейшей насосной станцией, то программируемое реле вполне можно использовать. Но достаточно, казалось бы, небольшого усложнения задачи, и потребуется уже нормальный ПЛК. Я бы не рекомендовал рисковать. Лучше купить китайский S7-200, чем долго и упорно мучиться с LOGO! (которые, кстати, уже несколько лет в Германии тоже не делают, а делают всё в том же Китае).

Источник: montazhka.blogspot.com

Кафедра «Мехатронные системы»

Методическое пособие к выполнению лабораторной работы

«Знакомство с основными принципами работы программируемого логического контроллера

1 Цели и задачи лабораторной работы……………………. … 3

2 Содержание лабораторной работы и требования к отчету 3

3. Знакомство с LOGO ……… 4

4. Монтаж и подключение LOGO 5

4.1 Подключение входов LOGO 5

5. Программирование LOGO 6

5.1 Соединительные элементы 7

5.2 Блоки и номера блоков 7

5.3 От коммутационной схемы к LOGO 9

5.4 Ввод и запуск коммутационной программы 11

5.5 Объем памяти и размер схемы 12

6 Функции LOGO 15

6.1 Константы и соединительные элементы 15

6.2 Список основных функций – GF 16

6.3 Основные сведения о специальных функциях 23

7 Применения 23

7.1 Насос для хозяйственной воды 23

7.2 Требования к системе управления насосом для хозяйственной воды 24

7.3 Предыдущее решение 25

7.4 Насос для хозяйственной воды с LOGO 230 RC 25

7.5 Другие возможности применения 26

8 Порядок выполнения лабораторной работы 27

9. Контрольные вопросы 27

10. Список литературы 28

Приложение А (обязательное) Варианты заданий………………………. 29

Введение

В пособии рассмотрены вопросы использования программного комплекса “LOGO!SoftComfortV5.0”. Приведены основные требования к содержанию лабораторной работы и отчета. Рассмотрены назначение, особенности программного комплекса “LOGO!SoftComfortV5.0”, компоненты и язык программирования – Список Инструкций , Диаграммы Функциональных блоков и Релейно-контактные схемы.

Приведен порядок выполнения проекта в программном комплексе “LOGO!SoftComfortV5.0”. Даны контрольные вопросы и список рекомендуемой методической и справочной литературы. В приложении приведен пример.

Ограничение

Для продолжения скачивания необходимо пройти капчу:

Источник: studfile.net

Результат: Программа LOGO!Soft Comfort создает новую, пустую коммутационную программу.

Следующий шаг – ввод данных о проекте, вы можете ввести данные своего проекта при помощи диалога меню свойств

Ввод информации о проекте.

После закрытия окна свойств проекта, вы увидите полный интерфейс пользователя программы LOGO!Soft Comfort. По умолчанию создается проект на языке FBD (или редактор по умолчанию, заданный командами Сервис/Параметры/Редактор). LOGO!Soft Comfort поддерживает два языка программирования: LD и FBD, выбрать язык проекта можно из меню «Файл»

меню выбор языка проекта.

В любой момент времени можно из меню «Файл» можно изменить язык проекта

Изменение языка проекта.

Интерфейс программирования для создания ваших коммутационных программ занимает большую часть экрана. Значки и логические связи коммутационной программы располагаются на этом интерфейсе программирования. Для того, чтобы помочь вам выполнять обзор больших коммутационных программ, на правой стороне и внизу интерфейса программирования имеются полосы прокрутки, которые вы можете использовать для прокрутки коммутационной программы в вертикальном и горизонтальном направлениях.

Интерфейс программирования на языке FBD.

2. Стандартная панель инструментов

3. Интерфейс программирования

4. Окно информации

5. Строка состояния

6. • Постоянные и соединители
• Базовые функции (только для редактора функциональных блок-схем)
• Специальные функции

7. Панель инструментов программирования

Панель меню

Панель меню расположена в верхней части окна LOGO!Soft Comfort. На ней располагаются различные команды для редактирования и управления коммутационными программами, а также функции для задания параметров по умолчанию и для передачи коммутационной программы в систему LOGO! и из нее.

Панели инструментов

Программа LOGO!Soft Comfort содержит следующие три панели инструментов:

Читайте также:
Программа повер поинт проверяет орфографию текста

• Стандартная панель инструментов

• Панель инструментов программирования

• Панель инструментов эмуляции

Создание коммутационной программы

Для создания коммутационной программы необходимо выполнить следующие шаги:

1. Создать новую коммутационную программу.

2. Выбрать блоки

3. Разместить блоки

4. Выполнить конфигурирование блоков и снабдить их комментариями

5. Соединить блоки

6. Выполнить оптимизацию коммутационной программы (не обязательно)

7. Сохранить коммутационную программу

Обратите внимание на то, что не все блоки будут доступны при определенных обстоятельствах.

Практический пример составления коммутационной программы

Дождевая вода собирается в бак. Из бака она подается насосом в соответствующую систему водоснабжения. Из нее она может отбираться точно так же, как и питьевая вода. Для поддержания работоспособности системы в нее может подаваться питьевая вода, если в баке закончилась техническая вода.

Требования к системе регулирования

• Техническая вода должна быть в постоянном наличии. Система аварийного управления должна включать подачу водопроводной воды в резервуар при низком уровне технической (когда уровень воды между S3 и S4).

• Насос должен отключаться в случае низкого уровня технической воды (ниже S4) в баке.

На рисунке показана функциональная схема системы снабжения технической водой:

Функциональная схема системы снабжения технической водой.

Компоновка решения

Насос и электромагнитный клапан управляются при помощи реле давления и трех поплавковых выключателей, установленных в баке для технической воды. Насос должен включаться при падении давления в баке ниже минимального. По достижении рабочего давления насос снова выключается по истечении времени слежения в несколько секунд. Время слежения предотвращает частое включение и выключение насоса при продолжительном отборе воды.

Принципиальная схема системы управления.

Решение с использованием системы LOGO!

Подключение внешних устройств

Помимо устройства LOGO!, вам потребуется реле давления и поплавковые датчики для управления насосом.

Подключение датчиков и исполнительных механизмов к контроллеру LOGO!

Блок-схема демонстрирует порядок соединения органов управления насосом и электромагнитного клапана. Ее компоновка соответствует структуре принципиальной схемы.

Блок схема системы управления.

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

Определите порядок, в котором вы хотите вставлять блоки ввода/вывода, стандартные блоки или специальные функциональные блоки.

В разделе Co на панели инструментов программирования находятся константы и клеммы (только в редакторе релейно-контактной схемы), т.е. выбор входов/выходов и постоянных сигналов. В разделе GF находятся базовые логические функции булевой алгебры: стандартные цифровые логические блоки. В разделе SF находятся специальные функции. Вы также можете вызвать соответствующие группы функций при помощи функциональных клавиш.

[F6] Константы / Клеммы

[F8] Специальные функциональные блоки

Только в редакторе функциональных блок-схем:

[F7] Базовые функции

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

Пример для редактора функциональных блок-схем:

Выбор необходимого блока

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

Пример для редактора функциональных блок-схем:

Вставка необходимого блока

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

На этой стадии достаточно разместить блоки приблизительно в те положения, которые представляются вам соответствующими для выполнения последующих соединений. Точное размещение выполняется после всех соединений.

Размещение блоков в редакторе функциональных блок-схем.

Размещение блоков в редакторе релейно-контактных схем.

Для выполнения электрической схемы необходимо выполнить соединения блоков.

На панели инструментов программирования выберите значок соединения блоков

Наведите указатель мыши на соединительный элемент блока. Нажмите левую кнопку мыши и удерживайте ее нажатой. Переместите указатель мыши от исходного соединительного элемента к целевому соединительному элементу. Отпустите кнопку мыши. Программа LOGO!Soft Comfort выполняет соединение двух клемм.

Выполните ранее запланированное соединение блоков. Обратите внимание на преимущество, заключающееся в том, что вам показывается имя соединителя при подключении входа, что особенно удобно при работе с различными соединителями специальных функциональных блоков.

Соединение блоков в редакторе функциональных блок-схем.

Соединение блоков в редакторе релейно-контактных схем.

Некоторые из соединительных линий могут проходить через блоки. В этом виде компоновка коммутационной программы не является достаточно понятной. Для «очистки» интерфейса программирования выберите необходимые соединительные линии и блоки и переместите или выровняйте их так, чтобы добиться максимально возможной оптимизации коммутационной программы.

Выравнивание блоков и линий в редакторе функциональных блок-схем.

Выравнивание блоков и линий в редакторе релейно-контактных схем.

Компоновка большой схемы может вызывать трудности при ее интерпретации, особенно при наличии в ней большого числа пересечений линий. Вы можете оптимизировать расположение соединений при помощи инструмента «Разрезать/Связать» на панели инструментов программирования

Нажмите на соединение после вызова этого инструмента. Происходит графическое разделение выбранной соединительной линии. Тем не менее, соединение между блоками продолжает оставаться активным.

Читайте также:
Код страны производителя по штрих коду программа

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

Нажмите правую кнопку на линии, соединяющей два блока, которую вы хотите разрезать, после чего выберите команду резки. Вы можете также разрезать группу соединений, воспользовавшись для этого командой менюПравка -> Разрезать соединения. Перед тем, как разрезать какие-либо соединения существует возможность выбора критериев резки, например, вы можете разрезать все соединения, проходящие через блоки.

Оптимизация вида в редакторе функциональных блок-схем.

Оптимизация вида в редакторе релейно-контактных схем.

На этом составление коммутационной программы завершается. И начинается испытание коммутационной программы

Воспользуйтесь командой меню Сервис -> Эмуляция или значком эмуляции на панели инструментов программирования для перевода вашей коммутационной программы в режим эмуляции. В начале эмуляции программа LOGO!Soft Comfort проверяет коммутационную программу и отображает все имеющиеся в ней ошибки в информационном окне, которое вы можете вызвать при помощи команды меню Вид -> Информационное окно или нажатием функциональной клавиши [F4]. Вы можете также воспользоваться функциональной клавишей [F2] в информационном окне для отображения модулей LOGO!, способных выполнить вашу программу.

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

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

Вы можете установить значения аналогового напряжения или значения частоты для аналоговых и частотных входов при помощи ползункового переменного резистора. Нажмите соответствующий блок для раскрытия и использования этого ползункового регулятора непосредственно на схеме. Если вы хотите задать более точное значение, введите его непосредственно или введите его непосредственно клавишами «вверх/вниз», расположенных сбоку на окне ввода.

В режиме эмуляции выходы Q и флаг M отображаются как выходы. Статус выхода или флага отображается значком в виде светящейся или темной лампочки. Название выхода в вашей коммутационной программе отображается под значком.

Состояние выхода отображает только состояние как таковое. Вы не можете переключить состояние выхода нажатием на значок. Когда коммутационная программа включает выхода, индикаторная лампа светится; когда коммутационная программа выключает выход, индикаторная лампа также выключается.

В режиме эмуляции вы можете выбрать команду «Установить выход» нажатием правой кнопки мыши на цифровом выходе блока.

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

Пользователь может эмулировать аварию питания нажатием на значок Питание для прерывания подачи питания ко всем входам.

Значок питания, не задействовал

Значок питания, задействован. Эмуляция аварии питания

Эта функция может использоваться для проверки реакции схемы на аварию питания и перезапуск, а также ее свойства сохранения. В отличие от начала эмулирования свойства сохранения влияют на функцию «Авария питания». Начало эмуляции эквивалентно функции «Загрузить программу» системы LOGO!. Все значения сбрасываются, включая значения сохранения.

Переведите вашу коммутационную программу в режим эмуляции и убедитесь в том, что в ней нет ошибок.

моделирование работы программы для редактора функциональных блок-схем.

После внесения всех изменений и обеспечения требуемой работы вы можете начать документирование своей коммутационной программы.

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

Вам не обязательно отображать названия соединителей на экране. Тем не менее, вы должны задать названия соединителей, поскольку впоследствии может потребоваться распечатка перечня соединений. Из вкладки комментариев или диалога Файл -> Свойства вы можете добавить комментарий к своей коммутационной программе, который может быть включен в распечатку коммутационной программы.

Пример документации для редактора функциональных блок-схем приведен на рисунке

Программа с комментариями в редакторе функциональных блок-схем.

Для защиты вашего технологического решения и предотвращения несанкционированного доступа к вашей коммутационной программе вы можете назначить пароль перед ее передачей в устройство LOGO!.

Для назначения пароля воспользуйтесь диалоговым окном команды меню Файл- >Свойства или вкладкой Параметр. Введите ваш пароль и подтвердите нажатием на OK.

Защита паролем используется при передаче коммутационной программы в систему LOGO! и задействуется при выходе LOGO! из режиме передачи.

Пароль служит для защиты вашей коммутационной программы в системе LOGO!. Редактирование значений и параметров, а также просмотр коммутационной программы в устройстве LOGO!, или загрузка коммутационной программы из устройства LOGO! в ПК теперь возможны только после ввода пароля.

Источник: promtechautomat.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru