Jump to content

Search the Community

Showing results for tags 'русский'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


PLC & HMI product application technology forum!

  • Commonly used PLC brand product application technology discussion area!
    • Siemens PLC Forum
    • Allen Bradley PLC Forum
    • Mitsubishi PLC Forum
    • Schneider PLC Forum
    • Omron PLC Forum
    • B&R PLC Forum
    • ABB PLC Forum
    • Honeywell PLC Forum
    • Emerson PLC Forum
    • Hitachi PLC Forum
    • Rexroth PLC Forum
    • IDEC PLC Forum
    • Koyo PLC Forum
    • Delta PLC Forum
    • Eaton PLC Forum
    • Keyence PLC Forum
    • LS PLC Forum
    • Panasonic PLC Forum
    • Phoenix PLC Forum
    • Pilz PLC Forum
    • WAGO PLC Forum
    • Yokogawa PLC Forum
    • Toshiba PLC Forum
    • PEPPERL+FUCHS PLC Forum
  • Commonly used HMI brand product application technology discussion area!
    • Siemens HMI Forum
    • Fatek HMI Forum
    • Advantech HMI Forum
    • Weintek HMI Forum
    • Mitsubishi HMI Forum
    • Fuji HMI Forum
    • Pro-face HMI Forum
    • B&R HMI Forum
    • IDEC HMI Forum
    • Schneider HMI Forum
    • Weinview HMI Forum
    • LS HMI Forum
    • Omron HMI Forum
    • Panasonic HMI Forum
    • Delta HMI Forum
    • MCGS HMI Forum
    • beijer HMI Forum
    • Kinco HMI Forum
    • Redlion HMI Forum
    • XINJE HMI Forum
    • Samkoon HMI Forum
  • European PLC brand product application technology discussion area!
  • Americas PLC brand product application technology discussion area!
  • Asian PLC brand product application technology discussion forum!
  • European HMI brand product application technology discussion forum!
  • Americas HMI brand product application technology discussion forum!
  • Asian HMI brand product application technology discussion forum!
  • Industrial automation SCADA & HMI configuration software!
  • Technical discussion area related to industrial automation control
  • Commercial service area for PLC&HMI products of various brands!

Categories

  • PLC programming learning
  • HMI interface design
  • DCS control system
  • SCADA technology

Categories

  • European PLC & HMI brand
  • Americas PLC & HMI brand
  • Asian PLC & HMI Brands

Categories

  • PLC programming learning
  • HMI interface design
  • DCS control system
  • SCADA technology

Categories

  • PLC programming learning
  • HMI interface design
  • DCS control system
  • SCADA technology

Categories

  • PLC programming learning
  • HMI interface design
  • DCS control system
  • SCADA technology

Categories

  • PLC programming learning
  • HMI interface design
  • DCS control system
  • SCADA technology

Categories

  • PLC product technical files
    • Siemens PLC product technical files
    • Rockwell (Allen Bradley) PLC product technical files
    • Mitsubishi PLC product technical files
    • Schneider (Modicon) PLC product technical files
    • Omron PLC product technical files
    • Emerson (GE) PLC product technical files
    • Keyence PLC product technical files
    • Bosch (Rexroth) PLC product technical files
    • Hitachi PLC product technical files
    • Phoenix PLC product technical files
    • ABB (B&R) PLC product technical files
    • Beckhoff PLC product technical files
    • Fuji PLC product technical files
    • Toshiba PLC product technical files
    • IDEC PLC product technical files
    • Panasonic PLC product technical files
    • Koyo PLC product technical files
    • Honeywell PLC Product Technical files
    • Delta PLC product technical files
    • Eaton PLC product technical files
    • LS PLC product technical files
    • Pilz PLC product technical files
    • WAGO PLC product technical files
    • Yokogawa PLC product technical files
    • Fatek PLC product technical files
    • Festo PLC product technical files
    • Kinco PLC product technical files
    • RS Automation PLC product technical files
    • Velocio PLC product technical files
    • Wecon PLC product technical files
    • Controllino PLC product technical files
    • Entertron PLC product technical files
    • GIC PLC product technical files
    • IFM PLC product technical files
    • RS Enterprises PLC product technical files
    • Unitronics PLC product technical files
    • Other Brand PLC product technical files
  • HMI product technical files
    • Siemens HMI product technical files
    • Pro-face HMI Product Technical Documents
    • Weintek HMI Product Technical Documents
    • Weinview HMI Product Technical Documents
    • Rockwell (Allen Bradley) HMI product technical files
    • Mitsubishi HMI product technical files
    • Schneider (Modicon) HMI product technical files
    • Omron HMI product technical files
    • Emerson (GE) HMI product technical files
    • Keyence HMI product technical files
    • Bosch (Rexroth) HMI product technical files
    • Hitachi HMI product technical files
    • Phoenix HMI product technical files
    • ABB (B&R) HMI product technical files
    • Technical files of Beckhoff HMI products
    • Fuji HMI product technical files
    • Toshiba HMI product technical files
    • IDEC HMI product technical files
    • Panasonic HMI product technical files
    • Koyo HMI product technical files
    • Honeywell HMI Product Technical Files
    • Delta HMI product technical files
    • Eaton HMI product technical files
    • LS HMI product technical files
    • Pilz HMI product technical files
    • WAGO HMI product technical files
    • Yokogawa HMI product technical files
    • Fatek HMI product technical files
    • Festo HMI product technical files
    • Kinco HMI product technical files
    • RS Automation HMI product technical files
    • Velocio HMI product technical files
    • Wecon HMI product technical files
    • Technical File of other brand HMI products
  • PLC files language category
  • HMI files language category

Product Groups

  • PLC products
  • PLC accessories
    • PLC lithium battery
    • PLC memory card
    • PLC programmer
    • PLC data line
  • HMI products
  • HMI accessories
    • HMI protection installation box
    • HMI self-made assembly accessories
    • HMI communication cable
    • HMI circuit board card components

Blogs

There are no results to display.

There are no results to display.

Categories

  • PLC Brand video
    • Siemens PLC video
    • Mitsubishi PLC video
    • Alan Bradley PLC Video
    • ABB (B&R) PLC video
    • Schneider PLC Video
    • Beckhoff PLC Video
    • Rexroth PLC Video
    • Festo PLC Video
    • Emerson PLC Video
    • Honeywell PLC Video
    • Omron PLC Video
    • Delta PLC Video
    • Fatek PLC Video
    • Keyence PLC Video
    • Hitachi PLC Video
    • Phoenix PLC Video
    • Fuji PLC Video
    • Toshiba PLC Video
    • IDEC PLC Video
    • Panasonic PLC Video
    • Koyo PLC Video
    • Eaton PLC Video
    • LS PLC Video
    • Pilz PLC Video
    • WAGO PLC Video
    • Yokogawa PLC Video
    • Kinco PLC Video
    • RS Automation PLC Video
    • Velocio PLC Video
    • Wecon PLC Video
    • Other brand PLC videos
  • HMI Brand video
    • Siemens HMI video
    • Mitsubishi HMI video
    • Allen Bradley HMI Video
    • ABB (B&R) HMI video
    • Schneider HMI Video
    • Beckhoff HMI Video
    • Rexroth HMI Video
    • Festo HMI Video
    • Emerson HMI Video
    • Honeywell HMI Video
    • Omron HMI Video
    • Delta HMI Video
    • Fatek HMI Video
    • Keyence HMI Video
    • Hitachi HMI Video
    • Phoenix HMI Video
    • Fuji HMI Video
    • Toshiba HMI Video
    • IDEC HMI Video
    • Panasonic HMI Video
    • Koyo HMI Video
    • Eaton HMI Video
    • LS HMI Video
    • Pilz HMI Video
    • WAGO HMI Video
    • Yokogawa HMI Video
    • Kinco HMI Video
    • RS Automation HMI Video
    • Velocio HMI Video
    • Wecon HMI Video
    • Other brand HMI videos

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


date of birth

Between and

gender


Education degree


About Me


Mobile phone


website


address


WhatsApp


Messenger


Telegram


Line


Skype


Instagram


VK Messenger


Viber


Snapchat


Zalo


Kakao Talk


ICQ


QQ


WeChat


Taobao WangWang


Ali DingTalk

Found 42 results

  1. Когда вы работаете в системе промышленной автоматизации для программирования ПЛК, у вас есть требования, при которых вам необходимо контролировать процесс постепенно или поэтапно. Алгоритмы управления Вы не можете напрямую включить или отключить логику выполнения своей работы. Это может оказать неблагоприятное воздействие на фактический выходной сигнал ПЛК. По этой причине в программе ПЛК доступны различные типы методов управления для соответствующих действий. В этом посте мы увидим различные методы алгоритмов управления, которые используются в программе ПЛК. ПИД-регулятор Это, безусловно, самый известный метод контроля. ПИД-регулятор использует механизм замкнутого контура управления. Это означает, что сначала он получит обратную связь и в зависимости от вашего желания будет соответствующим образом изменять выходные данные. Для этого ПИД-регулятор использует внутренние математические вычисления с тремя параметрами – пропорцией, интегралом и производной. Итак, если вы хотите управлять чиллером с компрессором, то ПЛК будет управлять выходной мощностью компрессора, сначала измеряя фактическую температуру и сверяя ее с тем, сколько требуется пользователю. В зависимости от этой разницы каждый раз мощность компрессора будет либо регулироваться постепенно, либо включаться-выключаться для поддержания температуры. Для этого в программе ПЛК для выполнения этой задачи будет использоваться блок ПИД. Генератор функций Это очень простой тип метода управления. В генераторе функций вам необходимо определить входную таблицу из n значений. Аналогичным образом определите выходную таблицу из n значений. Так, например, если мы определим 10 таблиц значений как на входной, так и на выходной стороне, у нас будет элемент размером 10. Теперь эти 10 элементов будут иметь разные значения. Если вы установили 0-100 на входной стороне, то мы установили 0-50 на выходной стороне. Эти 10 элементов представляют собой 10 диапазонов, то есть 0–10, 10–20, 20–30 и так далее. Соответственно, выходная сторона будет распределена на 10 элементов от 0 до 5, 5–10, 10–15 и так далее до 50. Когда ввод в реальном времени находится между любым значением на входной стороне, соответствующий масштабированный выход будет прошедший. Здесь у вас есть полная гибкость в установке значений входных и выходных таблиц. Нечеткое логическое управление Нечеткая логика — относительно очень хороший метод управления выходными данными. Обычно у вас есть два двоичных состояния – 0 и 1. Итак, давайте рассмотрим, может ли клапан быть открыт или закрыт. Но что, если клапан застрял между ними? Мы не знаем, находится ли клапан в открытом или закрытом состоянии. В этом случае помогает, если существует состояние между 0 и 1. Это помогает хотя бы приблизиться к возможности. Это называется суетливая логика. Здесь вы можете определить значения около 0 и 1. Это может быть 0,9 или 0,2. Соответственно, вы можете контролировать выходы, когда они приближаются к этим значениям. И когда он достигнет крайнего предела, то есть 0 или 1, можно полностью открыть или закрыть клапан. До этого можно постепенно управлять клапанами. Это обеспечивает более точный контроль процесса. Итак, этот блок управления позволяет собирать значения, которые могут быть полезны в непредсказуемых ситуациях. Требуется много знаний и опыта, чтобы правильно установить значения и наборы, чтобы логика работала правильно. Позиция пропорциональная Эта логика будет открывать или закрывать устройство, импульсно открывая или закрывая контакты в определенный заранее заданный таймер, установленный пользователем. Это делается для ширины импульса, пропорциональной отклонению между требуемым положением и текущим положением. Вам необходимо установить параметры управления, такие как минимальное и максимальное значение ограничения выхода, продолжительность, в течение которой выход будет оставаться включенным, скорость, с которой устройство должно открываться или закрываться в %/секунду и т. д. Функциональный блок принимает фактическую обратную связь, оценивает внутренние таймеры и проверяет, происходит ли открытие или закрытие с желаемой скоростью или нет. Если нет, то будет подан соответствующий импульс открытия или закрытия. Таким образом, мы увидели различные методы алгоритмов управления, используемые в программировании ПЛК.
  2. Документация ПЛК представляет собой очень важную инженерную документацию этапов управления процессом, и, как и все технические описания, необходимы точные подробные инженерные записи. Без точных чертежей изменения и модификации, необходимые для модернизации и диагностики, крайне затруднены или невозможны. Документация по системе ПЛК Каждый провод от ПЛК к оборудованию мониторинга и управления должен быть четко промаркирован и пронумерован на обоих концах и записан на электрической схеме. ПЛК должен иметь полные и актуальные лестничные схемы (или на другом утвержденном языке), и каждая ступенька должна быть помечена полным описанием ее функции. Основными документами в системе ПЛК являются: Обзор системы и полное описание работы управления; Структурная схема блоков системы; Полный список всех входов и выходов, пунктов назначения и номеров; Схема подключения модулей ввода-вывода, обозначение адреса для каждой точки ввода-вывода и расположение стоек; Лестничная диаграмма с описанием, номером и функцией ступени. Также необходимо иметь возможность моделировать лестничную программу в автономном режиме на персональном компьютере или в фоновом режиме в ПЛК, чтобы можно было выполнять изменения, обновления и моделирование неисправностей, не прерывая нормальную работу ПЛК. , а эффект от изменений и обновлений можно оценить до их внедрения.
  3. Инструкции сравнения в ПЛК используются для проверки пар значений, чтобы обеспечить логическую непрерывность цепочки. Таким образом, инструкции сравнения редко, если вообще когда-либо, будут последней инструкцией в цепочке. Типы инструкций сравнения В качестве примера предположим, что инструкция LES представлена двумя значениями. Если первое значение меньше второго, то инструкция сравнения верна. Команда равенства (EQU) Используйте инструкцию EQU, чтобы проверить, равны ли два значения. Если источники A и источники B равны, инструкция логически верна. Если эти значения не равны, инструкция логически ложна. Источник A должен быть адресом. Источник B может быть либо программной константой, либо адресом. Значения хранятся в дополняющей друг друга форме. Инструкция «Не равно» (NEQ) Используйте инструкцию NEQ, чтобы проверить, не равны ли два значения. Если источники A и источники B не равны, инструкция логически верна. Источник A должен быть адресом. Источник B может быть либо программной константой, либо адресом. Значения хранятся в дополняющей друг друга форме. Инструкция «Меньше чем» (LES) Используйте инструкцию LES, чтобы проверить, меньше ли одно значение (источник A) другого (источник B). Если значение источника A меньше значения источника B, инструкция логически верна. Источник A должен быть адресом. Источник B может быть либо программной константой, либо адресом. Значения хранятся в дополняющей друг друга форме. Инструкция «Меньше или равно» (LEQ) Используйте инструкцию LEQ, чтобы проверить, меньше ли одно значение (источник A) другого (источник B) или равно ему. Если значение в источнике A меньше или равно значению в источнике B, инструкция логически верна. Источник A должен быть адресом. Источник B может быть либо программной константой, либо адресом. Значения хранятся в дополняющей друг друга форме. Инструкция «Больше, чем (GRT)» Используйте инструкцию GRT, чтобы проверить, больше ли одно значение (источник A) другого (источник B). Если значение в источнике A больше, чем значение в источнике B, инструкция логически верна. Инструкция «Больше или равно» (GEQ) Используйте команду GEQ, чтобы проверить, больше ли одно значение (источник A) другого (источник B) или равно ему. Если значение в источнике A больше или равно значению в источнике B, инструкция логически верна. Маскированное сравнение равных (MEQ) Используйте инструкцию MEQ для сравнения данных по адресу источника с данными по адресу сравнения. Использование этой инструкции позволяет маскировать части данных отдельным словом. Источник — это адрес значения, которое вы хотите сравнить. Маска — это адрес маски, через которую инструкция перемещает данные. Маска может быть шестнадцатеричным значением. Сравнение — это целое число или адрес ссылки. Если 16 бит данных по адресу источника равны 16 битам данных по адресу сравнения (без маскированных битов), инструкция верна. Инструкция становится ложной, как только обнаруживается несоответствие. Инструкция по предельному тесту (LIM) M) Используйте инструкцию LIM для проверки значений в пределах или за пределами указанного диапазона, в зависимости от того, как вы установили пределы. Значения нижнего предела, теста и верхнего предела могут быть адресами слов или константами, ограниченными следующими комбинациями: Если параметр Test является программной константой, параметры Low Limit и High Limit должны быть адресами слов. Если параметр «Тест» представляет собой адрес слова, параметры «Нижний предел» и «Верхний предел» могут быть либо программной константой, либо адресом слова. Статус true/false инструкции LIM Если значение нижнего предела равно или меньше верхнего предела, инструкция верна, когда тестовое значение находится между пределами или равно любому из пределов. Если нижний предел имеет значение, превышающее верхний предел, инструкция является ложной, если тестовое значение находится между пределами.
  4. В современном мире промышленной автоматизации данные играют очень важную роль. Получение мгновенных данных из источников и использование их для различных целей так же важно, как и запуск системы. Обычно каждый знает, как интегрировать SCADA с различными системами баз данных, например с SQL-серверами. Однако многие игнорируют возможности ПЛК в интеграции с базами данных. Их тоже можно использовать для этой цели. ПЛК с базой данных SQL Если мы используем ПЛК, программисты могут работать с ними в чрезвычайных ситуациях, таких как сбой SCADA, и выполнять свою работу, правильно ее кодируя. В этом посте мы увидим, как использовать ПЛК с базой данных SQL. Для тех, кто не знаком с SQL-сервером, это инструмент управления базой данных, который последовательно хранит большой объем данных в формате реального времени, и запросы для получения данных записываются в него либо через какой-то внешний источник, например ПЛК. Для хранения данных в нем написана логика в ПЛК, который при выполнении сохраняет данные в SQL. Это простая концепция, которая более кратко объясняется в статье из-за ее преимуществ. Планировщик ПЛК Предположим, у вас очень крупномасштабная система, в которой оператору ежедневно приходится вводить сотни графиков времени для работы определенных функций. Вместо того, чтобы использовать обширное кодирование и переменные в ПЛК для хранения данных, введенных в SCADA, и использовать их, когда придет время, просто передавайте все переменные данные на SQL-сервер через ПЛК каждый раз, когда создается новый рецепт. SQL будет хранить дату и время введенных значений в реальном времени и предоставит операторам возможность выбирать их в соответствии с отфильтрованной датой и временем. Например, в SQL есть пять записей с 1 по 5 октября для различных типов введенных расписаний. Преимущество в том, что оператор может выбрать любой необходимый и затем запустить систему. Если бы SQL не было, ему пришлось бы запускать только один вариант: 1 октября или любую другую дату. В противном случае ему пришлось бы использовать память SCADA или ПЛК, что является пустой тратой данных и кодирования. То же самое становится проще благодаря SQL-серверу. Еще одним преимуществом является то, что размер кода SCADA уменьшается и его можно использовать для других целей. Планирование используется во многих приложениях, а использование для него ПЛК вместе с SQL делает систему более эффективной. Последовательность действий Рассмотрим растение, имеющее 10 последовательностей. В каждой последовательности имеется считыватель штрих-кодов для запуска действия с необходимым продуктом. Если штрих-код считывается в SCADA, то соответствующие данные передаются в ПЛК или, короче говоря, SCADA является промежуточным средством для инициирования связи между ПЛК и данными; затем просто подключите ПЛК напрямую к SQL. SQL будет напрямую взаимодействовать с ПЛК для определения штрих-кодов и других данных для запуска или остановки последовательности. Такие большие объемы данных о последовательностях объектов помогают сократить количество кода в SCADA и ускоряют работу системы. Поскольку ПЛК написан с кодировкой для последовательной работы, почему бы не соединить его напрямую с SQL и не использовать систему. Синхронизировать несколько ПЛК Существует множество приложений, в которых одному ПЛК в одном месте для выполнения работы требуются данные из другого местоположения ПЛК. В этом случае традиционно для интеграции всех ПЛК и управления ими используется SCADA. В том случае, если ПЛК напрямую подключены к SQL-серверу, данные будут синхронизироваться по дате и времени SQL; таким образом, устраняются проблемы синхронизации нескольких RTC (часов реального времени) ПЛК. Кроме того, ПЛК будет напрямую связываться с другим ПЛК для запроса каких-либо данных или предоставления каких-либо данных через сервер SQL. Любой сигнал тревоги или событие в ПЛК также будет передано на другой ПЛК и поможет отслеживать записи в реальном времени. Подтверждение связи Квитирование — это процесс, при котором одна сторона подтверждает другой стороне, что задание выполнено. По сути, это реакция, необходимая для того, чтобы партия могла начать другую работу. Этот метод хорошо работает с серверами PLC и SQL. SQL-сервер может напрямую взаимодействовать с ПЛК, отправляя уведомления о событиях в режиме реального времени или данные уведомлений о тревогах в режиме реального времени. Это означает, что предположим, что выполнение задания заняло 3 дня. Затем подтверждение завершения будет отправлено в ПЛК как отдельное событие, и, поскольку в нем также содержатся данные за 3 дня, оператор может легко просмотреть весь процесс в отчетах SCADA. Таким образом, квитирование является важной причиной для прямой связи ПЛК с SQL. Основы базы данных ПЛК Установите соединение между ПЛК и базой данных SQL с помощью промежуточного программного обеспечения или шлюза, который облегчает взаимодействие между протоколами промышленных сетей и языками баз данных. Выберите протокол связи, понятный как ПЛК, так и базе данных SQL, например OPC UA, Modbus TCP или любой другой протокол, поддерживаемый вашим ПЛК и промежуточным программным обеспечением. Настройте ПЛК для отправки и получения данных, настроив необходимые параметры, регистры или теги, которые будут считываться или записываться. Это может включать программирование ПЛК с использованием соответствующего программного обеспечения, чтобы убедиться, что он готов к обмену данными. Настройте базу данных SQL, создав новую базу данных или настроив существующую для хранения данных из ПЛК. Определите таблицы, столбцы и типы данных, соответствующие структуре данных, отправляемых из ПЛК. Сопоставьте каждую точку данных ПЛК с соответствующим полем в базе данных SQL. Убедитесь, что типы данных совместимы и что сопоставление имеет логический смысл для нужд приложения. Реализуйте логику передачи данных с помощью сценариев или хранимых процедур базы данных. Определите, как часто данные должны передаваться, при каких условиях и должна ли передача запускаться по событиям или по расписанию. Тщательно проверьте связь между ПЛК и базой данных SQL. Проверьте наличие ошибок или несоответствий данных и убедитесь, что система ведет себя должным образом в различных условиях. Постоянно контролируйте работоспособность системы, точность данных и любые аномалии. Настройте оповещения или уведомления о системных ошибках или важных событиях. Регулярно проверяйте и обновляйте систему по мере необходимости, чтобы учесть изменения в настройке ПЛК, структуре базы данных или дополнительных требованиях. Постоянно обновляйте документацию на предмет любых изменений в системе. Обеспечьте наличие мер безопасности как для ПЛК, так и для базы данных SQL для защиты от несанкционированного доступа и утечки данных. Рассмотрите возможность внедрения шифрования, межсетевых экранов и протоколов безопасного доступа.
  5. В этом посте я дам несколько основных инструкций, основанных на моем личном опыте, чтобы дать вам представление о том, как устранять неполадки в системах автоматизации (ПЛК/РСУ): Устранение неполадок в системах автоматизации в целом имеет ту же тактику, чтобы найти решение. вины системы. Тем не менее, в зависимости от сложности и размера приложения и конкретной системы автоматизации этапы устранения неполадок будут немного другими или более сложными. Лучшие знания можно получить на практике и в реальных условиях устранения неполадок. По моему мнению, практика снова и снова – это решение. Любые дополнения и комментарии приветствуются!! Устранение неполадок в системе ПЛК Прежде чем продолжить, мы согласны с тем, что современные системы автоматизации имеют ПЛК для управления приложением. Если у нас небольшое приложение, то в системе, возможно, есть микроПЛК (или наноПЛК) или другой тип компактного контроллера (во многих случаях это зависит от приложения). Я сказал «современные системы автоматизации», потому что в прошлом (до появления ПЛК/других компактных контроллеров) хорошо известный и используемый компаниями-разработчиками средств автоматизации), управление системой автоматизации осуществлялось только с помощью реле. Исследуйте программу контроллера Первое, что нам нужно сделать, это выяснить, выполняются ли у нас правильные условия для ошибочной операции. Для этого нам нужно найти «разум» нашей системы. Этим «разумом» является контроллер (либо это своего рода ПЛК, либо другой тип компактного контроллера). Если у нас не выполняются правильные условия, нам следует изучить программу контроллера, чтобы выяснить причину проблемы (ВСЕГДА проверяйте сообщения в SCADA. Это поможет быстрее найти решение, поскольку в SCADA появляется важная информация, такая как неисправность). /описание сигнала тревоги или конкретный адрес в ПЛК). То, что мы обнаружим, - это либо неисправный сигнал от аппаратного обеспечения (например, цифровой сигнал от кнопки, или цифровой сигнал от механического переключателя, или цифровой сигнал от контакта реле, который «не приходит» на вход контроллера или аналоговый сигнал, имеющий неправильные значения) или ошибочный сигнал от другой программной системы (например, SCADA). Исследуйте условия, исходящие от оборудования Когда мы сделаем вывод о причине проблемы, мы оставляем на некоторое время программу контроллера и выходим проверить наши выводы. Мы уже должны найти чертежи системы автоматизации, чтобы увидеть соединения компонентов, которые мы хотим проверить. Например, если мы обнаруживаем, что у нас есть цифровой сигнал с кнопки, который «не приходит» на вход контроллера, то берем мультиметр и идем проверять кнопку. Если кнопка в порядке, то исследуем, есть ли любой предохранитель между кнопкой и входом контроллера. Если есть, то проверяем. Если предохранитель в порядке, то исследуем трассу кабеля. Возможно, у нас перерезан кабель. Если кабель в порядке, то, возможно, у нас аппаратная проблема со входом контроллера и, возможно, нам следует заменить этот входной модуль на новый или как-то починить его (ремонт должен выполнять квалифицированный персонал). Исследуем аппаратную часть после выходов нашего контроллера Если мы пришли к выводу, что у нас правильные условия, то нам следует проверить компоненты, которые находятся между контроллером и неисправным оборудованием (имеется в виду оборудование, которое не работает должным образом). Например, если у нас есть промышленная печь, которая не закрывает свою дверь (хотя у нас есть условия для закрытия двери из программы), возможно у нас неисправно реле, которое питается от ПЛК (или другого контроллера) на закрытие двери. Если реле в порядке, то возможно у нас проблема проблема с моторчиком, который отвечает за закрытие двери. Мы должны проверить состояние двигателя (обмотки двигателя, механические части). Если двигатель в порядке, мы должны проверить значения напряжения, поступающие на вход двигателя (с помощью нашего мультиметра), а также проверить состояние кабеля, если измерения мультиметра неверны. Если напряжение и кабель в порядке, то, возможно, у нас заклинило где-то в конструкции дверцы печи. Силовые агрегаты – это «плюс»! Как правило, когда в нашей системе автоматизации есть силовые агрегаты (приводы) для привода двигателя, нам необходимо иметь вместе руководство конкретного силового агрегата. Это потому, что силовые агрегаты имеют цифровой дисплей, 7-сегментные светодиодные дисплеи или простые Светодиоды информируют нас о неисправности, которая существует внутри них или на ведомом двигателе. Это очень полезно для инженеров и техников. Кроме того, современные силовые агрегаты имеют специальные алгоритмы проверки состояния двигателя, значений напряжения, тока и т. д. Например, если двигатель перегрелся, привод сообщит нам об этом, поскольку постоянно проверяет датчик температуры (например, термистор), который находится внутри. Корпус двигателя. Затем мы должны проверить двигатель, не перегрелся ли он на самом деле или у нас неисправен датчик температуры, который следует заменить. Проверьте статус контроллеров Иногда, когда ЦП нашего ПЛК обнаруживает неприемлемое состояние в ходе выполнения программы, он переходит в режим «СТОП» и, возможно, мигает светодиод, указывая на эту неисправность. Кроме того, если в системе происходит какая-либо другая неисправность, некоторые Светодиоды указывают тип неисправности (дополнительную информацию см. в руководстве по эксплуатации контроллера). Такое же поведение наблюдается в целом у любого типа контроллера, установленного в системе автоматизации. Системы безопасности Многие системы автоматизации (часто производственные машины) имеют в своей конструкции некие «системы безопасности», такие как «Pilz» или «Siemens Sirius». Это умные компактные контроллеры для мониторинга таких ситуаций, как открытие защитной двери или аварийный останов. При возникновении чего-либо из вышеперечисленного система безопасности прекращает работу системы автоматизации для защиты человека и машины. Для возврата системы автоматизации в функциональное состояние в руководствах по системам безопасности имеются специальные указания. Вывод из всего вышесказанного — иметь пошаговую тактику устранения неполадок. Со временем и набравшись опыта, возможно, мы пропустим некоторые шаги, особенно если мы являемся персоналом, ответственным за обслуживание системы, с которой мы сталкиваемся каждый день. Однако хорошая тактика — быть организованными и терпеливыми. Удачи в ваших усилиях!
  6. Эта статья посвящена методу устранения неполадок при программировании ПЛК. В промышленных ПЛК, где используются тысячи входов и выходов, и мы знаем, насколько продолжительны программы ПЛК, это зависит от приложения или использования предприятия. Устранение неполадок в программах ПЛК Siemens Иногда люди могут неосознанно изменить логические параметры, что может привести к неисправности. Даже некоторые ошибки возникают на этапе проектирования логики из-за сложности конструкции. Программное обеспечение Siemens plc включает в себя различные удобные инструменты для устранения ошибок, возникающих в программах. Ошибки могут быть такими, как перекрытие адресации, несколько одинаковых экземпляров вывода, перекрытие адресов битов памяти, многократное использование одной программы для работы снова и снова и т. д. Чтобы обнаружить такие проблемы, в программном обеспечении Siemens доступны четыре типа окон, которые помогут нам устранить проблемы. Они есть: Перекрестная ссылка Структура звонка Список назначений Структура зависимостей Давайте обсудим, как их использовать в нашей программе для устранения неполадок и где их найти в программном обеспечении. Перекрестная ссылка Перекрестные ссылки используются для поиска всех цифровых и аналоговых входов и выходов, используемых в логике. Это поможет нам узнать, сколько раз входы/выходы используются в программе, а также направит пользователей непосредственно к конкретному месту ввода/вывода на страницах логики. Вот пример одной из программ, в которой можно увидеть, как выглядит таблица перекрестных ссылок. Он содержит всю информацию, такую как адресация, язык программы, используемые входы и выходы и т. д. Структура звонка Если вы хотите узнать, какой блок используется в программировании, используется структура вызова. Это обращение функции перекрестных ссылок, в которой мы узнаем, сколько раз SFC, блок FB используются в OB (организационном блоке), и здесь мы узнаем, сколько раз OB используется в SFC и FB. Список назначений Список назначений — очень полезная функция, когда нужно узнать, сколько входов, выходов, таймеров и счетчиков используется в нашем приложении и сколько из них еще осталось, чтобы мы могли использовать их в будущих логах. Структура зависимостей Структура зависимостей используется, чтобы показать, где каждый блок используется в программировании. Но на шаге 7 он не доставит вас прямо на локацию, а в TIA PORTAL перенесет вас туда, где написана программа. ПРИМЕЧАНИЕ: Чтобы открыть эти окна на шаге 7, используйте информацию, как показано на рисунке. После нажатия на дисплей у вас есть варианты. В TIA PORTAL выполните следующий шаг, показанный на рисунке.
  7. В этом посте мы поймем, как фильтровать цифровые и аналоговые входы в ПЛК. Как сказано в теме, фильтрация — это средство удаления нежелательных всплесков сигналов, поступающих в ПЛК. Его роль заключается в устранении флуктуаций и передаче в ПЛК только правильных изменений сигнала в определенный момент времени. Внутри ПЛК сначала идет схема фильтра, а затем схема обработки ввода ПЛК, которая принимает окончательный отфильтрованный входной сигнал и использует его для своей логики. Фильтры цифрового входа ПЛК Давайте сначала рассмотрим цифровой вход. Роль входа с фильтром состоит в том, чтобы принять входной сигнал цифрового поля и передать его в схему обработки через фильтр. Если вы видите изображение ниже, оно состоит из двух частей. Прежде всего, зеленый кружок указывает, что изменение ввода будет принято, а красный кружок показывает, что изменение ввода не будет передано. В первой (выше) части есть два изменения, в которых много колебаний, и эти входные изменения будут обойдены. Есть два изменения, при которых нет колебаний, и это входное изменение будет передано в схему обработки. То же самое и со второй (ниже) частью теории. Это возможно с помощью фильтрации. Фильтрация определяется фактором или временем. Предположим, вы установили время 3 мс. Роль фильтра состоит в том, чтобы принимать только те входные изменения, которые остаются выше 3 мс. Если входные данные изменятся раньше, чем через 3 мс, то эти входные данные не будут учитываться и будут игнорироваться. Это означает, что короткими и высокочастотными импульсами помех можно будет пренебречь. Эта логика аналогична таймеру устранения дребезга, который мы прописываем в логике ПЛК. На изображении ниже лампа включится только тогда, когда входной сигнал кнопки запуска остается высоким в течение 3 секунд. Это та же самая логика, которая используется в цифровом проходном фильтре. Он передаст изменение входа в обрабатывающую часть только тогда, когда этот вход сохраняет состояние (высокий или низкий) в течение установленного времени. Помимо времени, как уже говорилось, некоторые ПЛК имеют возможность установки коэффициента вместо времени. Фактор рассчитывает внутреннее время и определяет уровень фильтрации. Чем выше значение коэффициента, тем выше мощность фильтрации. Фильтры аналогового входа ПЛК Теперь давайте посмотрим на фильтрацию аналоговых входов. Поскольку аналоговые входы по своей природе являются переменными, логика фильтра для них не может быть реализована так же, как для цифровых входов. Итак, в аналоговых входах используется логика усреднения. Фильтр усредняет значения, полученные за определенное время, и выдает среднее конечное значение за это время. Обратитесь к изображению ниже для исследования. Первый – синий цвет имеет коэффициент 1. Второй – зеленый цвет имеет коэффициент 2. Третий – оранжевый цвет имеет коэффициент 3. Четвертый – коричневый цвет имеет коэффициент 4. По мере увеличения значения коэффициента фильтра вы можете видеть, что форма сигнала улучшается за счет фильтрации сигнала с более резким значением. Через заданное время фильтр усреднит значения, полученные от входных данных; и на основе формул, используемых внутри него, он выдаст окончательный средний результат за раз. Таким образом, по мере увеличения коэффициента фильтра или веса мы получаем более точное значение аналогового сигнала с меньшими помехами. Обычно для этой цели используется фильтр первого прохода. Таким образом, мы приходим к выводу, что фильтрация очень полезна для уменьшения нежелательного шума на входе поля и передачи правильных значений, что также защитит входную цепь ПЛК от повреждения; если возникают какие-либо высокие или нежелательные пики.
  8. Самыми элементарными объектами программирования лестничных диаграмм являются контакты и катушки, предназначенные для имитации контактов и катушек электромеханических реле. Контакты и катушки представляют собой дискретные элементы программирования, работающие с логическими состояниями переменных (1 и 0; включено и выключено; истинно и ложно). Каждый контакт в программе ПЛК лестничной схемы представляет собой чтение одного бита в памяти, а каждая катушка представляет запись одного бита в памяти. Дискретные входные сигналы ПЛК от реальных переключателей считываются программой лестничных диаграмм с помощью контактов, привязанных к этим входным каналам. В устаревших системах ПЛК каждый дискретный входной канал имеет определенный адрес, который необходимо применить к контакту(ам) в этой программе. В современных системах ПЛК каждый дискретный входной канал имеет имя тега, созданное программистом, которое применяется к контакту(ам) в программе. Аналогичным образом, дискретные выходные каналы, на которые ссылаются символы катушек на лестничной диаграмме, также должны иметь некоторую форму адреса или метки имени тега. Для иллюстрации представим себе построение и программирование резервной системы обнаружения пламени для контроля состояния пламени горелки с помощью трех датчиков. Целью данной системы будет индикация «зажженной» горелки, если хотя бы два из трех датчиков покажут пламя. Если только один датчик указывает на пламя (или если ни один из датчиков не указывает на пламя), система объявит горелку не зажженной. Статус горелки будет визуально обозначаться лампочкой, которую операторы смогут легко видеть внутри диспетчерской. Схема подключения нашей системы показана на следующей схеме: Каждый датчик пламени выдает сигнал постоянного напряжения, указывающий на обнаружение пламени на горелке, либо включенной (24 В постоянного тока), либо выключенной (0 В постоянного тока). Эти три дискретных сигнала напряжения постоянного тока воспринимаются первыми тремя каналами карты дискретного ввода ПЛК. Индикаторная лампа представляет собой лампочку на 120 В, поэтому ее питание должно осуществляться от карты дискретного выхода переменного тока, показанной здесь в последнем слоте ПЛК. Чтобы сделать лестничную программу более читабельной, мы назначим имена тегов (символические адреса) каждому входному и выходному биту ПЛК, описывая его реальное устройство в легко интерпретируемом формате. Мы обозначим первые три дискретных входных канала как датчик IN A, датчик IN B и датчик IN C, а выход — как горит горелка OUT. Здесь показана лестничная программа, позволяющая определить, обнаруживают ли по крайней мере два из трех датчиков пламя, с именами тегов, относящимися к каждому контакту и катушке: Последовательно соединенные контакты в лестничной схеме выполняют логическую функцию И, а параллельные контакты выполняют логическую функцию ИЛИ. Таким образом, эту программу обнаружения пламени «два из трех» можно словесно описать так: «Горелка горит, если либо A и B, либо B и C, либо либо A и C» Альтернативный способ выразить это — использовать обозначения булевой алгебры, где умножение представляет функцию И, а сложение представляет функцию ИЛИ: Burner_lit = AB + BC + AC Еще один способ представить эту логическую связь — использовать символы логических элементов: Чтобы проиллюстрировать, как будет работать эта программа, мы рассмотрим случай, когда датчики пламени B и C обнаруживают пламя, а датчик A — нет (Примечание 1). Это представляет собой два из трех хороших условий, и поэтому мы ожидаем, что ПЛК включит индикатор «Горелка горит», как запрограммировано. Со стороны стойки ПЛК мы видим, как на плате дискретного входа загораются светодиоды-индикаторы датчиков B и C, а также светодиод-индикатор выходного канала лампы: Примечание 1. Наиболее вероятной причиной того, что один из двух датчиков пламени может не обнаружить наличие пламени, является некоторая форма смещения или загрязнения датчика пламени. Фактически, это веская причина для использования системы обнаружения пламени 2 из 3, а не симплексной схемы детектора (1 из 1): сделать систему более устойчивой к случайным проблемам с датчиками без ущерба для горелки. безопасность. Эти два входных канала, находящихся под напряжением, «устанавливают» биты (состояние 1) в памяти ПЛК, представляющие состояние датчиков пламени B и C. Бит датчика пламени A будет «чистым» (состояние 0), поскольку соответствующий входной канал обесточен. Тот факт, что светодиод выходного канала включен (и горит индикаторная лампа «Горелка горит»), говорит нам, что программа ПЛК «установила» соответствующий бит в регистре выходной памяти ПЛК в состояние «1». Отображение битов входного и выходного регистра показывает состояния «установки» и «сброса» ПЛК в данный момент времени: Исследуя программу Ladder Diagram с включенной индикацией состояния, мы видим, что только средняя пара контактов передает «виртуальную мощность» на выходную катушку: Напомним, что целью контакта в программе ПЛК является чтение состояния бита в памяти ПЛК. Эти шесть «виртуальных контактов» считывают три входных бита, соответствующие трем датчикам пламени. Каждый нормально разомкнутый «контакт» «замыкается», когда соответствующий бит имеет значение 1, и «размыкается» (переходит в нормальное состояние), когда соответствующий бит имеет значение 0. Таким образом, мы видим здесь, что два контакта, соответствующие датчику A, появляются без подсветки (что означает отсутствие «проводимости» в схеме виртуального реле), поскольку бит для этого входа сброшен (0). Два контакта, соответствующие датчику B, и два контакта, соответствующие датчику C, отображаются выделенными (представляющими «проводимость» в виртуальной схеме), поскольку оба их бита установлены (1). Напомним также, что назначение катушки в программе ПЛК — запись состояния бита в память ПЛК. Здесь «активированная» катушка устанавливает бит для выхода 0 ПЛК в состояние «1», тем самым активируя реальный выход и отправляя электроэнергию на лампу «Горелка горит». Обратите внимание, что цветовое выделение не означает, что виртуальный контакт проводит виртуальную энергию, а лишь указывает на то, что он способен проводить энергию. Однако цветовая подсветка вокруг виртуальной катушки указывает на наличие виртуальной «мощности» в этой катушке. Контакты и реле полезны не только для реализации простых логических функций, но также могут выполнять функции фиксации. Очень распространенным применением этого в промышленных системах ПЛК является программа запуска/останова с фиксацией для управления электродвигателями с помощью кнопочных переключателей с мгновенным контактом. Как и раньше, эта функциональность будет проиллюстрирована с помощью гипотетического примера схемы и программы: В этой системе два кнопочных переключателя подключены к дискретным входам ПЛК, а ПЛК, в свою очередь, подает питание на катушку контактора двигателя посредством одного из своих дискретных выходов. Контакт перегрузки подключается непосредственно последовательно с катушкой контактора, чтобы обеспечить защиту двигателя от перегрузки по току даже в случае отказа ПЛК, когда канал дискретного вывода остается под напряжением (примечание 2). Лестничная программа для этой системы управления двигателем будет выглядеть так: Примечание 2. Хотя можно подключить контакт перегрузки к одному из дискретных входных каналов ПЛК, а затем запрограммировать виртуальный контакт перегрузки последовательно с выходной катушкой для остановки двигателя в случае тепловой перегрузки, эта стратегия будет основываться на ПЛК для выполнения функции безопасности, которую, вероятно, лучше выполняет проводная схема. Нажатие кнопки «Пуск» активирует канал дискретного входа 6 ПЛК, который «замыкает» виртуальный контакт в программе ПЛК, обозначенный IN-переключателем «Пуск». Нормально закрытый виртуальный контакт для входного канала 7 (кнопка «Стоп») по умолчанию уже закрыт, когда кнопка «Стоп» не нажата, поэтому виртуальная катушка будет получать «питание» при нажатии кнопки «Старт». нажата, а кнопка «Стоп» — нет. Обратите внимание на герметичный контакт с той же маркировкой, что и на катушке: контактор OUT. На первый взгляд может показаться странным, что и контакт, и катушка в программе ПЛК имеют одинаковую маркировку (примечание 3), поскольку контакты чаще всего связаны с входами, а катушки с выходами, но это имеет смысл, если вы понимаете истинный смысл контакты и катушки в программе ПЛК: как операции чтения и записи битов в памяти ПЛК. Катушка с надписью OUT contactor записывает состояние этого бита, а контакт с надписью OUT contactor считывает состояние того же бита. Цель этого контакта, конечно, состоит в том, чтобы зафиксировать двигатель во включенном состоянии после того, как человек-оператор отпустит палец с кнопки «Пуск». Примечание 3. Очень распространенное заблуждение среди студентов, впервые изучающих программирование лестничных диаграмм ПЛК, заключается в том, что контакты всегда связываются с входами ПЛК, а катушки с выходами ПЛК, поэтому кажется странным, что контакт имеет ту же маркировку, что и выход. Однако это ложная ассоциация. В действительности контакты и катушки представляют собой инструкции чтения и записи, поэтому ПЛК может читать один из своих собственных выходных битов как часть некоторой логической функции. Что было бы действительно странно, так это маркировать катушку адресом входного бита или именем тега, поскольку ПЛК электрически не способен устанавливать реальный статус включения каких-либо входных каналов. Этот метод программирования известен как обратная связь, где выходная переменная функции (в данном случае переменная обратной связи — выходной контактор) также является входом той же функции. Путь обратной связи в программировании лестничных диаграмм является скорее неявным, чем явным, причем единственным признаком обратной связи является общее имя, общее для катушки и контакта. Другие языки графического программирования (например, функциональные блоки) имеют возможность отображать пути обратной связи как соединительные линии между выходами и входами функций, но эта возможность не существует в лестничной диаграмме. Пошаговая последовательность, показывающая работу и состояние этой простой программы, иллюстрирует, как работает герметичный контакт в ходе цикла запуска и остановки двигателя: Эта последовательность помогает проиллюстрировать порядок оценки или порядка сканирования программы лестничной диаграммы. ПЛК читает лестничную диаграмму слева направо, сверху вниз в том же порядке, в котором человек читает предложения и абзацы, написанные на английском языке. Однако, согласно стандарту IEC 61131-3, программа ПЛК должна оценивать (считывать) все входы (контакты) функции, прежде чем определять состояние выхода функции (катушки или катушек). Другими словами, ПЛК не принимает никакого решения о том, как установить состояние катушки, пока не будут прочитаны все контакты, обеспечивающие питание этой катушки. Как только статус катушки будет записан в память, все контакты, имеющие одно и то же имя тега, будут обновляться с этим статусом на последующих ступенях программы. Шаг 5 в предыдущей последовательности особенно показателен. Когда человек-оператор нажимает кнопку «Стоп», активируется входной канал для IN-переключателя Stop, который «открывает» нормально замкнутый виртуальный контакт IN-выключателя Stop. При следующем сканировании этой цепочки программы ПЛК оценивает все входные контакты (выключатель IN Start, переключатель IN Stop и контактор OUT), чтобы проверить их состояние, прежде чем решить, какое состояние записать в катушку контактора OUT. Видя, что стоп-контакт переключателя IN был принудительно разомкнут в результате активации соответствующего дискретного входного канала, ПЛК записывает состояние «0» (или «Ложь») на катушку контактора OUT. Однако контакт обратной связи выходного контактора не обновляется до следующего сканирования, поэтому на этапе 5 он по-прежнему выделяется цветом. Потенциальная проблема этой системы в ее конструкции заключается в том, что человек-оператор теряет контроль над двигателем в случае обрыва проводки в любой из цепей кнопочного переключателя. Например, если провод отвалился от винтового контакта цепи кнопочного переключателя «Пуск», двигатель не мог быть запущен, если он уже был остановлен. Аналогичным образом, если провод отвалился от винтового контакта цепи кнопочного выключателя «Стоп», двигатель не мог быть остановлен, если он уже работал. В любом случае обрыв проводного соединения действует так же, как «нормальное» состояние кнопочного переключателя, то есть удерживает двигатель в его текущем состоянии. Для некоторых приложений этот режим отказа не будет серьезной проблемой. Однако во многих приложениях довольно опасно иметь работающий двигатель, который невозможно остановить. По этой причине принято проектировать системы запуска/остановки двигателя несколько иначе, чем показано здесь. Чтобы построить систему управления двигателем «при отказе» с помощью нашего ПЛК, мы должны сначала перемонтировать кнопочный переключатель, чтобы использовать его нормально замкнутый (НЗ) контакт: Благодаря этому канал дискретного входа 7 остается активным, когда кнопка не нажата. При нажатии оператором кнопки «Стоп» контакт выключателя принудительно размыкается и входной канал 7 обесточивается. Если провод выпадет из винтовой клеммы в цепи переключателя «Стоп», входной канал 7 обесточится точно так же, как если бы кто-то нажал кнопку «Стоп», что автоматически отключит двигатель. Чтобы программа ПЛК работала правильно с этой новой проводкой переключателя, виртуальный контакт для переключателя IN Stop должен быть изменен с нормально закрытого (NC) на нормально разомкнутый (NO): Как и раньше, виртуальный контакт остановки переключателя IN находится в «закрытом» состоянии, когда никто не нажимает переключатель «Стоп», что позволяет двигателю запуститься в любое время при нажатии переключателя «Пуск». Аналогичным образом, виртуальный контакт остановки переключателя IN размыкается каждый раз, когда кто-то нажимает переключатель «Стоп», тем самым прекращая подачу виртуальной «мощности» на катушку контактора ВЫХОДА. Хотя это очень распространенный способ создания систем запуска/остановки двигателя, управляемых ПЛК – с кнопочным переключателем НЗ и виртуальным контактом «Стоп» NO – студенты, плохо знакомые с программированием ПЛК, часто находят этот логический разворот запутанным. Возможно, наиболее распространенной причиной этой путаницы является неправильное понимание «нормальной» концепции контактов переключателя, реальных или виртуальных. Виртуальный контакт остановки переключателя IN запрограммирован как нормально разомкнутый (НО), но обычно он находится в закрытом состоянии. Напомним, что «нормальным» состоянием любого переключателя является его состояние в состоянии покоя без стимуляции, а не обязательно его состояние, когда процесс находится в «нормальном» рабочем режиме. «Нормально открытый» виртуальный контакт IN-переключателя Stop обычно находится в закрытом состоянии, поскольку соответствующий ему входной канал обычно находится под напряжением благодаря нормально замкнутому контакту кнопочного переключателя, который передает реальную электрическую мощность на входной канал, в то время как никто нажимает переключатель. Тот факт, что переключатель настроен как нормально разомкнутый, не обязательно означает, что он обычно находится в разомкнутом состоянии! Состояние любого контакта переключателя, реального или виртуального, зависит от его конфигурации (НО или НЗ) и приложенного к нему воздействия. Еще одна проблема, связанная с реальными проблемами с проводкой, заключается в том, что будет делать эта система, если цепь катушки контактора двигателя разомкнется по какой-либо причине. Разрыв цепи может возникнуть в результате падения провода с винтовой клеммы или из-за размыкания контакта тепловой перегрузки из-за перегрева. Проблема с нашей системой запуска/остановки двигателя в том виде, в котором она спроектирована, заключается в том, что она «не знает» о реальном состоянии контактора. Другими словами, ПЛК «думает», что контактор будет под напряжением каждый раз, когда на канал дискретного выхода 2 будет подано напряжение, но на самом деле это может быть не так, если в цепи катушки контактора происходит обрыв. Это может привести к опасной ситуации, если позже будет устранено открытое замыкание в цепи катушки контактора. Представьте себе, что оператор нажимает кнопку «Пуск», но замечает, что двигатель на самом деле не запускается. Задаваясь вопросом, почему это может быть, он или она идет посмотреть на реле перегрузки, чтобы убедиться, что оно не сработало. Если он сработал и оператор нажимает кнопку «Сброс» на блоке защиты от перегрузки, двигатель немедленно запустится, поскольку дискретный выход ПЛК остается под напряжением все время после нажатия переключателя «Пуск». Запуск двигателя сразу после сброса тепловой перегрузки может стать неожиданностью для эксплуатационного персонала, и это может быть весьма опасно, если кто-нибудь окажется рядом с оборудованием с приводом от двигателя во время его запуска. Что было бы безопаснее, так это система управления двигателем, которая отказывается «фиксироваться», если на контактор не подается питание при нажатии кнопки «Пуск». Чтобы это было возможно, ПЛК должен иметь какой-то способ определения состояния контактора. Чтобы ПЛК «знал» о реальном состоянии контактора, мы можем подключить контакт вспомогательного переключателя к одному из неиспользуемых дискретных входных каналов ПЛК, например: Теперь ПЛК может определять состояние контактора в реальном времени через входной канал 5. Мы можем изменить программу ПЛК, чтобы распознавать это состояние, назначив этому входу новое имя тега (дополнительный входной контактор) и используя нормально разомкнутый виртуальный контакт с этим именем в качестве герметичного контакта вместо бита выходного контактора: Теперь, если на контактор по какой-либо причине не подается питание, когда оператор нажимает переключатель «Пуск», выход ПЛК не сможет зафиксироваться при отпускании переключателя «Пуск». Когда обрыв в цепи катушки контактора устранен, двигатель не запустится сразу, а будет ждать, пока оператор снова не нажмет кнопку «Пуск», что является гораздо более безопасной рабочей характеристикой, чем раньше. Особый класс виртуальной «катушки», используемый в лестничном программировании ПЛК, о котором следует упомянуть, — это «защелкивающаяся» катушка. Обычно они бывают двух видов: катушка установки и катушка сброса. В отличие от обычной «выходной» катушки, которая положительно записывает бит в память ПЛК при каждом сканировании программы, катушки «установки» и «сброса» записывают бит в память только при включении виртуальной энергии. В противном случае биту разрешается сохранить свое последнее значение. Очень простую программу запуска/остановки двигателя можно написать всего лишь с двумя входными контактами и двумя фиксирующими катушками (обе имеют одно и то же имя тега и записывают в один и тот же бит памяти): Обратите внимание на использование нормально разомкнутого (НО) контакта кнопочного переключателя (снова!), без вспомогательного контакта, обеспечивающего индикацию состояния контактора для ПЛК. Это очень минимальная программа, показанная исключительно с целью проиллюстрировать использование фиксирующих катушек «установки» и «сброса» в программировании лестничных диаграмм ПЛК. Катушки «Установка» и «Сброс» (называемые катушками «Фиксация» и «Разблокировка») являются примерами того, что известно в мире программирования ПЛК как сохраняемые инструкции. «Сохраняющая» инструкция сохраняет свое значение после того, как она фактически «обесточена» в «схеме» лестничной диаграммы. Стандартная выходная катушка не удерживается, что означает, что она не «фиксируется» при обесточивании. Концепция сохраняемых и несохраняемых инструкций появится снова, когда мы будем изучать программирование ПЛК, особенно в области таймеров. Обычно мы стараемся избегать использования нескольких катушек с одной и той же меткой в программе лестничной схемы ПЛК. Поскольку каждая катушка представляет команду «записи», несколько катушек с одинаковым именем представляют несколько операций «записи» в один и тот же бит в памяти ПЛК. Здесь, при использовании катушек с фиксацией, конфликта нет, поскольку каждая из катушек записывает данные в бит контактора OUT только тогда, когда соответствующий контакт находится под напряжением. Пока одновременно нажимается только один из кнопочных переключателей, конфликта между катушками с одинаковыми названиями не возникает. Возникает вопрос: что произойдет, если одновременно нажать оба кнопочных переключателя? Что произойдет, если на катушки «Установка» и «Сброс» одновременно будет подано напряжение? В результате бит контактора OUT сначала будет «установлен» (записан в значение 1), а затем «сброшен» (записан в значение 0) в том порядке, в котором две цепочки программы сканировались сверху вниз. . ПЛК обычно не обновляют свои регистры дискретного ввода-вывода во время сканирования программы лестничной диаграммы (эта операция происходит либо до, либо после каждого сканирования программы), поэтому реальное состояние канала дискретного вывода будет таким, каким оно было указано в последней операции записи. , в данном случае «сброс» (0 или выкл.). Даже если дискретный выход не «перепутан» из-за конфликтующих операций записи обмоток «Установка» и «Сброс», это могут быть и другие ступени программы, записанные между цепочками «Установка» и «Сброс». Рассмотрим, например, случай, когда после цепочек «Установить» и «Сброс» были другие цепочки программы, считывающие для какой-то цели состояние бита контактора ВЫХОДА. Эти другие цепочки действительно войдут в «замешательство», поскольку они увидят бит контактора OUT в состоянии «установлено», в то время как фактический дискретный выход ПЛК (и любые цепочки после цепочки «Сброс») увидят бит контактора OUT в состоянии «установлено». состояние «перезагрузки»: По этой причине несколько (несохраняемых) выходных катушек с одним и тем же адресом памяти почти всегда являются ошибкой программирования, но даже сохраняющие катушки, которые предназначены для использования в согласованных парах, могут вызвать проблемы, если не предвидятся последствия одновременного включения. Несколько контактов с одинаковыми адресами не представляют никакой проблемы, поскольку несколько операций «чтения» одного и того же бита памяти никогда не вызовут конфликта. Стандарт программирования ПЛК IEC 61131-3 определяет контакты, чувствительные к переходу, а также более привычные «статические» контакты. Контакт, чувствительный к переходу, будет «срабатывать» только на время одного сканирования программы, даже если соответствующий ему бит остается активным. В стандарте IEC определены два типа контактов лестничной схемы, чувствительных к переходу: один для положительных переходов, а другой для отрицательных переходов. В следующем примере показана схема подключения, программа лестничной диаграммы и временная диаграмма, показывающая, как каждый тип контакта, чувствительного к переходу, работает при стимулировании реальным (электрическим) входным сигналом на дискретный канал: When the pushbutton switch is pressed and the discrete input energized, the first test lamp will blink “on” for exactly one scan of the PLC’s program, then return to its off state. The positive transition contact (with the letter “P” inside) activates the coil OUT test1 only during the scan it sees the status of IN test transition from “false” to “true,” even though the input remains energized for many scans after that transition. Conversely, when the pushbutton switch is released and the discrete input de-energizes, the second test lamp will blink “on” for exactly one scan of the PLC’s program then return to its off state. The negative-transition contact (with the letter “N” inside) activates the coil OUT test2 only during the scan it sees the status of IN test transition from “true” to “false,” even though the input remains de-energized for many scans after that transition: It should be noted that the duration of a single PLC program scan is typically very short: measured in milliseconds. If this program were actually tested in a real PLC, you would probably not be able to see either test lamp light up, since each pulse is so short-lived. Transitional contacts are typically used any time it is desired to execute an instruction just one time following a “triggering” event, as opposed to executing that instruction over and over again so long as the event status is maintained “true.” Contacts and coils represent only the most basic of instructions in the Ladder Diagram PLC programming language.
  9. Программируемый логический контроллер (ПЛК) Вопросы и ответы Этот ПЛК используется для запуска и остановки электродвигателя, а также для его автоматического выключения при возникновении любого из трех условий «выключения»: Чрезмерная вибрация Перегрузка по току (перегрузка контакта нагревателя) Высокая температура обмотки Логика отключения двигателя с использованием программирования ПЛК Статус каждого контакта отключения следующий: Вибрационный контакт: закрывается, когда все в порядке, размыкается, когда вибрация становится чрезмерной. Контакт перегрузки: закрывается в норме, размыкается при перегрузке Температурный контакт: размыкается, когда все в порядке, закрывается, когда жарко. Нарисуйте программу релейной логики ПЛК для запуска и остановки этого двигателя. Обязательно сделайте программу фиксируемой, чтобы оператору не приходилось удерживать кнопку «Пуск», чтобы двигатель работал. Отвечать: Находите ли вы ошибки в логике? Поделитесь с нами через комментарии.
  10. Существует множество ситуаций управления, требующих инициирования действий, когда в ПЛК реализуется определенная комбинация условий логических функций. Логические функции ПЛК Скажем, для автоматического сверлильного станка может быть условие, что двигатель сверла должен активироваться при активации концевых выключателей, которые указывают на наличие заготовки и положение сверла как находящееся на поверхности заготовки. Такая ситуация включает в себя логическую функцию И, причем условие A И условие B должны быть реализованы для того, чтобы произошел выходной сигнал. В этом разделе рассматриваются такие логические функции. ПЛК И ЛОГИКА На рисунке 1.7a показана ситуация, когда на выход не подается питание, пока два нормально разомкнутых переключателя не замкнуты. Переключатель A и переключатель B должны быть замкнуты, что, таким образом, дает логическую ситуацию «И». Мы можем думать об этом как о системе управления с двумя входами A и B (рис. 1.7b). Выход есть только тогда, когда A и B включены. Таким образом, если мы используем 1 для обозначения сигнала включения и 0 для обозначения сигнала выключения, то для того, чтобы на выходе была 1, мы должны, чтобы A и B оба были равны 1. Говорят, что такая операция контролируется логическим вентилем, а взаимосвязь между входами логического вентиля и выходами заносится в таблицу в форме, известной как таблица истинности. Таким образом, для вентиля И мы имеем: Примером логического элемента «И» является система блокировки управления станком, так что ею можно управлять только тогда, когда защитное ограждение находится на своем месте и включено питание. На рис. 1.8а показана система логических элементов И на лестничной диаграмме. Лестничная диаграмма начинается с j j, нормально разомкнутого набора контактов, обозначенного входом A, для обозначения переключателя A, и последовательно с ним j j, другого нормально разомкнутого набора контактов, обозначенного входом B, для обозначения переключателя B. Затем строка заканчивается буквой O, обозначающей вывод. Для того чтобы был выход, должны присутствовать как вход A, так и вход B, т. е. контакты входа A и входа B должны быть замкнуты (рис. 1.8б). В общем: На лестничной диаграмме контакты на горизонтальной ступени, то есть последовательные контакты, представляют собой логические операции И. ПЛК ИЛИ ЛОГИКА На рисунке 1.9а показана электрическая цепь, в которой на выход подается питание, когда переключатель A или B, оба нормально разомкнутые, замкнуты. Это описывает логический вентиль ИЛИ (рис. 1.9b), в котором вход A или вход B должен быть включен, чтобы был выход. Таблица истинности: На рисунке 1.10a показана система логических элементов ИЛИ на лестничной диаграмме, на рисунке 1.10b показан эквивалентный альтернативный способ построения той же схемы. Лестничная диаграмма начинается с j j, нормально разомкнутых контактов, обозначенных входом A, для обозначения переключателя A, и параллельно с ним j j, нормально разомкнутых контактов, обозначенных входом B, для обозначения переключателя B. Чтобы на выход подавалось напряжение, вход A или вход B должен быть закрыт. (рисунок 1.10в). Затем строка заканчивается буквой O, обозначающей вывод. В общем: Альтернативные пути, предоставляемые вертикальными путями из главной ступени лестничной диаграммы, т. е. параллельные пути представляют собой логические операции ИЛИ. Примером системы управления воротами операционной является конвейерная лента, транспортирующая продукты в бутылках к упаковке, где активируется дефлекторная пластина для отклонения бутылок в контейнер для отходов, если вес не находится в определенных пределах или на бутылке нет крышки. ПЛК НЕ ЛОГИЧЕСКИЙ На рис. 1.11а показана электрическая цепь, управляемая нормально замкнутым выключателем. Когда на переключатель подается вход, он размыкается, и ток в цепи отсутствует. Это иллюстрирует вентиль НЕ, в котором есть выход, когда нет входа, и нет выхода, когда есть вход (рис. 1.11c). Ворота иногда называют инвертором. Таблица истинности: На рисунке 11.11b показана система вентилей НЕ на лестничной диаграмме. Контакты входа А показаны как нормально замкнутые. Это последовательно с выходом ( ). При отсутствии входа на вход А контакты замкнуты, поэтому есть выход. Когда есть вход на вход А, он открывается, и тогда выхода нет. Примером системы управления воротами НЕ является свет, который включается, когда становится темно, т. е. когда нет входа света на датчик освещенности, есть выход. ПЛК NAND LOGIC Предположим, что мы следуем за логическим элементом И с логическим элементом НЕ (рис. 1.12a). Следствием наличия вентиля НЕ является инвертирование всех выходов вентиля И. Альтернатива, дающая точно такие же результаты, — поместить вентиль НЕ на каждый вход, а затем выполнить ИЛИ (рис. 1.12б). Встречается та же самая таблица истинности, а именно: Оба входа A и B должны быть 0, чтобы на выходе была 1. Выход имеется, когда вход A и вход B не равны 1. Комбинация этих вентилей называется вентилем И-НЕ (рис. 1.13). Примером системы управления воротами NAND является сигнальная лампа, которая загорается, если на станке не был активирован предохранительный выключатель и не активирован концевой выключатель, сигнализирующий о наличии заготовки. ПЛК НОР ЛОГИК Предположим, что мы следуем за логическим элементом ИЛИ логическим элементом НЕ (рис. 1.14a). Следствием наличия логического элемента НЕ является инвертирование выходов логического элемента ИЛИ. Альтернативный вариант, который дает точно такие же результаты, состоит в том, чтобы поместить вентиль НЕ на каждый вход, а затем вентиль И для результирующих инвертированных входов (рис. 1.14b). Ниже представлена результирующая таблица истинности: Комбинация вентилей ИЛИ и НЕ называется вентилем ИЛИ. Выход существует, когда ни вход A, ни вход B не равен 1. На рис. 1.15 показана лестничная диаграмма системы NOR. Когда вход A и вход B не активированы, имеется выход 1. Когда X400 или X401 равны 1, выходной сигнал равен 0. Логика исключающего ИЛИ (XOR) ПЛК Логический элемент ИЛИ выдает выходной сигнал, когда один или оба входа равны 1. Однако иногда возникает необходимость в вентиле, который выдает выход, когда любой из входов равен 1, но не когда оба равны 1, т. е. имеет таблицу истинности: Такой вентиль называется исключающим ИЛИ или исключающим ИЛИ. Один из способов получения такого вентиля — использование вентилей НЕ, И и ИЛИ, как показано на рисунке 1.16. На рис. 1.17 показана лестничная диаграмма системы вентилей «исключающее ИЛИ». Когда вход A и вход B не активированы, выходной сигнал равен 0. Когда активирован только вход A, верхняя ветвь приводит к выходу, равному 1. Когда активируется только вход B, тогда нижняя ветвь приводит к выходу, равному 1. Когда оба входа A и вход B активированы, выходной сигнал отсутствует. В этом примере логического элемента вход A и вход B имеют два набора контактов в цепях, один из которых нормально разомкнут, а другой нормально закрыт. При программировании ПЛК каждый вход может иметь столько наборов контактов, сколько необходимо. ПЛК Эксклюзивная логика NOR (XNOR)
  11. Каждый программируемый логический контроллер должен иметь средства приема и интерпретации сигналов от реальных датчиков, таких как переключатели и энкодеры, а также иметь возможность осуществлять контроль над реальными элементами управления, такими как соленоиды, клапаны и двигатели. Это обычно известно как возможность ввода/вывода или ввода/вывода. Монолитные («кирпичики») ПЛК имеют фиксированное количество возможностей ввода-вывода, встроенных в устройство, тогда как модульные («стоечные») ПЛК используют отдельные «карты» печатной платы для обеспечения настраиваемых возможностей ввода-вывода. Модули ввода-вывода ПЛК Преимущества использования сменных карт ввода-вывода вместо монолитной конструкции ПЛК многочисленны. Во-первых и наиболее очевидным является тот факт, что отдельные карты ввода-вывода можно легко заменить в случае неисправности без необходимости замены всего ПЛК. Для пользовательских приложений можно выбрать конкретные карты ввода-вывода, отдавая предпочтение дискретным картам для приложений, использующих множество входов и выходов включения/выключения, или отдавая предпочтение аналоговым картам для приложений, использующих множество сигналов 4–20 мА и аналогичных сигналов. Некоторые ПЛК даже предлагают функцию горячей замены карт, что означает, что каждую карту можно извлечь и вставить новую без отключения питания процессора ПЛК и стойки. Обратите внимание, что не следует предполагать, что какая-либо система имеет карты с возможностью горячей замены, поскольку если вы попытаетесь заменить карту «вживую» в системе без этой функции, вы рискуете повредить карту и/или остальную часть устройства. он подключен! Некоторые ПЛК имеют возможность подключения к удаленным стойкам без процессора, заполненным дополнительными картами или модулями ввода-вывода, что позволяет увеличить количество каналов ввода-вывода сверх возможностей базового блока. Соединение главного ПЛК с удаленными стойками ввода-вывода обычно принимает форму специальной цифровой сети, которая может охватывать большие физические расстояния: Альтернативной схемой расширения системы является объединение нескольких ПЛК в сеть, где каждый ПЛК имеет собственную выделенную стойку и процессор. С помощью инструкций связи один ПЛК можно запрограммировать на чтение данных из другого ПЛК и/или запись данных в него, эффективно используя другой ПЛК в качестве расширения своего собственного ввода-вывода. Хотя этот метод дороже, чем удаленный ввод-вывод (когда в удаленных стойках отсутствуют собственные выделенные процессоры), он обеспечивает возможность автономного управления в случае разрыва сетевого соединения между процессорами ПЛК. Возможности ввода/вывода программируемых логических контроллеров бывают трех основных разновидностей: дискретные, аналоговые и сетевые.
  12. Основы лестничной диаграммы в программировании ПЛК Первоначально релейная логика представляла собой письменный метод документирования проектирования и изготовления релейных стоек, используемых в производстве и управлении технологическими процессами. Каждое устройство в релейной стойке должно было быть представлено символом на лестничной схеме с указанием соединений между этими устройствами. Кроме того, на лестничной диаграмме также будут показаны другие элементы, внешние по отношению к релейной стойке, такие как насосы, нагреватели и т. д. Релейная логика превратилась в язык программирования, который представляет программу в виде графической схемы, основанной на принципиальных схемах аппаратных средств релейной логики. Релейная логика используется для разработки программного обеспечения для программируемых логических контроллеров (ПЛК), используемых в приложениях промышленного управления. Название основано на наблюдении, что программы на этом языке напоминают лестницы с двумя вертикальными перекладинами и рядом горизонтальных перекладин между ними. Хотя лестничные диаграммы когда-то были единственной доступной формой записи программ программируемого контроллера, сегодня другие формы стандартизированы в IEC 61131-3. Релейная логика широко используется для программирования ПЛК, где требуется последовательное управление процессом или производственной операцией. Лестничная логика полезна для простых, но важных систем управления. Поскольку программируемые логические контроллеры стали более сложными, они также стали использоваться в очень сложных системах автоматизации. Часто программа лестничной логики используется вместе с программой HMI, работающей на компьютерной рабочей станции. Пример простой программы лестничной логики Сам язык можно рассматривать как набор связей между логическими контролерами (контактами) и исполнительными механизмами (катушками). Если между левой стороной ступеньки и выходом можно проследить путь через подтвержденные (истинные или «замкнутые») контакты, ступенька истинна, а бит хранения выходной катушки установлен или истинен. Если путь не проследить, то на выходе ложный сигнал (0) и «катушка» по аналогии с электромеханическими реле считается «обесточенной». Лестничная логика имеет контакты, которые замыкают или размыкают цепи управления катушками. Каждая катушка или контакт соответствует состоянию одного бита в памяти программируемого контроллера. В отличие от электромеханических реле, лестничная программа может ссылаться на состояние одного бита любое количество раз, что эквивалентно реле с неопределенно большим количеством контактов. Так называемые «контакты» могут относиться к физическим («жестким») входам программируемого контроллера от физических устройств, таких как кнопки и концевые выключатели, через встроенный или внешний модуль ввода, или могут представлять состояние битов внутренней памяти, которые могут быть сгенерированы. в другом месте программы. Каждая ступень лестничного языка обычно имеет одну катушку в крайнем правом углу. Некоторые производители могут допускать использование более одной выходной катушки на ступеньке. —( )— Обычная катушка, на которую подается напряжение всякий раз, когда ее ступенька замыкается. —()— Катушка «нет», на которую подается напряжение всякий раз, когда ее ступенька разомкнута. —[ ]— Обычный контакт, замыкающийся всякий раз, когда на соответствующую катушку или вход, который им управляет, подается напряжение. —[]— Контакт «нет», замыкается, когда соответствующая катушка или вход, который им управляет, не находится под напряжением. «Катушка» (выход цепочки) может представлять собой физический выход, который управляет каким-либо устройством, подключенным к программируемому контроллеру, или может представлять собой бит внутренней памяти для использования в другом месте программы. Логическое И ------[ ]--------------[ ]----------------( ) Ключевой переключатель 1 Ключевой переключатель 2 Двигатель двери Вышеупомянутое реализует функцию: Дверной двигатель = ключевой переключатель 1 и ключевой переключатель 2. На этой схеме показаны два выключателя с ключом, которые охранники могут использовать для активации электродвигателя на двери банковского хранилища. Когда нормально разомкнутые контакты обоих переключателей замыкаются, электричество может поступать на электродвигатель, который открывает дверь. Логическое И с НЕ ------[ ]--------------[]----------------( ) Закрыть дверь. Препятствие. Двигатель двери. Вышеупомянутое реализует функцию: Двигатель двери = Закрыть дверь И НЕ (Препятствие). На этой схеме изображена кнопка, закрывающая дверь, и детектор препятствий, который определяет, есть ли что-то на пути закрывающейся двери. Когда нормально разомкнутый контакт кнопки закрывается и нормально закрытый детектор препятствий закрывается (препятствие не обнаружено), электричество может поступать на двигатель, который закрывает дверь. Логическое ИЛИ --+-------[ ]-------+-----------------( ) | Внешняя разблокировка | Разблокировать | | +-------[ ]-------+ Разблокировка салона Вышеупомянутое реализует функцию: Разблокировка = Внутренняя разблокировка ИЛИ Внешняя разблокировка. На этой схеме показаны две вещи, которые могут вызвать срабатывание дверных замков автомобиля. Удаленный приемник всегда находится под напряжением. Соленоид замка получает питание, когда любой набор контактов замкнут. Промышленный СТОП/СТАРТ В обычной промышленной логике пуска/останова с фиксацией у нас есть кнопка «пуск» для включения контактора двигателя и кнопка «стоп» для выключения контактора. При нажатии кнопки «пуск» вход активируется через нормально замкнутый контакт кнопки «стоп». Когда входной сигнал «работа» становится истинным, герметичный НО контакт «пуск» параллельно с НО контактом «пуск» закроется, поддерживая истинную входную логику (зафиксирован или закрыт). После того, как цепь защелкнута, можно нажать кнопку «стоп», что приведет к размыканию ее нормально замкнутого контакта и, следовательно, к ложному срабатыванию входа. Затем размыкается «рабочий» нормально разомкнутый контакт, и логика схемы возвращается в свое состояние покоя. --+----[ ]--+----[]----( ) | начать | хватит бежать | | +----[ ]--+ бегать -------[ ]--------------( ) запустить мотор Вышеприведенное реализует функцию: run = (start OR run) AND ( NOT stop ) Обратите внимание на использование круглых скобок для группировки логической функции ИЛИ перед вычислением логической функции И (которая имеет более высокий приоритет операции). Также обратите внимание на использование NOT для обозначения логики нормально замкнутого контакта «стоп». Такая конфигурация защелки является общепринятой идиомой в релейной логике. В лестничной логике это называется логикой запечатывания. Ключом к пониманию защелки является признание того, что переключатель «пуск» — это переключатель мгновенного действия (как только пользователь отпускает кнопку, переключатель снова размыкается). Как только соленоид «работа» срабатывает, он замыкает размыкающий контакт «пуск», который фиксирует соленоид. Размыкание переключателя «Пуск» не оказывает никакого эффекта. По соображениям безопасности аварийный останов и/или останов должны быть подключены последовательно с пусковым выключателем, и логика реле должна это отражать. --[]----[]----+--[ ]--+---------( ) ЕС Стоп | Начало | Мотор | | +--[ ]--+ Бегать Сложная логика Вот пример того, как могут выглядеть две ступени в программе релейной логики. В реальных приложениях могут быть сотни или тысячи ступеней. Обычно сложная релейная логика «читается» слева направо и сверху вниз. Поскольку каждая из линий (или ступеней) оценивается, выходная катушка ступени может поступать на следующий этап лестницы в качестве входного сигнала. В сложной системе на лестнице будет много «ступенек», которые пронумерованы в порядке оценки. 1. ----[ ]---------+----[ ]-----+----( ) Переключатель | ПриветТемп | кондиционер | | +----[ ]-----+ Влажный 2. ----[ ]----[]--------------------( ) Кондиционер Обогрев Охлаждение Линия 1 реализует функцию: A/C = Переключатель И (HiTemp ИЛИ Влажность) Линия 2 реализует функцию: Охлаждение = кондиционер И (НЕ обогрев) Это представляет собой немного более сложную систему для ступени 2. После оценки первой линии выходная катушка «A/C» подается на ступень 2, которая затем оценивается, и выходная катушка «Охлаждение» может быть подана в выходную ступень. устройство «Компрессор» или на третью ступень лестницы. Эта система позволяет разбивать и оценивать очень сложные логические конструкции. Дополнительный функционал Дополнительные функциональные возможности могут быть добавлены в реализацию релейной логики производителем ПЛК в виде специального блока. Когда специальный блок включен, он выполняет код с заранее определенными аргументами. Эти аргументы могут отображаться в специальном блоке. +-------+ -----[ ]--------------------+ А +---- Удаленная разблокировка +-------+ Удаленный счетчик +-------+ -----[ ]--------------------+ B +---- Разблокировка салона +-------+ Внутренняя стойка +--------+ --------------------+ А + Б +----------- | в C | +--------+ Сумматор В этом примере система подсчитает количество нажатий кнопок внутренней и дистанционной разблокировки. Эта информация будет храниться в ячейках памяти A и B. В ячейке памяти C будет храниться общее количество раз, когда дверь была отперта электронным способом. ПЛК имеют множество типов специальных блоков. Они включают в себя таймеры, арифметические операторы и сравнения, поиск в таблицах, обработку текста, ПИД-регулятор и функции фильтрации. Более мощные ПЛК могут работать с группой ячеек внутренней памяти и выполнять операцию с диапазоном адресов, например, для моделирования физического последовательного барабанного контроллера или конечного автомата. В некоторых случаях пользователи могут определять свои собственные специальные блоки, которые по сути являются подпрограммами или макросами. Большая библиотека специальных блоков наряду с высокой скоростью исполнения позволили использовать ПЛК для реализации очень сложных систем автоматизации.
  13. В конце 1960-х годов американская компания Bedford Associates выпустила вычислительное устройство, названное MODICON. В качестве аббревиатуры оно означало «Модульный цифровой контроллер», а позже стало названием подразделения компании, занимающегося разработкой, производством и продажей этих управляющих компьютеров специального назначения. Другие инженерные фирмы разработали свои собственные версии этого устройства, и в конечном итоге оно стало известно в непатентованных терминах как ПЛК или программируемый логический контроллер. ПЛК Целью ПЛК была прямая замена электромеханических реле в качестве логических элементов, заменив вместо этого твердотельный цифровой компьютер с хранимой программой, способный имитировать соединение множества реле для выполнения определенных логических задач. ПЛК имеет множество «входных» терминалов, через которые он интерпретирует «высокие» и «низкие» логические состояния и аналоговые значения от переключателей и датчиков. Он также имеет множество выходных клемм, через которые он выводит сигналы «высокого» и «низкого» напряжения на источники питания, соленоиды, контакторы, небольшие двигатели и другие устройства, подходящие для управления включением/выключением, а также аналоговый выход для управления регулирующими клапанами, двигателем. контроль скорости и т. д. Чтобы упростить программирование ПЛК, их язык программирования был разработан так, чтобы напоминать диаграммы лестничной логики. Таким образом, инженер, привыкший читать схемы релейной логики, будет чувствовать себя комфортно, программируя ПЛК для выполнения тех же функций управления. Программирование ПЛК На следующем рисунке показан простой ПЛК, как он может выглядеть спереди. Две винтовые клеммы обеспечивают подключение к источнику питания для питания внутренней схемы ПЛК, обозначенной L1 и L2. Шесть винтовых клемм с левой стороны обеспечивают подключение к устройствам ввода, причем каждая клемма представляет собой отдельный входной «канал» со своей меткой «X». Нижняя левая винтовая клемма представляет собой «общее» соединение, которое обычно подключается к L2 (нейтраль) источника питания 120 В переменного тока. Внутри корпуса ПЛК, подключенного между каждой входной клеммой и общей клеммой, находится оптоизоляционное устройство (светоизлучающий диод), которое подает электрически изолированный «высокий» логический сигнал в схему компьютера (фототранзистор интерпретирует свет светодиода). ) при подаче напряжения 120 В переменного тока между соответствующей входной клеммой и общей клеммой. Индикаторный светодиод на передней панели ПЛК визуально указывает на то, что вход находится под напряжением: Выходные сигналы генерируются компьютерной схемой ПЛК, активирующей коммутационное устройство (транзистор, симистор или даже электромеханическое реле), соединяющее клемму «Источник» с любой из выходных клемм с маркировкой «Y-». Клемма «Источник», соответственно, обычно подключается к стороне L1 источника питания 120 В переменного тока. Как и для каждого входа, индикаторный светодиод на передней панели ПЛК визуально указывает на то, что выход находится под напряжением: Таким образом, ПЛК может взаимодействовать с реальными устройствами, такими как переключатели и соленоиды. Фактическая логика системы управления устанавливается внутри ПЛК с помощью компьютерной программы. Эта программа определяет, какой выход будет под напряжением при каких входных условиях. Хотя сама программа выглядит как схема релейной логики с символами переключателей и реле, внутри ПЛК нет реальных контактов переключателя или катушек реле, которые могли бы создавать логические связи между входом и выходом. Это воображаемые контакты и катушки, если хотите. Программа вводится и просматривается через персональный компьютер, подключенный к порту программирования ПЛК. Рассмотрим следующую схему и программу ПЛК: Когда кнопочный переключатель не задействован (не нажат), питание на вход X1 ПЛК не подается. Следуя программе, которая показывает нормально разомкнутый контакт X1 последовательно с катушкой Y1, на катушку Y1 не будет подаваться «энергия». Таким образом, выход Y1 ПЛК остается обесточенным, а подключенная к нему контрольная лампа остается темной. Однако если кнопочный переключатель нажат, питание будет подано на вход X1 ПЛК. Все контакты X1, появляющиеся в программе, примут активированное (ненормальное) состояние, как если бы они были контактами реле, срабатывающими при подаче питания на катушку реле с именем «X1». В этом случае подача питания на вход X1 приведет к тому, что нормально разомкнутый контакт X1 «закроется», отправив «питание» на катушку Y1. Когда на катушку Y1 программы «подается питание», на реальный выход Y1 подается напряжение, зажигая подключенную к нему лампу: Надо понимать, что контакт X1, катушка Y1, соединительные провода и «питание», появляющееся на дисплее компьютера (технической системы, в которую загружено программное обеспечение ПЛК) – все это виртуальные. Они не существуют как настоящие электрические компоненты. Они существуют как команды в компьютерной программе — всего лишь части программного обеспечения — которая напоминает настоящую принципиальную схему реле. Не менее важно понимать, что компьютер, используемый для отображения и редактирования программы ПЛК, не требуется для непрерывной работы ПЛК. После загрузки программы в ПЛК с компьютера компьютер можно отключить от ПЛК, и ПЛК продолжит выполнять запрограммированные команды. Я включил дисплей компьютера в эти иллюстрации исключительно ради вас, чтобы помочь понять взаимосвязь между реальными условиями (замыкание переключателя и состояние лампы) и состоянием программы («питание» через виртуальные контакты и виртуальные катушки). Истинная мощь и универсальность ПЛК раскрываются, когда мы хотим изменить поведение системы управления. Поскольку ПЛК является программируемым устройством, мы можем изменить его поведение, изменяя подаваемые ему команды, без необходимости переконфигурировать подключенные к нему электрические компоненты. Например, предположим, что мы хотим заставить эту схему выключателя и лампы работать в инвертированном виде: нажать кнопку, чтобы лампа погасла, и отпустить ее, чтобы она включилась. «Аппаратное» решение потребует замены нормально замкнутого кнопочного переключателя вместо нормально разомкнутого переключателя, который в настоящее время находится на месте. «Программное» решение гораздо проще: просто переделать программу так, чтобы контакт Х1 был нормально замкнутым, а не нормально разомкнутым. На следующем рисунке мы видим измененную систему, показанную в состоянии, когда кнопка не нажата (не нажата): На следующем рисунке переключатель показан активированным (нажатым): Одним из преимуществ реализации логического управления в программном обеспечении, а не в аппаратном обеспечении, является то, что входные сигналы можно повторно использовать в программе столько раз, сколько необходимо. Для примера возьмем следующую схему и программу, предназначенную для подачи питания на лампу при одновременном нажатии хотя бы двух из трех кнопочных выключателей: Чтобы построить эквивалентную схему с использованием электромеханических реле, необходимо использовать три реле с двумя нормально разомкнутыми контактами каждое, чтобы обеспечить два контакта на каждый входной переключатель. Однако, используя ПЛК, мы можем запрограммировать столько контактов, сколько пожелаем, для каждого входа «X» без добавления дополнительного оборудования, поскольку каждый вход и каждый выход представляют собой не что иное, как один бит в цифровой памяти ПЛК (либо 0, либо 1). , и его можно вызывать столько раз, сколько необходимо. Более того, поскольку каждый выход ПЛК представляет собой не что иное, как бит в его памяти, мы можем назначить контакты в программе ПЛК, «активируемой» статусом выхода (Y). Возьмем, к примеру, следующую систему — схему управления пуском и остановкой двигателя: Кнопочный переключатель, подключенный к входу Х1, выполняет функцию выключателя «Пуск», а переключатель, подключенный к входу Х2, выполняет функцию «Стоп». Другой контакт в программе, названный Y1, напрямую использует состояние выходной катушки в качестве герметичного контакта, так что контактор двигателя продолжает оставаться под напряжением после отпускания кнопки «Пуск». Вы можете увидеть, как нормально закрытый контакт X2 появляется в цветном блоке, показывая, что он находится в закрытом («электропроводящем») состоянии. Если бы мы нажали кнопку «Пуск», вход X1 подал бы напряжение, тем самым «замкнув» контакт X1 в программе, подав «питание» на «катушку» Y1, подав питание на выход Y1 и подав напряжение 120 В переменного тока на настоящая катушка контактора двигателя. Параллельный контакт Y1 также «замкнется», таким образом зафиксировав «цепь» во включенном состоянии: Теперь, если мы отпустим кнопку «Пуск», нормально разомкнутый «контакт» X1 вернется в свое «разомкнутое» состояние, но двигатель продолжит работать, поскольку герметичный «контакт» Y1 продолжает обеспечивать «непрерывность». для «питания» катушки Y1, таким образом сохраняя выход Y1 под напряжением: Чтобы остановить двигатель, мы должны на мгновение нажать кнопку «Стоп», которая подаст напряжение на вход X2 и «разомкнет» нормально закрытый «контакт», разорвав цепь на «катушке Y1»: При отпускании кнопки «Стоп» вход Х2 обесточивается, возвращая «контакт» Х2 в нормальное, «замкнутое» состояние. Однако двигатель не запустится снова, пока не будет нажата кнопка «Пуск», поскольку «запечатывание» Y1 потеряно: Здесь важно отметить, что отказоустойчивая конструкция так же важна в системах, управляемых ПЛК, как и в системах, управляемых электромеханическими реле. Всегда следует учитывать последствия неисправности (обрыва) проводки на управляемом устройстве или устройствах. В этом примере схемы управления двигателем у нас есть проблема: если входная проводка для X2 (переключатель «Стоп») выйдет из строя, остановить двигатель будет невозможно! Решением этой проблемы является изменение логики между «контактом» X2 внутри программы ПЛК и реальным кнопочным переключателем «Стоп»: Когда нормально замкнутый кнопочный переключатель «Стоп» не задействован (не нажат), на вход X2 ПЛК подается питание, таким образом «замыкается» «контакт» X2 внутри программы. Это позволяет запустить двигатель, когда на вход X1 подается питание, и позволяет ему продолжать работу, когда кнопка «Пуск» больше не нажата. При нажатии кнопки «Стоп» вход X2 обесточивается, тем самым «размыкая» «контакт» X2 внутри программы ПЛК и отключая двигатель. Итак, мы видим, что между этой новой конструкцией и предыдущей нет никакой функциональной разницы. Однако, если входная проводка на входе X2 выйдет из строя, вход X2 обесточится таким же образом, как и при нажатии кнопки «Стоп». В результате неисправности проводки на входе X2 двигатель немедленно отключится. Это более безопасная конструкция, чем показанная ранее, в которой отказ проводки переключателя «Стоп» привел бы к невозможности выключения двигателя. Помимо входных (X) и выходных (Y) программных элементов, ПЛК имеют «внутренние» катушки и контакты, не имеющие внутренней связи с внешним миром. Они используются почти так же, как «реле управления» (CR1, CR2 и т. д.) используются в стандартных релейных схемах: для обеспечения инверсии логического сигнала, когда это необходимо. Чтобы продемонстрировать, как можно использовать одно из этих «внутренних» реле, рассмотрим следующий пример схемы и программы, предназначенных для эмуляции функции логического элемента И-НЕ с тремя входами. Поскольку элементы программы ПЛК обычно обозначаются отдельными буквами, я буду называть внутреннее реле управления «C1», а не «CR1», как это принято в схемах управления реле: В этой схеме лампа будет гореть до тех пор, пока какая-либо из кнопок остается ненажатой (ненажатой). Чтобы лампа погасла, нам придется активировать (нажать) все три переключателя, вот так:
  14. Пример программирования ПЛК для управления несколькими двигателями для начинающих с использованием программного обеспечения ПЛК Schneider Electric EcoStruxure Machine Expert Basic. Обратите внимание, что этот пример ПЛК предназначен для студентов-инженеров, которые заинтересованы в изучении и практике упражнений с ПЛК. Программы промышленных ПЛК реального времени будут разработаны с большим количеством функций безопасности и защиты. Пример программирования ПЛК на мультидвигателе Разработайте релейную логику ПЛК для следующего приложения. Мы используем три тумблера для управления тремя двигателями. Если переключатель 1 включен, то двигатель I, двигатель II и двигатель III будут включены. Если переключатель 2 включен, то двигатель I и двигатель II будут включены. Если переключатель 3 включен, то двигатель I, двигатель II и двигатель III будут выключены. Цифровые входы В этом примере программы требуются следующие цифровые входы (DI). Также упоминаются назначенные адреса DI ПЛК. Переключатель 1: I0.0 Переключатель 2: I0.1 Переключатель 3: I0.2 Цифровые выходы В этом примере программы требуются следующие цифровые выходы (DO). Также упоминаются назначенные адреса DO ПЛК. Двигатель 1: Q0.0 Двигатель 2: Q0.1 Двигатель 3: Q0.2 Лестничная диаграмма для управления несколькими двигателями Описание программы Для этого приложения мы использовали программное обеспечение Ecostruxure Machine Expert Basic v1.2 для программирования. В приведенной выше программе мы использовали нормально разомкнутый контакт для переключателя 1 (I0.0), нормально закрытые контакты для переключателя 2 (I0.1) и переключателя 3 (I0.2). Переключатель 1 и переключатель 3 соединены последовательно для двигателя 1 и двигателя 2, таким образом реализуя логический элемент И. Для двигателя 3 переключатель 1, переключатель 2 и переключатель 3 соединены последовательно, реализуя таким образом логический элемент И. Чтобы двигатель 1 и двигатель 2 были включены, переключатель 1 должен быть включен, а переключатель 3 должен быть выключен. Когда переключатель 1 включен, переключатель 2 и переключатель 3 выключены, двигатель 3 будет включен. Включение переключателя 3 выключит все двигатели, т. е. двигатель 1, двигатель 2 и двигатель 3 будут выключены. Двигатель 3 выключится, когда переключатель 2 будет включен. Когда переключатель 1 включен, все двигатели включатся, поскольку ток также будет проходить через переключатель 2 и переключатель 3, поскольку это нормально замкнутые контакты. Если не выключить переключатель 1, двигатель 1 и двигатель 2 останутся включенными, но двигатель 3 выключится, когда переключатель 2 будет включен. При включении переключателя 2 он не будет передавать ток на двигатель 3. Все двигатели выключатся при включении переключателя 3, даже если другие переключатели включены. Когда переключатель 1 включен Ток протекает через переключатель 1, когда он находится в истинном состоянии. В ложном состоянии переключатель 3 и переключатель 4 также пропускают ток на выходы. Когда переключатель 2 включен Ток не протекает через переключатель 2, когда он включен. В истинном состоянии нормально закрытый контакт разрывает цепь. Когда переключатель 3 включен Переключатель 3 представляет собой нормально закрытый контакт. Когда он включен, он не пропускает через себя ток. В результате ни один из выходов не будет включен.
  15. Разработайте примеры программирования ПЛК для промышленной автоматизации в соответствии с логикой, приведенной ниже: Пила, вентилятор и масляный насос включаются при нажатии кнопки пуска. Если пила проработала менее 20 с, масляный насос должен выключиться при выключении пилы, а вентилятор должен поработать еще 5 с после выключения пилы. Если пила проработала более 20 с, вентилятор должен оставаться включенным до тех пор, пока не будет выполнен сброс отдельной кнопкой сброса вентилятора, а масляный насос должен оставаться включенным еще в течение 10 с после выключения пилы. Напишите программу ПЛК, которая будет реализовывать этот процесс. Примеры программирования ПЛК Описание программы: Ранг 0000: Пуск/аварийный останов PB фиксируется с помощью памяти B3:0/0. Ранг 0001: B3:0/0 включен для включения пилы (O: 0/0), вентилятора (O: 0/1) и масляного насоса (O:0/2). Нормально закрытый контакт выключателя «Стоп» включен последовательно. Выход пилы отключается. Переключатель сброса вентилятора и таймер T4:0 подключены для отключения вентилятора при выполнении условий. Таймер Т4:2 отработал немного и бит памяти предназначен для отключения масляного насоса. Ранг 0002: При нажатии кнопки «Стоп» в соответствии с логикой, упомянутой в пункте 2, выход вентилятора (O: 0/2) должен отключиться через 5 с. Блок компаратора ограничивает запуск таймера T4:0 после 20 с работы пилы. Ранг 0003: Таймер Т4:1 срабатывает при нажатии кнопки «Пуск». Когда кнопка остановки нажата в любой момент после 20 с, выход пилы отключится. Через 10 секунд масляный насос отключится. Эту операцию выполняет Таймер Т4:2. Бит выполнения таймера T4:0 используется для ограничения работы таймера T4:1, когда T4:0 включен. Ранг 0004: Меньше блока компаратора используется для выполнения логики, упомянутой в пункте 2, для отключения вентилятора, когда работа выходного сигнала пилы составляет менее 20 с. Выход программы: Теперь мы видим симуляцию вышеуказанной лестничной логики для различных условий, как указано ниже. При нажатии кнопки Старт ПБ Когда переключатель «Стоп» нажат до 20 с. Когда переключатель «Стоп» нажат после 20 с. При нажатии переключателя сброса вентилятора Заключение: Мы можем использовать этот пример, чтобы понять логику программирования в ПЛК Allen Bradley.
  16. Это программа ПЛК для контроля въезда/выезда из подвала или подземной парковки. ПЛК Автостоянка описание проблемы Из-за переполненности мест мы сталкиваемся с множеством проблем с парковкой транспортных средств в подвалах или подземных помещениях торговых центров, гостиниц, комплексов и т. д. Это происходит из-за противоречия между быстро растущим количеством транспортных средств и ограниченным количеством парковочных мест в торговых центрах, магазинах и комплексах в городах. Результатом является явление «трудной парковки и беспорядочной парковки». Существующая проблема парковки оказывает серьезное влияние на качество жизни людей и состояние дорог. Диаграмма проблемы Решение проблемы С помощью простой автоматизации мы можем уменьшить проблему парковки автомобилей в подвале или под землей в торговых центрах, гостиницах, комплексах и т. д. Вход/выход в подвале представляет собой однополосный проход, и для управления автомобилями необходимы светофоры. Здесь мы рассматриваем две световые индикации для контроль автомобилей. Красный свет запрещает въезд и выезд автомобилей, а зеленый свет разрешает въезд и выезд автомобилей. Когда автомобиль въезжает в проход со стороны входа на первый этаж, оба красных света (первый этаж и подвал) будут включены. Въезд и выезд других автомобилей запрещен. во время процесса, пока автомобиль не пройдет через единственный проход. Когда проход свободен, оба зеленого света (первый этаж и подвал) будут включены и позволят другим автомобилям въехать с первого этажа или подвала. Первоначально мы будем держать зеленый свет включенным, а красный свет выключенным. Список входов и выходов Список входов Главный ПЕРЕКЛЮЧАТЕЛЬ: I0.0 Датчик S1 для входа/выхода первого этажа: I0.1 Датчик S2 для входа/выхода в подвал: I0.2 Список выходов Зеленый свет (вход/выход на первом этаже): Q0.0 Зеленый свет (вход/выход из подвала): Q0.1 Красный свет (вход/выход на первом этаже): Q0.2 Красный свет (вход/выход из подвала): Q0.3 Список катушек памяти M M10.0: Горит, когда автомобиль проезжает мимо датчика S1. M10.3: Горит, когда автомобиль проезжает мимо датчика S2. M0.0: Положительный фронт системы ВКЛ. M0.1 и M11.0: Положительный фронт датчика S1. M0.3 и M11.1: Положительный фронт датчика S2. M11.2 : Отрицательный фронт датчика S2. M11.3 : Отрицательный фронт датчика S1. Лестничная схема ПЛК для контроля въезда/выезда с автостоянки Описание программы В этом приложении для программирования мы использовали ПЛК Siemens S7-300 и программное обеспечение TIA Portal. Сеть 1: В соответствии с приведенным выше объяснением в первой сети, когда система включена (I0.0), первоначально оба зеленых индикатора (первый этаж (Q0.0) и подвал (Q0.1)) будут включены. Команда SET выполняется и устанавливает оба выхода Q0.0 и Q0.1. Сеть 2: Согласно приведенному выше объяснению во второй сети, когда система включена (I0.0), первоначально оба красных фонаря (первый этаж (Q0.2) и подвал (Q0.3)) будут выключены.) Команда RESET выполняется и она сбрасывается. оба выхода Q0.2 и Q0.3. Сеть 3: Когда автомобиль въезжает в пустой проход с первого этажа, срабатывает датчик S1 (I0.1) и с помощью этого триггера устанавливается катушка памяти M10.0. Сеть 4: Когда автомобиль въезжает в пустой проход из подвала, срабатывает датчик S2 (I0.2) и с помощью этого триггера устанавливается катушка памяти M10.3. Сеть 5: Оба красных фонаря загораются либо положительным срабатыванием датчика S1, либо датчика S2. Поскольку, когда автомобиль въезжает в пустой проезд, оба красных света (Q0.2 и Q0.3) запрещают въезд/выезд автомобиля с обеих сторон. Сеть 6: Здесь мы взяли отрицательный триггер обоих датчиков S1 (I0.1) и S2 (I0.2). поэтому, когда они сработают, красные огни (Q0.2 и Q0.3) будут выключены. Когда автомобиль полностью проедет пустой проезд, красные огни (Q0.2 и Q0.3) должны быть выключены. Сеть 7: В этой сети зеленые огни (Q0.0 и Q0.1) будут гореть, когда красные огни выключены. Зеленые огни (Q0.0 и Q0.1) разрешают въезд или выезд другого автомобиля. Сеть 8: Если красные индикаторы (Q0.2 и Q0.3) горят в это время, зеленые индикаторы (Q0.0 и Q0.1) должны быть выключены. Таким образом, в этой сети, когда красные индикаторы (Q0.2 и Q0.3) включаются в будет выполнена команда сброса времени, и зеленые индикаторы (Q0.0 и Q0.1) погаснут. Сеть 9: Если ПЕРЕКЛЮЧАТЕЛЬ ВКЛ (I0.0) системы ВЫКЛЮЧЕН, тогда все ячейки памяти должны быть равны 0. Здесь мы взяли команду MOVE для перемещения нуля во всех ячейках (MB0, QB0 и MB10). Этот пример предназначен только для объяснения концепции, в этом примере учитываются не все параметры (например, система открытия/закрытия дверей, сигналы тревоги и т. д.). Результат Примечание. Приведенная выше логика ПЛК дает базовое представление о применении ПЛК для управления парковкой въездных/выездных ворот. Логика является ограниченным и неполным приложением.
  17. Это программа ПЛК для реализации программы подсчета объектов на движущемся конвейере. Подсчет движущихся объектов на конвейере Предметы движутся по конвейеру. Нам нужно подсчитать общее количество предметов, собранных в конце конвейера, и отобразить его на локальной панели управления. Напишите программу ПЛК для этого приложения. Диаграмма проблемы Решение проблемы Здесь мы используем лестничную программу ПЛК для реализации этой логики. Чаще всего для обнаружения объектов используются датчики приближения. Здесь мы устанавливаем датчик приближения для обнаружения частей или объектов, движущихся по конвейеру. Индуктивный датчик в основном используется для обнаружения металлических предметов. Для других типов объектов мы используем емкостный датчик приближения для обнаружения объектов, движущихся по конвейеру. Мы подключаем этот датчик к ПЛК и, используя логику счетчика, подсчитываем количество объектов и отображаем общее количество на дисплее локальной панели управления. Здесь мы используем счетчик UP для подсчета собранных объектов в конце конвейера. Примечание: – Здесь мы рассмотрели простое приложение для подсчета объектов. Мы рассмотрели датчик приближения для обнаружения объектов. Датчик приближения обнаружит объект, а счетчик PLC UP подсчитает собранные объекты. Список входов и выходов Цифровые входы Начало:- I0.0 Стоп:- I0.1 Близость:- I0.2 (обнаружение объектов) Сброс счетчика PB:- I0.3 Цифровой выход Цикл ВКЛ:- Q0.0 М-память Сброс счетчика: - M0.1 Всего собрано объектов: - MW10 ПЛК Лестничная логика для подсчета объектов на конвейере Объяснение лестничной логики Для этого приложения мы используем ПЛК S7-300 и портальное программное обеспечение TIA для программирования. Мы также можем реализовать эту логику, используя другой ПЛК. Сеть 1: В первой сети мы использовали схему блокировки для включения цикла. Здесь мы использовали START PB (I0.0) для запуска цикла и STOP PB (I0.1) для остановки цикла. Сеть 2: Команда счетчика ПЛК используется для подсчета количества объектов. Датчики приближения устанавливаются рядом с конвейером. Когда объект приближается к датчику приближения (I0.2), он обнаруживает объект, и выход датчика включается или переходит в состояние ВКЛ. Когда рядом с датчиком приближения нет объекта, выход датчика обесточивается или переходит в состояние ВЫКЛ. Счетчик ПЛК считает инкрементно. Общее количество подсчитанных объектов будет сохранено в слове памяти или регистре (MW10). Примечание. Вышеуказанное приложение может отличаться от фактического. Этот пример предназначен только для пояснения. Мы можем реализовать эту логику и в других ПЛК. Это простая концепция счетчика UP. Используя эту концепцию, мы можем подсчитывать объекты, движущиеся по конвейеру или в любом другом приложении для подсчета. Эта логика является лишь частью или предназначена только для логики конкретного приложения. Все параметры, рассмотренные в примере, предназначены только для пояснения, в реальных приложениях параметры могут отличаться. Результат
  18. Расширенное программирование ПЛК для сортировки дефектных деталей, позволяющее различать хорошие и плохие детали, а затем транспортировать их по конвейерам. Расширенное программирование ПЛК для сортировки дефектных деталей Приведенное ниже моделирование показывает идентификацию хороших и плохих продуктов и сортировку продуктов по их качеству с использованием релейной логики ПЛК. Конвейеры используются для перемещения продукции. Конвейеры запускаются и останавливаются при доставке продукции на конвейер и во время бурения. Сверлильный станок используется для сверления изделий согласно проекту. Иногда операция сверления может повредить продукцию. Датчик определяет качество продуктов, и толкатель перемещает некачественные продукты в другой складской отсек. Входы и выходы ПЛК В таблице ниже перечислены необходимые входы и выходы системы ПЛК. Тип № устройства Имя устройства Действие Вход X0 Св ерление включено во время сверления. Вход X1 Деталь под сверлом Одна деталь подается, когда Y0 включен: Большой металлический куб. Вход X2 «Просверлено правильно» ВКЛ, когда деталь просверлена правильно. Предыдущий результат очищается при начале сверления. Вход X3 Просверлено неправильно ВКЛ, когда деталь обнаружена на левом конце. Датчик входа X4 включается, когда деталь обнаружена на правом конце. Датчик входа X5 ВКЛ, когда деталь обнаружена перед толкателем. Входной датчик X10 включается, когда деталь просверлена неправильно. Предыдущий результат очищается при начале сверления. Выход Y0 Команда подачи Конвейер движется вперед, когда Y1 включен. Выход Y1 Конвейер вперед Конвейер движется вперед, когда Y3 включен. Выход Y2 Начать сверление Начинает сверление, когда Y2 включен (технологический цикл, который нельзя остановить на полпути). Выход Y3 Конвейер вперед Выдвигается, когда Y5 включен, и втягивается, когда Y5 выключен. Толкатель не может быть остановлен в середине хода. Выходной толкатель Y5 Выдвигается, когда Y5 включен, и втягивается, когда Y5 выключен. Толкатель не может быть остановлен в середине хода. Описание программы Целью этого проекта является различение хороших и дефектных деталей с помощью датчиков и их соответствующая сортировка. Проект состоит из двух ключевых направлений: общий контроль и контроль бурения. Общий контроль На панели управления имеется кнопка PB1 (X20). Когда вы нажимаете PB1, активируется команда подачи (Y0) для бункера, заставляя его подавать детали. При отпускании PB1 команда подачи деактивируется и бункер останавливается. На панели управления имеется переключатель SW1 (X24). Когда вы включаете SW1, конвейеры начинают двигаться вперед. Выключение SW1 останавливает конвейеры. Управление сверлом Теперь обсудим управление дрелью: Когда деталь под датчиком сеялки (X1) внутри сеялки активируется, конвейер останавливается. Процесс сверления начинается при подаче команды «Начать сверление» (Y2). Он останавливается, когда активируется датчик сверления (X0). После одного полного цикла работы сверла, если активирована функция «Начать сверление» (Y2), срабатывает датчик «Просверлено правильно» (X2) или «Просверлено неправильно» (X3). Обратите внимание, что дрель нельзя остановить во время работы. В этом моделировании ПЛК каждая третья деталь считается дефектной (деталь с несколькими отверстиями также попадает в категорию дефектных). Когда датчик обнаружения детали (X10) в толкателе обнаруживает дефектную деталь, конвейер останавливается, и толкатель перемещает деталь на «дефектный» лоток. Помните, что при подаче команды на толкатель он полностью выдвигается. Когда команда ВЫКЛ, толкатель полностью втягивается. Деталь, прошедшая проверку, продолжает движение по конвейеру к лотку «ОК», расположенному в правом конце. Программирование ПЛК
  19. Основное различие между РСУ и ПЛК — это бизнес-модель, которую мы обсуждали при сравнении архитектуры РСУ и ПЛК. РСУ и архитектура ПЛК Можно сказать, что бизнес-модель DCS основана на монолитной интегрированной системе, созданной одним производителем. Архитектура РСУ В РСУ контроллер, подсистема ввода-вывода, программное обеспечение сервера базы данных, инженерное программное обеспечение и программное обеспечение оператора представляют собой единый монолитный блок, разработанный вместе и работающий только друг с другом. Использование компонентов сторонних производителей невозможно. Ни один из этих компонентов невозможно использовать в какой-либо другой системе. РСУ использует сеть подсистемы ввода-вывода и сеть управления на основе стандартного Ethernet, но с собственным прикладным протоколом и, как правило, только с определенной утвержденной моделью коммутаторов Ethernet. Рисунок 1. В РСУ все компоненты поставляются одним и тем же производителем. Разрешена только определенная версия Windows и только один тип одобренного компьютера, поставляемого производителем DCS. Эти ограничения позволяют производителю РСУ очень тщательно тестировать все вместе, в очень больших масштабах, с большой нагрузкой, с множеством контроллеров и рабочих станций. Такие приложения, как пакетное управление, расширенное управление, автонастройка и т. д., также тестируются вместе. Это гарантирует отсутствие конфликтов совместимости и непредвиденных зависимостей. Тщательное крупномасштабное тестирование возможно, поскольку по существу существует только один тип каждого компонента, то есть только одна или очень мало комбинаций. Стороннее программное обеспечение допускается только на отдельных «станциях приложений», где оно не может конфликтовать с собственными приложениями DCS и должно быть протестировано и одобрено производителем DCS; внесен в белый список. РСУ представляет собой монолитную систему, в которой используются подсистема ввода-вывода, контроллер и программное обеспечение одной марки, а также единый компьютер и платформа операционной системы. Это было тщательно протестировано в очень больших масштабах. Долгосрочная поддержка DCS Системы обычно остаются работоспособными в течение 15 лет и более. В течение этого времени будет выпущено несколько версий Windows, пакеты обновлений, исправления, множество обновлений описаний вирусов, а также потребуется заменить компьютерное оборудование. Обычно DCS поддерживает только один тип антивирусного программного обеспечения, и всякий раз, когда появляется новое определение вируса или пакет обновления или исправление операционной системы Windows, весь монолитный набор всего аппаратного и программного обеспечения снова тестируется системой. поставщика перед выпуском, гарантируя, что определение вируса и пакет обновления могут быть развернуты без каких-либо конфликтов совместимости. Обновление РСУ Версии РСУ также обновляются как единый монолитный блок всего аппаратного и программного обеспечения, такого как встроенное ПО карты ввода-вывода, встроенное ПО контроллера, серверное программное обеспечение, программное обеспечение инженерной станции, программное обеспечение операторской станции, а также любое другое программное обеспечение, которое обновляется вместе. Каждый раз, когда появляется новая версия системы, все эти компоненты предварительно тщательно тестируются в большом масштабе производителем системы, чтобы гарантировать их совместимость друг с другом. Более того, процесс онлайн-переключения с более ранней версии на новую был тщательно протестирован в больших масштабах, что обеспечивает плавное развертывание на объекте. Именно эта уверенность, обеспечиваемая тщательными и крупномасштабными испытаниями, делает DCS очень популярной на крупных объектах, таких как нефтехимические комплексы. Такое тестирование становится практичным благодаря небольшому количеству комбинаций в монолитной системе. Архитектура ПЛК/Бизнес-модель Можно сказать, что бизнес-модель ПЛК основана на гибкой архитектуре системного интегратора (SI). Архитектура ПЛК Архитектура ПЛК очень гибкая: каждый компонент можно свободно выбирать от любого из множества поставщиков. ПЛК — это ЦП с программным обеспечением для настройки и подсистемой ввода-вывода. Иногда подсистема ввода-вывода может быть сторонней. Даже карты ввода-вывода, подключаемые к объединительной плате, могут быть изготовлены сторонними производителями. Программное обеспечение HMI обычно производится сторонними производителями. Обычно лучше всего использовать собственный OPC-сервер от производителя ПЛК, но иногда используются OPC-серверы сторонних производителей. Рисунок 2. В ПЛК интегрированы компоненты разных производителей. По сути, любой ПЛК работает с любой подсистемой ввода-вывода, сервером OPC и программным обеспечением HMI, поскольку используются стандартные протоколы, такие как PROFIBUS-DP, PROFINET, Modbus/RTU, Modbus/TCP, DeviceNet и EtherNet/IP, а также OPC и т. д. . Сетевое оборудование, компьютеры и версию Windows можно выбирать свободно. Некоторые компоненты, признанные неработающими, занесены в черный список. Рисунок 3. DCS использует одного поставщика, тогда как решения PLC объединяют нескольких поставщиков, что приводит к большому количеству комбинаций. Примечание. В настоящее время также доступен единый поставщик пакетов ПЛК. Такая гибкость позволяет использовать сотни комбинаций аппаратного и программного обеспечения, что делает невозможным для этих производителей собраться вместе для тестирования всех возможных комбинаций своего аппаратного и программного обеспечения на каждой версии Windows, прежде чем завод примет решение о покупке. Некоторые комбинации могут быть протестированы участвующими производителями, но они могут быть или не быть в больших масштабах с большой нагрузкой. ПЛК допускает любую комбинацию подсистемы ввода-вывода, ЦП и программного обеспечения HMI/SCADA на широком спектре компьютеров и платформ операционных систем. Любая комбинация не может быть проверена. Производитель ПЛК может поставлять все аппаратные и программные компоненты от того же производителя, поскольку многие производители ПЛК приобрели компании HMI. Если да, то эта конкретная комбинация, возможно, была протестирована более тщательно, чем другие протестированные комбинации. Вспомогательные сторонние приложения, такие как управление партиями, расширенное управление, автонастройка и т. д., как правило, не тестируются вместе, поскольку это приводит к еще большему количеству комбинаций. ПЛК использует собственное программное обеспечение для настройки, как и DCS. То есть вы не можете использовать стороннее программное обеспечение для настройки вашего ПЛК, как и РСУ. Собственный OPC-сервер для ПЛК лучше, чем сторонний OPC-сервер, поскольку программное обеспечение для настройки ПЛК обычно автоматически настраивает адресное пространство для OPC-сервера. Долгосрочная поддержка ПЛК В течение 15 или более лет типичной работы системы будет существовать несколько версий Windows, пакетов обновлений, оперативных исправлений, множества обновлений описаний вирусов, а также потребуется заменить компьютерное оборудование. Обычно ПЛК не имеет ограничений на антивирусное программное обеспечение или версию операционной системы Windows, поэтому количество комбинаций описаний вирусов, пакетов обновлений и оперативных исправлений становится слишком большим и непрактичным для этих производителей, чтобы собраться вместе и протестировать каждую возможную новую комбинацию перед развертывание на предприятиях, чтобы гарантировать отсутствие конфликтов совместимости при развертывании на большом количестве комбинаций аппаратного и программного обеспечения. Производитель ПЛК может ограничиться одним антивирусным программным обеспечением и версией Windows. Если да, то эта конкретная комбинация, возможно, была протестирована более тщательно, чем другие тестируемые ими комбинации. Обновление ПЛК Для ПЛК аппаратные и программные компоненты обновляются индивидуально. То есть встроенное ПО подсистемы ввода-вывода, встроенное ПО ЦП и программное обеспечение для настройки, OPC-сервер, программное обеспечение HMI, а также любое другое программное обеспечение обновляются независимо друг от друга. С учетом разных вариантов каждого варианта комплектующих количество комбинаций становится на порядки больше. Такая гибкость делает непрактичным для этих производителей собираться вместе для тестирования всех возможных комбинаций новых версий перед их внедрением на заводах. Тестирование горячего переключения одной комбинации версий на другую становится практически невозможным. Производитель ПЛК может поставлять все аппаратные и программные компоненты, ограничиться одним антивирусным программным обеспечением и версией Windows, которые тестируются перед развертыванием, а также ограничиться одним контроллером сервера базы данных подсистемы ввода-вывода/операторской станцией ПЛК/ЧМИ, РСУ, системой ПЛК. широкие обновления версий и тестирование горячего переключения перед развертыванием. Таким образом, от гибкости ПЛК можно будет отказаться в пользу надежности РСУ.
  20. Программирование лестничных диаграмм (LD) Наиболее распространенным языком, используемым для программирования ПЛК, является релейная диаграмма (LD), также известная как релейная логика (RLL). Это графический язык, показывающий логические связи между входами и выходами, как если бы они были контактами и катушками в проводной схеме электромеханического реле. Этот язык был изобретен специально для того, чтобы сделать программирование ПЛК «естественным» для электриков, знакомых с релейной логикой и схемами управления. Хотя программирование лестничных диаграмм имеет множество недостатков, оно остается чрезвычайно популярным в автоматизации промышленности. Каждая программа лестничных диаграмм устроена так, чтобы напоминать электрическую схему, что делает ее графическим (а не текстовым) языком программирования. Лестничные диаграммы следует рассматривать как виртуальные цепи, в которых виртуальная «энергия» течет через виртуальные «контакты» (когда они закрыты) для подачи питания на виртуальные «обмотки реле» для выполнения логических функций. Ни один из контактов или катушек, видимых в программе ПЛК лестничной схемы, не является реальным; скорее, они действуют на биты в памяти ПЛК, логические взаимосвязи между этими битами выражаются в форме диаграммы, напоминающей схему. редактируется на персональном компьютере: Программирование лестничных диаграмм На следующем снимке экрана компьютера показана типичная программа лестничной диаграммы. Контакты выглядят так же, как на логической схеме электрического реле – как короткие вертикальные сегменты линий, разделенные горизонтальным пространством. Нормально разомкнутые контакты пусты в пространстве между сегментами линий, а нормально закрытые контакты имеют диагональную линию, пересекающую это пространство. Катушки несколько отличаются друг от друга и выглядят как кружки или пары круглых скобок. Другие инструкции отображаются в виде прямоугольных прямоугольников. Каждая горизонтальная линия называется ступенькой, точно так же, как каждая горизонтальная ступенька стремянки называется «ступенью». Общей особенностью редакторов программ лестничных диаграмм, как видно на этом снимке экрана, является возможность выделения цветом тех виртуальных «компонентов» в виртуальной «схеме», готовых «проводить» виртуальную «энергию». В этом конкретном редакторе цвет, используемый для обозначения «проводимости», светло-синий. Другая форма индикации состояния, наблюдаемая в этой программе ПЛК, — это значения определенных переменных в памяти ПЛК, показанные красным текстом. Например, вы можете видеть, что катушка Т2 находится под напряжением в правом верхнем углу экрана (закрашена голубым цветом), а катушка Т3 — нет. Соответственно, каждый нормально разомкнутый контакт Т2 отображается цветным, что указывает на его «закрытое» состояние, тогда как каждый нормально закрытый контакт Т2 не имеет цвета. Напротив, каждый нормально разомкнутый контакт T3 не имеет цвета (поскольку катушка T3 обесточена), в то время как каждый нормально закрытый контакт T3 показан цветным, чтобы указать его проводящий статус. Аналогично, текущие значения счетчика таймеров T2 и T3 отображаются как 193 и 0 соответственно. Выходное значение поля математических инструкций равно 2400 и также показано красным текстом. Цветовое выделение компонентов лестничной диаграммы работает, конечно, только тогда, когда компьютер, на котором работает программное обеспечение для редактирования программы, подключен к ПЛК и ПЛК находится в режиме «запуска» (и функция «показать статус» программного обеспечения для редактирования включена). ). В противном случае лестничная диаграмма представляет собой не что иное, как черные символы на белом фоне. Подсветка состояния не только очень полезна при отладке программ ПЛК, но также служит неоценимой диагностической цели, когда технический специалист анализирует программу ПЛК, чтобы проверить состояние реальных устройств ввода и вывода, подключенных к ПЛК. Это особенно актуально, когда статус программы просматривается удаленно через компьютерную сеть, что позволяет обслуживающему персоналу исследовать системные проблемы, даже не находясь рядом с ПЛК!
  21. Программируемые логические контроллеры предназначены для ввода различных типов сигналов (дискретных, аналоговых), выполнения алгоритмов управления на этих сигналах, а затем вывода сигналов в ответ на процессы управления. Сам по себе ПЛК обычно не имеет возможности отображать значения сигналов и переменные алгоритма операторам-человекам. Техник или инженер, имеющий доступ к персональному компьютеру и необходимому программному обеспечению для редактирования программы ПЛК, может подключиться к ПЛК и просматривать состояние программы «онлайн» для мониторинга значений сигналов и состояний переменных, но это непрактичный способ для эксплуатационного персонала. для регулярного мониторинга того, что делает ПЛК. Чтобы операторы могли отслеживать и корректировать параметры внутри памяти ПЛК, нам нужен другой тип интерфейса, позволяющий читать и записывать определенные переменные без ущерба для целостности ПЛК, предоставляя слишком много информации или позволяя любому неквалифицированному лицу изменять программу. сам. Одним из решений этой проблемы является специальный компьютерный дисплей, запрограммированный для обеспечения избирательного доступа к определенным переменным в памяти ПЛК, обычно называемый человеко-машинным интерфейсом или HMI. HMI могут принимать форму компьютеров общего назначения («персональных»), на которых установлено специальное графическое программное обеспечение для взаимодействия с ПЛК, или компьютеров специального назначения, предназначенных для установки на лицевой панели из листового металла и не выполняющих никаких задач, кроме интерфейса оператора-ПЛК. . На этой первой фотографии показан пример обычного персонального компьютера (ПК) с установленным на нем программным обеспечением HMI: Показанный здесь дисплей предназначен для мониторинга примера процесса вакуумной кач-адсорбции (VSA) для очистки кислорода, извлеченного из окружающего воздуха. Где-то ПЛК (или совокупность ПЛК) контролирует и контролирует этот процесс VSA, а программное обеспечение HMI действует как «окно» в память ПЛК для отображения соответствующих переменных в форме, удобной для интерпретации операционным персоналом. Персональный компьютер, на котором установлено это программное обеспечение HMI, подключается к ПЛК через цифровые сетевые кабели, например Ethernet. Примечание. Раньше для панели интерфейса оператора использовался термин «человеко-машинный интерфейс» или «MMI». На следующей фотографии показан пример специальной панели HMI, разработанной и изготовленной специально для использования в промышленных условиях: Эти панели HMI на самом деле представляют собой не что иное, как «защищенные» персональные компьютеры, построенные прочно и в компактном формате, чтобы облегчить их использование в промышленных средах. Большинство промышленных панелей HMI оснащены сенсорными экранами, позволяющими операторам нажимать кончиками пальцев на отображаемые объекты для переключения экранов, просмотра деталей отдельных частей процесса и т. д. Техники и/или инженеры программируют дисплеи HMI для чтения и записи данных через цифровую сеть в один или несколько ПЛК. Графические объекты, расположенные на экране дисплея HMI, часто имитируют реальные индикаторы и переключатели, чтобы обеспечить знакомый интерфейс для оперативного персонала. Например, объект «кнопка» на лицевой панели панели HMI будет настроен на запись одного бита данных в ПЛК, аналогично реальному переключателю, записывающему один бит данных во входной регистр ПЛК. Современные панели и программное обеспечение HMI почти исключительно основаны на тегах: каждый графический объект на экране связан как минимум с одним именем тега данных, которое, в свою очередь, связано с точками данных (битами или словами) в ПЛК посредством тега. файл базы данных имен, находящийся в HMI. Графические объекты на экране HMI либо принимают (читают) данные из ПЛК для предоставления полезной информации оператору, либо отправляют (записывают) данные в ПЛК из ввода оператора, либо и то, и другое. Задача программирования устройства HMI состоит из создания базы данных имен тегов, а затем рисования экранов, иллюстрирующих процесс с таким уровнем детализации, который потребуется операторам для его запуска. Здесь показан пример снимка экрана таблицы базы данных имен тегов для современного HMI: Доступ к базе данных имен тегов и ее редактирование осуществляется с помощью того же программного обеспечения для создания графических изображений в HMI. В этом примере вы можете увидеть несколько имен тегов (например, КНОПКА ПУСКА, ТАЙМЕР РАБОТЫ ДВИГАТЕЛЯ, СООБЩЕНИЕ ОБ ОШИБКЕ, СКОРОСТЬ ДВИГАТЕЛЯ), связанных с точками данных в памяти ПЛК (в этом примере адреса ПЛК показаны в формате регистра Modbus). Во многих случаях редактор имен тегов сможет отображать соответствующие точки памяти ПЛК таким же образом, как они отображаются в программном обеспечении редактора программирования ПЛК (например, I:5/10, SM0.4, C11 и т. д.). Важная деталь, которую следует отметить при отображении базы данных имен тегов, — это атрибуты чтения/записи каждого тега. Обратите особое внимание на то, что четыре из показанных тегов доступны только для чтения: это означает, что HMI имеет разрешение только на чтение значений этих четырех тегов из памяти ПЛК, но не на запись (изменение) этих значений. Причина этого в случае с этими четырьмя тегами заключается в том, что эти теги относятся к точкам входных данных ПЛК. Например, тег START PUSHBUTTON относится к дискретному входу в ПЛК, на который подается питание от реального кнопочного переключателя. Таким образом, эта точка данных получает свое состояние от подачи питания на клемму дискретного входа. Если бы HMI было предоставлено разрешение на запись для этой точки данных, скорее всего, возник бы конфликт. Предположим, что на входную клемму ПЛК было подано напряжение (бит START PUSHBUTTON установлен в состояние «1»), и HMI одновременно попытался записать состояние «0» в тот же тег. Один из этих двух источников данных выиграет, а другой проиграет, что может привести к неожиданному поведению программы ПЛК. По этой причине точки данных в ПЛК, связанные с реальными входами, всегда должны быть ограничены разрешением «только для чтения» в базе данных HMI, чтобы HMI не мог создать конфликт. Однако вероятность конфликта данных существует и для некоторых других точек базы данных. Хорошим примером этого является бит MOTOR RUN, который в программе ПЛК сообщает реальному двигателю о необходимости работы. Предположительно, этот бит получает данные из катушки в программе лестничных диаграмм ПЛК. Однако, поскольку он также присутствует в базе данных HMI с разрешением на чтение/запись, существует вероятность того, что HMI перезапишет (т. е. приведет к конфликту) этот же бит в памяти ПЛК. Предположим, кто-то запрограммировал переключаемый экранный объект «кнопка» в HMI, связанный с этим тегом: нажатие этой виртуальной «кнопки» на экране HMI попытается установить бит (1), а повторное нажатие попытается сбросить бит (0 ). Однако, если в этот же бит записывается катушка в программе ПЛК, существует явная вероятность того, что объект «кнопка» ЧМИ и катушка ПЛК будут конфликтовать: кто-то пытается сообщить биту значение «0», в то время как другой пытается сообщить этому биту значение «1». This situation is quite similar to the problem experienced when multiple coils in a Ladder Diagram program are addressed to the same bit. The general rule to follow here is never allow more than one element to write to any data point. In my experience teaching PLC and HMI programming, this is one of the more common errors students make when first learning to program HMIs: they will try to have both the HMI and the PLC writing to the same memory locations, with weird results. One of the lessons you will learn when programming large, complex systems is that it is very beneficial to define all the necessary tag names before beginning to lay out graphics in an HMI. The same goes for PLC programming: it makes the whole project go faster with less confusion if you take the time to define all the necessary I/O points (and tag names, if the PLC programming software supports tag names in the programming environment) before you begin to create any code specifying how those inputs and outputs will relate to each other. Maintaining a consistent convention for tag names is important, too. For example, you may wish to begin the tag name of every hard-wired I/O point as either INPUT or OUTPUT (e.g. INPUT PRESSURE SWITCH HIGH, OUTPUT SHAKER MOTOR RUN, etc.). The reason for maintaining a strict naming convention is not obvious at first, since the whole point of tag names is to give the programmer the freedom to assign arbitrary names to data points in the system. However, you will find that most tag name editors list the tags in alphabetical order, which means a naming convention organized in this way will present all the input tags contiguously (adjacent) in the list, all the output tags contiguously in the list, and so on. Another way to leverage the alphabetical listing of tag names to your advantage is to begin each tag name with a word describing its association to a major piece of equipment. Take for instance this example of a process with several data points defined in a PLC control system and displayed in an HMI: If we list all these tags in alphabetical order, the association is immediately obvious: Exchanger effluent pump Exchanger effluent temp out Exchanger preheat pump Exchanger preheat temp in Exchanger preheat valve Reactor bed temp Reactor feed flow Reactor feed temp Reactor jacket valve As you can see from this tag name list, all the tags directly associated with the heat exchanger are located in one contiguous group, and all the tags directly associated with the reactor are located in the next contiguous group. In this way, judicious naming of tags serves to group them in hierarchical fashion, making them easy for the programmer to locate at any future time in the tag name database. You will note that all the tag names shown here lack space characters between words (e.g. instead of “Reactor bed temp”, a tag name should use hyphens or underscore marks as spacing characters: “Reactor bed temp”), since spaces are generally assumed by computer programming languages to be delimiters (separators between different variable names). Like programmable logic controllers themselves, the capabilities of HMIs have been steadily increasing while their price decreases. Modern HMIs support graphic trending, data archival, advanced alarming, and even web server ability allowing other computers to easily access certain data over wide-area networks. The ability of HMIs to log data over long periods of time relieves the PLC of having to do this task, which is very memory-intensive. This way, the PLC merely “serves” current data to the HMI, and the HMI is able to keep a record of current and past data using its vastly larger memory reserves. If the HMI is based on a personal computer platform (e.g. Rockwell RSView, Wonderware, FIX/Intellution software), it may even be equipped with a hard disk drive for enormous amounts of historical data storage. Some modern HMI panels even have a PLC built inside the unit, providing control and monitoring in the same device. Such panels provide terminal strip connection points for discrete and even analog I/O, allowing all control and interface functions to be located in a single panel-mount unit.
  22. Это полное руководство по релейной логике ПЛК для управления частотно-регулируемым приводом (ЧРП) для управления скоростью двигателя с выбором скорости с полевой локальной панели или с помощью графики SCADA. Этапы выполнения: Подготовьте чертеж управления и мощности. Ввод в эксплуатацию и программирование параметров в VFD Подготовьте программу ПЛК Подготовить проект SCADA Как управлять ЧРП с помощью ПЛК? Схема управления и питания Ввод в эксплуатацию и программирование параметров в VFD Ввод в эксплуатацию необходим для правильной работы ЧРП. Необходимые параметры, такие как данные паспортной таблички двигателя, входное напряжение, тип двигателя, частота, следует ввести в ЧРП во время быстрого ввода в эксплуатацию. После успешного быстрого ввода в эксплуатацию пришло время выполнить расширенный ввод в эксплуатацию. Этот ввод в эксплуатацию необходим для получения подробной информации обо всех цифровых и аналоговых входах и выходах, например Информация о цифровых входах команды «Пуск» и команды «Выбор скорости». Информация о цифровых выходах, например, статус работы привода, отказ привода и т. д. Информация об аналоговых входах, таких как вход скорости 1 и вход скорости 2. Информация об аналоговых выходах, таких как ток и частота двигателя Программа ПЛК Сеть 1: В этой Сети 1 мы проверяем, готов ли ЧРП к запуску. Этот сигнал поступит, когда все условия в норме, а также активны обратные связи безопасности и питания. Сеть 2: В сети 2 при нажатии кнопки запуска будет установлен бит VFD Drive_DO, если там есть Ready_to_Start и No Error. Сеть 3: Это логика остановки. При нажатии кнопки остановки происходит сброс бита Drive_DO. Сеть 4: В этой сети 4 эта логика необходима для обеспечения безопасности, как только будет установлен бит Drive_DO, и если в каком-либо случае ЧРП не будет работать из-за какой-либо неисправности, то после заранее определенного времени ожидания, здесь мы рассматривали его как Run_FB_Time, он сбросит бит Drive_DO и генерировать ошибку. Эту ошибку вы можете подтвердить из SCADA после устранения ошибки на месте. Сеть 5: В этой сети 5, если ЧРП потребляет больший ток и выдает ошибку перегрузки, он сбрасывает бит Drive_DO и генерирует ошибку. Эту ошибку вы можете подтвердить из SCADA после устранения ошибки на месте. Сеть 6: Это цифровой выход выбора скорости. Если вы выбираете вход скорости как локальный, то он не активирует бит выбора скорости, в результате чего Speed_DO отсутствует, а если вы выбираете вход скорости как удаленный, то он активирует бит выбора скорости, в результате чего присутствует Speed_DO. СКАДА-проектирование Нормальное состояние Это нормальное состояние мотора. Ошибок нет, бит готовности также находится в нормальном состоянии. Также выбор скорости осуществляется в ЛОКАЛЬНОМ режиме. Текущее состояние Это состояние показывает, что бит готовности имеет высокий уровень и двигатель работает без каких-либо ошибок. Состояние ошибки Имеется высокий бит ошибки, и двигатель также показывает состояние ошибки. Примечание : В некоторых отраслях желтый цвет также используется для обозначения состояния ошибки. Красный цвет используется для обозначения состояния остановки двигателя.
  23. Связь Modbus между ПЛК «дельта» (DVP 14SS2) и преобразователем частоты «треугольник» (серия VFD-L). Двигатель должен управляться непосредственно с ЧМИ (DOP-107CV) с использованием связи Modbus. Связь Modbus с ПЛК Delta и ЧРП Асинхронный двигатель должен управляться непосредственно с ЧМИ вместе с контролем скорости. Управление скоростью таково, что в HMI должно быть две кнопки, которые увеличивают и уменьшают скорость двигателя с шагом в один герц (предположим). Существует преобразователь переменного тока типа «треугольник» серии VFD-L, который запускает двигатель на основе команд, полученных от ПЛК. Во-первых, в приводе необходимо настроить параметры связи и другие параметры, соответствующие всем его конфигурациям с ПЛК, такие как скорость передачи данных, четность, режим связи и т. д.; за исключением идентификатора подчиненного устройства (адреса станции), который должен отличаться от адреса станции ПЛК. По умолчанию адрес станции ПЛК равен единице (1). Это означает, что адрес станции привода должен быть любым в определенном диапазоне, кроме единицы (1). Подробные параметры, которые необходимо установить для режима связи, следующие: 2-00 = 4 2-01 = 4 Параметры связи Нам необходимо установить параметры связи согласно приведенной выше таблице. (взято из мануала). 9-00 = 2 (можно установить любое значение, кроме 1) 9-01 = 1 9-04 = 7 (режим RTU, стоповые биты равны 1 и четность — четность) DVP 14SS2 имеет два порта связи, а именно RS232 и RS485 отдельно. Теперь необходимо выполнить настройки порта связи 2 в соответствии с установленными параметрами VFD, которые заключаются в следующем. Откройте программу WPL. (Программное обеспечение ПЛК Delta) Нажмите на значок «Коммуникационная программа» на странице программирования. Выберите COM2 и нажмите «Далее». Установите параметры в соответствии с параметрами связи привода VFD и нажмите «Далее». Здесь они подаются согласно параметрам, заданным в погружении VFD-L. Адрес станции ПЛК равен 1 (см. левый нижний угол). Проверьте выделенное и нажмите «Далее». Вы можете поставить галочки ниже и написать условия. Здесь мы пропускаем это окно и вместо этого напишем логику непосредственно в режиме релейной диаграммы. Нажмите «Готово». Теперь в результате указанных выше условий генерируется следующая релейная логика. Лестничная схема в ступени 2 выполняется каждый раз при получении отправленного запроса. Лестничная схема в ступени 3 выполняется каждый раз после чтения или записи любых данных на диск. Теперь, прежде чем двигаться дальше, написать логику запуска и остановки двигателя и управления его скоростью, нам необходимо узнать Modbus-адреса привода, через который будет выполняться сказанное. Для серии VFD-L 2000H — это адрес Modbus для запуска и остановки привода, а 2001H — для изменения частоты. Здесь H означает шестнадцатеричное число. В этой теме мы здесь, чтобы использовать десятичный формат для конкретного адреса. Поэтому шестнадцатеричный формат необходимо изменить на десятичный. С помощью кода 8421 мы преобразуем следующим образом: 2000 (шестнадцатеричный) = 8192 (декабрь) 2001(шестнадцатеричный) = 8193 (декабрь) Таким образом, вместо 200H и 2001H будут использоваться 8192K и 8193K. Убедитесь, что 8192 и 8193 — это только адреса Modbus. Если 8192K имеет значение, равное 10, двигатель запустится. Если 8192K имеет значение, равное 1, двигатель остановится. Если 8193K имеет значение, равное 5000, то двигатель будет работать на частоте 50 Гц. Это означает, что если скорость двигателя необходимо увеличить на 1 Гц, к существующему значению необходимо добавить 100 и наоборот. Объяснение программы ПЛК Теперь перейдем к деталям программы ПЛК. Бит запроса на отправку M1122 устанавливается каждый раз, когда VFD подается какая-либо команда в цепочке 5. MODRW K2 K6 K8192 D70 K1 MODRW представляет собой чтение и запись модов. K2 представляет адрес станции VFD. K6/K3 представляет код функции для записи или чтения. Здесь k6 представляет собой запись. K8192 представляет адрес Modbus, на который записываются данные. Данные в D70 записываются в k8192 K1 — длина данных 10 (десятичный) и 1 (десятичный) перемещаются в D70, когда в цепочках 6 и 7 подаются команды запуска и остановки. В то же время происходит передача данных, т.е. данные в D70 записываются по адресу 8192k VFD в ступенька 8 для запуска и остановки двигателя. 100 (десять) добавляется к значению D100 в цепочке 10, чтобы увеличить скорость на 1 Гц при получении импульса увеличения скорости (M4). 100 (дес.) вычитается из значения D100 в цепочке 9, чтобы уменьшить скорость на 1 Гц при получении импульса уменьшения скорости (M5). В то же время происходит передача данных, т.е. данные в D100 записываются по адресу 8193k ЧРП в цепочке 11 для запуска и остановки двигателя. ЧМИ Теперь перейдем к настройке HMI. После выбора модели HMI установите приведенную ниже конфигурацию, поскольку здесь конфигурация ПЛК-HMI осуществляется по RS232. (Вам необходимо настроить его в соответствии с моделью HMI) Возьмите четыре кнопки мгновенного действия, назначьте адреса и спроектируйте экран HMI следующим образом: Начало = М0 Стоп = М1 Увеличение скорости = M4 Уменьшить скорость = M5 Проверьте процесс Проектирование HMI не рассматривается в этой статье.
  24. Программа ПЛК для системы мониторинга уровня воды в искусственном пруду, объясненная с помощью концепции лестничной логики для начинающих. Система мониторинга уровня воды описание проблемы Внедрить программу ПЛК для системы мониторинга уровня воды в искусственном пруду. Подавайте или сливайте воду из искусственного пруда, когда уровень воды ниже нормального уровня, и активируйте сигнализацию, когда уровень воды выше или ниже нормального уровня. Диаграмма проблемы Решение проблемы Эту проблему можно решить, используя простую автоматизацию. Здесь мы рассмотрели один искусственный пруд с рыбой, четыре датчика уровня и три насоса для мониторинга и управления системой. Здесь мы напишем программу, которая будет управлять всей системой. Система будет поддерживать нормальный уровень и не позволит уровню воды повышаться или понижаться для поддержания нормального уровня. Если уровень воды упадет по сравнению с нормальным уровнем, система будет подавать воду в пруд для разведения рыбы, а если уровень воды повысится от нормального уровня, система будет сливать воду из пруда для разведения рыбы. Список входов/выходов Список входов Датчик уровня, L0: I0.0 (L0=1, когда уровень воды превышает уровень сигнализации). Датчик уровня, L1: I0.1 (L1=1, когда уровень воды выше нормального уровня) Датчик уровня, L2: I0.2 (L2=1, когда вода выше нормального уровня) Датчик уровня, L3: I0.3 (L3=1, когда уровень воды выше аварийного уровня) Список выходов Подающий насос:- Q0.0 Дренажный насос 1:- Q0.1 Дренажный насос 2:- Q0.2 Сигнальная лампа:- Q0.3 ПЛК Ladder Logic для мониторинга уровня воды в искусственном пруду с рыбой Логика объяснена В этой задаче мы рассмотрим ПЛК S7-300 и портальное программное обеспечение TIA для программирования. Сеть 1: В этой сети мы написали логику для дренажного насоса 1 (Q0.1). Когда уровень воды превышает самый высокий уровень сигнализации (L3 = I0.3), в это время включается дренажный насос 1 (Q0.1). Сеть 2: Если уровень воды ниже аварийного уровня, следует запустить питательный насос (Q0.0). Итак, здесь мы взяли нормально замкнутый контакт L1 (I0.1), когда уровень ниже нормального, тогда питательный насос (Q0.0) ВКЛЮЧИТСЯ и наполнит воду в пруду. Сеть 3: Если уровень воды выше нормального уровня, то дренажный насос 2 (Q0.2) будет включен. Здесь уровень воды выше нормального уровня, а не уровня тревоги, поэтому будет работать только дренажный насос 2 (Q0.1). Сеть 4: Здесь мы использовали два условия в логическом элементе ИЛИ: либо уровень ниже нормального уровня (L1 = I0.1), либо выше нормального уровня (L1 = I0.1), тогда мигающая схема будет активирована и сигнальная лампа (Q0.3) загорится. НА. Сеть 5: Таймер 2 для мигающей цепи. Сеть 6: Здесь мы использовали два условия в логическом элементе ИЛИ: либо уровень ниже нормального уровня (L1=01), либо выше нормального уровня, тогда сигнальная лампа (Q0.3) будет автоматически мигать с 5-секундным интервалом. Уровень выше уровня тревоги (L0=1, L1=1, L2=1, L3=1) или ниже уровня тревоги (L0=0, L1=0, L2=0, L3=0). ЗАТЕМ автоматически загорится индикатор тревоги. Интервал 5 секунд. Уровень выше уровня тревоги (L0=0, L1=0, L2=0, L3=0), тогда запустится дренажный насос 1 и 2, а если уровень воды выше нормы, запустится только дренажный насос 2. Примечание. Приведенный выше пример предназначен только для пояснения, учитываются не все параметры или блокировки. Для этой простой логики нет необходимости использовать ПЛК S7-300, мы использовали этот ПЛК для целей обсуждения. Результат
  25. Контроль температуры ПЛК: В сосуде есть три нагревателя, которые используются для контроля температуры сосуда. Программирование контроля температуры ПЛК Мы используем три термостата для измерения температуры на каждом обогревателе. также еще один термостат для безопасного отключения в случае неисправности или чрезвычайной ситуации или во избежание перегрева. Все эти нагреватели имеют разные уставки или разные температурные диапазоны, в которых нагреватели могут быть включены соответствующим образом (в таблице ниже показаны температурные диапазоны). Система контроля температуры состоит из четырех термостатов. В системе работают три тепловых агрегата. Термостаты (TS1/TS2/TS3/TS4 настроены на 55°C, 60°C, 65°C и 70°C. При температуре ниже 55°C три нагревателя (H1,H2,H3) должны находиться во включенном состоянии. При температуре 55°C – 60°C два нагревателя (H2,H3) должны находиться во включенном состоянии. При температуре 60–65 °C один нагреватель (H3) должен находиться во включенном состоянии. При температуре выше 70°C все нагреватели должны быть выключены. Имеется предохранительное отключение (реле CR1) на случай, если какой-либо нагреватель сработает по ошибке. Главный выключатель включает и выключает систему. Решение ПЛК Есть четыре термостата; предположим, что они находятся в состоянии NC, когда заданное значение не достигнуто. Пусть имеется управляющее реле (CR1), работающее в качестве защитного отключения. Главный переключатель: Пусковой выключатель имеет нормально разомкнутый тип, а стоповый выключатель — нормально замкнутый. В таблице ниже показаны диапазоны температур, в которых состояние термостатов (TS1, TS2, TS3, TS4) будет отображаться в соответствии со значением температуры. Также статус нагревателей (H1,H2,H3), при котором эти нагреватели будут включены или выключены в зависимости от значения температуры. Релейная логика ПЛК Лестничная логическая операция Первая ступень: Он имеет кнопку ПУСК (контакт по умолчанию НО) и кнопку СТОП (контакт НЗ по умолчанию). Реле CR1 используется для управления нагревателями в зависимости от состояния термостатов. Термостат TS4 подключается между СТОПом и реле. Если TS4 активирован (означает, что контакт TS4 меняется с нормально замкнутого на нормально разомкнутый), то все нагреватели будут ВЫКЛЮЧЕНЫ. НО контакт реле CR1 используется рядом с кнопкой ПУСК для фиксации или удержания команды ПУСК. Вторая ступень: НО контакт реле CR1 используется для управления нагревателями (H1,H2,H3) при состоянии термостатов (TS1,TS2,TS3). После подачи команды ПУСК этот НО контакт становится НЗ контактом. если температура ниже 55 градусов C, TS1, TS2 и TS3 будут в закрытом состоянии, поэтому все нагреватели будут включены. если температура находится в диапазоне от 55 до 60 градусов Цельсия, то TS1 будет открыт, поэтому нагреватель H1 будет ВЫКЛЮЧЕН. затем, если температура находится в пределах от 60 до 65 градусов Цельсия, то TS2 также будет открыт, поэтому нагреватель H2 будет ВЫКЛЮЧЕН. если температура находится в диапазоне от 65 до 70 градусов Цельсия, то TS3 также будет открыт, поэтому нагреватель H3 будет ВЫКЛЮЧЕН. Имеется защитное отключение, которое используется во избежание неисправностей термостатов или перегрева. если температура превысит 70 градусов Цельсия, то TS4 активируется и обесточивает реле, таким образом, все нагреватели будут ВЫКЛЮЧЕНЫ. Примечание. Здесь нагреватели H1, H2, H3 представляют собой либо реле, либо контакторы, на которые мы подаем питание. поэтому замыкающий контакт этих реле подключен к фидерным цепям электронагревателя (MCC). Эти цепи электропитателя будут управляться в соответствии с этими сигналами, и, соответственно, нагреватели будут либо ВКЛЮЧЕНЫ, либо ВЫКЛЮЧЕНЫ.
×
×
  • Create New...