Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

3023

.pdf
Скачиваний:
8
Добавлен:
15.11.2022
Размер:
2.9 Mб
Скачать

Рис. 5.8. S7-PLCSIM

С помощью значков, расположенных на панели инструментов симулятора S7-PLCSIM, можно добавлять для просмотра различные блоки и элементы контроллера:

I – дискретные входы;

Q – дискретные выходы; M – биты памяти;

T – таймер;

C – счетчик;

Variable – произвольная переменная; Stacks – стек логических операций; ACCUs – аккумуляторы и слово состояния; Block Regs – блок регистров.

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

но войти в меню Tools -> Options -> Attach Symbols, затем ука-

зать имя проекта, в проекте выйти на уровень S7 Program и выбрать значок с именем Symbols. После загрузки в симулятор таблицы символов все переменные отображаются своими именами.

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

60

Тестирование с помощью таблицы переменных

Пользуясь симулятором контроллера S7-PLCSIM, наблюдение за переменными и их модификация производятся посредством окон самого S7-PLCSIM. При работе с реальным контроллером этот механизм недоступен. Тем не менее, есть другой способ. В папке проекта Blocks создаются таблицы наблюдения за переменными (VAT), эти объекты не могут быть загружены в PLC, сохраняются только на диске.

В SIMATIC Manager выделите папку Blocks и выберите команду меню Insert > S7 Block > Variable Table. В диалоговом окне Вы можете дать таблице имя. Вы можете открыть таблицу переменных, дважды щелкнув на этом объекте.

Примерный вид такой таблицы (в проекте их может быть множество) представлен на рис. 5.9.

Рис. 5.9. Таблица наблюдения за переменными

При тестировании с помощью таблицы переменных доступны следующие функции:

Наблюдение текущих значений переменных.

Изменение переменных.

Принудительное присваивание фиксированных значений, которые не могут быть переписаны программой пользователя.

61

Перекрестные ссылки

Оценить задействованные в программе ресурсы (таймеры, счетчики, меркеры, входы, выходы, блоки и т.д.), определить места обращения к ним вам поможет утилита Reference Data (перектестные ссылки). Обращение к ним возможно из меню SIMATIC Manager (рис. 5.10), либо из редактора блоков.

Рис. 5.10. Обращение к перекрестным ссылкам Утилита Reference Data имеет 5 вкладок:

Cross-reference - обзор адресов в области памяти I, Q, M, P, T, C, блоков DB, FB, FC, SFB, SFC, используемых в программе пользователя (рис. 5.11). Позволяет найти в программе (блок, цепь) и каким образом (R - чтение, W - запись) использован конкретный операнд. Пользуясь фильтром укажите интересующие вас объекты. Проставьте галочки и номера байтов, слов, таймеров или блоков в зависимости от контекста. Символ

*(звёздочка) означает все. В приведенном примере из блоков данных выделен только DB7.

Assignment List - таблица используемых ячеек (план использования). Этот список дает обзорный план, из которого видно, какие биты и в каких байтах областей памяти I, Q, М, T, C использованы в вашей программе (рис. 5.12). В приведенном примере бит I124.0 опрашивается в программе (обозначено X), слово MW2 (обозначено W) и двойное слово MD4 (обозначено

62

D) задействованы, таймер T0 свободен, T10 – занят. Где имен-

но занят – см. Cross-reference.

Рис. 5.11. Cross-reference

• Program Structure – отображает структуру программы в виде дерева (рис. 5.13). Структура программы описывает иерархию вызовов блоков внутри программы и требуемый объем

63

локальных данных (байт в стеке). Неиспользуемые блоки (их вызов отсутствует) помечаются крестиком.

Рис. 5.12. Assignment List

Рис. 5.13. Program Structure

Unused Symbols– неиспользуемые в программе символы, присутствующие в таблице символов (рис. 5.14).

Addresses Without Symbols –используются в программе символы, но не описаны в таблице символов (рис. 5.15).

64

Рис. 5.14. Unused Symbols

Рис. 5.15. Addresses Without Symbols

Сравнение блоков

Одной из причин возникновения ошибок может быть различие между программами в исходном проекте (OFFLINE) и в CPU (ONLINE). Поэтому поиск логических ошибок (нарушения в логике работы программы) проще начинать со сравнения блоков. Перейдите в SIMATIC Manager, выделите папку

Blocks, далее пункт Compare Blocks... (рис. 5.16).

Если блоки различны, то необходимо выделить строку с номером блока и нажать на кнопку Go To.. (рис. 5.17).. Редактор блоков откроет блок в offline и online окнах и выделит сегмент, где имеется различие. Через закладку Comparison окна Details Вы можете просмотреть весь список различий.

Таким же образом производится сравнение блоков c дру-

гим проектом (Path1/Path2).

65

Рис. 5.16. Сравнение блоков ONLINE/OFFLINE

Рис. 5.17. Переход к результату сравнения блоков

66

6. ДВОИЧНЫЕ ОПЕРАТОРЫ ЯЗЫКА STEP 7

Математический аппарат «Алгебра логики»

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

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

•"истинно" (true), которому в уравнениях соответствует знак "1" - логическая единица

• "ложно" (false), которому в уравнениях соответствует знак "0" - логический ноль.

Использование символа нормально открытый контакт в LAD предполагает, что при внешнем воздействии (нажатие на кнопку) подается сигнал "1", а использование символа нормально замкнутый контакт предполагает, что при внешнем воздействии цепь разрывает-

ся и состояние сигнала - "0".

Для системы управления совершенно безразлично, поступает ли в действительности сигнал "1" от нормально открытого или нормально замкнутого контактов. Использование нормально открытого или нормально закрытого контактов для датчиков-сенсоров в автоматической системе зависит от требований безопасности. Нормально замкнутые контакты всегда используются для блокировок и выключателей безопасности, чтобы в случае обрыва проводов в цепи, соединяющей датчики, не возникли опасные условия. Нормально замкнутые контакты по той же причине используются для выключения оборудования.

67

Двоичные логические операции: И, ИЛИ

На рис. 6.1 в левой колонке представлен фрагмент электрической схемы, эквивалентом которой является программная реализация на языках LAD, FBD, STL. Кнопки S1 (I0.0), S2 (I0.1), S3 (I0.2), S4 (I0.4) подключены к дискретным входам

PLC. Лампочки L1 (Q8.0), L2 (Q8.1), L3 (Q8.2) подключены к дискретным выходам.

Рис. 6.1. Двоичные логические операции: И, ИЛИ

Функция логического умножения – "И" (коньюнкция) эквивалентна последовательному соединению контактов. Для того чтобы на выходах Q8.0 и Q8.1 появилась логическая единица (лампочки зажглись), необходимо, чтобы обе кнопки бы-

ли нажаты (и I0.0=1 и I0.1=1).

Функция логического сложения - "ИЛИ" (дизъюнкция) эквивалентна параллельному соединению контактов. Для того чтобы на выходе Q8.2 появилась логическая единица достаточно нажать одну из кнопок (I0.2=1 или I0.3=1).

68

Функция "Исключающее ИЛИ"

Логическая функция исключающего ИЛИ (альтернатива) в представлениях FBD и STL может быть использована как одна команда, для LAD – как совокупность команд (рис. 6.2).

Рис. 6.2. Функция "Исключающее ИЛИ"

Для логических операций исключающего ИЛИ (альтернатива) действует следующее правило: выход имеет сигнальное состояние "1", когда один и только один из двух операндов имеет состояние "1" ("один и только один из двух").

Функция логического отрицания – "НЕ" (инверсия)

инвертирует RLO. В терминах алгебры логики описывается как "высказывание Y является истинным, когда исходное высказывание Х ложно и наоборот". Y есть не Х, или функция есть и н- версия аргумента.

Сочетание операторов эквива-

лентно одной команде .

69

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]