Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Создание пользовательского функционального блока RS-триггера в CoDeSys

Цель работы: в среде визуального моделирования (CoDeSys, язык CFC) исследовать работу RS-триггера.

Триггеры

Триггером называют последовательностную схему с положительной обратной связью и двумя устойчивыми состояниями 0 и 1. То есть триггер обладает свойством памяти. В общем случае триггер может иметь асинхронные входы предварительной установки (R, S), тактовый или синхронизирующий (C) и информационные входы (D). К основным типам триггеров относятся:

1) триггер с раздельной установкой состояний (RS-триггер);

2) триггер "защелка" (D - триггер);

3) универсальный триггер (JK - триггер);

4) триггер со счетным входом (T - триггер).

 

В данной лабораторной работе будет рассмотрен RS-триггер и его работа.

 

Ход работы:

1. Создание проекта в CoDeSys и исследование работы триггеров

1) Запустить среду программирования CoDeSys 2.3. Создать новый проект (File->New). Выбрать строку 3S CoDeSys SP PLCWinNT V2.4:

Рисунок 1 – Начало работы

Выбрать язык программирования CFC(Continuous Function Chart).

 

Исследование RS-триггера

RS-триггер (или SR-триггер) — триггер, который сохраняет своё предыдущее состояние при нулевых входах и меняет своё выходное состояние при подаче на один из его входов единицы. Подача единицы на вход S – устанавливает выход Q в единицу (TRUE). Подача единицы на вход R – сбрасывает выход Q в ноль (FALSE). Одновременная подача единицы на оба входа запрещена.

Рисунок 2 – Условное графическое обозначение RS-триггера: S – вход установки триггера (Set); R – вход сброса триггера (Reset); Q – основной выход; Ǭ – инверсный выход.

 

RS-триггер может находиться в двух устойчивых состояниях. Во включенном состоянии выход Q активен, выход Ǭ неактивен. В выключенном (сброшенном) состоянии выход Q неактивен, а выход Ǭ активен.

Рисунок 3 – Временная диаграмма работы RS-триггера

 

 

Таким образом, RS-триггер обладает памятью. Поэтому он используется как простейший элемент для хранения информации. Триггер может собран из элементарных полупроводниковых устройств – транзисторов. Из огромного числа триггеров собирается, например, микросхема статической памяти в ЭВМ. В связи с высокой скоростью работы статической памяти она используется при создании КЭШ-памяти.

 

Используя функциональные блоки логического "ИЛИ" (OR) собрать RS-триггер, согласно схеме:

 

Рисунок 4 – Логическая схема RS-триггера «2ИЛИ-НЕ»

 

Примечание: блок логического OR часто обозначают "1", блок логического AND обозначают "&".

 

Набор программы на языке CFC происходит путем выбора функциональных блоков (ФБ) из библиотеки, размещения их на рабочем поле и соединения соответствующих входов-выходов.

Для вставки нового ФБ следует выбрать иконку на панели инструментов, расположенной сверху. Автоматически создастся блок AND (логическое И). Установив курсор на его имени, можно переименовать его, например в OR, при этом он автоматически превратится в блок логического ИЛИ (OR). Можно также воспользоваться помощником выбора ФБ по библиотекам (щелчок на имени ФБ, затем клавиша F2).

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

 

Рисунок 5 – RS-триггер на языке CFC с применением блоков OR

 

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

 

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

 

Отладка программы проводится следующим образом. Установить режим эмуляции в CoDeSys (Online->Simulation mode). Запустить программу на выполнение (Online->Login, затем Online->Run). Наблюдать за работой программы. Ручное изменение значения переменных можно производить следующим образом:

- двойной щелчок на имени переменной в онлайн режиме;

- команда (Online->Force value или клавиша F7).

В онлайн режиме состояние переменных отображается цветом. Синий цвет: логическая переменная равна TRUE; черный цвет: логическая переменная равна FALSE.

 

Рисунок 6 – Реализация режима эмуляции

 

Проанализировать работу RS-триггера. Выйти из режима эмуляции, нажав Online->Logout.

Создать визуализацию работы RS-триггера в среде CoDeSys (см. пункт 2), которую при отчете лабораторной представить на проверку преподавателю.

 

Создание пользовательского функционального блока RS-триггера в CoDeSys

 

RS-триггер так же может быть собран на элементах логического "И". Создадим собственный функциональный блок "myRS", реализовав RS-триггер по схеме (c применением блоков AND):

Рисунок 7 – Схема реализации RS-триггера с применением блоков AND «2И-НЕ»

 

Для создания собственного функционального блока (ФБ) следует сделать щелчок правой кнопкой мыши на левой панели дерева проекта (POUs) и выбрать пункт Add object… из контекстного меню. Далее ввести имя нового ФБ: "myRS", указать тип объекта – Function Block и выбрать язык программирования – CFC. Нажать OK.

 

Рисунок 8 – Окно создания собственного функционального блока

 

Слева в дереве проекта появится новый ФБ с именем myRS и программа автоматически войдет в режим его редактирования. Этот блок может быть использован в других ФБ или программах. ФБ имеет входные (VAR_INPUT), выходные(VAR_OUTPUT) и внутренние (VAR) переменные, которые объявляются в верхнем поле редактора. После объявления переменных следует запрограммировать тело ФБ, то есть связь между входными и выходными переменными. Желательно, чтобы имена переменных в ФБ и в главной программе были различными. Регистр букв в CoDeSys не различается.

 

Рисунок 9 – Программа, описывающая функциональный блок myRS

 

После того как ФБ создан его можно использовать в главной программе проекта (POU).

Рисунок 10 – Функциональный блок RS-триггера в главной программе проекта

 

Для этого следует создать новый блок и внутри него изменить имя "AND" на имя своего ФБ, в данном случае "myRS". Над блоком следует указать имя конкретного экземпляра ФБ, например "RStrig1". Также в разделе объявления переменных следует объявить: RStrig1: myRS; Дополнительно следует объявить переменные, связанные с входами\выходами ФБ. Проанализировать работу RS-триггера, построенного на элементах "И".

Визуализация в CoDeSys

 

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

 

Порядок создания визуализации:

 

Перейти на вкладку Vizualizations на левой панели среды CoDeSys. На свободном поле нажать правой кнопкой мыши и из контекстного меню выбрать: Add Object…

 

Далее ввести имя нового объекта визуализации (например viz1):

 

 

Рисунок 11 – Добавление нового объекта

 

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

 

 

Рисунок 12 – Внешний вид палитры инструментов

 

Создадим визуализацию работы RS-триггера. Фрагмент программы показан в п. 1.1 методических указаний. Разместим на рабочем поле графические элементы, как показано на рисунке 13

 

Рисунок 13 – Визуализация RS-триггера

 

Используем для этого компоненты: Эллипс (Ellipse), Скругленный прямоугольник (Rounded rectangle), Button (Кнопка). Текст на кнопке, эллипсе или другом элементе вводится через меню компонента: двойное нажатие мышью на кнопке, пункт Text. Текст можно писать любой, в данном случае он соответствует именам переменных.

 

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

 

Привязка выполняется через меню компонента путем двойного нажатия мышью на компоненте. Далее в пункте меню Variables в поле Change color указывает имя переменной (можно использовать F2).

Рисунок 14 – Привязка Лампочек к логическим переменным Q и nQ

 

Тут же необходимо назначить цвета для активного (Alarm color) и неактивного (Color) состояния лампочки. Это делается в пункте меню Colors.

 

 

Рисунок 15 – Задание цветов для активного и неактивного состояний лампочки

 

Выполним привязку кнопок к управляющим переменным Set и Reset. Привязка также осуществляется через меню компонента "кнопка". В пункте Input в строке Tap Variable указывается имя переменной, на которую будет воздействовать кнопка. Управление логической переменной (например x0) в данном случае задается функцией Toggle variable. Это имитирует кнопку с фиксацией.

 

Рисунок 16 - Привязка кнопок к управляющим переменным Set и Reset.

 

Вопросы:

1) Что такое триггер?

2) Классификация триггеров?

3) Временная диаграмма RS-триггера.

4) Принцип работы RS-триггера.

5) Визуализация в CoDeSys.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...