06_InstructionSet_r (1087186), страница 2
Текст из файла (страница 2)
У команды "Положительный фронт" при обнаружении перехода значения ввершине стека с 0 на 1 значение в вершине стека устанавливается в 1; в противном случаеоно устанавливается в 0. У команды "Отрицательный фронт" при обнаружении переходазначения в вершине стека с 1 на 0 значение в вершине стека устанавливается в 1; впротивном случае оно устанавливается в 0.При редактировании программы в режиме RUN необходимо ввести параметр для командобнаружения положительного и отрицательного фронта.
Подробную информацию оредактировании в режиме RUN вы найдете в главе 5.Таблица 6–3. Допустимые операнды для битовых логических операцийВходы/выходыТип данныхОперандыБитBOOLI, Q, V, M, SM, S, T, C, L, поток сигналаБит (непосредственноуправляемый)BOOLIКак показано на рис. 6–2, S7–200 использует логический стек для решения задач логикиуправления. В этих примерах «iv0» − «iv7» обозначают начальные значения логическогостека, «nv» обозначает новое значение, поставляемое командой, а «S0» обозначаетрассчитанное значение, сохраняемое в логическом стеке.Загрузитьзначение бита(LD, LDI, LDN,LDNI)Загружает новоезначение (nv) встек.ДоПослеiv0nviv1iv0iv2iv1iv3iv2iv4iv3iv5iv4iv6iv5iv7iv6iv8122iv7Выполнить Исопряжениебитовыхзначений (A, AI,AN, ANI)Сопрягаетновое значение(nv) с исходнымзначением (iv) ввершине стека сиспользованиемлогического И.S0 = iv0 И nv.ДоПослеiv0S0iv1iv1iv2iv2iv3iv3iv4iv4iv5iv5iv6iv6iv7iv7iv8iv81Выполнить ИЛИсопряжениебитовых значений(O, OI, ON, ONI).Сопрягает новоезначение (nv) сисходнымзначением (iv) ввершине стека сиспользованиемлогического ИЛИ.S0=iv0 ИЛИ nvДоПослеiv0S0iv1iv1iv2iv2iv3iv3iv4iv4iv5iv5iv6iv6iv7iv7iv8iv81S0 обозначает рассчитанное значение, сохраняемое в логическом стеке.После выполнения операции загрузки значение iv8 теряется.Рис.
6–2. Принцип действия контактов.СоветТак как команды обнаружения положительного и отрицательного фронта требуютпереключения, соответственно, с 0 на 1 или с 1 на 0, то нет возможности обнаружитьнарастающий или падающий фронт в первом цикле. В первом цикле состояниеуказанного в этих командах бита устанавливает S7–200. В следующих циклах этикоманды сами могут распознать фронты для указанного бита.73Программируемый контроллер S7-200. Системное руководствоПример: КонтактыNetwork 1//Нормально открытые контакты I0.0 И I0.1 должны//быть замкнуты, чтобы активизировать Q0.0.//Команда NOT действует как инвертор. В режиме//RUN Q0.0 и Q0.1 имеют противоположные//логические состояния.I0.0I0.1Q0.0LDA=NOT=Q0.1Network 2 //Чтобы активизировать Q0.2, должен быть включен//нормально открытый контакт I0.2 или выключен//нормально замкнутый контакт I0.3.
Чтобы//активизировать выход, одна или более//параллельных ветвей цепной логической схемы//(LAD) (входов ИЛИ) должна принимать значение//"Истина".LDI0.2ONI0.3=Q0.2Network 3 //Положительный фронт на контакте P или//отрицательный фронт на контакте N приводят к//появлению импульса длительностью в 1 цикл. В// режиме RUN изменения импульсного состояния//Q0.4 и Q0.5 происходят слишком быстро, чтобы их//можно было увидеть в режиме просмотра статуса//программы. Выходы установки (S) и сброса (R)//сохраняют импульс в Q0.3 и делают изменение//состояния видимым в режиме просмотра статуса//программы.LDI0.4LPSEUSQ0.3, 1=Q0.4LPPEDRQ0.3, 1=Q0.5Временная диаграммаСегментВключено в течение 1 цикла74Набор команд S7–200Глава 6КатушкиПрисваиваниеКоманда присваивания (=) записывает новое значениедля выходного бита в регистр образа процесса.
Привыполнении команды присваивания S7–200устанавливает или сбрасывает выходной бит в регистреобраза процесса. В LAD и FBD указанный битустанавливается равным потоку сигнала. В STLзначение, находящееся в вершине стека, копируется вуказанный бит.Непосредственное присваивание битовогозначенияКоманда непосредственного присваивания битовогозначения (=I) при своем выполнении записывает новоезначение как в физический выход, так и в образпроцесса.Когда выполняется команда непосредственногоприсваивания битового значения, физический выход(бит) немедленно устанавливается в соответствии ссостоянием потока сигнала. В STL команданепосредственного присваивания битового значениянепосредственно копирует значение, находящееся ввершине стека, в указанный физический выход.
Символ“I” означает непосредственный доступ; при исполнениикоманды новое значение записывается в физическийвыход и в соответствующую ячейку регистра образапроцесса. Здесь имеется отличие от других видовдоступа, которые записывают новое значение только врегистр образа процесса.Установка и сбросКоманды установки (S) и сброса (R) устанавливают(включают) или сбрасывают (выключают) указанноеколичество входов или выходов (N), начиная суказанного адреса (бита). Вы можете установить илисбросить от 1 до 255 входов и выходов.Если команда сброса указывает на бит таймера (T) или счетчика (C), то командасбрасывает бит таймера или счетчика и стирает текущее значение таймера или счетчика.Сбойные состояния, устанавливающие ENO = 0■ 0006 (косвенный адрес)■ 0091 (операнд вышел за пределы допустимого диапазона)Непосредственная установка и непосредственный сбросКоманды непосредственной установки и непосредственного сброса непосредственноустанавливают (включают) или непосредственно сбрасывают (выключают) указанноеколичество входов или выходов (N), начиная с указанного адреса (бита).
Вы можетенепосредственно и немедленно установить или сбросить от 1 до 128 входов и выходов.Символ “I” означает непосредственный доступ; при исполнении команды новое значениезаписывается в физический выход и в соответствующую ячейку регистра образапроцесса. Здесь имеется отличие от других видов доступа, которые записывают новоезначение только в регистр образа процесса.Сбойные состояния, устанавливающие ENO = 0■ 0006 (косвенный адрес)■ 0091 (операнд вышел за пределы допустимого диапазона)Таблица 6–4.
Допустимые операнды для битовых логических операцийВходы/выходыТип данныхБитBOOLОперандыI, Q, V, M, SM, S, T, C, LБит (непосредственноуправляемый)BOOLQNBYTEIB, QB, VB, MB, SMB, SB, LB, AC, *VD, *LD, *AC, константа75Программируемый контроллер S7-200. Системное руководствоПример: КатушкиNetwork 1//Команды присваивания присваивают битовые значения//внешним входам и выхода (I, Q) и внутренней памяти//(M, SM, T, C, V, S, L).LDI0.0=Q0.0=Q0.1=V0.0Network 2 //Установка в 1 группы из 6 последовательных битов.//Указание адреса начального бита и количества битов,//подлежащих установке.//Индикатор состояния программы для команды установки//(S) включен, когда значение первого бита (Q0.2) равно 1.LDI0.1SQ0.2, 6Network 3 //Сброс в 0 группы из 6 последовательных битов.//Указание адреса начального бита и количества битов,//подлежащих сбросу.//Индикатор состояния программы для команды сброса (R)//включен, когда значение первого бита (Q0.2) равно 0.LDI0.2RQ0.2, 6Network 4 //Установка и сброс группы из 8 выходных битов//(Q1.0 − Q1.7).LDI0.3LPSAI0.4SQ1.0, 8LPPAI0.5RQ1.0, 8Network 5 //Команды установки и сброса выполняют функцию реле с//блокировкой.//Обеспечьте, чтобы биты установки и сброса не были//переписаны другой командой присваивания.
В этом//примере сегмент (Network) 4 устанавливает и сбрасывает//8 выходных битов (Q1.0 − Q1.7) группой.//В режиме RUN сегмент 5 может заменять значение бита//Q1.0 и управлять индикаторами состояния программы для//установки и сброса в сегменте 4.LDI0.6=Q1.0Временная диаграммаСегмент 1Сегменты 2 и 3Set – установкаReset - СбросСброс в 0 перезаписывает установку в 1, таккак программа выполняет сегмент 3,выполняющий сброс, после сегмента 2,выполняющего установку.Сегменты 4 и 5Команда присваивания (=) в сегменте 5 перезаписывает первый бит (Q1.0), устанавливаемый исбрасываемый в сегменте 4, так как программа выполняет сегмент 5 последним.76Набор команд S7–200Глава 6Стековые операцииЛогическое сопряжение 1-го и 2-го уровня по ИКоманда логического сопряжения первого и второгоуровня стека по И (ALD) логически сопрягает значения впервом и втором уровне стека, используя логическуюоперацию И.
Результат загружается в вершину стека.После выполнения ALD глубина стека уменьшается наединицу.Логическое сопряжение 1-го и 2-го уровня поИЛИКоманда логического сопряжения первого и второгоуровня стека по ИЛИ (OLD) логически сопрягаетзначения в первом и втором уровне стека, используялогическую операцию И. Результат загружается ввершину стека.
После выполнения OLD глубина стекауменьшается на единицу.Дублирование вершины логического стекаКоманда дублирования вершины логического стека (LPS) дублирует значение вершиныстека и помещает это значение в стек. Дно стека выталкивается и теряется.Копирование второго уровня стекаКоманда копирования второго уровня стека (LRD) копирует второй уровень стека в еговершину.