WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

   Добро пожаловать!


Pages:     | 1 | 2 || 4 | 5 |   ...   | 6 |

• A( И с открытием скобки • AN( И – НЕ с открытием скобки • O( ИЛИ с открытием скобки • ON( ИЛИ - НЕ с открытием скобки • X( ИСКЛЮЧАЮЩЕЕ ИЛИ с открытием скобки • XN( ИСКЛЮЧАЮЩЕЕ ИЛИ- НЕ с открытием скобки • ) Закрытие скобки Вы можете закончить битовое логическое выражение с помощью одной из следующих инструкций:

• = Присвоение • R Сброс • S Установка Для изменения результата логической операции Вы можете использовать следующие:

• NOT Инверсия RLO • SET Установка RLO в • CLR Сброс RLO в • SAVE Сохранение RLO в BR регистре Другие инструкции реагируют на появление нарастающего или падающего фронта RЛО:

• FN Выделение падающего фронта RLО • FP Выделение нарастающего фронта RLО Пример применения основных битовых инструкций представлен на рисунке A: Логическое И AN: Логическое И – НЕ O: Логическое ИЛИ O: Логическое ИЛИ ON: Логическое ИЛИ-НЕ X: Исключающее ИЛИ A(: И с открывающей скобкой = Присвоение Рисунок 8 - Пример применения основных битовых инструкций 3.2 Обзор инструкций сравнения Аккумуляторы 1 (ACCU1) и 2 (ACCU2) сравниваются в соответствии с выбранным Вами типом сравнения :

== ACCU1 равен ACCU<> ACCU1 не равен ACCU> ACCU1 больше ACCU< ACCU1 меньше ACCU>= ACCU1 больше или равен ACCU<= ACCU1 меньше или равен ACCUЕсли условие сравнения выполняется, то RLO получает значение "1". Биты слова состояния СС1 и СС0 изменяются в соответствии с выполняемыми инструкциями сравнения на “меньше”, ”равно” или ”больше”.

Вы можете использовать следующие типы сравнения:

• I : Сравнение чисел типа Integer (16-битовых), • D : Сравнение чисел типа Double Integer (32-битовых), • R : Сравнение чисел с плавающей точкой (32-битовых).

3.3 Обзор операций со счетчиками Счетчики являются функциональным элементом языка программирования STEPфункций счета. Счетчики имеют область, зарезервированную для них в памяти CPU. Эта область памяти резервирует по одному 16-битному слову для каждого адреса счетчика.

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

• FR Деблокировка счетчика • L Загрузка текущего значения счетчика в ACCU • LC Загрузка текущего значения счетчика в BCD-коде в ACCU 1(с плавающей запятой) • R Сброс счетчика • S Установка счетчика на заданное значение • CU Прямой счет • CD Обратный счет 3.4 Обзор инструкций перехода Вы можете использовать инструкции перехода для управления ходом выполнения программы, позволяя ей прерывать последовательную процедуру выполнения и возобновить обработку с другого места. Вы можете использовать инструкцию циклического выполнения LOOP для обработки участка программы несколько раз подряд.

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

• JU Безусловный переход • JL Распределенный переход Вы можете использовать следующие инструкции условного перехода в зависимости от результата логической операции (RLO) предыдущей логической инструкции:

• JC Переход при RLO = • JCN Переход при RLO = • JCB Переход при RLO = 1 с сохранением в BR • JNB Переход при RLO = 0 с сохранением в BR Следующие инструкции выполняют условный переход в зависимости от результатов вычислений:

• JZ Переход при нулевом результате • JN Переход при ненулевом результате • JP Переход при положительном результате • JM Переход при отрицательном результате • JPZ Переход при неотрицательном результате • JMZ Переход при отрицательном или нулевом результате • JUO Переход при недействительном результате 3.5 Обзор инструкций загрузки и передачи Инструкции загрузки (L) и передачи (Т) позволяют программировать обмен информацией между различными областями памяти или между областями памяти и периферийными модулями ввода - вывода. CPU выполняет эти инструкции в каждом цикле как безусловные команды, т.е. результат логической операции на них не влияет.

Следующие инструкции загрузки и передачи могут использоваться:

• L Загрузка • L STW Загрузка битов слова состояния в ACCU • LAR1 AR2 Загрузка в адресный регистр1 (AR1) значения из AR• LAR1 Загрузка в адресный регистр 1 константы (32 -битовый указатель) • LAR1 Загрузка в адресный регистр 1 значения из ACCU • LAR2 Загрузка в адресный регистр константы (32 -битовый указатель) • LAR2 Загрузка в адресный регистр 2 значения из ACCU • T Передача • T STW Передача ACCU 1 в слово состояния • TAR1 AR2 Передача адресного регистра 1 в адресный регистр • TAR1 Передача адресного регистра 1 в целевую область (32-битовый указатель) • TAR2 Передача адресного регистра 2 в целевую область (32-битовый указатель) • TAR1 Передача адресного регистра 1 в ACCU • TAR2 Передача адресного регистра 1 в ACCU • CAR Обмен содержимым адресных регистров 1 и Рисунок 9 – Пример применения инструкций загрузки 3.6 Обзор математических инструкций с целыми числами Математические инструкции производят обработку содержимого аккумуляторов и 2. Старое содержимое аккумулятора 1 при выполнении инструкции загрузки сдвигается в аккумулятор 2. При выполнении инструкции, результат сохраняется в аккумуляторе 1, содержимое аккумулятора 2 остается неизменным. В CPU с четырьмя аккумуляторами после выполнения математической инструкции, содержимое аккумулятора 3 копируется в аккумулятор 2, а содержимое аккумулятора 4 в аккумулятор 3. Старое содержимое аккумулятора 4 не меняется. С помощью математических инструкций, Вы можете выполнять следующие операции с двумя целыми числами (16 и 32 бита):



• +I Сложение ACCU 1 и ACCU 2 в формате Integer (16-бит) • -I Вычитание ACCU 1 из ACCU 2 в формате Integer (16-бит) • *I Умножение ACCU 1 на ACCU 2 в формате Integer (16-бит) • /I Деление ACCU 2 на ACCU 1 в формате Integer (16-бит) • + Сложение констант типа Integer (16, 32 Бит) • +D Сложение ACCU 1 и ACCU 2 в формате Double Integer (32-бит) • -D Вычитание ACCU 1 из ACCU 2 в формате Double Integer (32-бит) • *D Умножение ACCU 1 и ACCU 2 в формате Double Integer (32-бит) • /D Деление ACCU 2 на ACCU 1 в формате Double Integer (32-бит) • MOD Получение остатка от деления в формате Double Integer (32-бит) Смотрите также оценку битов слова состояния при выполнении математических инструкций над целыми числами.

Рисунок 10 - Пример применения математических инструкций 3.7 Обзор математических инструкций над числами с плавающей точкой Математические инструкции производят обработку содержимого аккумуляторов и 2. Старое содержимое аккумулятора 1 при инструкции загрузки сдвигается в аккумулятор 2. При выполнении инструкции, результат сохраняется в аккумуляторе 1, содержимое аккумулятора 2 остается неизменным.

В CPU с четырьмя аккумуляторами после выполнения математической инструкции, содержимое аккумулятора 3 копируется в аккумулятор 2, а содержимое аккумулятора 4 в аккумулятор 3. Старое содержимое аккумулятора 4 не меняется. IEEE 32-битовые числа с плавающей точкой соответствуют типу данных REAL. Вы можете использовать следующие инструкции с плавающей точкой для обработки двух 32битовых IEEE чисел с плавающей точкой:

• +R Сложение ACCU 1 и ACCU • -R Вычитание ACCU 1 из ACCU • *R Умножение ACCU 1 и ACCU • /R Деление ACCU 2 на ACCU Вы можете использовать следующие инструкции с плавающей точкой для обработки одного 32-битового IEEE числа с плавающей точкой:

• ABS Модуль числа • SQR Вычисление квадрата • SQRT Вычисление квадратного корня • EXP Вычисление экспоненты • LN Вычисление натурального логарифма • SВ Вычисление синуса угла • COS Вычисление косинуса угла • TAN Вычисление тангенса угла • ASВ Вычисление арксинуса • ACOS Вычисление арккосинуса • ATAN Вычисление арктангенса 3.8 Обзор инструкций сдвига С помощью инструкций сдвига Вы можете побитно сдвигать содержимое младшего слова аккумулятора или весь аккумулятор (см. Регистры CPU) влево или вправо. Сдвиг на n битов влево умножает содержимое аккумулятора на 2n; сдвиг на n битов вправо делит содержимое аккумулятора на 2n. Например, если Вы сдвигаете значение 3 в двоичном коде на 3 бита влево, то получается десятичное значение 24. Если Вы сдвигаете десятичное значение 16 на 2 бита вправо, то в аккумуляторе получается двоичный эквивалент десятичного значения 4. Число, задаваемое в виде параметра инструкции сдвига или, при его отсутствии, содержимое младшего байта аккумулятора 2, показывает, на сколько битов должен производиться сдвиг. Разряды, освобождающиеся вследствие операции сдвига, заполняются нулями или состоянием знакового бита (”0” в случае положительного числа, ”1” в случае отрицательного числа). Бит, сдвигаемый последним, загружается в бит СС1 слова состояния. Биты CC0 и OV сбрасываются в “0”.

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

• SSI Сдвиг вправо целого числа со знаком • SSD Сдвиг вправо двойного целого числа со знаком • SLW Сдвиг слова влево • SRW Сдвиг слова вправо • SLD Сдвиг двойного слова влево • SRD Сдвиг двойного слова вправо Рисунок 11 - Пример применения инструкций сдвига 3.9 Обзор инструкций с таймерами Возможны следующие инструкции с таймерами:

• FR Деблокировка таймера • L Загрузка текущего значения таймера в ACCU 1 в формате Integer • LC Загрузка текущего значения таймера в ACCU 1 в BCD - коде • R Сброс таймера • SD Таймер задержки включения • SE Удлиненный импульс • SF Таймер задержки выключения • SP Импульс • SS Таймер задержки включения с памятью В таблице 4 представлены основные типы таймеров, используемых в программах на языке STEP 7.

Таблица 4 - Основные типы таймеров и алгоритм их работы Рисунок 12 - Временные диаграммы работы таймеров Рисунок 13 - Пример программы с использованием таймеров 3.10 Обзор инструкций с аккумуляторами и адресными регистрами В Вашем распоряжении имеются следующие инструкции для обработки содержимого одного или обоих аккумуляторов:

• TAK Обмен содержимым аккумуляторов ACCU 1 и ACCU • PUSH Для CPU с двумя аккумуляторами • PUSH Для CPU с четырьмя аккумуляторами • POP Для CPU с двумя аккумуляторами • POP Для CPU с четырьмя аккумуляторами • ENT Ввод в стек аккумуляторов • LEAVE Вывод в стек аккумуляторов • INC Инкремент ACCU 1-L-L • DEC Декремент ACCU 1-L-L • +AR1 Сложение ACCU 1 с адресным регистром AR • +AR2 Сложение ACCU 1 с адресным регистром AR • BLD Инструкция отображения программы • NOP 0 Нулевая инструкция • NOP 1 Нулевая инструкция 3.11 Примеры использования инструкций языка STEP 7 для составления программ.

Пример 1: Управление лентой транспортера На рисунке 14 показана лента транспортера, которая может приводиться в движение с помощью электродвигателя. В начале транспортера имеются две кнопки: Sдля запуска и S2 для останова. В конце транспортера тоже имеются две кнопки: S3 для запуска и S4 для останова. Транспортер можно запускать или останавливать с любого конца. Также датчик S5 останавливает транспортер, когда предмет, находящийся на ленте, достигает конца.





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

Таблица 5 - Таблица адресации Рисунок 15- Список инструкций для управления конвейером Рисунок 16 - Варианты программы управления Пример2: Математические инструкции с целыми числами Следующий пример программы показывает, как использовать арифметические операции с целыми числами и команды L и T для вычисления результата следующего уравнения:

MD4 = ((IW0 + DB5.W3) x 15) / MWРисунок 17 - Список инструкций программы STEP7 - ИНСТРУМЕНТАЛЬНЫЙ ПРОГРАММНЫЙ КОМПЛЕКС ДЛЯ РАЗРАБОТКИ, ТЕСТИРОВАНИЯ И ДОКУМЕНТИРОВАНИЯ ПРОГРАММ Основными утилитами пакета STEP 7, которые доступны из папки SIMATIC - STEP 7, являются:

SIMATIC Manager;

LAD, STL, FDB – Programming S7;

Memory Card Parameter Assignment;

NetPro – Configuring Networks;

PID Control Parameter Assignment;

S7 SCL – Programming S7 Blocks;

S7-GRAPH – Programming Sequential Control System;

S7-PDIAG – Configuring Process Diagnostic;

S7-PLCSIM Simulating Modules;

Setting the PG-PC Interface;

Configure SIMATIC Workspace.

Основной программой STEP 7 является SIMATIC Manager, который позволяет производить основные операции с проектом, такие как создание, сохранение, открытие, а также управлять работой проекта, запускать различные утилиты, связывать их между собой и т.д.

Программа LAD, STL, FDB – Programming S7 Blocks – редактор, позволяющий программировать блоки, основываясь на одном из трех представлений языка программирования. Язык LAD – Ladder Diagram (контактный план) – использует представление программы в виде коммутационной схемы, состоящей из переключателей, линий связи, ключей и т.п. STL – Statement List (список операторов) – язык, подобный ассемблеру. FDB – Function Block Diagram – функциональная схема, основанная на логических элементах, триггерах и т.п.

Утилита Memory Card Parameter Assignment позволяет сохранять пользовательскую программу в память EPROM (электрически программируемая постоянная память), используя программатор или, в случае персональной ЭВМ, на внешнее устройство.

Программа NetPro – Configuring Networks позволяет конфигурировать промышленные сети, такие как MPI, PROFIBUS или Industrial Ethernet.

Утилита PID Control Parameter Assignment позволяет автоматизировать процедуру расчета и настройки параметров ПИД-регуляторов, используемых в системах управления.

С базовым пакетом обычно поставляются специальные утилиты, позволяющие проводить создание программ различными способами, такими как: написание программ на языке программирования высокого уровня SCL, который похож на паскаль, с помощью программы S7 SCL; графическая разработка программ в виде последовательности шагов и переходов между ними посредством утилиты S7-GRAPH. Могут также поставляться дополнительные пакеты.

S7-PDIAG – Configuring Process Diagnostic – это программа, используемая для диагностики проектов.

Утилита S7-PLCSIM Simulating Modules предназначена для программной имитации работы контроллера, что позволяет разрабатывать проекты и проверять и отлаживать работу программ без подключения реального оборудования.

Программа Setting the PG-PC Interface применяется для установки параметров локальных станций, подключенных к многоточечному интерфейсу MPI.

Configure SIMATIC Workspace позволяет конфигурировать проекты, создаваемые с использованием нескольких терминалов.

5.1 ЭЛЕМЕНТЫ ПРОЕКТА В SIMATIC MANAGER SIMATIC Manager – это графический интерфейс для редактирования объектов S(проектов, файлов пользовательских программ, блоков, оборудования станций и инструментов). Основное окно утилиты показано на рисунке 16.

Основными элементами панели главного меню программы SIMATIC Manager являются разделы File, PLC, View, Options, Window и Help, содержание которых зависит от текущего окна.

На панели инструментов вынесены наиболее часто используемые кнопки.

Вначале рассмотрим структуру проекта в SIMATIC Manager, которая показа на рисунке 17.

Данные хранятся в проекте в виде объектов. Объекты в проекте размещаются в древовидной структуре, которая показана в левой части рисунке 17. Она подобна структуре, используемой в Windows Explorer. Различаются только иконки объектов.

Содержимое правой части окна SIMATIC Manager зависит от выбранного в левой части объекта.

На самом верхнем уровне, который (см. рисунке 17) называется S7_Pro1, расположен сам проект. Каждый проект представляет базу, в которой хранятся все относящиеся к нему данные. Элементами проекта являются сети и их элементы – станции и другие узлы. В данном примере проект S7_Pro1 содержит многоточечный интерфейс MPI(1), к которому подключена одна станция SIMATIC 300 Station.

Pages:     | 1 | 2 || 4 | 5 |   ...   | 6 |










© 2011 www.dissers.ru - «Бесплатная электронная библиотека»

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