Рис. 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