Академический Документы
Профессиональный Документы
Культура Документы
Российской Федерации
Государственное образовательное учреждение
высшего профессионального образования
"Ивановский государственный энергетический университет
имени В.И. Ленина"
Кафедра "Автоматизация технологических процессов"
МИКРОПРОЦЕССОРНЫЙ КОНТРОЛЛЕР
SIEMENS S7-200
Методические указания
к выполнению лабораторных работ по дисциплине
"Основы микропроцессорной техники"
Иваново 2010
Составитель В.М. Пушков
Редактор А.М. Демин
Рецензент
кафедра "Автоматизация технологических процессов"
ГОУВПО "Ивановский государственный энергетический
университет имени В.И. Ленина"
1. ТЕХНИЧЕСКОЕ И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ
МИКРОКОНТРОЛЛЕРОВ S7-200
Серия S7-200 – это ряд микропрограммируемых логических
контроллеров (микроконтроллеров), которые могут управлять раз-
нообразными прикладными системами автоматизации. Компактная
конструкция, расширяемость, низкая стоимость и мощная система
команд микроконтроллеров S7-200 создают идеальное решение
для управления малыми технологическими объектами. Кроме того,
большое разнообразие типов CPU обеспечивает необходимую
гибкость при решении задач автоматизации.
1.1. Сравнение технических характеристик
микроконтроллеров S7-200
На рис. 1.1 показана основная система с микроконтроллером
S7-200, которая включает CPU S7-200, персональный компьютер с
установленной программой STEP 7-Micro/WIN 32 и кабель связи.
Для использования персонального компьютера (PC) необходимо
иметь одно из следующих устройств:
кабель PC/PPI;
коммуникационный процессор (CP) и кабель с многоточеч-
ным интерфейсом (MPI);
плату многоточечного интерфейса (MPI).
Компьютер
CPU S7-200
STEP 7-Micro/WIN 32
Кабель PC/PPI
STL
NETWORK
LD I0.0
LD I0.1
LD I2.0
S0 S1 S2
A I2.1
OLD
ALD
= Q5.0
Рис. 1.2. Пример программы в форме списка команд
Эта основанная на тексте концепция очень похожа на програм-
мирование на языке ассемблера. CPU выполняет команды в по-
рядке, предписанном программой, сверху донизу и затем опять
начинает сверху.
Редактор контактного плана (Ladder Logic)
Редактор контактного плана (LAD) позволяет формировать про-
граммы, имеющие сходство с электрической монтажной схемой.
Вероятно, программирование в контактном плане является мето-
дом, который выбирают многие программисты ПЛК и обслуживаю-
щий персонал. По существу, программы в контактном плане по-
зволяют CPU эмулировать протекание электрического тока от ис-
точника питания через ряд логических состояний входов, которые,
в свою очередь, разблокируют логические состояния выходов. Ло-
гика обычно подразделяется на малые, легко понимаемые, сег-
менты, которые в англоязычной литературе часто называются
rungs, т.е. ступеньки (в соответствии с английским названием кон-
тактного плана – Ladder Logic, что буквально означает "лестничная
логика"), или networks – цепи. Программа выполняется по "цепям"
слева направо и затем сверху вниз, как предписано программой. Как
только CPU достигает конца программы, он начинает снова с вер-
шины программы.
На рис. 1.3 показан пример программы, составленной в редак-
торе контактного плана.
NETWORK 1
Q5.0
I0.0 I0.1
I2.0 I2.1
NETWORK 2
MOV_B SWAP
I2.1
EN ENO EN ENO
VB50 IN OUT IN
AC0 AC0
V B 100
MSB LSB Адрес байта
7 0 Доступ в формате байта
VB100 VB100
Идентификатор области
(V-память)
Младший байт V W100
Старший байт
MSB LSB Адрес байта
15 8 7 0 Доступ в формате слова
VW100 VB100 VB101 Идентификатор области
(V-память)
Старший байт Младший байт
MSB LSB
31 24 23 16 15 87 0
VD100 VB100 VB101 VB102 VB103
V D 100
Адрес байта
Доступ в формате
MSB = старший бит двойного слова
LSB = младший бит Идентификатор области
(V-память)
F бит
B =
D
Триггеры
бит Триггеры с приоритетом установки (SR) и приорите-
S1 OUT том сброса (RS) обеспечивают двухстабильное со-
SR стояние выходного бита в соответствии с приве-
R денными ниже таблицами истинности:
бит SR RS
S OUT S1 R bit S R1 bit
RS 0 0 Q-1 0 0 Q-1
R1 1 0 1 1 0 1
0 1 0 0 1 0
1 1 1 1 1 0
Q-1 – предыдущее состояние
2.2. Команды сравнения (Compare)
В табл. 2.2 представлен состав, графическое изображение
и краткое описание команд сравнения.
Таблица 2.2. Команды сравнения
Сравнение байтов
N1 Команда Сравнить байты используется
L для сравнения двух величин: IN1 и IN2.
A ==B Возможны следующие сравнения: IN1 = IN2,
D N1 IN1 >= IN2, IN1 <= IN2, IN1 > IN2, IN1 < IN2 и
IN1 <> IN2.
Байты сравниваются без знака.
F ==B В LAD контакт включен, когда сравнение
B истинно.
D В FBD выход включен, когда сравнение
истинно
Сравнение целых чисел
N1 Команда Сравнить целые числа использу-
L ется для сравнения двух величин: IN1 и IN2.
==I
A Возможны следующие сравнения: IN1 = IN2,
D N1 IN1>= IN2, IN1 <= IN2, IN1 > IN2, IN1 < IN2
и IN1 <> IN2.
Целые числа сравниваются с учетом знака
==I (16#7FFF > 16#8000).
F
В LAD контакт включен, когда сравнение
B
истинно.
D
В FBD выход включен, когда сравнение ис-
тинно
Сравнение двойных слов
N1 Команда Сравнить двойные слова ис-
L
пользуется для сравнения двух величин:
A ==D
IN1 и IN2. Возможны следующие сравне-
D N1 ния: IN1 = IN2, IN1 >= IN2, IN1 <= IN2,
IN1 > IN2, IN1 < IN2 и IN1 <> IN2.
==D
Двойные слова сравниваются с учетом
F знака (16#7FFFFFFF > 16#80000000).
B В LAD контакт включен, когда сравнение
D истинно.
В FBD выход включен, когда сравнение
истинно
Окончание табл. 2.2
Сравнение вещественных чисел
N1 Команда Сравнить вещественные числа
L используется для сравнения двух величин:
A ==R N1 и IN2. Возможны следующие
D N1 сравнения: IN1 = IN2, IN1 >= IN2,
IN1 <= IN2, IN1 > IN2, IN1 < IN2
и IN1 <> IN2.
==R Вещественные числа сравниваются с уче-
том знака.
F
В LAD контакт включен, когда сравнение
B
истинно.
D
В FBD выход включен, когда сравнение
истинно
Округление отбрасыванием
SUB_I
EN ENO
IN1 OUT
IN2
Продолжение табл. 2.4
Сложение и вычитание двойных целых чисел
SUB_DI
EN ENO
IN1 OUT
IN2
Квадратный корень
3 PT 3 PT
Временная диаграмма
I2.0 Макс.зн.=32767
T33 (текущее
РТ=3 РТ=3
значение)
T33 (бит )
10 PT +10 PT
Временная диаграмма
Макс.зн.=32767
T2 (текущее
значение)
T2 ( бит)
3 PT +3 PT
Временная диаграмма
T33 (текущее
значение)
T2 ( бит)
I1.0
LD I1.0 LD
3 PV +3 PV
Временная диаграмма
4 PV 4 PV
STOP
Команда STOP завершает выполнение
L STOP программы, вызывая переход CPU из RUN
A
в STOP
D
F
STOP
B
D
Продолжение табл. 2.11
Переход на метку, метка
Команда Перейти на метку осуществляет
n переход к указанной метке (n) внутри про-
граммы.
L JMP Команда Метка отмечает положение цели
A перехода (n).
D n
Операнд n − константа от 0 до 255.
LBL Тип данных: WORD.
Команда перехода и соответствующая мет-
ка должны находиться в главной программе,
n подпрограмме или программе обработки
прерывания
F JMP
B
n
D
LBL
FOR
EN ENO
INDX
F
B INIT
D
FINAL
NEXT
EVNT
3. ЛАБОРАТОРНЫЙ СТЕНД
НА БАЗЕ КОНТРОЛЛЕРА S7-200
3.1. Состав стенда
Стенд состоит из персонального компьютера с установленной
средой программирования и отладки Step7-Micro/Win 32, контрол-
лера S7200 (CPU222) c блоком расширения EM231(4 аналоговых
входа), соединительного кабеля PC/PPI и имитационного пульта.
На пульте установлены: включатель питания (~220), потенциометр
(AIW0) и три переключателя (I0.0, I0.1, I0.2). Напряжение с потен-
циометра, которое можно изменять вручную в пределах 0÷10 В,
подключено к первому аналоговому входу блока расширения
EM231. Переключатели I0.0, I0.1 и I0/2 коммутируют постоянное
напряжение 24В, которое затем подается на первые три дискрет-
ных входа контроллера.
Кабель PC/PPI соединяет контроллер с персональным компью-
тером через последовательный Сом-порт. В процессе установки
программы Step7-Micro/Win 32 назначается СОМ-порт № 1 по умол-
чанию. При необходимости этот параметр, а также другие парамет-
ры соединения можно перенастроить в опции System Block→Port
программы.
Состояние входных и выходных дискретных сигналов во время
выполнения программы можно контролировать по светодиодным
индикаторам, установленным в верхней части корпуса контроллера.
3.2. Работа в программе Step7-Micro/Win 32
Запуск программы производится одноименным ярлыком с рабо-
чего стола компьютера. В качестве дополнительной информации,
одновременно с программой, в свернутом виде запускается тексто-
вый файл Instructions с подробным описанием команд Simatic.
Рабочее пространство программы показано на рис. 3.1.
В общем случае последовательность действий при разработке
и проверке пользовательских программ в данной среде будут сле-
дующей.
1. Выбирается редактор, в каком предполагается работать
(View→STL, Ladder или
FBD).
I0.0
Q0.5
I0.1
Рис. 4.1. Диаграмма работы дискретного выхода Q0.5
Лабораторная работа 3
"Изучение особенностей применения арифметических команд
над целыми и вещественными числами"
Разработать и проверить программы, которые реализуют следую-
щие математические действия (задание выполнить по вариантам).
2
Вариант 1. Y1 = X1*X2/X3 − X4, Y2 = AIW0 /X1. Если Y1 > Y2, то
Q0.0 = ON.
X1 = 10, X2 = 23, X3 = 3, X4 = 2.2.
2
Вариант 2. Y1 = X2*X1/X4 − X3, Y2 = AIW 0 /X3 . Если Y1 > Y2, то
Q0.0 = ON.
X1 = 10, X2 = 23, X3 = 3, X4 = 2.2.
2 2
Вариант 3. Y1 = X1/(X2 + X3 − X4), Y2 = AIW0 /X3 . Если Y1 > Y2,
то Q0.0 = ON.
X1 = 1000, X2 = 23, X3 = 3, X4 = 2.2.
2
Вариант 4. Y1 = X1/(X2 − X3) + X4, Y2 = AIW 0 /X4 . Если Y1 < Y2,
то Q0.0 = ON.
X1 = 100, X2 = 23, X3 = 3, X4 = 2.2.
2 2
Вариант 5. Y1 = X1 − (X2 – X4)/(X2 + X3), Y2 = AIW0 /X1 . Если
Y1 < Y2, то Q0.0 = ON.
X1 = 100, X2 = 23, X3 = 3, X4 = 2.2.
Вариант 6. Y1 = X1/(X2 − X3 + Х1) + X4, Y2 = AIW 0 /X42. Если
Y1 < Y2, то Q0.0 = ON.
X1 = 1000, X2 = 23, X3 = 3, X4 = 2.2.
Лабораторная работа 4
"Изучение особенностей применения команд сравнения"
Используя команды сравнения и битовой логики, создать и про-
верить программы, реализующие следующие условия.
Задание 1. Включить дискретный выход Q0.0, если AIW0 ≥ 16500
и Q0.1, если AIW0 ≤ 15500 (AIW0 – это область памяти, куда запи-
сывается результат опроса аналогового входа 1, которая имеет
формат данных INT). В качестве разрешающего сигнала для команд
сравнения может быть использован вход I0.0 либо бит специальной
памяти SM0.0, который постоянно находится в состоянии ON.
Задание 2. Включить дискретный выход Q0.1, если AIW0 ≥ 16500,8.
Задание 3. Управлять состоянием выхода Q0.2 в соответствии с
диаграммой, приведенной на рис. 4.2.
5000 PT
Network 3
T1
IN TONR T1 Q0.1
500 PT
T37 Network 4
P IN TOF
T37 Q0.2
50 PT
Рис. 4.3. Фрагмент программы с применением команд таймеров
I0.0 I0.0
Q0.0 Q0.1
5с 6с 4с 4с 4с 4с
Задание 3 Задание 4
I0.0 I0.0
Q0.2 Q0.3
4с 3с 4с 3с 3с 3с
Длительность импульсов должна прямо-
пропорционально зависеть от AIW0
и изменяться в диапазоне 0÷5 с
I0.1 I0.1
R LD
5 PV 5 PV
Network 4
Network 2
C1 Q0.0
I0.0 SM0.5 C2
CU CTUD
Network 5
I0.1 SM0.5
C2 Q0.1
CD
I0.2
Network 6
R
C3 Q0.2
5 PV
Лабораторная работа 7
"Изучение особенностей применения логических команд, команд
для управления программой и организации прерываний "
Задание 1. Исследовать принципы работы команд WAND_B,
WOR_B и WXOR_B, используя для преобразования шестнадцате-
ричную константу A6 и регистр образа процесса IB0.
Задание 2. В основной программе MAIN организовать пере-
сылку содержимого области памяти VW0 в VW2 и таймер с пере-
запуском через каждые 2 секунды. По биту таймера перейти на
подпрограмму SBR_0.
В подпрограмме SBR_0 выполнить суммирование VW0 + 1, за-
писывая результат в VW0. Выход из подпрограммы производить по
окончании выполнения команды суммирования.
Проанализировать ход выполнения всей программы, наблю-
дая за содержимым области памяти VW2.
Задание 3. В основной программе MAIN организовать пере-
сылку содержимого области памяти VW0 в VW2. Используя номер
события 10 (см. табл. 2.13), организовать переход на подпрограм-
му обработки прерывания INT_0 через каждые 250 миллисекунд.
В подпрограмме INT_0 выполнить суммирование VW0 + 1, за-
писывая результат в VW0. Выход из подпрограммы производить по
окончании выполнения команды суммирования.
Проанализировать ход выполнения всей программы, наблю-
дая за содержимым области памяти VW2.
Повторить данное задание, используя номер события 1.
СОДЕРЖАНИЕ
Методические указания
к выполнению лабораторных работ по дисциплине
"Основы микропроцессорной техники"