Языки программирования PLC: LD, FBD, SFC, ST, IL, CFC

Языки программирования ПЛК и программная платформа автоматизации CoDeSys

Возьмем для примера простейшую задачу: необходимо включить пресс через 1 секунду после одновременного удержания оператором двух кнопок в нажатом состоянии. Таким образом, мы гарантируем, что обе руки оператора заняты и даем ему время на контроль готовности машины. Самое простое решение это соединить контакты обеих кнопок последовательно и поставить электронное реле с таймером. Если таймер допускает регулировку времени задержки, то подобная схема обеспечит некоторую гибкость системы, впрочем не слишком высокую.

Любые дополнительные условия, например требование контроля последовательности нажатий кнопок поставит нас в затруднительную ситуацию – мы будем вынуждены изменить схему, введя дополнительные реле. Это не является сложной проблемой при условии, что такая необходимость возникает крайне редко.

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

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

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

Необходимо было создать управляющее устройство, алгоритм работы которого можно было бы менять, не переделывая монтажную схему системы управления, и в результате возникла логичная идея заменить системы управления с «жесткой» логикой работы (совокупность реле, регуляторов, таймеров и т.д.) на автоматы с программно заданной логикой работы. Так родились программируемые логические контроллеры (ПЛК). Впервые ПЛК были применены в США для автоматизации конвейерного сборочного производства в автомобильной промышленности (1969 г.).

Поскольку в определении «программируемый логический контроллер» главным являлось «программируемый», то практически сразу возник вопрос, как программировать ПЛК?

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

Почему бы и нет? Так в ПЛК появился язык релейно-контактных схем (РКС или LD в английских источниках Ladder Diagram). Специалист-технолог мог “перерисовать” схему управления на дисплее программирующей станции ПЛК. Естественно схема изображалась не графически а посредством условных символов.

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

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

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

Физически ПЛК представляет собой один или несколько блоков, имеющих определенный набор выходов и входов, для подключения датчиков и исполнительных механизмов (см. рис.1).

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

Рис. 1. Принцип работы ПЛК

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

Написать более сложную программу с помощью встроенного пульта непросто. Аналогично мы легко можем набрать текст SMS на клавиатуре сотового телефона, но даже ввод нескольких страниц текста, не говоря уже о больших объемах, представляется проблематичным. Для этого существуют персональные компьютеры (PC), предоставляющие гораздо более комфортабельные условия работы человека.

Один современный ПЛК способен заменить десятки регуляторов, сотни таймеров и тысячи реле. Используя PC запрограммировать такую систему совсем не сложно. Применение PC в качестве программирующей станции ПЛК является сегодня доминирующим решением. Это не только упрощает программирование, но и решает задачи архивирования проектов, подготовки документации, визуализации и моделирования. Компьютер дает удобный универсальный инструмент как для программирования простейших локальных задач на ПЛК, так и для АСУ ТП.

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

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

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

Упомянутый выше язык LD был изобретен в США в период релейной автоматизации. В Европу мода на ПЛК пришла несколько позднее, когда релейные шкафы были уже успешно заменены на шкафы с логическими микросхемами. Поэтому возникла необходимость изобретения других языков программирования понятных новому поколению инженеров.

Так в Германии появились языки простых текстовых инструкций напоминающих ассемблер (IL). Во Франции возникли графические языки функциональных блоковых диаграмм (FBD) и высокоуровневые диаграммы описания этапов и условий переходов (Графсет, современный SFC). Применялись также языки, используемые для программирования компьютеров (Pascal, Basic). В конце семидесятых годов сложилась крайне сложная ситуация.

Каждый изготовитель ПЛК (в том числе и в СССР) разрабатывал собственный язык программирования, поэтому ПЛК разных производителей были программно несовместимы, кроме того существовала проблема аппаратной несовместимости. Замена ПЛК на продукт другого изготовителя превратилась в огромную проблему. Покупатель ПЛК был вынужден использовать изделия только одной фирмы либо тратить силы на изучение разных языков и средства на приобретение соответствующих инструментов.

В итоге в 1979 году в рамках Международной Электротехнической Комиссии (МЭК) была создана специальная группа технических экспертов по проблемам ПЛК. Ей была поставлена задача выработать стандартные требования к аппаратным средствам, программному обеспечению, правилам монтажа, тестирования, документирования и средствам связи ПЛК.

В 1982 году был опубликован первый черновой вариант стандарта, который получил наименование МЭК 1131. Ввиду сложности получившегося документа, было решено разбить его на несколько частей, вопросам программирования посвящена третья часть стандарта “Языки программирования ПЛК”.

Поскольку с 1997 года МЭК перешел на 5 цифровые обозначения, в настоящее время правильное наименование международной версии части стандарта посвященной языкам программирования ПЛК – МЭК 61131-3. Рабочей группой МЭК было принято достаточно оригинальное решение. Из всего многообразия существовавших на момент разработки стандарта языков программирования ПЛК были выделены 5 языков, получивших наибольшее распространение.

Спецификации языков были доработаны, так что стало возможным использовать в программах написанных на любом из этих языков стандартизованный набор элементов и типов данных. Такой подход МЭК не раз подвергался критике, но время доказало правильность этого решения.

Реализация подобного подхода позволила привлечь к программированию одного и того же ПЛК специалистов различных областей знаний (и что особенно важно – различной квалификации): специалистов по релейной автоматике (и даже электриков), программирующих в LD, специалистов в области полупроводниковой схемотехники и автоматического регулирования для которых привычен язык FBD, программистов, имеющих опыт написания программ для компьютеров на языке ассемблера (ему соответствует язык IL для ПЛК), на языках высокого уровня (язык ST), даже далекие от программирования специалисты-технологи получили свой инструмент программирования – язык SFC.

Structured Text

Представляем книгу по Structured Text (ST) МЭК 61131-3. Автор – Сергей Романов

Книга “Изучаем Structured Text МЭК 61131-3”: Ссылка на книгу

Хотя внедрение МЭК систем программирования и не позволило полностью отказаться от услуг профессиональных программистов (впрочем такая цель и не ставилась), но зато позволило снизить требования к квалификации и соответственно затраты на оплату труда программистов ПЛК. Стандартизация языков позволила (по крайней мере, частично) решить проблему зависимости пользователя ПЛК от конкретного изготовителя.

Все современные ПЛК оснащаются средствами МЭК 61131-3 программирования, что упрощает работу пользователям контроллеров (можно использовать ПЛК различных фирм без затрат на переучивание) и одновременно снимает ряд проблем для изготовителей ПЛК (можно использовать компоненты ПЛК других изготовителей).

Стандарт существенно расширил возможности на рынке труда специалиста, занимающегося программированием ПЛК. Подобно тому как автомеханик, имеющий стандартный набор инструментов, может браться за ремонт любого узла (кроме нестандартных) машины любой фирмы, так и специалист, изучивший языки МЭК 61131-3 сможет разобраться с программой любого современного ПЛК. Это позволило уменьшить как зависимость фирмы от специалиста по программированию ПЛК, так и специалиста от фирмы.

На сегодняшний день лидирующие позиции на рынке МЭК систем программирования занимает комплекс CoDeSys немецкой компании 3S-Smart Software Solutions GmbH. Его применяют 190 компаний во всем мире, большинство из этих компаний – ведущие изготовители оборудования и/или систем промышленной автоматизации.

В России ПЛК с CoDeSys хорошо известны специалистам, диапазон продукции, выпускаемой под управлением этих ПЛК огромен CoDeSys включает 5 специализированных редакторов для каждого из стандартных языков программирования:

Список Инструкций (IL),

Функциональные блоковые диаграммы (FBD),

Релейно-контактные схемы (LD),

Структурированный текст (ST),

Последовательные функциональные схемы (SFC).

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

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

В России наиболее популярен язык ST. Это текстовый язык, представляющий собой несколько адаптированный Паскаль. Второе место по популярности занимает графический язык FBD, далее следует язык LD. Помимо средств подготовки программ, CoDeSys включает встроенный отладчик, эмулятор, инструменты визуализации и управления проектом, конфигураторы ПЛК и сети.

Воплощением еще одной неожиданной идеи, коллективно сформированной пользователями CoDeSys, стало добровольное объединение изготовителей ПЛК, поддерживающих CoDeSys, в некоммерческую организацию CoDeSys Automation Alliance (САА). Суть идеи в том, чтобы превратить изготовителей средств промышленной автоматизации, поддерживающих CoDeSys, в партнеров (насколько это возможно на конкурентном рынке) и нейтрализовать последствия конкуренции между изготовителями для пользователей ПЛК.

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

Пользователь может быть уверен, что его прикладная CoDeSys-программа будет работать в любом контроллере любой компании являющейся членом САА. Пользователь может быть уверен, что используемые им инструменты (CoDeSys) проверены тысячами пользователей во всем мире. Пользователь всегда может обсудить свои затруднения и получить реальную помощь от широкого круга коллег, имевших опыт решения подобных задач.

Брокарев А.Ж., Петров И.В. Компания “ПРОЛОГ”

Языки программирования PLC: LD, FBD, SFC, ST, IL, CFC

Прикладное программное обеспечение контроллеров разрабатывается с помощью специальных технологических языков, большей частью рассчитанных не на квалифицированных программистов, а на специалистов по автоматизации. Наиболее простой и распространенный язык программирования цепей контроля и управления – это набор программных модулей типовых алгоритмов обработки измерительной информации, регулирования, блокировочных зависимостей и графический конфигуратор, который собирает эти модули в заданные цепи контроля и управления. До недавнего времени (а частично и сейчас) каждый производитель ПТК разрабатывал свои языки программирования контроллеров. В последние годы ситуация начинает изменяться. К середине 90-х годов технологические языки программирования контроллеров были стандартизированы – стандарт IEC 1131.3. Этот стандарт определяет структуру пяти технологических языков:

– LD – язык лестничных диаграмм. Графический традиционный язык релейных блокировок, в котором разработчик изображает необходимые релейные схемы;

– FBD – язык функциональных блоковых диаграмм. Графический конфигуратор с набором типовых программных модулей;

– SFC – язык последовательных функциональных схем. Язык, близкий к традиционному программированию, предназначен для реализации алгоритмов последовательного управления. Элементы языка – процедуры и транзакции используются для определения порядка операций, написанных на любом языке стандарта;

– ST – язык структурированного текста. Язык типа Pascal , поддерживающий структурное программирование. Он может использоваться для программирования процедур и переходов в языке SFC и дополнять другие языки стандарта;

– IL – язык инструкций. Язык низкого уровня типа Ассемблера, но без ориентации на конкретную микропроцессорную архитектуру. С его помощью можно создавать быстродействующие программные модули.

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

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

Сертификация конкретных языков на соответствие стандарту осуществляется организацией PLCopen , имеющей свои отделения в разных странах. Сформулировано три уровня совместимости конкретных языков со стандартом:

-базовый уровень, когда язык соответствует некоторому подмножеству стандарта IEC 1131.3 (начальный уровень). На этом уровне проверяются типы переменных и языковые конструкции;

-уровень переносимости функций, когда существует формат файла обмена функциональных блоков;

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

Более десятка фирм, специализирующихся на программных продуктах, выпускают сейчас технологические языки по этому стандарту, ориентированные на работу под определенными типовыми операционными системами (т. е. открытые технологические языки), что позволяет разработчикам ПТК использовать их в своих комплексах. Практически большинство контроллеров, выпускаемых в последние годы, оснащаются тем или иным числом технологических языков, соответствующих этому стандарту. Эти языки либо разработаны самими разработчиками контроллеров, либо закуплены последними у фирм, специализирующихся на программных продуктах.

Перспективные контроллеры в части их прикладного программного обеспечения выделяются следующими факторами:

-они обеспечены технологическими языками по стандарту IEC 1131.3;

-обязательный набор таких языков – языки типа LD и FBD . Желательный набор – все пять языков стандарта;

-эти языки сертифицированы на соответствие стандарту желательно по уровню переносимости функций;

– к языку FBD (функциональных блоковых диаграмм) прилагается обширный (порядка сотен единиц) набор программных модулей типовых алгоритмов контроля и управления;

-в этот набор, кроме обычных простейших функций, входят продвинутые типовые модули управления ( Advance Control ), повышающие эффективность автоматизации: модуль самонастройки регуляторов, адаптивные регуляторы, регуляторы на нечеткой логике, нейрорегуляторы и т.д.

Языки программирования PLC: LD, FBD, SFC, ST, IL, CFC

Контролер – это управляющее устройство. Действительно функциональным он становится только тогда, когда вы создаете и запускаете программу по его использованию.

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

Какой набор программ доступен для ПЛК? В принципе любой набор возможен. Главное, чтобы размер свободных ресурсов, данного инструмента, вам был не помехой. Разработчик получает широкие возможности по написанию программ.

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

Техническое задание

Создание и утверждение технического задания (ТЗ) – очень важная часть разработки ПО. От грамотно составленного ТЗ зависит, насколько эффективно будет вестись разработка.

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

Место ПЛК в системе управления

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

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

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

Без микроконтроллеров не было бы РСУ, АСУ, сложных автоматных комплексов управления технологическими процессорами. Используя сетевой трафик, ПЛК анализируют данные, успевая проверять состояние портов входа. Главный недостаток, особенность микроконтроллеров состоит в необходимости прошивки, создания программы для работы.

Впрочем, его следует воспринимать двояко: индивидуально создаваемое ПО позволяет проектировать узкоспециализированные изделия под конкретные задачи.

Периферия

В первую очередь составляется список всех дискретных входов и выходов контроллера. Также указываются аналоговые входы/выходы при их наличии.

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

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

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

Структура и устройство ПЛК

Любой плк Siemens или аналогичный, других производителей, ориентирован на выполнение конкретных действий. Микроконтроллер опрашивает блоки ввода информации, чтобы принять решение, сформировать на выходе готовую команду. Упрощенно схема стандартного элемента включает:

  • вход;
  • центр;
  • выход.

Входные цепи образованы набором датчиков (аналоговых или цифровых), переключающих устройств, смарт-систем. В центральном блоке расположены: процессор, обрабатывающий команды, модуль памяти и средства коммуникации. Выходные цепи отвечают за передачу сигнала на моторы привода, вентиляцию, осветительную арматуру. Туда же допускается подключить управляющее смарт- устройство архитектуры ардуино или подобное. Необходимо также выполнить условие подключения ПЛК к цепям питания. Без них устройство работать не будет. Внешний компьютер через унифицированный интерфейс используется для отладки, программирования контроллера.

Помехоустойчивость

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

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

Для повышения помехоустойчивости необходимо применять программные средства. Например, обязательным является использование сторожевого таймера, который «приводит в чувство» ПЛК при его «зависании».

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

Принцип работы ПЛК

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

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

Для управления ПЛК, его программирования используется бытовой ПК. Несколько отдельных микроконтроллеров образуют каскад с усложненными задачами. Системы «умный дом», автоматика включения двигателя насоса для закачки воды в накопительный бак давно содержат в себе подобные блоки.

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

Первый этап работы устройства состоит из экспресс-теста задействованного оборудования. Одновременно идет загрузка операционной среды, управляющих программ. Все как в настольном ПК при старте Windows. Предусмотрена пошаговая отработка команд (отладка), при которой допускается мониторинг, корректировка переменных.

Для простоты восприятия рабочий, шаговый режим ПЛК разбит на типовые циклы. Они повторяются во время функционирования устройства. В каждом цикле, «маршрутной карте» заключаются 3 действия:

Сканирование, обращение к внешним датчикам. Запись значений (состояния) в ячейки памяти.

Анализ действующей программы. Внесение требуемых корректив на основании данных предыдущего шага.

Передача результата вычислений на блоки выхода.

Завершается цикл быстрым переходом к первому этапу «урока».

Проблемы совместимости программы с аппаратной частью

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

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

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

История создания

В 60 годах 20 века для управления телефонными станциями, промышленным оборудованием использовались сложные схемы с реле. Они не отличались повышенной надежностью или ремонтопригодностью. Инженерам одной из компаний, американской General Motors, была поставлена цель по созданию нового оборудования. Задачи, на которые оно было рассчитано, выглядели так:

  1. Упрощение отладки, замены.
  2. Относительная дешевизна.
  3. Гибкость, удобство модернизации.
  4. Снижение риска отказов.

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

Терминология, объясняющая, что такое ПЛК (PLC), внесена в международные и европейские стандарты качества МЭК, EN.

Языки программирования и среды разработки

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

Наиболее простым и наглядным языком программирования ПЛК, входящим в каждую среду разработки является язык релейных схем LD (Ladder Diagram

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

Другой язык, имеющий обширный функционал – FBD (Function Block Diagram)

, который относится к графическим языкам программирования. В FBD используются законченные блоки, имеющие определенные функции. Блоки поставляются со средой программирования или создаются программистом. Существуют и другие языки (6 стандартных), но их описание выходит за рамки данной статьи.

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

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

Другие полезные материалы:

Настройка ПЧ для работы на несколько двигателей Особенности работы частотников при однофазном питании Коротко о программируемых логических контроллерах

Ограничения ПЛК

Не стоит полагать, что наличие программируемого контроллера способно решить все глобальные проблемы пользователя. ПЛК, работающие на основе протоколов Codesys, Modbus (для модульных решений), обладают ограниченной сферой применения. Их выбор обусловлен поставленной задачей. Попытку создать универсальные ПЛК вряд ли можно признать целесообразной.

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

Роль каналов обмена данными играют кабельные медные шины, оптоволоконная связь. Успешно используются варианты стандартизированных интерфейсов RS-232, RS-485 (кабель), промышленных Profibus или CAN. Не возбраняется коммутация по беспроводным линиям (Wi-Fi).

Входы и выходы

В любом контроллере реализованы входы трех типов – дискретные, аналоговые, специальные.

Дискретный вход

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

Если состояние приборов не удается описать в 1 бит, тогда для работы такого оборудования применяют несколько дискретных входов.

Системное ПО обязательно оснащено драйвером. Он считает физические значения каждого входа в ОЗУ. За счет этого программистам нет нужды понимать, как устроен контролер внутри. Дискретный вход – биты, которые можно читать и изменять из оперативной памяти устройства.

Аналоговый вход

Электрический аналоговый сигнал — это уровень напряжения или тока, соответствующий определенным физическим величинам. Это может быть значение температуры, давления, веса, положения, скорости перемещения, частоты оборотов. Так как ПЛК – это прежде всего вычислительный прибор, то аналоговый сигнал переводится в цифровой. Получается дискретная переменная.

Специальный вход

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

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

Второй тип таких входов – это входы, которые могут мгновенно запускать команды пользователей с прерываниями на выполнения основного ПО.

Дискретный выход

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

Производители ПЛК

На рынке представлены компании из России, США, ФРГ, Японии. Это Texas Instruments, Carel, Delta Electronics, Schneider Electric, Mitsubishi, Beckhoff, Omron, Segnetics, Unitronics. Отечественную продукцию представляют марки «Овен», «Контар», «Текон».

Выбор конкретного решения зависит от предъявляемых заказчиком требований, условий работы. А чтобы разобраться, чем ПЛК100, ПЛК110 отличается от ПЛК160, ПЛК323 потребуется обладание квалификацией, возможно — консультации специалистов.

Удаленное управление и мониторинг

Различные интерфейсы управления встраиваются в контролеры уже на стадии проектирования. Предусмотрена синхронизация с АСУ (SCADA и подобные). Оператор контактирует с ПЛК посредством интегрированной панели, устройства ввода-вывода, либо удаленно. Для этого по помехозащищенному каналу, кабельной сети к блоку подключается HMI, специализированный интерфейс взаимодействия между человеком и машиной.

Каким из доступных способов выполнить реализацию, с помощью простейшего клавиатурного модуля или сенсорной панели — решать заказчику. В последнее время активно используются «облачные» хранилища, виртуальные серверы. Не остаются в стороне и стандартные, Intranet (локальные) и Internet (внешние) подключения.

Реализация веб-интерфейса допускается также и без проводов, в сети Wi-Fi. Описанные методы невероятно расширяют возможности оператора. Упрощают контроль работающего комплекса ПЛК.

На что обращать внимание при покупке

До приобретения ПЛК нужно кое-что уточнить. Вот эти факторы:

Универсальность программной среды. Единые языки для всех аппаратных платформ.

Наличие контролеров с распределенным, интегрированным вводом-выводом.

Реализация связи ПЛК со стационарным компьютером.

Специализированное оборудование. Это микросистемы, ориентированные на работу с облачным сервисом (вариант оповещения по мобильной связи, почте).

Открытая архитектура отдельных ПЛК.

Данный перечень создает направление для движения как покупателей, так и производителей. Какой из перечисленных критериев окажется в приоритете, решает заказчик. С дружественным ПО эксплуатация станет удобнее. Так утверждают опытные инженеры-наладчики.

Применение контроллеров

Современный ПЛК, недорогой и надежный, находит применение в ПИД-регуляторах, счетчиках типа «Меркурий», промышленных устройствах серии DVP. Компактность блоков позволяет встраивать их в бытовую технику, монтировать в щитах и шкафах совместно с прочим электрооборудованием.

Энкодер, подключенный к контроллеру, применяется в автомобилестроении, реагируя на изменение угла поворота руля. Удобно использовать ПЛК при создании комплексов с ЧПУ, автоматизированных систем запуска аварийной откачки сточных вод в канализации. Видеонаблюдение, интегрированное в охранный пост, создаст полноценный обзор зоны наблюдения для оператора.

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

Язык непрерывных функциональных схем CFC. Часть 1

Пять основных языков программирования (ST, SFC, FBD, LD, IL), установленных стандартом МЭК 61131-3, используются при написании программ для логических контроллеров. В дополнение к ним CODESYS предлагает язык непрерывных функциональных схем (CFC). Редактор языка и сама его структура интуитивно понятна. Для написания программ не требуется специальных знаний. Именно поэтому CFC является языком выбора для начинающих программистов.

Начиная с 1993 года стандартом IEC 61131-3 (МЭК 61131-3) определено пять основных языков (ST, SFC, FBD, LD, IL) для программирования логических контроллеров. Из них наиболее простым в изучении и удобным в работе является графический язык FBD.

Некоторые компании для облегчения программирования внедряют в свои программные продукты языки, не входящие в стандарт МЭК. Например, CODESYS использует язык непрерывных функциональных схем (CFC), как вариант языка FBD. Язык удобен для прикладных специалистов, не имеющих специальной подготовки в области информатики.

Принципиальное отличие CFC от FBD заключается в том, что в редакторе CFC размещать компоненты программы (функциональные и логические блоки) и задавать порядок их выполнения можно произвольным образом. Такие возможности позволяют легко реализовывать обратные связи, что удобно при разработке схем регулирования. При создании программ на CFC необходимо вручную выстраивать связи между элементами, в то время как на FBD соединения выполняются автоматически.

Свойства редактора CFC

Существуют две разновидности редактора CFC: стандартный (рис. 1) и страничный (рис. 2). Выбрать тип редактора можно при создании нового проекта или при добавлении POU (компонент организации программы) в уже существующий проект

Рис. 1 Рис. 2

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

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

Важно помнить, что стандартный и страничный типы редактора не конвертируются один в другой.

Общие свойства блоков

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

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

После создания блока начинается этап создания входов и выходов путем перемещения их с панели инструментов. Если блок имеет два-три входных/выходных контакта, то операция занимает мало времени. Если у блока большое число контактов, то потребуется оптимизировать процесс. Необходимо выделить входной или выходной контакт блока и начать вводить имя переменной или константу. Таким образом выход будет добавляться автоматически столько раз, сколько потребуется (рис. 3).

Существует еще один способ добавления входа/выхода блока сразу с переменной. Для этого переменные задаются в разделе программы VAR: выделяется имя переменной и перемещается к нужному входному или выходному контакту блока.

При формировании логики программы блоки добавляются, как правило, в произвольном порядке и так же строятся связи между ними. Это приводит к тому, что нумерация блоков отличается от последовательности их расположения (порядка выполнения) (рис. 4). Чтобы соблюсти очередность выполнения (рис. 5), нужно перед запуском программы нажать ПКМ на рабочем поле редактора CFC и в меню Порядок выполнения, выбрать пункт Упорядочить в соответствии с потоком данных.

Рис. 4 Рис. 5

В версии CODESYS V3.5 SP15 появилась новая опция – автоматическая нумерация блоков в соответствии с потоком данных. Теперь элементы можно добавлять на рабочую область редактора в любом порядке и как угодно перемещать. Автоматическая нумерация элементов программы установлена по умолчанию. Вместе с тем сохранена нумерация элементов в режиме заданного порядка выполнения. Переключаться между режимами можно из свойств POU на вкладке: Порядок выполнения CFC. Посмотреть номера элементов при автоматической нумерации (рис. 6) можно из пункта контекстного меню Порядок выполнения с помощью кнопки Показать порядок выполнения или с помощью этой же кнопки, расположенной на панели инструментов.

Функциональные блоки и структуры

При работе с ФБ, имеющими большое количество входов/выходов, или структурами, содержащими большое количество переменных, удобно использовать компоновщик и селектор (рис. 7), которые находятся на панели инструментов.

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

Линии связи

Для построения линии связи между двумя элементами нужно соединить контакты двух блоков. В редакторе CFC реализован ряд полезных функций по построению линий свиязи. Функция автосоединения линий связи по умолчанию активна, ее можно включить или отключить в меню Инструменты, пункт Опции. Для автосоединения необходимо вплотную приблизить контакты элементов. Существует поддержка параллельной связи от одного элемента к многим другим (рис. 3).

Если линия связи целиком не умещается на экране монитора, нужно выделить один из контактов линии связи (зажать клавишу + нажать стрелку ), тогда рабочая область сама сдвинется к входным или выходным контактам.

Для того чтобы избежать проблем из-за наличия большого количества линий связи, в стандартном редакторе CFC используют соединительные метки (рис. 8). Единственная задача меток – заменить длинные нечитаемые линии связи. Соединительные метки можно установить с панели инструментов. Сначала добавляется метка выхода (ей автоматически присваивается идентификационный номер), затем добавляется метка входа, и ей присваивается соответствующий номер. Заменить линию связи метками можно в пункте Метка соединения контекстного меню, вызываемого нажатием ПКМ на самой линии или на соответствующем входе/выходе. Аналогичным образом можно восстановить линию из меток.

В страничном редакторе CFC нельзя добавить соединительную метку на рабочую область (заменить ими линии связи), так как они выполняют другую задачу. Соединительные метки служат входами и выходами на страницах проекта – осуществляют передачу данных с одной страницы на другую (рис. 9). Метки добавляются не на рабочей области, что улучшает наглядность проекта и экономит место непосредственно на рабочей области редактора.

Оформление и компоновка программ

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

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

Во второй части статьи речь пойдет о реализации условий на языке CFC; особенностях работы с элементами, охваченными обратной связью; свойствах раздела VAR_INPUT CONSTANT в ФБ; кастомизации проектов и других важных особенностях работы с CFC.

© Автоматизация и Производство, 2021. Все права защищены. Любое использование материалов допускается только с согласия редакции. За достоверность сведений, представленных в журнале, ответственность несут авторы статей.

Издание зарегистрировано Федеральной службой по надзору в сфере связи, информационных технологий и массовых коммуникаций. Свидетельство о регистрации средств массовой информации ПИ № ФС77-68720.

ПРОГРАММИРОВАНИЕ КОНТРОЛЛЕРОВ

ЯЗЫКИ ПРОГРАММИРОВАНИЯ ПРОМЫШЛЕННЫХ КОНТРОЛЛЕРОВ

Требования к языкам программирования. Стандарт МЭК 61131-3

Использование типовой аппаратной базы универсальных программируемых контроллеров избавляет проектировщика систем управления от необходимости их схемотехнического проектирования и изготовления. Поэтому можно сказать, что сегодня проекты с применением ПЛКна 90% являются программным продуктом. При использовании универсального контроллера главная задача проектировщика системы управления — создание программы.

Сфера программирования контроллеров, как и сфера их аппаратной части, прошла свой путь развития. Первоначально появились ПЛ К, которые можно было программировать на машинно-ориентиро- ванных языках — ассемблерах. Такие контроллеры были максимально просты с архитектурной точки зрения. Но работа с ними требовала участия специально обученного программиста для внесения даже незначительных изменений в алгоритм управления.

Началась борьба за упрощение процесса программирования ПЛ К, которая привела сначала к использованию универсальных языков программирования высокого уровня, изначально созданных для ЭВМ общего назначения. Однако в конце концов такое направление, отлично зарекомендовавшее себя в области создания программного обеспечения ЭВМ общего назначения, показало свою низкую эффективность в области промышленной автоматизации. Дело в том, что в работах по внедрению элементов вычислительной техники в реальное производство участвуют программист, электронщик и технолог, досконально знающий автоматизируемый процесс. Однако затраты времени и средств на эту работу, как правило, находятся в прямой зависимости от способностей программиста.

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

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

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

  • 1. Задачи параллельной обработки большого числа логических контуров с обработкой исполнительных действий при наступлении тех или иных событий. В основе логического контура лежит проверка истинности логической функции от нескольких переменных, а событие равнозначно истинности этой функции. Такие задачи адекватно и наглядно описываются системами булевых уравнений. Поэтому языки ПЛ К должны подходить для описания подобных задач — они должны содержать средства представления булевых функций (аналитической или графической формы их отображения).
  • 2. Задачи управления процессом, проходящим в своем развитии через ряд состояний (шагов, стадий). Переход от одного состояния к другому происходит по событиям, формируемым по сигналам датчиков процесса. Таким образом, языки ПЛ К должны иметь возможность осуществлять разметку состояний процесса, представлять логику управления, описывать действия, связанные с текущим состоянием и событиями, предшествовавшими смене состояний.
  • 3. Задачи автоматического регулирования (ПИД-законы, нечеткое управление и т.д.) встречаются практически везде. Языки ПЛ К должны максимально просто описывать типовые процессы управления, в том числе позволяя использовать библиотеки заранее разработанных компонентов.
  • 4. Задачи управления распределенными технологическими объектами, оптимизационные, а также задачи, связанные с интеллектуальным анализом данных. При решении таких задач удобны операторы языков типа Си, Паскаль, Visual Basic.

Долгое время считалось, что наглядность описания операторами языка решаемых задач определяется формой представления его текстовых конструкций. Это справедливо и по сей день. Однако со временем появилась возможность представлять операторы языка и их взаимосвязь еще и в графической форме. Языки графического программирования произвели настоящую революцию в программировании систем автоматизации. Одним из первых в этом классе был графический язык среды Simulink, входящей в состав MATLAB (MathWorks Inc), а также языки Lab VIEW (National Instruments) и HP-VEE (Hewlett Packard). Они предназначены и успешно используются для сбора данных, моделирования систем автоматизации, автоматического управления, обработки собранных данных и их визуального представления в виде графиков, таблиц, звука, с помощью компьютерной анимации. Графические языки настолько просты и естественны, что для их освоения часто достаточно метода проб и ошибок без использования учебников и консультаций. Человек, не знакомый с программированием на алгоритмических языках, пользуясь только логикой и понимая постановку прикладной задачи, собирает работающее приложение из готовых компонентов, набрасывая их мышкой на экран монитора и проводя графические связи для указания потоков информации.

Кроме наглядности описания задачи, языки ПЛК должны обеспечивать мобильность — способность к переносу программы на различные аппаратные и операционные платформы, а также эффективное исполнение программы в реальном масштабе времени.

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

В итоге, какуже говорилось выше, в рамках МЭК (IEC) был разработан стандарт МЭК 61131, определяющий общие требования к аппаратным средствам, программному обеспечению, правилам монтажа, тестированию, документированию и средствам связи ПЛК. Вопросам программирования посвящена третья часть стандарта — МЭК 61131-3 «Языки программирования ПЛК».

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

Первоначальными целями стандарта МЭК 61131-3 были унификация языков программирования ПЛК и предоставление разработчикам ряда аппаратно-независимых языков, что, по замыслу его создателей, обеспечило бы простую переносимость программ между различными аппаратными платформами и снимало бы необходимость изучения новых языков и средств программирования при переходе разработчика на новый П Л К. Этот стандарт требует от различных изготовителей ПЛК предлагать команды, являющиеся одинаковыми и по внешнему виду, и по действию. В части описания языков программирования стандарт МЭК 61131 остается чрезвычайно актуальным, являясь ориентиром для большинства разработчиков ПЛК. По разным оценкам, до 80% ПЛК-рынка обслуживается программными продуктами, реализующими в той или иной мере этот стандарт.

Можно выделить следующие общие принципы построения языков стандарта МЭК 61131 – 3:

  • • программа, написанная для одного контроллера, может быть перенесена на любой контроллер, совместимый со стандартом МЭК61131-3;
  • • стандарт требует строгой типизации данных, указание их типов позволяет легко обнаруживать множество ошибок в программе до ее исполнения;
  • • стандарт поддерживает структуры для описания разнородных данных, набор которых можно описать с помощью единой структуры и передавать ее внутрь программы как единый элемент (блок) данных;
  • • вся программа разбивается на множество функциональных элементов — Program Organization Units (POU), каждый из которых может состоять из функций, функциональных блоков и программ, любой элемент программы может быть сконструирован иерархически из более простых элементов;
  • • имеются средства для исполнения разных фрагментов программы в разное время, с разной скоростью, а также параллельно, например один фрагмент программы может сканировать один датчик с частотой 100 раз в секунду, в то время как второй фрагмент будет сканировать другой датчик с частотой один раз в 10 секунд;
  • • стандарт обеспечивает совместное использование нескольких языков и для каждого фрагмента задачи может быть выбран любой наиболее удобный язык;
  • • для выполнения отдельных фрагментов программы в определенной последовательности, которая задается моментами времени или событиями, используется специальный язык последовательных функциональных блоков (SFC).

В настоящее время стандарт МЭК 61131-3 поддерживает пять языков технологического программирования:

  • • Sequential Function Chart (SFC) — язык последовательных функциональных блоков;
  • • Function Block Diagram (FBD) — язык функциональных блоковых диаграмм;
  • • Ladder Diagrams (LD) — язык релейных диаграмм;
  • • Statement List (ST) — язык структурированного текста;
  • • Instruction List (IL) — язык инструкций.
  • • SFC, FBD, LD являются графическими языками, языки IL и ST — текстовые.

Некоторые компании и в настоящее время по-прежнему предлагают свои собственные языки программирования. Это в первую очередь большие и мощные компании — производители контроллеров. Многие из них не хотят отказываться от огромных наработок, уже сделанных ими в этой области, и могут себе это позволить в силу широкого распространения их продукции на данном рынке. Хотя, надо отметить, что сама логика появления и языков стандарта МЭК 61131 – 3 и фирменных языков делает их все крайне похожими друг на друга. Языки, отличные от языков стандарта МЭК 61131-3, предлагают порой компании, производящие пакеты разработки программ для универсальных контроллеров, но такие языки, как правило, являются лишь некоторым «усовершенствованием» или расширением стандартных. К ним, например, можно отнести язык CFC.

Как утеплить стены изнутри и надо ли…

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

Утепление стен изнутри: в чем проблема

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

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

Точка росы для разных вариантов утепления стен

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

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

Утепление стен изнутри: последствия

И третий вариант — утепление стены снаружи. В этом случае точка росы находится в утеплителе. Как ее оттуда выводить — это другая история (сделать вентилируемый фасад или правильно подобрать паропроницаемость материалов), а для нашей темы важно понять, что в данном случае стена внутри помещения точно будет сухой и теплой.

Подводя итог, можно сказать, если есть возможность, делайте утепление снаружи. Утепление стен изнутри помещений делать приходится только в нескольких случаях:

  • если их не разрешено утеплять снаружи (здание — исторический памятник или запрет местных властей);
  • если стена выходит в стык между двумя зданиями;
  • стена выходит в шахту лифта.

Но перед тем, как приниматься за эту работу, хорошо проинспектируйте пол, потолок, окна. Иногда большая часть тепла уходит не через стены, а именно через эти поверхности, а их утеплять проще (в смысле, меньше хлопот с точкой росы).

Правильное внутреннее утепление стен в доме или квартире

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

  • воссоздав многослойную стену (поставить на некотором расстоянии стенку в полкирпича с утеплением);
  • сделать подогрев стены, а потом ее утеплить.

Эти варианты работают, но, как видите, они «съедают» значительное пространство и стоят приличных денег. В каждом конкретном случае надо считать, какого утеплителя и сколько необходимо, но пирог стены остается таким же.

Вторая стена

На некотором расстоянии от основной стены устанавливают вторую стену толщиной в 10-12 см. Между двумя стенками, к внутренней крепят слой утеплителя, который требуется для данных условий. При этом до наружной стены должен оставаться вентзазор не менее 3 см. Итого, вся эта конструкция от основной стены будет отстоять на 20-25 см. Площадь она «съест» очень немалую.

Варианты утепления стен изнутри

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

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

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

Подогрев при помощи электричества

Идея этого способа в том, чтобы при внутреннем утеплении бетонной или кирпичной стены перенести точку росы внутрь стены. Для этого ее надо подогреть. Самый простой способ — прикрепить мат электрического теплого пола. На некотором расстоянии от него устанавливают утеплитель, поверх которого идет отделочный слой.

Как утеплить стену в квартире изнутри

Проблем с выводом влаги в этом случае нет, и места для устройства системы требуется намного меньше: от 8 см (при вентзазоре 3 см и толщине утеплителя 5 см).

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

Вариант для утепления балкона изнутри

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

Утепление балкона изнутри

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

Очень тщательно надо подойти и к вопросу утепления пола и потолка лоджии/балкона, обеспечить герметичность на стыке их со стенами. Также обратите внимание как будет устанавливаться остекление: тут тоже могут быть проблемные места: стык с экраном, стенами, утепление части над рамами. Все их надо хорошо отделать, исключая и тут возможность контакта теплого/холодного воздуха. В этом случае никаких проблем не будет. Даже если балкон объединен с комнатой.

Как утеплить квартиру изнутри без ремонта

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

Важные мероприятия

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

Основные потери тепла

Внимание на окна

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

Если окна пластиковые, но от них все равно сквозит, то причины могут быть такие:

  • Несоблюдение технологии монтажа оконного блока;
  • Износ монтажной пены по периметру створки рамы;
  • Не утеплённые откосы.

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

Весной обязательно займитесь утоплением откосов и переустановкой подоконника.

Занимаемся дверями

Помимо окон тепло из дома свободно может выходить через щели в дверной коробке. Или через само дверное полотно. Кроме того, если дверь внутри металлическая (китайская или железная усиленная), то от неё, так или иначе, идёт ледяной холод.

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

Если у вас стоит старая дверь, внутри которой имеется ватный утеплитель, придется снять дермантин и сменить утеплитель. Скорее всего, со временем он износился и просто осыпался вниз.

Утепление входной двери минватой

В качестве радикальной меры для металлической двери, от которой идёт холод, используйте плотную ткань (одеяло или покрывало), которую можно навесить на дверь. Хотя бы на ночь.

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

Утепляем пол

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

Работаем со стенами

Если стала задача утеплить квартиру изнутри в кирпичном доме или доме из пеноблоков (другого материала), то присмотритесь к пробковым матам. Их вполне можно использовать при внутренней отделке помещений. Вы можете сделать утепление пробкой либо во всех комнатах, либо по периметру наружных стен. Монтируются маты просто, без трудоемких ремонтных работ. Вполне вероятно, что пробка красиво впишется в ваш дизайн интерьера.

Зона радиаторов — важная зона

Как правило, батареи и радиаторы располагают на наружных стенах, контактирующих с улицей. В этом случае тепло на 50 % поглощается холодными панелями. Чтобы предотвратить теплопотери и максимально отдать высокую температуру внутрь помещения, разместите за радиаторами отражающие тепло пластины. Это может быть любой фольгированный материал. Уже буквально через час после проведения работ вы отметите, что температура в помещении поднялась на 2–3 градуса.

Дополнительные способы сохранения тепла в доме

Есть ещё несколько вариантов, позволяющих сохранить тепло в помещении. Специалисты рекомендуют сделать следующее:

  • Если квартира расположена с южной стороны, то в солнечный день постарайтесь открывать шторы максимально. Даже, казалось бы, холодное зимнее солнце дает достаточный уровень тепла через призму стёкол.
  • На окна можно дополнительно наклеить термозащитную плёнку. Видимость она не снижает. Но хорошо задерживает тепло в помещении.

Окна с пленкой

[totalpoll >

  • Если в доме есть камин или печь, которыми вы не пользуетесь, обязательно перекройте дымоход. Через него уходит 30% тепла.
  • Если есть возможность установить в доме обогрев помимо централизованного отопления, используйте масляные радиаторы или керамические панели. Они наиболее безопасные и дают большой процент тепла. При возможности откажитесь от центрального отопления в пользу индивидуального. Так вы сможете самостоятельно контролировать температуру в доме.

И конечно же, просто тепло одевайтесь зимой. Тёплые носки, связанные руками заботливой бабушки, подарят не только тепло, ну и душевный комфорт.

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

Читайте также:
Функциональная эргономика от Игоря Сиротова
Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: