что такое скада система в асу тп
Разработка SCADA систем: программирование АСУТП
Разработка SCADA систем: программирование АСУТП
Разработка SCADA систем
Содержание
Система диспетчерского контроля и сбора данных (Supervisory control and data acquisition – далее «SCADA») объединяет аппаратные и программные элементы управления для автоматизации производственных процессов. Системы SCADA собирают, обрабатывают и классифицируют важные параметры о производительности системы. Эти данные собираются и отображаются на панели управления (мониторе и т.п.), что позволяет оператору принимать точные и быстрые решения на основе данных полученных в реальном времени.
Основываясь на своих широких возможностях, системы SCADA могут быть разработаны и запрограммированы для объекта практически любой сложности, бюджета или отрасли. Это могут быть как крупные производственные и перерабатывающие заводы, так и небольшие системы, такие как светофоры или устройства для наблюдения за домом. В тех случаях, когда требуется контроль и управление данными, SCADA может помочь упростить процесс.
Почему SCADA
При правильной реализации внедрение SCADA-системы приводит к масштабным улучшениям и повышению эффективности процессов, требующих мониторинга. В обрабатывающей промышленности такие системы могут определять достигаются ли поставленные цели по объему выпуска продукта или цели по обеспечению его качества.
Если на одном участке производственного процесса случается отклонение от нормы, то оператор получает информацию о характере и местонахождении неполадки, что позволяет быстро принять необходимые меры для устранения неисправности. Некоторые системы могут выполнять основные задачи без вмешательства человека, при достижении определенных пороговых значений, что позволяет выполнять, например, аварийные отключения или другие аналогичные действия.
SCADA — это система для сбора и обработки данных от установленных промышленных датчиков и компонентов, позволяющая оператору принимать более обоснованные и оперативные решения.
Разработчик обязан рассматривать создание каждой SCADA-системы как часть более крупной промышленной системы управления для облегчения автоматизации на всех уровнях.
Компоненты системы SCADA
Системы SCADA базируются на пяти компонентах, которые в сочетании обеспечивают ее широкое применение в различных отраслях промышленности. Эти элементы работают совместно с датчиками для более глубокой автоматизации производственных процессов.
Архитектура системы
Как можно понять из вышеописанного, невозможно полностью понять программирование SCADA, рассматривая отдельные ее части. Архитектура системы расширяет представление о SCADA, описывая способ взаимодействия компонентов друг с другом и образуя интегрированную сеть управления.
Данные, обрабатываемые программным обеспечением SCADA, поступают автоматически с датчиков, или реже заносятся вручную. Эти данные могут включать в себя измерения температуры, давления, напряжения или другие важные параметры. После каждой записи RTU или PLC передает новую информацию на сервер. Он в свою очередь обрабатывает и отображает данные измененного процесса графически на HMI панели, чтобы оператор мог легко воспринять информацию и предпринять оперативные действия. В некоторых случаях сам RTU или PLC могут быть запрограммированы на выполнение простых действий управления на основе результата измерения. На практике архитектура SCADA может быть довольно сложной, охватывающей сотни или тысячи различных компонентов и различные протоколы связи.
SCADA Программирование
Распространенным заблуждением является то, что SCADA — это то же самое, что распределенная система управления (РСУ или Distributed Control System — DCS). Хотя есть некоторые совпадения, учитывая, что DCS также контролирует производственные процессы, тем не менее, общая настройка систем отличается.
Эта разница также проявляется в разных методах программирования. DCS обычно в большей степени опирается на простые логические элементы для формирования контуров управления. Программирование SCADA сложнее, но в то же время более гибкое. Логические элементы все еще могут играть роль на уровне RTU и PLC, но для программирования SCADA требуется использование специализированного программного обеспечения для управления и отображения входных данных.
Когда используется специальное программное обеспечение, оно обычно разрабатывается на C (C++, WinCC) или аналогичном языке программирования. Как только эта программная разработка передается Заказчику, ему остается только ввести уставки для RTU, PLC и HMI с использованием графических интерфейсов. При этом оператор может изменять и просматривать уставки или настраивать схемы и диаграммы без необходимости написания программного кода.
SCADA-безопасность
Еще один элемент SCADA-системы, к которому следует относиться серьезно — это кибербезопасность. Первоначально системы SCADA разрабатывались с учетом дополнительных взаимодействий с человеком для проверки показаний датчиков и управления контрольными точками. Теперь многие из этих задач были автоматизированы с использованием интернет-протоколов, что резко повышает вероятность отказов за счет повышенной уязвимости к кибератакам. Эти атаки могут иметь форму взлома или вредоносного ПО, предназначенного для нарушения работоспособности технологии.
Для защиты от этих рисков программисты обязаны следовать рекомендациям SCADA по безопасности системы на каждом этапе процесса разработки, а также рекомендуется отдать им на аутсортинг услугу по установке ПО непосредственно на объекте, предотвращая любую возможность вмешательства третьих лиц и предоставляя Заказчику возможность контролировать процесс установки и отладки.
Где используется SCADA
Ряд различных отраслей полагаются на программы SCADA для оптимизации своей повседневной деятельности. К ним, например, относятся:
Что такое Скада система и что собой представляет
SCADA-система – программно-аппаратный комплекс, предназначенный для контроля со стороны диспетчера и сбора данных. Терминология СКАДА видоизменялась со временем, совместно с развитием технологий автоматизации и управления. Например, SCADA системы восьмидесятых годов обозначали программно-аппаратные комплексы по сбору данный «здесь и сейчас», а в девяностые – уклон в формулировке пошел в сторону программ, в частности интерфейса автоматических систем управления техпроцессами.
Назначение и задачи SCADA-систем
Контроль и мониторинг многочисленных удаленных объектов – это главная задача Скада систем. Иногда, эти объекты могут быть удалены друг от друга на тысячи километров. В качестве основных потребителей Скада выступают электро-распредстанции, нефтепроводы, газопроводы, системы водоснабжения и так далее. Можно сказать, что Скада реализуют во всех хозяйственных отраслях, где необходимо автоматическое управление техпроцессами в режиме «real-time».
Диспетчер взаимодействует с программным обеспечением, установленным на ПК, а реализация связи с объектами, нуждающимися в контроле, осуществима через драйвер ввода-вывода или сопряженные с ними серверы. Программное обеспечение может использовать в своей структуре коды, сгенерированные в среде автоматизированного проектирования.
Разработка СКАДА ведется АСУ ТП в клиент-серверной или же в архитектуре распределенной.
Преимущества
Структура SCADA-систем
RTU имеет непосредственное подключение к объекту управления. То есть контроль или управление объектом реализовывается в real-time режиме. В качестве терминала может быть датчик с примитивным способом взаимодействия, или же процессорный, многопоточный, отказоустойчивый МПЦ, занимающийся обработкой данных и управлением в real-time режиме.
Особенности процесса управления в SCADA-системах
Защита SCADA-систем
Эксплуатируемые SCADA-системы создавались заточенными на конкретные задачи, не имеют высоких степеней защиты и уязвимы для кибератак.
Подобного рода системы, например, применяемые в энергетическом секторе, разрабатывались только для управления напряжением электроцепи. Больших способностей (по типу протоколов безопасности сети) в СКАДА нет.
Хотя большинство современных SCADA-систем могут работать с популярным сетевым протоколом TCP/IP, им ограждают выход в интернет (они соединяются от точки до точки через выделенные линии связи). Но это не значит, что защита от кибератак им обеспечена на 100%.
Делают это ограничение не для всех SCADA поголовно. Многое зависит от задач и применяемой структуры построения системы.
Примеры SCADA-систем
WebSCADA интерфейс системы, осуществляемый через Web-браузер, реализуется не часто, поскольку работа через веб противоречит модели безопасного ведения контроля и управления промышленного аппарата. Однако, ее можно применять во время настроек собственной безопасной сети, или с ограниченными опциями «только мониторинг» в сети Интернет.
Автоматизированные системы диспетчерского и технологического управления. Всё о SCADA-системах
Supervisory Control And Data Acquisition (SCADA)
SCADA-система — это инструментальная программа, обеспечивающая создание программного обеспечения для автоматизации контроля и управления технологическим процессом в режиме реального времени. Основная цель создаваемой с помощью SCADA программы — дать оператору, управляющему технологическим процессом, полную информацию об этом процессе и необходимые средства для воздействия на него.
ОСНОВНЫЕ ЗАДАЧИ SCADA-СИСТЕМЫ:
От надежности, быстродействия и эргономичности SCADA-системы зависит не только эффективность управления технологическим процессом, но и его безопасность.
КАКИЕ КОМПОНЕНТЫ SCADA НАИБОЛЕЕ ВАЖНЫ В РАБОТЕ И ПОЧЕМУ?
Специалисты отдела АСУТП промышленного предприятия по изготовлению соды утверждают, что в основном используют такие компоненты, как мониторинг и управление, архивирование технологических параметров, сообщений, подсистему формирования отчетов.
Мониторинг и управление, собственно, то, для чего и устанавливается система управления. Архивы параметров, сообщений и отчеты необходимы для оценки и анализа ведения технологического процесса, действий оператора и т.д. Также для них важен один из базовых инструментов SCADA — разграничение прав доступа к управлению по уровням (оператор, технолог, инженер АСУТП).
В связи с тенденцией к интеграции систем управления технологическими процессами и систем управления предприятием все чаще возникает необходимость использования SCADA в качестве источника данных для вышестоящих систем. Некоторые SCADA могут выступать и как сервер консолидации всех технологических данных, и как сервер генерации отчетов на базе этих данных.
Если система управления, построена на базе ПЛК одного производителя (к примеру, Siemens SIMATIC), то обмен данными между контроллерами и SCADA происходит с помощью встроенных драйверов протоколов связи. Некоторые независимые от производителей оборудования SCADA предлагают набор драйверов ко многим (но не всем) имеющимся на рынке контроллерам и интеллектуальными приборам. Наиболее универсальный способ взаимодействия — это использование драйверов, разработанных в соответствии со стандартом OPC. Такие OPC-серверы могут быть разработаны производителями контроллеров или независимыми разработчиками, а использоваться вместе с любой SCADA- системой. Для эффективной работы с OPC- серверами SCADA должна использовать их напрямую, по технологии «OPC в ядре системы», а не через промежуточные интерфейсы. Некоторые SCADA являются вертикально-интегрированными: в их состав входят системы программирования для свободно-программируемых контроллеров. В них также используются внутренние драйверы для связи с контроллером. Такие SCADA позволяют создать ПТК с использованием оборудования разных производителей.
УРОВНИ СИСТЕМ С ИСПОЛЬЗОВАНИЕМ SCADA
Системы технологической автоматизации обычно разделены на 3 уровня: нижний, средний и верхний. Выше них находится уровень управления производством в целом.
Нижний уровень — это сами датчики и исполнительные механизмы
Средний уровень — контроллеры. На среднем уровне происходит:
Верхний уровень — это и есть уровень SCADA. На этом уровне происходит:
УПРАВЛЕНИЕ ПРЕДПРИЯТИЕМ
Управление предприятием производится на двух уровнях:
MES (Manufacturing Execution Systems) — система управления производством продукции в реальном времени. Этот уровень служит для планирования производственных заданий для технологических процессов, построения сводных отчетов, глубокого анализа процесса (например, прогнозирование, построение энергетического и материально¬го баланса и др.). Для этих целей также может быть использован инструментарий SCADA.
ERP (Enterprise Resource Planning) — система автоматизированного управления административно-финансовой и административно-хозяйственной деятельностью предприятия. На этом уровне используются другие специализированные системы, например, SAP R3.
ФУНКЦИИ SCADA
■ Мнемосхемы
Мнемосхема — это графическое изображение (с помощью встроенного в SCADA графического редактора) технологической схемы с визуализацией значений датчиков, состояния исполнительных механизмов и др. параметров. Для визуализации используется не только отображение значений в виде цифр и надписей, но и изменение визуальных свойств отображаемых графических объектов. Например, в емкости изменяется уровень жидкости, а ее цвет изменяется в зависимости от температуры (динамизация). Исполнительные механизмы могут не просто показывать свое состояние каким-то графическим признаком (например, цветом), но и наглядно показывать свою работу — например, вращением лопастей насоса, движением ленты конвейера и т.п. (анимация).
■ Архивы
Получаемые от контроллеров данные SCADA складывает в архивы. Предварительно данные могут быть обработаны (отфильтрованы, усреднены, сжаты и т.п.). Часто используется не регулярная запись, а запись по изменению с использованием порога чувствительности («мертвой зоны»). Длительность хранения настраивается в SCADA индивидуально для каждого параметра и может составлять до нескольких лет.
■ Тренды
Тренд — это графическое отображение изменения параметра во времени. Тренды в SCADA- системах могут показывать изменение параметра за всю длительность его хранения в архиве. Оператору предоставляется возможность изменять масштаб, как времени, так и самого параметра. В развитых системах в тренд встроены различные инструменты анализа графика, сравнения его с уставкой или другим параметром, сглаживание или фильтрация, отметки на графике событий (например, нарушение границ) или закладок для памяти и многое другое.
■ Таблицы
Зачастую технологу удобнее просматривать архивы не в графическом виде, а в виде таблиц. Обычно эти таблицы можно не только просматривать, но и экспортировать в другие системы.
■ Графики
Обычно SCADA позволяют смотреть и зависимость одних параметров от других, тоже во времени. Хотя это функция и менее востребована технологами, чем тренды.
■ Гистограммы и диаграммы
Другим распространенным способом представления параметров являются гистрограммы (столбиковые диаграммы).
■ Сообщения
Сообщения — это текстовые строки, которые информируют оператора о событиях на объекте в той последовательности, в которой эти события происходят. Они всплывают на экране или отображаются в специально выделенной для этого зоне.
■Журналы сообщений
Журналы сообщений служат для отображения списков сообщений в том порядке, как они появлялись и были сохранены в архив. Как правило, используются разные экземпляры журналов для разных зон процесса, разных категорий сообщений, разных приоритетов.
■ Контроль прав доступа
Для того, чтобы оператор мог совершить те или иные действия, ему должны быть администратором предоставлены соответствующие права — например, право управлять исполнительным механизмом, или право изменить задание регулятору. В начале смены оператор регистрируется в системе, и она предоставляет ему выполнять только те действия, которые ему разрешены администратором.
■Журнал действий оператора
Управление технологическим процессом очень ответственная задача, поэтому все действия оператора записываются для контроля в специальный журнал, который может быть проанализирован в случае нештатных ситуаций.
■ Формирование отчета
Удобная среда разработки отчетов позволяет легко и быстро подготовить отформатированные и насыщенные информацией отчеты.
ХАРАКТЕРИСТИКИ SCADA-СИСТЕМЫ
ЗАРУБЕЖНЫЕ SCADA-СИСТЕМЫ
Наиболее популярные в России следующие зарубежные SCADA:
— WinCC (Siemens, Германия);
— InTouch (Wonderware, США);
— RSView32 (Rockwell Automation, США);
— Genesis64 (Iconics, США);
— Vijeo Citect (Schneider Electric, Франция).
ОТЕЧЕСТВЕННЫЕ SCADA-СИСТЕМЫ
Наиболее популярные отечественные модели SCADA:
В отличие от большинства западных SCADA все российские содержат встроенные средства программирования контроллеров с использованием языков стандарта МЭК61131-3, в том числе языка функциональных блоков. Причем, если сама SCADA рассчитана на работу в среде Windows на PC-совместимых компьютерах, то исполнительная система для контроллеров может работать и на Logix других платформах, например, Linux на процессоре с архитектурой ARM.
Стандарт OPC поддерживают все перечисленные системы, однако в системе «Trace Mode» упор делается на использование собственных драйверов, а MasterSCADA, хоть и поддерживает использование драйверов, но основывается на технологии «OPC в ядре системы» и предлагает отдельный инструментальный пакет для разработки OPC-серверов.
Сравнительная характеристика зарубежных и отечественных SCADA
Все современные SCADA, как отечественные, так и зарубежные, имеют полный функционал для этого класса программ, поэтому их сравнение по перечню функций в последние годы потеряло смысл. Основное преимущество российских SCADA — это их изначальная нацеленность на российский рынок (русскоязычная, а не переводная документация, техническая поддержка, уровень цен). Можно сделать вывод, что для каждого предприятия или даже применения желательно сделать сравнение нескольких SCADA, как по цене, так и по возможностям. Практически все SCADA имеют пробную версию, которая позволяет проверить ее пригодность для решаемой задачи.
По теме
Популярные товары
Промышленное программирование, или Пара слов об АСУ ТП
Есть такая профессия — производство автоматизировать. Аббревиатура АСУ ТП означает «автоматизированная система управления технологическим процессом» — это система, состоящая из персонала и совокупности оборудования с программным обеспечением, использующихся для автоматизации функций этого самого персонала по управлению промышленными объектами: электростанциями, котельными, насосными, водоочистными сооружениями, пищевыми, химическими, металлургическими заводами, нефтегазовыми объектами и т.д. и т.п.
Фактически, каждый человек, живущий не в лесу и пользующийся благами цивилизации, использует результаты труда предприятий, на которых функционируют АСУ ТП.
Иногда на эту тему проскакивают статьи и на хабре. Обычно они не пользуются особой популярностью, но всё же я хочу написать несколько обзорных статей об АСУ ТП в надежде рассказать хабравчанам что-то интересное (а возможно, кому-то даже полезное) и привлечь на хабр больше своих коллег.
Сначала пара слов о себе. Я только начинаю свой жизненный путь в автоматизации, опыт работы без малого два года. За это время побывал на нескольких газовых месторождениях, сейчас работаю на нефтяном.
Поскольку область обширная, несмотря ни на что развивающаяся, местами противоречивая и спорная, буду стараться обобщать не в ущерб достоверности, но не могу избежать перекоса в свою область — то оборудование, софт и сферу, с которыми лично я сталкивался.
Итак, программно-технический комплекс АСУ ТП делится на три уровня: верхний (компьютеры), средний (контроллеры), нижний (полевое оборудование, датчики, исполнительные механизмы). Про нижний уровень рассказывать не буду — слишком уж это далеко от от тематики хабра, да и статья получится слишком большая.
Верхний уровень
Верхний уровень — это серверы и пользовательские ПК (у нас они называются АРМ — автоматизированное рабочее место). Сюда выводится состояние технологического процесса, и отсюда при необходимости оператором подаются команды на изменение его параметров. Для упрощения разработки создано большое количество SCADA-систем (от англ. supervisory control and data acquisition — диспетчерское управление и сбор данных). Это в некотором роде расширенный аналог IDE, в котором скомпилированная «программа» и выполняется.
Системы SCADA
Вообще, если отбросить академизм, то на предприятии для всех кроме асушников скада выглядит вот так:
А если совсем не повезёт, то вот так:
Подразумеваются два режима функционирования: режим разработки и режим выполнения (runtime). Не обязательно эти режимы взаимоисключающи: можно редактировать проект на одном АРМе, инженерном, заливать его, он обновится на пользовательских. Это очень важно — изменять проект без простоев и отключений, потому что технологический процесс прерывать нельзя, и операторы всегда должны иметь возможность его контролировать. В скаде создаются графические интерфейсы, настраиваются источники данных с полевых устройств, она отвечает за взаимодействие пользователя (оператора, диспетчера, технолога) с происходящим на производстве, а также за архивирование всех нужных данных в БД.
Архивирование — одна из обязательных функций, очень важно иметь возможность «вернуться назад во времени» для разбора полётов в случае чего-то непредвиденного либо для глобального анализа при медленных, длительных процессах. Например, недавно геологи попросили меня выгрузить табличкой данные по давлению нефти на скважинах за последний год.
Периодически скада складывает все собранные данные в БД. Их потом можно посмотреть в виде графиков (называем их трендами), а при необходимости, если оговорено в ТЗ на АСУТП, реализуется выгрузка в виде отчётов в эксель или ещё как-нибудь. Архивация сделана по-разному: в MS SQL; MS Access; в ту же MS SQL, но по своему хитрому алгоритму с дополнительной архивацией; а у кого-то вообще в свою собственную бинарную БД.
Особым пунктом в скадах идёт информирование оператора: текущие сообщения и аварийные. Они тоже обязательно архивируются. В общем виде сообщения делятся на текущие и важные (аварийные). Текущие прячут подальше, но журнал аварийных всегда выводится на экране оператора. К текстовым аварийным сообщениям привязываются звуковые, чтобы кто-нибудь не проспал ЧП 🙂
Рынок SCADA
Самыми распространёнными, по-моему, считаются скады производства Invensys Wonderware, Iconics, Siemens, Indusoft, AdAstra, Emerson, Rockwell Automation.
Я лично работал с виндовыми: Invensys Wonderware InTouch и более мощной System Platform, с Iconics Genesis32 — и с (пока ещё?) малоизвестной B&R APROL под SLES (формально, это не совсем скада, а покруче — из-под апрола программируются и сами контроллеры).
По поисковым запросам, например, SCADA, HMI можно посмотреть примеры интерфейсов и мнемосхем.
Внешний вид и юзабилити по приоритету, увы, находятся на последнем месте. Причём, это касается не только рантайма, но и разработки. Для разработки в каждой скаде существуют как минимум дефолтные библиотеки символов — от кнопок и прочих контролов до графических изображений насосов, труб, задвижек, ёмкостей. Здесь-то и могли бы умные разработчики SCADA-пакетов (не путать с нами, асушниками — разработчиками проектов в этих пакетах) добиться принципиального преимущества над конкурентами, сделав продуманные библиотеки, из которых бы даже самый далёкий от дизайна и юзабилити инженер при всём нежелании делал бы гуманные интерфейсы и мнемосхемы. К сожалению, сейчас эта сфера идёт по пути экстенсивного развития, по которому развивалась IT до недавнего времени — наращивание функционала, добавление плюшек, больше, выше, сильнее, harder, better, stronger, и о пользователях пока думают мало.
Средний уровень
Средний уровень — ПЛК, программируемые логические контроллеры. Здесь всё достаточно просто, чаще всего физически ПЛК состоят из отдельных модулей. Для программирования у каждого ПЛК есть своя среда разработки, иногда она объединена со средой для создания SCADA.
Состав ПЛК
Контроллер B&R серии X20
Зачем нужен блок питания — понятно. БП сделан отдельным именно модулем, а не устройством, чтобы гарантировать совместимость с данной линейкой ПЛК. Чаще всего входное напряжение у БП 220 В переменного тока, выходное — 24 В постоянного тока.
Процессорный модуль — это голова ПЛК. Внутри у него, само собой, ЦПУ, ОЗУ и ПЗУ, сервисный порт для прошивки и, возможно, коммуникационный порт (ethernet, RS232/422/485, Profibus, etc). Иногда коммуникационный порт используется и как сервисный. Иногда на модуле есть переключатель (у Allen Bradley ещё круче — там натуральный ключ с замочной скважиной) для перевода ПЛК в различные режимы работы. Отдельной кнопки включения/выключения нет, в лучшем случае — тот переключатель, иначе, если есть питание — ПЛК запускается, а выключается и перезагружается «по-варварски» отключением питания.
Контроллер Allen Bradley серии CompactLogix
Дискретные и аналоговые модули обрабатывают соответствующие сигналы. Входные модули принимают эти сигналы с поля, выходные — формируют их.
Дискретный сигнал — это обычно напряжение цепи 24 вольта. Есть 24 — это «1», нет — «0». Бывают модули на 220В, есть модули с проверкой целостности цепи. Дискретные сигналы, приходящие с поля, могут информировать, например, о состоянии насоса включен/выключен. Управляющие дискретные сигналы могут запускать либо останавливать этот насос. Оптимизация здесь не оправдана, поэтому на запуск будет отдельная цепь, на останов — отдельная.
Модули I/O одного типа могут быть объединены: например, один модуль с 16 дискретными входами и 16 дискретными выходами.
Аналоговые входные сигналы — это приходят показания с датчиков. Здесь чаще всего используется токовая петля 4-20 мА, в соотетствие которой ставятся пределы измерения датчика. Начинается от 4 мА для диагностирования обрыва цепи (если меньше 4 мА, значит где-то что-то не в порядке с проводкой).
Рассмотрим на примере уровня жидкости в резервуаре. Стоит уровнемер, он измеряет уровень от 0 до 2 метров. Тогда: уровень 0 метров — это 4 мА, уровень 2 метра — это 20 мА. Промежуточные значения калибруются по ситуации, не всегда 1 метр соответствует 4+(20-4)/2=12 мА, может быть небольшая погрешность, уровень в 1 метр может быть какие-нибудь 12,7553 мА.
Аналоговые выходные — то же, только на управление. Не встречал чтобы использовалось, т.к. всегда существуют наводки. В измерении это допустимая погрешность, в управлении — нет. Да и неудобно это. Вместо них используется цифровая передача данных по различным протоколам через коммуникационные модули.
Температурные модули замеряют сопротивление в цепи либо термо-ЭДС. Если на них подключаются термометры сопротивления — при нагревании металла его сопротивление, по законам физики, повышается, соответственно определяется температура. Если подключается термопара (два спаянных проводника из разных металлов, при нагревании стыка возникает разность потенциалов между другими концами), замеряется напряжение.
Интерфейсные (или коммуникационные) модули предоставляют нам порты под RJ45, DB9, DB15, просто клеммники или что ещё бог производителю на душу положит. Помимо реализации непосредственно интерфейса (физического разъёма под коннектор, физического уровня модели OSI) они также реализуют протокол обмена через этот разъём.
Протоколы и интерфейсы
Протоколов напридумывали и используют кучу: ModBus (RTU, TCP, ASCII), Profibus, Profinet, CAN, HART, DF1, DH485 и т.д. Некоторые особо хитрые производители реализуют свои протоколы поверх общепринятых.
Я достаточно тесно знаком с интерфейсами RS232/485 и протоколами Modbus. RS232 это всем знакомый COM-порт, с тремя основными линиями: Tx (transmit, передача), Rx (recieve, получение) и GND (ground, земля). RS485 это асинхронный полудуплексный последовательный интерфейс по 2 проводам (совмещённые Tx/Rx+ и Tx/Rx-) или 4 проводам (отдельно Tx+, Tx-, Rx+, Rx-) с разностью потенциалов на каждой паре от 2 до 10 вольт.
А модбас это в общем-то нехитрая штука, с проверкой целостности пакета по чексумме, подтверждением доставки и корректности запроса — или ответом, почему запрос неверен. В сети модбас есть два вида устройств: master — инициирует обмен; slave — выполняет запросы мастера. Пакет от мастера расходится ко всем слейвам, которые сравнивают адрес назначения со своим, если сходится, то смотрят следующие два байта — это команда работы с регистрами памяти — чтение/запись (за исключением нескольких редко используемых служебных команд), потом байты адреса и непосредственно данных, в конце чексумма. Достаточно подробно и понятно расписано на википедии.
Программная начинка
Первое, что нужно сказать, программа в ПЛК выполняется циклически с определённой частотой. Возможности зависят от контроллера, обычно это где-то 20, 50, 250 мс, 1, 2, 3, 4, 5 с. Естественно, это не гарантирует выполнение кода именно за такой промежуток времени, нельзя большие программы пихать в цикл 20 мс, к началу следующего цикла предыдущий должен быть завершён.
Второе, это языки программирования. По идее программируются ПЛК на языках, определённых стандартом МЭК61131:
Это «по идее». Но, например, Siemens придерживается своего наименования языков, а у B&R есть возможность писать на ANSI C.
Самые используемые контроллеры, безоговорочно, у Siemens и Allen Bradley (последним, к слову, принадлежит Rockwell Automation со своей линейкой SCADA-пакетов RSView). За ними по пятам идут Schneider Electric; ОВЕН; General Electric; AutomationDirect; ICP DAS; Advantech; Mitsubishi Electric; B&R.