RS-триггер(или SR-триггер) — триггер, который сохраняет своё предыдущее состояние при нулевых входах и меняет своё выходное состояние при подаче на один из его входов единицы. Подача единицы на вход S – устанавливает выход Q в единицу (TRUE). Подача единицы на вход R – сбрасывает выход Q в ноль (FALSE). Одновременная подача единицы на оба входа запрещена.
Обозначение RS-триггера:
На рисунке:
S – вход установки триггера (Set);
R – вход сброса триггера (Reset);
Q – основной выход;
Ǭ – инверсный выход.
RS-триггер может находиться в двух устойчивых состояниях. Во включенном состоянии выход Q активен, выход Ǭ неактивен. В выключенном (сброшенном) состоянии выход Q неактивен, а выход Ǭ активен.
Временная диаграмма RS-триггера:
Таким образом RS-триггер обладает памятью. Поэтому он используется как простейший элемент для хранения информации. Триггер может собран из элементарных полупроводниковых устройств – транзисторов. Из огромного числа триггеров собирается, например, микросхема статической памяти в ЭВМ. В связи с высокой скоростью работы статической памяти она используется при создании КЭШ-памяти.
Используя функциональные блоки логического "ИЛИ" (OR) собрать RS-триггер, согласно схеме:
Примечание: блок логического OR часто обозначают "1", блок логического AND обозначают "&".
Набор программы на языке CFC происходит путем выбора функциональных блоков (ФБ) из библиотеки, размещения их на рабочем поле и соединения соответствующих входов-выходов.
Для вставки нового ФБ следует выбрать иконку на панели инструментов, расположенной сверху. Автоматически создастся блок AND (логическое И). Установив курсор на его имени, можно переименовать его, например в OR, при этом он автоматически превратится в блок логического ИЛИ (OR). Можно также воспользоваться помощником выбора ФБ по библиотекам (щелчок на имени ФБ, затем клавиша F2).
Инвертирование входа\выхода осуществляется значком . Соединение входов и выходов происходит прямым перетаскиванием мышью. Необходимо помнить, что соединяться могут только выход с входом.
Триггер на языке CFC будет выглядеть примерно так:
Следует не забывать объявлять используемые в программе переменные. В данной работе применяется булевский тип данных BOOL. Примечание: не рекомендуется называть переменные одной буквой, так как в CoDeSys есть служебные символы. Они выделяются синим цветом.
Отладка программы проводится следующим образом. Установить режим эмуляции в CoDeSys (Online->Simulation mode). Запустить программу на выполнение (Online->Login, затем Online->Run). Наблюдать за работой программы. Ручное изменение значения переменных можно производить следующим образом:
- двойной щелчок на имени переменной в онлайн режиме;
- команда (Online->Force value или клавиша F7).
В онлайн режиме состояние переменных отображается цветом. Синий цвет: логическая переменная равна TRUE; черный цвет: логическая переменная равна FALSE.
Пример:
Проанализировать работу RS-триггера. Выйти из режима эмуляции, нажав Online->Logout.
Создать визуализацию работы RS-триггера в среде CoDeSys (см. пункт 2 в конце методических указаний), которую при отчете лабораторной представить на проверку преподавателю.