Читаем Табличный ПЛК.Табличное программирование контроллеров полностью

Использование аналоговых переменных в таблице подчиняется определенному правилу. Для аналоговых входных и выходных переменных используется только операция присвоения «=». Операция «NOT», инвертирующая битовые входные и выходные значения, для аналоговых операций не применяется. При необходимости для того, чтобы получить отрицательное значение переменной, можно воспользоваться умножением на отрицательное число. Если в столбце под аналоговой переменной находятся несколько ячеек с символом «А» или активные ячейки битовых операций, то при проверке таблицы или ее пересчете должна быть выдана соответствующая ошибка. Таким образом, в столбце аналоговой выходной переменной может быть только одна аналоговая активная ячейка, при помощи которой результат по строке присваивается выходной переменной. Также в строке с аналоговым результатом не используется таймер. Для улучшения читаемости таблицы ячейки с символом «А» и значения выходных переменных выделяются бежевым цветом, а в ячейках битовых операций «Логич. И» и «RS» ничего не пишется. Различные уставки и граничные значения для аналоговых сигналов присваиваются внутренним аналоговым переменным, для которых не назначены аналоговые входы контроллера. При загрузке таблицы таким внутренним переменным присваивается число, которое записано в поле «Начальное значение» текстового файла таблицы. При необходимости внутреннюю переменную можно изменить, присвоив ей новое значение. Для этого при помощи входных операций определяется новое значение и присваивается внутренней переменной с помощью активной аналоговой ячейки.

3.3. Аналоговые входы для датчиков температуры

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

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

3.4. Сохранение переменных в энергонезависимой памяти

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

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
C++
C++

С++ – это универсальный язык программирования, задуманный так, чтобы сделать программирование более приятным для серьезного программиста. За исключением второстепенных деталей С++ является надмножеством языка программирования C. Помимо возможностей, которые дает C, С++ предоставляет гибкие и эффективные средства определения новых типов. Используя определения новых типов, точно отвечающих концепциям приложения, программист может разделять разрабатываемую программу на легко поддающиеся контролю части. Такой метод построения программ часто называют абстракцией данных. Информация о типах содержится в некоторых объектах типов, определенных пользователем. Такие объекты просты и надежны в использовании в тех ситуациях, когда их тип нельзя установить на стадии компиляции. Программирование с применением таких объектов часто называют объектно-ориентированным. При правильном использовании этот метод дает более короткие, проще понимаемые и легче контролируемые программы. Ключевым понятием С++ является класс. Класс – это тип, определяемый пользователем. Классы обеспечивают сокрытие данных, гарантированную инициализацию данных, неявное преобразование типов для типов, определенных пользователем, динамическое задание типа, контролируемое пользователем управление памятью и механизмы перегрузки операций. С++ предоставляет гораздо лучшие, чем в C, средства выражения модульности программы и проверки типов. В языке есть также усовершенствования, не связанные непосредственно с классами, включающие в себя символические константы, inline-подстановку функций, параметры функции по умолчанию, перегруженные имена функций, операции управления свободной памятью и ссылочный тип. В С++ сохранены возможности языка C по работе с основными объектами аппаратного обеспечения (биты, байты, слова, адреса и т.п.). Это позволяет весьма эффективно реализовывать типы, определяемые пользователем. С++ и его стандартные библиотеки спроектированы так, чтобы обеспечивать переносимость. Имеющаяся на текущий момент реализация языка будет идти в большинстве систем, поддерживающих C. Из С++ программ можно использовать C библиотеки, и с С++ можно использовать большую часть инструментальных средств, поддерживающих программирование на C. Эта книга предназначена главным образом для того, чтобы помочь серьезным программистам изучить язык и применять его в нетривиальных проектах. В ней дано полное описание С++, много примеров и еще больше фрагментов программ.

Бьёрн Страуструп , Бьярн Страустрап , Мюррей Хилл

Программирование, программы, базы данных / Программирование / Книги по IT
Разработка ядра Linux
Разработка ядра Linux

В книге детально рассмотрены основные подсистемы и функции ядер Linux серии 2.6, включая особенности построения, реализации и соответствующие программны интерфейсы. Рассмотренные вопросы включают: планирование выполнения процессов, управление временем и таймеры ядра, интерфейс системных вызовов, особенности адресации и управления памятью, страничный кэш, подсистему VFS, механизмы синхронизации, проблемы переносимости и особенности отладки. Автор книги является разработчиком основных подсистем ядра Linux. Ядро рассматривается как с теоретической, так и с прикладной точек зрения, что может привлечь читателей различными интересами и потребностями.Книга может быть рекомендована как начинающим, так и опытным разработчикам программного обеспечения, а также в качестве дополнительных учебных материалов.

Роберт Лав

Программирование, программы, базы данных / Программирование / Книги по IT