close

Вход

Забыли?

вход по аккаунту

Вебинар «Мастер-класс: техника экзамена ДипИФР. Отчет об;pdf

код для вставкиСкачать
ОБРАЗОВАТЕЛЬНАЯ ПРОГРАММА ДИСЦИПЛИНЫ
(рабочая учебная программа дисциплины)
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ МЕХАТРОННЫХ И
РОБОТОТЕХНИЧЕСКИХ СИСТЕМ
Направление подготовки:
221000 «Мехатроника и робототехника»
Профиль подготовки:
«Наладка, программирование и эксплуатация
мехатронных и робототехнических систем»
Квалификация (степень)
_бакалавр_______________________
Форма обучения
_очная__________________________
Составитель программы
Сартаков Валерий Дмитриевич, профессор, к.т.н., доцент, Иркутский государственный технический университет___________________________
(ФИО, должность, ученая степень и ученое звание разработчика, место работы)
Иркутск
1
2013 г.
1. Информация из ФГОС, относящаяся к дисциплине
1.1. Вид деятельности выпускника
Дисциплина охватывает круг вопросов, относящиеся к виду деятельности
выпускника:
- научно-исследовательская деятельность;
- проектно-конструкторская;
- эксплуатационная.
1.2. Задачи профессиональной деятельности выпускника
В дисциплине рассматриваются задачи профессиональной деятельности
выпускника, указанные в ФГОС:
а) научно-исследовательская деятельность:
- разработка методик проведения экспериментальных исследований области программного обеспечения мехатронных и робототехнических систем (ПО
МХ и РТС);
- анализ результатов экспериментальных исследований ПО МХ и РТС;
- разработка математических моделей мехатронных устройств и определение характеристик средств микропроцессорной техники (МПТ);
б) проектно-конструкторская:
- разработка варианта возможного принципиального решения по структуре
алгоритмов и программному обеспечению средств МПТ;
- проектирование экспериментальных установок для исследования средств
программного обеспечения МПТ при управлении мехатронными устройствами;
в) эксплуатационная деятельность:
- выбор средств программного обеспечения для микропроцессорного
управления мехатронными устройствами и их компонентов;
- выбор оборудования и средств программного обеспечения для микропроцессорного управления технологическими процессами по имеющейся нормативно-технической документации;
- анализ особенностей технологических процессов с целью разработки
микропроцессорных систем управления (МПСУ).
- разработка рабочей конструкторской документации по составным частям
опытного образца системы микропроцессорного управления мехатронным устройством;
- выпуск эксплуатационной документации составных частей средств программного обеспечения для опытного образца системы микропроцессорного
управления мехатронным устройством;
- проведение предварительных испытаний составных частей средств программного обеспечения для опытного образца системы микропроцессорного
управления мехатронным устройством.
2
1.3. Перечень компетенций, установленных ФГОС
Освоение программы настоящей дисциплины позволит сформировать у
обучающегося следующие компетенции:

способность понимать сущность и значение информации в развитии современного информационного общества, сознавать опасности и угрозы, возникающие в этом процессе, соблюдать основные требования информационной
безопасности, в том числе зашиты государственной тайны (ОК-10)

применять необходимые для построения моделей знания принципов действия и математического описания составных частей мехатронных и робототехнических систем (информационных, электромеханических, электрогидравлических, электронных элементов и средств вычислительной техники); (ПК-1)

реализовывать модели средствами вычислительной техники; (ПК-1)

разрабатывать конструкторскую проектную документацию электрических и электронных узлов (включая микропроцессорные) мехатронных и робототехнических систем, принципиальные электрические схемы, печатные платы,
схемы размещения, схемы соединения; (ПК-4)

разрабатывать рабочую программную документацию по составным частям опытного образца мехатронной или робототехнической системы; (ПК-5)
1.4. Перечень умений и знаний, установленных ФГОС
Студент после освоения программы настоящей дисциплины должен:
знать:
непосредственное, последовательное и параллельное программирование; каналы, маршруты и пакеты в локальных сетях, физический и канальный уровни;
методики разработки принципиальных схем аппаратных средств; разработку и
отладку программных средств микропроцессорных систем, реализующих алгоритмы управления;
уметь:
разрабатывать и отлаживать программные средства микропроцессорных систем, реализующие алгоритмы управления; уметь создавать экспериментальные
и макетные образцы; применять стандартные программы САПР для проектирования микропроцессорных систем;
владеть:
методами конструирования новых мехатронных и робототехнических систем,
навыками применения микропроцессоров в приводах мехатронных и робототехнических систем, микропроцессорной обработки данных в информационных
системах;
2. Цели и задачи освоения программы дисциплины
Дисциплина «Программное обеспечение мехатронных и робототехнических систем» (ПО МХ и РТС) является дисциплиной профессионального цикла.
Это - одна из дисциплин по непрерывному изучению и применению управляю3
щих средств вычислительной техники для программы подготовки «Наладка,
программирование и эксплуатация мехатронных и робототехнических систем».
Целью преподавания дисциплины «ПО МХ и РТС» является изучение
основных
современных
методов
микропроцессорного
управления
мехатронными устройствами и робототехническими системами, методов
проектирования программного обеспечения микропроцессорных систем
управления мехатронными устройствами и робототехническими системами,
принципов рационального применения промышленных микропроцессорных
контроллеров
для
управления
мехатронными
устройствами
и
робототехническими системами.
При изучении дисциплины решаются следующие задачи:
-ознакомиться
с
архитектурой
и
типами
промышленных
микропроцессорных контроллеров (ПМК);
-исследовать программное обеспечение микропроцессорного управления
мехатронными устройствами и робототехническими системами с помощью
промышленных микропроцессорных контроллеров;
-рассмотреть элементы программного обеспечения ПМК для связи с
датчиками и исполнительными органами систем управления.
-разработать учебные программы микропроцессорного управления
мехатронными устройствами и робототехническими системами с помощью
промышленных микропроцессорных контроллеров;
-применить промышленные микропроцессорные контроллеры для
управления мехатронными устройствами, промышленными роботами и
технологическими процессами;
-ознакомиться с этапами проектирования программного обеспечения
МПС на основе промышленных микропроцессорных контроллеров.
3. Место дисциплины в структуре ООП
Для изучения дисциплины, необходимо освоение содержания дисциплин:
- информатика;
- основы программирования;
- основы цифровой электроники;
- цифровая техника;
- дискретная математика;
- электротехника;
- теория автоматического управления;
- микропроцессорная техника в мехатронике и робототехнике
- основы мехатроники и робототехники.
Знания и умения, приобретаемые студентами после освоения содержания
дисциплины, будут использоваться в дисциплинах:
- проектирование робототехнических и мехатронных систем;
- управление роботами и робототехническими системами;
- управление станочными системами и комплексами в современном машиностроении;
4
- информационные устройства и системы в робототехнике.
При выполнении курсовых проектов и работ и подготовке выпускной работы также используются знания и навыки, полученные при изучении дисциплины «ПО МХ и РТС».
4. Компетенции обучающегося, формируемые после освоения дисциплины (результаты освоения дисциплины)
В результате освоения дисциплины ПО МХ и РТС обучающийся должен:
уметь:
-разработать на основе математической модели алгоритм функционирования микропроцессорной системы управления мехатронными устройствами и
робототехническими системами;
-разработать на основе алгоритма функционирования МПС программу
микропроцессорного управления мехатронными устройствами и робототехническими системами;
-разработать учебные программы микропроцессорного управления
мехатронными устройствами и робототехническими системами с помощью
промышленных микропроцессорных контроллеров;
-применить промышленные микропроцессорные контроллеры для управления мехатронными устройствами, промышленными роботами и технологическими процессами.
владеть:
- навыками проектирования микропроцессорных систем управления мехатронными устройствами, промышленными роботами и технологическими процессами;
- навыками анализа программного обеспечения микропроцессорных систем управления мехатронными устройствами;
- навыками анализа характеристик и параметров вычислительных систем
(ВС) и протоколов ВС.
5. Основная структура дисциплины.
Вид учебной работы
Общая трудоемкость дисциплины
Аудиторные занятия, в том числе:
лекции
лабораторные работы
практические занятия
Самостоятельная работа (в том числе курсовое
проектирование)
Вид промежуточной аттестации (итогового контроля по дисциплине), в том числе курсовое проектирование
5
Трудоемкость в часах
Всего
Семестр
(ЗЕТ)
№7
126 (3,5)
126
51
51
17
17
17
17
17
17
48
48
экзамен
Экзамен (27)
Всего
часов
2
126
51
17
17
17
48
Экзамен
Вид учебной работы
1
Общая трудоемкость дисциплины
Аудиторные занятия
Лекции
Лабораторные работы
Практические занятия
Самостоятельная работа
Вид итогового контроля
Семестр
7
3
126
51
17
17
17
48
Экзамен
6. Содержание дисциплины
6.1. Перечень основных разделов и тем дисциплины
Раздел 1. Характеристика программного обеспечения мехатронных и робототехнических систем.
Раздел 2. Битовые команды промышленных микропроцессорных контроллеров.
Раздел 3. Таймерные команды и команды «счетчики» промышленных
микропроцессорных контроллеров.
Раздел 4. Команды пересылки, сдвига и преобразования промышленных
микропроцессорных контроллеров.
Раздел 5. Арифметические и логические команды промышленных микропроцессорных контроллеров.
Раздел 6. Элементы программного обеспечения ПМК для связи с датчиками и исполнительными органами систем управления.
Раздел 7. Алгоритмы микропроцессорного управления мехатронными устройствами и робототехническими системами с помощью промышленных микропроцессорных контроллеров.
Раздел 8. Программы микропроцессорного управления мехатронными
устройствами и робототехническими системами с помощью промышленных
микропроцессорных контроллеров.
Раздел 9. Перспективы развития средств программного обеспечения микропроцессорного управления устройств для мехатроники и робототехники.
6.2. Краткое описание содержания теоретической части разделов и тем
дисциплины
Раздел 1. Характеристика программного обеспечения мехатронных и
робототехнических систем
Классификация языков программирования для универсальных промышленных микропроцессорных контроллеров. Технические средства для программирования универсальных промышленных микропроцессорных контроллеров.
6
Характеристика программаторов для универсальных промышленных микропроцессорных контроллеров. Технология программирования универсальных
промышленных микропроцессорных контроллеров.
Европейский стандарт на языки программирования промышленных микроконтроллеров IEC-1131–3.
Характеристика языков STEP7. Язык «LADDER». Язык «STL». Язык «FBD».
Характеристика языков STEP7–MicroWin. Цикл сканирования для языков
STEP7–MicroWin.
Форматы данных (операндов) в командах языков STEP7–MicroWin. Битовый
формат. Формат байта. Формат слова. Формат двойного слова.
Способы адресации операндов в командах языков STEP7–MicroWin. Абсолютная и непосредственная адресация.
Области памяти данных для языка STEP7–MicroWin. Классификация областей памяти данных для языка STEP7–MicroWin.
Буферная область памяти для отображения дискретных входов. Назначение.
Объем буферной области памяти для отображения дискретных входов. Адреса
области памяти для отображения дискретных входов. Обозначения адресов области памяти для отображения дискретных входов в программах на языке
STEP7–MicroWin.
Буферная область памяти для отображения дискретных выходов. Назначение. Объем буферной области памяти для отображения дискретных выходов.
Адреса области памяти для отображения дискретных выходов. Обозначения
адресов области памяти для отображения дискретных выходов в программах на
языке STEP7–MicroWin.
Буферная область памяти для отображения аналоговых входов. Назначение.
Объем буферной области памяти для отображения аналоговых входов. Адреса
области памяти для отображения аналоговых входов. Обозначения адресов области памяти для отображения аналоговых входов в программах на языке
STEP7–MicroWin.
Буферная область памяти для отображения аналоговых выходов. Назначение. Объем буферной области памяти для отображения аналоговых выходов.
Адреса области памяти для отображения аналоговых выходов. Обозначения адресов области памяти для отображения аналоговых выходов в программах на
языке STEP7–MicroWin.
Область памяти меркеров. Назначение. Объем области памяти меркеров.
Адреса области памяти меркеров. Обозначения адресов области памяти меркеров в программах на языке STEP7–MicroWin.
Область памяти специальных меркеров. Назначение. Биты состояния
процессора SM1.0, SM1.1 и SM1.2. Объем области памяти специальных меркеров. Адреса области памяти специальных меркеров. Обозначения адресов области памяти специальных меркеров в программах на языке STEP7–MicroWin.
Область памяти для реле шагового управления. Назначение. Объем области памяти для реле шагового управления. Адреса области памяти для реле
шагового управления. Обозначения адресов области памяти для реле шагового
управления в программах на языке STEP7–MicroWin.
7
Область памяти переменных. Назначение. Объем области памяти переменных для различных типов ПМК. Адреса области памяти переменных. Обозначения адресов области памяти переменных в программах на языке STEP7–
MicroWin.
Область памяти таймеров. Назначение. Бит таймера и текущее время таймера. Объем области памяти таймеров. Адреса области памяти таймеров. Обозначения адресов области памяти таймеров в программах на языке STEP7–
MicroWin.
Область памяти счетчиков. Назначение. Бит счетчика и текущее значение
счетчика. Объем области памяти счетчиков. Адреса области памяти счетчиков.
Обозначения адресов области памяти счетчиков в программах на языке STEP7–
MicroWin.
Адресация аккумуляторов. Адресация быстрых счетчиков.
Раздел 2. Битовые команды промышленных микропроцессорных
контроллеров
Классификация битовых команд. Изображение битовых команд в программах.
Стандартные битовые команды (обычные контакты).
Битовая команда «замыкающий контакт». Назначение. Применение. Временная диаграмма, поясняющая выполнение битовой команды «замыкающий
контакт».
Битовая команда «размыкающий контакт». Назначение. Применение.
Временная диаграмма, поясняющая выполнение битовой команды «размыкающий контакт».
Битовые команды с непосредственным доступом. Назначение. Применение.
Битовая команда «замыкающий контакт» с непосредственным доступом.
Временная диаграмма, поясняющая выполнение битовой команды «замыкающий контакт».
Битовая команда «размыкающий контакт» с непосредственным доступом.
Временная диаграмма, поясняющая выполнение битовой команды «размыкающий контакт».
Битовая команда инверсии (NOT). Назначение. Временная диаграмма,
поясняющая выполнение битовой команды инверсии «NOT».
Битовая команда «положительный фронт». Назначение. Применение.
Временная диаграмма, поясняющая выполнение битовой команды «положительный фронт».
Битовая команда «отрицательный фронт». Назначение. Применение.
Временная диаграмма, поясняющая выполнение битовой команды «отрицательный фронт».
Битовые команды сравнения. Назначение. Применение.
Битовые команды сравнения байта.
Битовые команды сравнения слова.
Битовые команды сравнения двойного слова.
8
Временные диаграммы, поясняющие выполнение битовых команд сравнения.
Раздел 3. Таймерные команды и команды «счетчики» промышленных микропроцессорных контроллеров
Таймерные команды. Назначение. Изображение таймерной команды в
программах.
Бит таймера и текущее время таймера. Разрешающая способность (тик)
таймера. Деление таймеров на группы в зависимости от тика таймера. Максимальное время таймера. Уставка таймера.
Классификация таймеров. Таймеры с задержкой включения (TON). Таймеры с задержкой выключения (TOF). Таймеры с задержкой на включение с запоминанием (TONR). Временная диаграмма, поясняющая выполнение таймерной команды TON. Временная диаграмма, поясняющая выполнение таймерной
команды TOF. Временная диаграмма, поясняющая выполнение таймерной команды TONR.
Технология работы с таймерными командами. Пуск (включение) таймера.
Останов таймера. Сброс (обнуление) таймера.
Команды счетчиков. Назначение. Изображение команды «счетчик» в программах.
Бит счетчика и текущее содержимое счетчика. Максимальное содержимое счетчика. Уставка счетчика.
Классификация команд счетчиков. Счетчики прямого счета (счет на увеличение). Счетчики обратного счета (счет на уменьшение). Реверсивные счетчики. Временные диаграммы, поясняющие выполнение команд счетчиков.
Технология работы с командами счетчиков. Пуск (включение) счетчика.
Останов счетчика. Сброс (обнуление) счетчика.
Раздел 4. Команды пересылки, сдвига и преобразования промышленных микропроцессорных контроллеров
Команды передачи информации микроконтроллера S7-200. Форматы
операндов. Максимальное значение входных операндов в командах передачи
информации.
Команда передачи байта. Команда передачи слова. Команда передачи
двойного слова. Команда передачи вещественного числа. Максимальное значение входных операндов в командах передачи информации.
Команды «Блочная передача байтов», «Блочная передача слов», «Блочная
передача двойных слов».
Команда «Перестановка байтов в слове».
Команды сдвига. Назначение.
Классификация команд сдвига. Обычный сдвиг (арифметический). Циклический сдвиг. Форматы операндов. Максимальное значение входных операндов в командах сдвига. Сдвиг операнда вправо. Сдвиг операнда влево. Изображение команд сдвига в программах. Схемы, поясняющие выполнение команд
сдвига.
9
Команды преобразования. Назначение. Изображение команд преобразования в программах.
Классификация команд преобразования операндов. Команда преобразования байта в целое. Команда преобразования целого в байт. Команда преобразования целого в двойное целое. Команда преобразования двойного целого в
целое. Команда преобразования двойного целого в вещественное. Команда преобразования вещественного в двойное целое с округлением. Команда преобразования вещественного в двойное целое без округления. Команда преобразования двоично-десятичного кода (BCD формат) в целое. Команда преобразования
целого в двоично-десятичный код (BCD формат). Команда преобразования
символа в семисегментный код. Максимальное значение входных операндов в
командах преобразования.
Раздел 5. Арифметические и логические команды промышленных
микропроцессорных контроллеров
Арифметические команды микроконтроллера S7-200. Назначение.
Арифметические команды с целыми числами. Форматы операндов. Максимальное значение входных операндов в арифметических командах с целыми
числами.
Команды сложения байтов, слов и двойных слов. Команды вычитания
байтов, слов и двойных слов. Команды умножения байтов, слов и двойных
слов. Команды деления байтов, слов и двойных слов. Абсолютная и непосредственная адресация для входных операндов в командах сложения, вычитания,
умножения и деления. Изображение арифметических команд с целыми числами
в программах. Биты состояния процессора SM1.0, SM1.1 и SM1.2. Влияние
арифметических команд на биты состояния процессора. Области памяти для
операндов арифметических команд, «работающих» с целыми числами.
Арифметические команды с вещественными числами. Максимальные и
минимальные значения входных операндов в арифметических командах над
вещественными числами. Команды извлечения квадратного корня, определения
синуса, косинуса, тангенса, натурального логарифма, экспоненциальной функции.
Логические команды микроконтроллера S7-200. Назначение. Форматы
операндов. Максимальное значение входных операндов в логических командах.
Команды логического умножения, логического сложения, инверсии.
Влияние логических команд на биты состояния процессора. Области памяти
для операндов логических команд. Изображение логических команд в программах.
Раздел 6. Элементы программного обеспечения ПМК для связи с датчиками и исполнительными органами систем управления
Классификация битовых команд. Изображение битовых команд в программах.
Стандартные битовые команды для связи с дискретными датчиками.
Битовая команда «замыкающий контакт». Способы адресации. Буферная
10
область памяти для отображения дискретных входов. Обозначение ячеек памяти в буферной области дискретных входов. Назначение. Объем буферной области памяти для отображения дискретных входов. Адреса области памяти для
отображения дискретных входов. Обозначения адресов области памяти для
отображения дискретных входов в программах на языке STEP7–MicroWin.
Временная диаграмма, поясняющая выполнение битовой команды «замыкающий контакт».
Битовая команда «размыкающий контакт». Применение для связи с дискретными датчиками. Временная диаграмма, поясняющая выполнение битовой
команды «размыкающий контакт».
Битовые команды с непосредственным доступом. Применение для связи с
дискретными датчиками. Битовая команда «замыкающий контакт» с непосредственным доступом. Применение для связи с дискретными датчиками. Временная диаграмма, поясняющая выполнение битовой команды «замыкающий контакт». Битовая команда «размыкающий контакт» с непосредственным доступом. Применение для связи с дискретными датчиками. Временная диаграмма,
поясняющая выполнение битовой команды «размыкающий контакт».
Буферная область памяти для отображения дискретных выходов. Назначение. Объем буферной области памяти для отображения дискретных выходов.
Адреса области памяти для отображения дискретных выходов. Обозначения
адресов области памяти для отображения дискретных выходов в программах на
языке STEP7–MicroWin.
Буферная область памяти для отображения аналоговых входов. Назначение.
Объем буферной области памяти для отображения аналоговых входов. Адреса
области памяти для отображения аналоговых входов. Обозначения адресов области памяти для отображения аналоговых входов в программах на языке
STEP7–MicroWin.
Буферная область памяти для отображения аналоговых выходов. Назначение. Объем буферной области памяти для отображения аналоговых выходов.
Адреса области памяти для отображения аналоговых выходов. Обозначения адресов области памяти для отображения аналоговых выходов в программах на
языке STEP7–MicroWin.
Раздел 7. Алгоритмы микропроцессорного управления мехатронными устройствами и робототехническими системами с помощью промышленных микропроцессорных контроллеров
Разработка алгоритма пуска электрического двигателя по линейному закону.
Разработка алгоритма реализации ПИД - регулятора в дискретной форме.
Разработка алгоритма управления цикловым роботом.
Алгоритм микропроцессорного управления асинхронным двигателем для
устройств мехатроники и робототехники.
Алгоритмы микропроцессорного управления устройствами мехатроники
и робототехники.
11
Раздел 8. Программы микропроцессорного управления мехатронными устройствами и робототехническими системами с помощью промышленных микропроцессорных контроллеров
Разработка программы управления пуском электрического двигателя по
линейному закону.
Разработка программы, реализующей ПИД - регулятор в дискретной
форме.
Разработка программы управления цикловым роботом.
Программа микропроцессорного управления асинхронным двигателем
для устройств мехатроники и робототехники.
Программы микропроцессорного управления устройствами мехатроники
и робототехники.
Раздел 9. Перспективы развития средств программного обеспечения
микропроцессорного управления устройств для мехатроники и робототехники
Перспективные направления развития средств программного обеспечения
для микропроцессорной техники при управлении мехатронными устройствами
и робототехническими системами.
6.3
.Краткое описание лабораторных работ
6.3.1.
Перечень рекомендуемых лабораторных работ
1. Лабораторная работа № 1. Исследование программных элементов раздела «Таймеры» библиотеки «S7-200».
2. Лабораторная работа № 2. Исследование программных элементов раздела «Счетчики» библиотеки «S7-200».
3. Лабораторная работа № 3. Исследование программных элементов по передаче информации библиотеки «S7-200».
4. Лабораторная работа № 4. Исследование арифметических команд библиотеки «S7-200».
5. Лабораторная работа № 5. Исследование логических команд библиотеки
«S7-200».
6. Лабораторная работа № 6. Исследование команд сдвига библиотеки «S7200».
7. Лабораторная работа № 7. Исследование команд преобразования библиотеки «S7-200».
8. Лабораторная работа № 8. Разработка и исследование программы управления цикловым механизмом для реализации в ПМК S7-200.
6.3.2. Методические указания по выполнению лабораторных работ
Лабораторная работа № 1. Исследование программных элементов раздела «Таймеры» библиотеки «S7-200».
Цель работы: исследование команд «таймеры» библиотеки «S7-200».
12
Задание по лабораторной работе.
1. Ознакомиться с теоретическими сведениями.
2. Исследовать с помощью микроконтроллера S7-222 таймерную команду
TON с разрешающей способностью 1 мс.
3. Исследовать с помощью микроконтроллера S7-222 таймерную команду
TON с разрешающей способностью 10 мс.
4. Исследовать с помощью микроконтроллера S7-222 таймерную команду
TON с разрешающей способностью 100 мс.
5. Исследовать с помощью микроконтроллера S7-222 таймерную команду
TON с запоминанием.
6. Исследовать с помощью микроконтроллера S7-222 таймерную команду
TOF.
Указания по методике выполнения задания.
Управление промышленными установками (ПУ), в том числе электроприводом (ЭП), и технологическими комплексами (ТК) осуществляется в режиме реального времени. Для этого требуется использовать таймеры (специальные «промышленные» часы). Программное обеспечение (ПО) контроллеров
S7-200 имеет в своей библиотеке до 256 таймеров с разным максимальным
временем уставки таймера (32.767 с; 327.67; 3276.7 с). В программе управления
ПУ таймер вызывается с помощью таймерной команды.
Различают «обычные» таймеры (TON, TOF) и таймеры с запоминанием
(TONR). Для команд таймеров уместно использовать термин «тик таймера» или
просто «тик». В ПО S7-200 имеются таймеры с тиком, равным 1 мс (4 шт), 10
мс (16 шт) и 100 мс (236 шт). В табл. 1 приведено распределение таймеров по
величине разрешающей способности.
Таблица 1
Распределение таймеров по величине разрешающей способности
Тип
Разрешающая
Максим. вре- Номера (адреса) тайметаймера
способность, мс мя уставки, с
ров
TONR
1
32.767
Т0, Т64
10
327.67
Т1-Т4, Т65-Т68
100
3276.7
Т5-Т31, Т69-Т95
TON
1
32.767
Т32, Т96
TOF
10
327.67
Т33-Т36, Т97-Т100
100
3276.7
Т37-Т63, Т101-Т255
Таймер характеризуется текущим временем и битом. Текущее время таймера
t ÒÅÊ
отсчитывается и представляется числом тиков
N ÒÅÊ .
t
Текущее
время таймера периодически сравнивается с уставкой таймера У , также задаваемой числом тиков
NÓ.
13
NУ 
tУ
tТ
,
где tУ -время уставки, с; tT -время тика, с.
Аналогично связаны NÒÅÊ и
N ТЕК 
tТЕК .
tТЕК
tТ ,
t ТЕК -текущее время таймера.
Когда t ТЕК ( N ÒÅÊ ) станет равным tУ ( NÓ ),
где
срабатывает бит таймера
(таймер сработал). Если при срабатывании бит таймера принимает значение,
равное логической единице, то это таймер с задержкой включения TON. Если
при срабатывании бит таймера принимает значение, равное логическому нулю,
это таймер с задержкой выключения TOF. Максимальная уставка таймера PТ
равна 32767.
Для запуска команды «Таймер» необходимо на ее разрешающий вход
«IN» подать сигнал, равный логической единице. На входе «РТ» (Preset Time)
следует указать время уставки в тиках или адрес, где уставка хранится.
Сравнение текущего времени с уставкой для таймеров с разным максимальным временем уставки производится неодинаково. Для одномиллисекундного таймера обновляется бит таймера (т.е. производится сравнение текущего
времени с уставкой) и текущее значение каждую миллисекунду (т.е. асинхронно с циклом обработки программы – циклом сканирования). Если на вход «IN»
подать сигнал, равный логическому нулю, выполняется сброс таймера. При
этом таймер выключается, его текущее значение устанавливается в нуль, а бит
таймера становится равным логическому нулю.
Для десятимиллисекундного таймера сравнение текущего времени с уставкой производится в начале каждого цикла сканирования управляющей программы (интервала дискретности t ). При этом к текущему значению таймера
прибавляется количество истекших интервалов величиной 10 мс с начала предыдущего цикла сканирования.
Для стомиллисекундного таймера сравнение текущего времени с уставкой производится всякий раз, когда выполняется таймерная операция (команда). При этом к текущему значению таймера прибавляется количество истекших интервалов величиной 100 мс, начиная с предыдущего сравнения.
На рис. 1. представлено изображение таймерной команды TON на языке
Ladder (STEP7–MicroWin) микроконтроллера S7-200. Когда значение бита на
входе разрешения «IN» будет равно логической единице, таймер с задержкой
включения TON и разрешающей способностью (дискретностью таймера) 100
мс запускается и начинается отсчет времени таймера. Адрес таймера – Т37. Уставка таймера в тиках (РТ) равна 10010, т.е. N Ó = 10010. Уставка таймера в се-
14
кундах t У равна 10 с ( t T = 100 мс; tУ = tT  N У = 100 мс*100 = 10 с).
На рис. 2 приведены временные диаграммы, поясняющие выполнение
таймерной команды TON. По этим диаграммам можно провести анализ выполнения таймерной команды TON для трех возможных характерных ситуаций.
Рис. 1. Изображение таймерной команды TON на языке Ladder (STEP7–
MicroWin) микроконтроллера S7-200
Когда значение бита на входе разрешения «IN» будет равно логической
единице, таймер с задержкой включения TON запускается и начинается отсчет
времени. Отсчет времени таймера продолжается до тех пор, пока значение бита
на входе разрешения «IN» равно логической единице. Когда текущее время
таймера t ТЕК станет равным времени уставки tУ , срабатывает бит таймера и
остается в состоянии логической единице, пока значение бита на входе разрешения «IN» равно логической единице. Когда значение бита на входе разрешения «IN» становится равным 0, текущее значение таймера обнуляется, а бит
таймера сбрасывается (состояние логического нуля).
Если при «работающем» таймере текущее время таймера tТЕК не достигает значения времени уставки t У , а значение бита на входе разрешения «IN»
изменяет состояние и становится равным 0, таймер сбрасывается, т.е. текущее
значение таймера обнуляется, а бит таймера в этом варианте не устанавливается в 1.
В третьей ситуации при «работающем» таймере значение бита на входе
разрешения «IN» равно логической единице в течение времени, большего, чем
максимальное время уставки таймера. В этом случае отсчет времени таймера
продолжается до тех пор, пока не достигнет значения максимального времени
уставки. Когда текущее время таймера tТЕК станет равным времени уставки tУ ,
срабатывает бит таймера и остается в состоянии логической единицы, пока значение бита на входе разрешения «IN» равно логической единице.
На рис. 3. представлено изображение таймерной команды TONR на языке
Ladder (STEP7-MicroWIN) микроконтроллера S7-200. Когда значение бита на
входе разрешения «IN» будет равно логической единице, таймер с задержкой
включения с запоминанием TONR и разрешающей способностью (дискретно15
стью таймера) 10 мс запускается и начинается отсчет времени. Адрес таймера –
Т4. Уставка таймера в тиках (РТ) равна 2010, т.е. N У = 2010. Уставка таймера в
секундах
tУ равна 0,2 мс ( t
T
=10 мс;
tУ = t T  N У
= 10 мс*20=0,2 мс).
Рис. 2. Временные диаграммы, поясняющие выполнение таймерной
команды TON
Рис. 3. Изображение таймерной команды TONR на языке Ladder (STEP7–
MicroWin) микроконтроллера S7-200
На рис. 4. приведены временные диаграммы, поясняющие выполнение
таймерной команды TONR. По этим диаграммам можно провести анализ выполнения таймерной команды TONR для возможных характерных ситуаций.
16
Рис. 4. Временные диаграммы, поясняющие выполнение таймерной
команды TONR
Текущее значение таймера с задержкой включения сбрасывается, когда
выключается разрешающий вход (IN), тогда как текущее значение таймера с
задержкой включения с запоминанием сохраняется, когда этот вход выключается. Можно использовать таймер с задержкой включения с запоминанием для
накопления времени за несколько периодов, когда включен разрешающий вход.
Для стирания текущего значения таймера с задержкой включения с запоминанием используется команда «Сброс» (R). Для формирования команды «сброс»
применяется фрагмент программы, представленный на рис. 5.
Рис. 5. Фрагмент программы для формирования команды «сброс»
Таймер с задержкой включения и таймер с задержкой включения с запоминанием продолжают счет после достижения значения уставки; они останав17
ливают счет при достижении максимального значения N MAX , равного 3276710.
На рис. 6. представлено изображение таймерной команды TOF на языке
Ladder (STEP7-MicroWin) микроконтроллера S7-200. Когда значение бита на
входе разрешения «IN» будет равно логической единице, устанавливается в
единицу бит таймера (см. рис. 7), но таймер с задержкой выключения TOF и
дискретностью таймера 1 мс не запускается и не начинается отсчет времени
таймера. Адрес таймера – Т32. Уставка таймера в тиках (РТ) равна 5010, т.е.
мс ;
N У =5010. Уставка таймера в секундах tУ равна 0,05 с ( t T  1
tУ 
tT  NУ

1
мс
 50

0,05
с) .
Рис. 6. Изображение таймерной команды TOF на языке Ladder (STEP7–
MicroWin) микроконтроллера S7-200
Таймер с задержкой выключения (TOF) используется для задержки
выключения выхода (сброса бита таймера) на фиксированный интервал времени после выключения сигнала на входе IN. Когда включается разрешающий
вход, немедленно включается бит таймера, а текущее значение времени устанавливается в 0. Когда вход IN выключается, таймер ведет отсчет, пока текущее
время не достигнет времени уставки. Когда время уставки достигнуто, бит таймера сбрасывается, а отсчет текущего значения прекращается. Если сигнал на
входе IN выключен в течение более короткого интервала времени, чем время
уставки, то бит таймера остается включенным. Команда TOF должна обнаружить переход от включенного состояния к выключенному, чтобы начать отсчет
времени.
Таймеры TOF и TON не могут иметь один и тот же номер. Например, не
могут одновременно использоваться TON Т32 и TOF Т32.
Для сброса любого таймера (TON, TOF или TONR) может быть использована команда «Сброс» (R). Команда «Сброс» выполняет следующую операцию:
бит таймера сбрасывается. Текущее значение после этого равно нулю. Таймер
TONR может быть сброшен только командой «Сброс». После сброса таймер
TOF, чтобы перезапуститься, требует наличия разрешающего входа (IN в состоянии логической единицы) для перехода из выключенного состояния в
включенное.
18
Рис. 7. Временные диаграммы, поясняющие выполнение таймерной
команды TOF
Используя таймерные команды, можно программировать включение и
выключение источника питания, пуск и торможение электропривода в любой
момент времени, изменение параметров и характеристик регуляторов и системы управления по заданному алгоритму.
Методические указания по выполнению лабораторной работы
1. Подключить микроконтроллер (МК) к персональному компьютеру с
помощью кабеля связи PPI. Установить переключатели на кабеле в положение,
обеспечивающее скорость передачи 9,6 кбод.
2. Подключить разъем имитатора дискретных входов и выходов к разъему на щитке с микроконтроллером.
3. Включить автоматический выключатель в щитке. При этом подключается источник питания к микроконтроллеру.
4. Произвести запуск ПО «STEP7–MicroWin» и выполнить все операции,
связанные с выбором типа микроконтроллера S7-222 и его адреса. При выборе
типа микроконтроллера S7-222 и его адреса используют раздел «PLC» меню
«STEP7–MicroWin» и подраздел «Type».
5. Для выполнения лабораторной работы при исследовании таймерной
команды TON с разрешающей способностью 1 мс следует на рабочем поле
MicroWin подготовить программу, представленную на рис. 8. Для составления
собственного плана действий по исследованию таймерной команды TON мож19
но воспользоваться сведениями, приведенными в меню «Help» программного
пакета STEP 7-MicroWIN для таймерной команды TON. В качестве бита,
управляющего сигналом на разрешающем входе IN таймера, можно воспользоваться дискретным входом I 0.0 ПМК S7-222. Установим значение операнда на
входе РТ, равное 30000, что соответствует уставке 30 с. В программе (рис. 14)
бит таймера Т32 управляет дискретным выходом Q 0.0, с которым связан светодиод, расположенный на передней панели имитатора дискретных входов и
выходов.
6. Используя команду меню «Compile» или «Compile All», откомпилировать составленную программу (рис. 9), а потом записать в память микроконтроллера S7-222 командой «Download». Выполнение указанных действий можно контролировать по информации, появляющейся в статусной строке основного окна программы STEP7-MicroWin (рис. 9) и окне, появляющемся после подачи команды «Download».
Рис. 8. Программа для исследования таймерной команды TON
с разрешающей способностью 1 мс
7. После записи программы нажать на команду меню «Пуск программы»
в основном окне программы STEP7-MicroWin (рис. 9).
8. Для контроля выполнения программы можно использовать команду
«Status Chart» - статусная таблица (рис. 10) или команду «Program Status» (рис.
11).
9. При контроле выполнения программы с помощью команды «Status
Chart» выполняются следующие действия (программа запущена). Левой клавишей мыши запускается команда «Status Chart» и статусная таблица выводится
на рабочее поле (рис. 12). Затем в адресное поле этой таблицы с помощью клавиатуры записываются адреса переменных. Для программы на рис. 6 такими
переменными являются бит таймера Т32, текущее значение таймера Т32, дискретный вход I0.0, дискретный выход Q0.0. В следующем поле «Format» выбирается соответствующий формат для переменных. Для программы на рис. 6 для
переменных I0.0 и Q0.0 выбирается битовый формат, для переменной «бит
таймера» Т32 должен быть установлен также битовый формат, а для переменной «текущее значение таймера» Т32 выбирается шестнадцатеричное число
20
(шестнадцатеричный формат). Выбор формата осуществляется с помощью левой клавиши мыши.
Чтобы определить значения переменных при выполнении программы,
необходимо в любой строке поля «Current Value» (текущая величина) или «New
Value» (новая величина) правой клавишей мыши вызвать окно режима просмотра результатов работы программы и выбрать команду «Read All Forced».
Для всех указанных переменных в поле «Current Value» после этой процедуры
появляются текущие значения переменных. Если значения переменных и их
форматы были выбраны в предыдущем опыте исследования команд, то для вывода текущих значений достаточно перейти в режим «Status Chart» и на поле
«Current Value» нажать левую клавишу мыши. При анализе текущих значений
переменных в поле «Current Value» следует учитывать, что переменная в формате слова, например VW100, включает два байта: старший байт с адресом
VB100 и младший с адресом VB101.
10. При контроле выполнения программы с помощью команды «Program
Status» (программный режим) выполняются следующие действия (программа
запущена). С помощью команды «Program Status» программа на рабочем поле
становится «активной» и показывает в режиме реального времени выполнение
каждой команды программы изменением цвета команды с черного (команда не
выполняется) на синий (команда выполняется).
11. При контроле выполнения программы микроконтроллера в режиме
«Status Chart» имеется возможность воспользоваться командой «Trend View»
(рис. 13). Сначала выполняют команду «Status Chart» - статусная таблица, а потом левой клавишей мыши запускают команду «Trend View». Остановить режим «Trend View» можно либо повторной подачей команды «Trend View», либо командой «Status Chart».
12. При контроле выполнения программы микроконтроллера в режиме
«Program Status» (рис. 11) алгоритм работы состоит в следующем. После составления на рабочем поле программного пакета STEP 7-MicroWIN управляющую программу записывают в память микроконтроллера. Затем включают режим «Program Status» (рис. 11) и запускают в работу управляющую программу.
Далее выполнение программы микроконтроллера в этом режиме отображается
на экране дисплея.
21
Статусная строка
22
Статусная
строка
23
24
Рис. 11. Команда «Program Status»
Команда «Program Status»
Меню-Компиляция
Рис. 12. Рабочее поле со статусной таблицей
13. Исследовать таймерную команду TON с разрешающей способностью
1 мс (см. рис. 8) можно также традиционным способом. Методика исследования
достаточно проста и состоит в следующем. Тумблер дискретного входа I0.0
имитатора дискретных входов и выходов переводится в положение логической
единицы, т.е. включается (см. рис. 14) и, следовательно, дается разрешение на
запуск таймера Т32. Одновременно с включением тумблера дискретного входа
I0.0 запускается секундомер. Затем отмечается момент срабатывания дискретного выхода Q0.0 и при этом отключается секундомер. Если время, отсчитанное секундомером, равно значению уставки таймера, то делается вывод об успешном проведении исследования.
13. Аналогичным способом можно исследовать другие таймерные команды (с тиками 10 мс и 100 мс, а также таймеры на выключение-TOF).
25
Команда «Trend View»
Рис. 13. Рабочее поле при выполнении команды «Trend View»
Рис. 14. Схема подключения тумблера (датчика) к дискретному входу микроконтроллера
14. Для исследования команды «счетчик на увеличение» следует на рабочем поле MicroWin подготовить программу, представленную на рис. 21. Уставка счетчика равна 5. Пять раз включают и выключают тумблер I0.0. Если после
этих действий включается светодиод, соответствующий дискретному выходу
Q0.0, можно считать, что команда успешно выполнена.
26
Содержание отчета по лабораторной работе.
1. Титульный лист.
2. Задание по лабораторной работе.
3. Программы для исследования таймеров на языке ступенчатой логики в пакете Step 7–MicroWin.
4. Описание работы программ для исследования таймеров на языке ступенчатой логики в пакете Step 7–MicroWin.
6. Выводы по работе.
Контрольные вопросы.
1. Каков порядок работы с программным пакетом Step7–MicroWin?
2. Какие модули ПМК S7-200 используются при управлении пуском и
остановом электрического двигателя?
3. Какие модули ПМК S7-200 используются при управлении скоростью
электрического двигателя?
4. Для каких целей могут использоваться таймерные команды?
5. Какие типы таймерных команд существуют?
6. Какой вид имеет структура таймерной команды на языке релейной логики (Ladder)?
7. Что такое тик таймера?
8. Что такое уставка таймера?
9. Какие значения тиков таймера существуют?
10. Как запустить на исполнение таймерную команду?
11. Что понимается под термином «срабатывание таймера»?
12. Какие переменные характеризуют таймерную команду?
13. Сколько таймерных команд имеется в программном обеспечении
STEP 7–MicroWin?
14. Какое максимальное время уставки имеет таймер с тиком 10 мс?
15. Чем отличаются таймеры TON и TOF?
16. Чем отличаются таймеры TON и TONR?
17. Когда срабатывает бит таймера?
18. Что такое текущее значение таймера?
19. Когда производится сравнение текущего значения с уставкой таймера
с тиком 1 мс?
20. Когда производится сравнение текущего значения с уставкой таймера
с тиком 10 мс?
21. Когда производится сравнение текущего значения с уставкой таймера
с тиком 100 мс?
22. Как осуществить сброс таймера TON?
23. Как проверить выполнение таймерной команды?
Лабораторная работа № 2. Исследование программных элементов раздела «Счетчики» библиотеки «S7-200».
Цель работы: исследование команд «счетчики» библиотеки «S7-200».
Задание по лабораторной работе.
27
1. Исследовать с помощью микроконтроллера S7-222 счетную команду
CTU.
2. Исследовать с помощью микроконтроллера S7-222 счетную команду
CTD.
3. Исследовать с помощью микроконтроллера S7-222 счетную команду
CTUD.
4. Сделать выводы по работе.
Указания по методике выполнения задания.
Программно реализуемые счетчики могут работать в режиме прямого,
обратного и реверсивного счета, т.е. на увеличение или уменьшение содержимого счетчика. Реверсивные счетчики выполняют операции и увеличения, и
уменьшения. Общее число счетчиков в ПО S7-222 равно 25610. Номера счетчиков в режимах прямого, обратного и реверсивного счета не должны совпадать.
На рис. 1 приведено изображение команды «Счетчик на увеличение».
Рис. 1. Изображение команды «Счетчик на увеличение» на языке Ladder
(STEP7–MicroWin) микроконтроллера S7-200
Команда «Счетчик на увеличение» (прямой счет) увеличивает содержимое счетчика при появлении нарастающих фронтов сигнала на входе CU (Count
Up – прямой счет). Когда текущее значение содержимого счетчика (С57) становится больше или равно уставке (предустановленному значению PV – Preset
Value), бит счетчика (С57) устанавливается в состояние логической единице.
Счетчик сбрасывается, когда включается вход сброса R. Счетчик при отсутствии сигнала сброса на входе R всякий раз увеличивает свое содержимое на единицу, когда сигнал на входе CU переходит из состояния 0 в 1 (the transition from
off to on). Счетчик прекращает счет, когда текущее значение достигает значения
уставки PV. Максимальная уставка PV равна 3276710.
На рис. 2. приведены временные диаграммы, поясняющие выполнение
команды «Счетчик на увеличение» (прямой счет) с PV=3. По временным диаграммам можно провести анализ выполнения команды «Счетчик на увеличение» для характерных ситуаций. Будем рассматривать вариант, когда счетчик
был сброшен и его содержимое равняется 0. Сигнал на входе R до момента
28
времени t6 равен логическому нулю. В момент времени t1 сигнал на входе CU
изменяет свое состояние с 0 на 1 (положительный фронт импульса) и содержимое счетчика увеличивается на 1. В момент времени t2 сигнал на входе CU снова изменяет свое состояние с 0 на 1 и содержимое счетчика также увеличивается на 1 и становится равным 2. В момент времени t3 сигнал на входе CU в третий раз изменяет свое состояние с 0 на 1, а содержимое счетчика становится
равным 3 и уравнивается со значением уставки PV=3. В этот момент срабатывает бит счетчика и устанавливается в 1. В моменты времени t4 и t5 сигнал на
входе CU изменяет свое состояние с 0 на 1, но бит счетчика находится в состоянии 1, а содержимое счетчика последовательно увеличивается до 4, а затем
и до 5. Если бы положительный фронт на входе CU продолжал появляться, то
содержимое счетчика увеличивалось бы последовательно на 1 до значения
3276710. В момент времени t6 сигнал на входе сброса R изменяет свое состояние
с 0 на 1, а содержимое счетчика становится равным 0. В этот же момент сбрасывается бит счетчика и становится равным 0.
Рис. 2. Временные диаграммы, поясняющие выполнение
команды «Счетчик на увеличение» CTU
Счетчик с момента времени t6 готов к новому счету. В момент времени t7
сигнал на входе CU изменяет свое состояние с 0 на 1, а содержимое счетчика
становится равным 1 и т.д.
На рис. 3 приведено изображение команды «Счетчик на уменьшение».
29
Команда обратного счета уменьшает содержимое счетчика от значения уставки
PV при появлении нарастающих фронтов сигнала (передних фронтов) на входе
CD (Count Down – обратный счет). Когда текущее содержимое счетчика становится равным нулю, бит счетчика (С15) включается. Счетчик сбрасывает свой
бит (С15) и загружает текущее значение значением уставки (PV), когда включается вход загрузки (LD). Обратный счет прекращается, когда содержимое счетчика достигает нуля.
Рис. 3. Изображение команды «Счетчик на уменьшение» на языке Ladder
(STEP7–MicroWin) микроконтроллера S7-200
На рис. 4 приведены временные диаграммы, поясняющие выполнение
команды «Счетчик на уменьшение» (обратный счет) с PV=3. По этим диаграммам можно провести анализ выполнения данной команды для характерных ситуаций.
В некоторых случаях при управлении электроприводами (ЭП) может потребоваться применение команд - счетчиков с реверсивным счетом, например,
сначала на сложение, а потом на вычитание. Такие задачи приходится решать
при реализации узлов сравнения в регуляторах положения ЭП с позиционированием систем программного управления промышленными установками и робототехническими комплексами.
На рис. 5 приведено изображение команды «Реверсивный счетчик». Эта
команда увеличивает содержимое счетчика при появлении нарастающих (передних) фронтов сигнала на входе CU (Count Up – прямой счет). Эта же команда уменьшает содержимое счетчика при появлении нарастающих фронтов сигнала на входе CD (Count Down – обратный счет). Когда текущее содержимое
счетчика становится равным уставке PV или больше PV, бит счетчика (С25)
включается. Сравнение текущего содержимого счетчика с уставкой PV производится всякий раз, когда выполняется команда «Реверсивный счетчик». К биту
счетчика можно обращаться в битовых командах. К текущему содержимому
счетчика обращаются в командах сравнения, арифметических и логических командах, командах пересылки и в других командах обработки информации.
30
Счетчик сбрасывается, когда включается вход сброса R. При этом текущее содержимое счетчика становится равным нулю, а бит счетчика (С25) выключается.
На входе CD счетчика
На входе LD счетчика
t
t
Текущее содержимое счетчика
Уставка cчетчика PV=3
5
4
3
2
1
0
3
3
2
2
1
t1 t2
t3
Состояние бита
счетчика
0
t4
t5
t6
t7
t8
t
t
Рис. 4. Временные диаграммы, поясняющие выполнение
команды «Счетчик на уменьшение» CTD
Максимальное значение содержимого реверсивного счетчика при его работе на сложение равно 3276710. Если при таком содержимом приходит сигнал
на вход CU, то содержимое становится равным 32768 со знаком минус. Максимальное значение содержимого реверсивного счетчика при его работе на вычитание равно -3276810. Если при таком содержимом приходит сигнал на вход CD,
то содержимое становится равным 3276710.
На рис. 6. приведены временные диаграммы, поясняющие выполнение
команды «Реверсивный счетчик» (обратный счет) с PV=4. По временным диаграммам можно провести анализ выполнения данной команды для характерных
ситуаций.
31
Адрес бита
C25
CU
CTUD
Адрес бита 1
CD
Адрес бита 2
R
10
PV
Рис. 5. Изображение команды «Реверсивный счетчик» на языке Ladder
(STEP7–MicroWin) микроконтроллера S7-200
Рис. 6. Временные диаграммы, поясняющие выполнение
команды «Реверсивный счетчик» CTUD
Для исследования команды «счетчик на увеличение» следует на рабочем
32
поле MicroWin подготовить программу, представленную на рис. 7. Уставка
счетчика равна 5. Пять раз включают и выключают тумблер I0.0. Если после
этих действий включается светодиод, соответствующий дискретному выходу
Q0.0, можно считать, что команда успешно выполнена.
Рис. 7. Программа для исследования команды счетчика на увеличение
CTU
Содержание отчета по лабораторной работе.
1. Титульный лист.
2. Задание по лабораторной работе.
3. Программы для исследования счетчиков на языке ступенчатой логики в
пакете Step 7–MicroWin.
4. Описание работы программ для исследования счетчиков на языке ступенчатой логики в пакете Step 7–MicroWin.
6. Выводы по работе.
Контрольные вопросы.
1. Для каких целей могут использоваться команды счетчиков?
2 Какие существуют типы счетчиков?
3 Сколько счетчиков имеется в программном обеспечении STEP 7–
MicroWin?
4 Какой вид имеет структура команды «счетчик» на языке релейной логики (Ladder)?
5 Что такое реверсивный счетчик?
6 Что такое уставка счетчика?
7 Как запустить на исполнение команду «Счетчик»?
33
8 Какие переменные характеризуют команду «Счетчик»?
9 Что понимается под термином «срабатывание счетчика»?
10 Какую максимальную уставку имеет счетчик?
11 Чем отличаются счетчики CTU и CTD?
12 Чем отличаются счетчики CTU и CTUD?
13 Когда срабатывает бит счетчика?
14 Что такое текущее значение счетчика?
15 Когда увеличивается текущее значение счетчика?
Лабораторная работа № 3. Исследование программных элементов по передаче информации библиотеки «S7-200».
Цель работы: приобретение навыков при разработке программ управления электроприводом для мехатронных устройств с использованием команд передачи информации микроконтроллера S7-200.
Задание по лабораторной работе.
1. Ознакомиться с теоретическими сведениями.
2. Исследовать с помощью микроконтроллера S7-222 команду передачи
байта MOV_B.
3. Исследовать с помощью микроконтроллера S7-222 команду передачи
слова MOV _W.
4. Исследовать с помощью микроконтроллера S7-222 команду передачи
двойного слова MOV _DW.
5. Исследовать с помощью микроконтроллера S7-222 команду блочной
передачи байтов BLKMOV_B.
6. Исследовать с помощью микроконтроллера S7-222 команду блочной
передачи слов BLKMOV _W.
7. Исследовать с помощью микроконтроллера S7-222 команду блочной
передачи двойного слова двойных слов BLKMOV _DW.
8. Исследовать с помощью микроконтроллера S7-222 команду «Обмен
байтов в слове» SWAP.
9. Сделать выводы по работе.
Указания по методике выполнения задания.
Команды передачи информации составляют до 80% от объема программ
управления промышленными установками. Эту группу команд часто называют
командами пересылки. К ним относятся операции «Передача байта», «Передача
слова», «Передача двойного слова», «Передача действительного числа», «Блочная передача байтов», «Блочная передача слов», «Блочная передача двойных
слов», «Передача в память байта физических дискретных входов» и «Передача
из памяти байта данных на восемь физических дискретных выходов». На рис. 1
представлено изображение команд «Передача байта» и «Передача слова», а на
рис. 2 – команд «Передача двойного слова» и «Передача действительного числа».
34
Рис 1. Изображение команд «Передача байта» и «Передача слова»
Рис 2. Изображение команд «Передача двойного слова» и «Передача действительного числа»
Операция «Передача байта» передает входной байт (8 бит), представленный по адресу на входе IN в выходной байт (8 бит), адрес которого представлен
на выходе OUT. Входной байт при этом не изменяется.
Таблица 1
Области памяти для операндов команд передачи информации микроконтроллера S7-200, «работающих» с байтами
Операнды
IN1
OUT
Области памяти
VВ, IВ, QВ, MВ, SMВ, SB, AC, константа
VВ, IВ, QВ, MВ, SMВ, SB, AC
Операция «Передача слова» (16 бит) передает входное слово, представленное на входе IN, в выходное слово (16 бит), адрес которого представлен на
выходе OUT. Входное слово при этом не изменяется. Входные операнды могут
быть записаны с использованием непосредственной адресации (см. рис. 3).
Таблица 2
Области памяти для операндов команд передачи информации микроконтроллера S7-200, «работающих» со словами
Операнды
Области памяти
IN1, IN2
VW, IW, QW, MW, SMW, AIW, T, C, AC, константа
OUT
VW, IW, QW, MW, SMW, AIW, T, C, AC
35
Аналогичные выводы можно сделать также и по отношению к командам
передачи информации микроконтроллера S7-200, «работающим» с двойными
словами (32 бита).
Рис 3. Изображение команд «Передача байта» и «Передача слова» с
использованием непосредственной адресации
На рис. 4 представлено изображение команд «Блочная передача байтов» и
«Блочная передача слов», а на рис. 5 – команд «Блочная передача двойных
слов».
I0.1
I0.1
BLKMOV_ B
BLKMOV_ W
EN
VB 100
IN
25
N
EN
OUT
VB 300
VW100
IN
17
N
OUT
VW300
Рис 4. Изображение команд «Блочная передача байтов» и «Блочная передача слов»
Рис 5. Изображение команды «Блочная передача двойных слов»
36
Команда «Блочная передача байтов» передает заданное количество байтов (N) входного массива, начинающегося с адреса, указанного на входе IN, в
выходной массив, начальный адрес которого указан на выходе OUT. Параметр
N находится в пределах от 1 до 255. Аналогичный вывод можно сделать в отношении других «блочных» команд. Области памяти для операндов команд
блочной передачи информации микроконтроллера S7-200 такие же, как и для
обычных команд пересылки.
Все команды пересылки не изменяют состояния флагов процессора Z, C и
S ( значений битов SM1.0 - нуль, SM1.0 - перенос, SM1.0 – отрицательный знак
числа).
К командам пересылки относится также операция «Перестановка байтов
в слове» (Обмен байтов в слове, см. рис. 6).
Рис 6. Изображение команд «Перестановка байтов в слове»
Методические указания по выполнению лабораторной работы
1. Исследование команд пересылки осуществляется при их выполнении
микроконтроллером.
2. Максимальное значение входных операндов в командах пересылки
байтов не должно превышать 255.
3. Максимальное значение входных операндов в командах пересылки целых чисел не должно превышать 65535.
4. Максимальное значение входных операндов в командах пересылки
двойных целых чисел не должно превышать 4294967295.
Содержание отчета по лабораторной работе.
1. Титульный лист.
2. Задание по лабораторной работе.
3. Программы для исследования команд пересылки на языке ступенчатой
логики в пакете STEP 7–MicroWin.
4. описание работы программ для исследования команд пересылки на
языке на языке ступенчатой логики в пакете Step 7–MicroWin.
6. Выводы по работе.
Контрольные вопросы.
1. С какой целью в программах управления применяются команды пересылки?
2. Какие существуют типы команд пересылки?
3. Какие существуют ограничения на операнды команд пересылки?
37
4. Каков порядок работы с программным пакетом STEP7-MicroWIN?
5. Какие модули ПМК S7-200 используются при управлении пуском и остановом электрического двигателя?
6. Какие модули ПМК S7-200 используются при управлении скоростью
электрического двигателя?
7. Как проверить выполнение команды пересылки?
8. Как проверить выполнение команды пересылки в режиме «Program Status»?
9. Как проверить выполнение команды пересылки в режиме «Chart
Status»?
Лабораторная работа № 4. Исследование арифметических команд библиотеки «S7-200».
Цель работы: разработка программ управления электроприводом для
мехатронных устройств с использованием арифметических команд микроконтроллера S7-200.
Задание по лабораторной работе.
1. Ознакомиться с теоретическими сведениями.
2. Исследовать с помощью микроконтроллера S7-222 команду сложения
целых чисел ADD_I.
3. Исследовать с помощью микроконтроллера S7-222 команду вычитания
целых чисел SUB_I.
4. Исследовать с помощью микроконтроллера S7-222 команду умножения
целых чисел MUL_I.
5. Исследовать с помощью микроконтроллера S7-222 команду деления
целых чисел DIV_I.
6. Исследовать с помощью микроконтроллера S7-222 команду умножения
целых чисел с 32-разрядным операндом MUL.
7. Исследовать с помощью микроконтроллера S7-222 команду деления
целых чисел с 32-разрядным операндом DIV.
8. Исследовать с помощью микроконтроллера S7-222 команду сложения
двойных целых чисел ADD_DI.
9. Исследовать с помощью микроконтроллера S7-222 команду вычитания
двойных целых чисел SUB_DI.
10. Исследовать с помощью микроконтроллера S7-222 команду умножения двойных целых чисел MUL _DI.
11. Исследовать с помощью микроконтроллера S7-222 команду деления
двойных целых чисел DIV _DI.
12. Исследовать с помощью микроконтроллера S7-222 команду сложения
вещественных чисел ADD_R.
13. Исследовать с помощью микроконтроллера S7-222 команду вычитания вещественных чисел SUB_R.
14. Исследовать с помощью микроконтроллера S7-222 команду умножения вещественных чисел MUL_R.
38
15. Исследовать с помощью микроконтроллера S7-222 команду деления
вещественных чисел DIV_R.
16. Исследовать с помощью микроконтроллера S7-222 команду извлечения квадратного корня SQRT.
17. Исследовать с помощью микроконтроллера S7-222 команду синуса
SIN.
18. Исследовать с помощью микроконтроллера S7-222 команду косинуса
COS.
19. Исследовать с помощью микроконтроллера S7-222 команду тангенса
TAN.
20. Исследовать с помощью микроконтроллера S7-222 команду натурального логарифма LN.
21. Исследовать с помощью микроконтроллера S7-222 команду экспоненциальной функции EXP.
22. Исследовать с помощью микроконтроллера S7-222 команды инкремента INC_B и декремента DEC_B для байтов.
23. Исследовать с помощью микроконтроллера S7-222 команды инкремента INC_W и декремента DEC_W для целых чисел.
24. Исследовать с помощью микроконтроллера S7-222 команды инкремента INC_DW и декремента DEC_DW для двойных целых чисел.
25. Сделать выводы по работе.
Указания по методике выполнения задания.
Арифметические команды относятся к командам обработки информации
и применяются чаще всего в основной части управляющей программы для реализации математической модели системы управления. Программное обеспечение (ПО) STEP 7–MicroWin имеет достаточно богатую библиотеку арифметических команд. В ней можно выделить арифметические команды с целыми числами, арифметические команды с двойными целыми числами, арифметические
команды с вещественными числами. Арифметические команды с целыми числами и двойными целыми числами могут выполнять алгебраическое сложение
и вычитание, умножение и деление. Арифметические команды с вещественными операндами, кроме перечисленных действий, способны выполнять извлечение квадратного корня, взятие логарифмов, определение тригонометрических
функций. К арифметическим командам также относят команды инкремента и
декремента.
Арифметические команды с целыми числами.
На рис. 1 и 2 представлены на языке лестничной логики (LAD) изображения команд «Сложить целые числа» (ADD_I) и «Вычесть целые числа» (SUB_I)
соответственно. Максимальное значение входных операндов в арифметических
командах с целыми числами не должно превышать 3276710.
39
Рис. 1. Изображение команды «Сложить целые числа»
При выполнении команды «Сложение целых чисел» (ADD_I) пятнадцатиразрядный (двухбайтный) операнд, находящийся по адресу VW100, складывается с пятнадцатиразрядным операндом, находящимся по адресу VW200.
Пятнадцатибитный (двухбайтный) результат сложения записывается в ячейку
памяти по адресу VW300 (старший байт VB300, младший байт VB301). Для
команды ADD_I имеются ограничения: входные операнды IN1 и IN2 должны
быть такой величины, чтобы результат операции не превосходил 32767. Для
экономии памяти данных адрес хранения результата может совпадать с адресом
операнда IN2 (см. рис. 3).
Рис. 2. Изображение команды «Вычитание целых чисел»
Рис. 3. Изображение команды «Сложить целые числа» с совмещенными
40
адресами для входного операнда IN2 и результата сложения
Условно операцию сложения ADD_I для микроконтроллеров семейства
S7-200 на языке LAD представляют следующим образом.
IN1 + IN2 = OUT
При выполнении арифметических операций в ПО STEP 7–MicroWin могут использоваться разные методы адресации операндов, предусмотренные для
S7-200. Среди них: абсолютный метод адресации, когда в команде указывается
адрес операнда (см. рис. 1 – рис. 3), и непосредственный, при котором в команде указывается сам операнд (см. рис. 4). Для записи результата операции указывается адрес операнда (абсолютный метод адресации). Операнды в арифметических командах при непосредственной адресации могут записываться в двух
системах счисления –десятичной и шестнадцатеричной. При использовании
шестнадцатеричной системы счисления операнд 15А816 записывается следующим образом: 16#15A8.
Для указания адресов входных операндов арифметических команд с целыми числами в ПО STEP 7–MicroWin могут использоваться различные области
памяти данных (см. табл. 1).
Все команды обработки информации, в том числе арифметические, оказывают определенное влияние на биты состояния процессора (признаки, флаги,
разряды). Значения битов состояния процессора указывают на результат последней операции по обработке информации. Для хранения значений битов состояния процессора в микроконтроллерах семейства S7-200 используется байт
SMB1 (область памяти специальных меркеров). В табл. 2 приведено назначение
битов SMB1. Термин «переполнение» при описании назначения бита-признака
SMB1.2 означает, что результат операции имеет значение, большее, чем 3276710
для формата целых чисел (т.е. размер операнда больше 15 разрядов). Для формата байта переполнение – это ситуация, когда результат операции имеет значение, большее чем 12710 (т.е. размер операнда больше 7 разрядов). Для формата двойных целых чисел переполнение соответствует результату операции,
большему чем 214748364710 (т.е. размер операнда больше 31 разряда). Отрицательный результат операции оценивается по значению старшего разряда операнда. Если старший разряд операнда равен 1, то результат операции отрицательный. Если старший разряд операнда равен 0, то результат операции положительный.
Рис. 4. Изображение команды «Сложить целые числа» с использова41
нием непосредственной адресации для исходных операндов
Таблица 1
Области памяти для операндов арифметических команд, «работающих» с
целыми числами
Операнды
Области памяти
IN1, IN2
VW, IW, QW, MW, SMW, AIW, T, C, AC, константа
OUT
VW, IW, QW, MW, SMW, AIW, T, C, AC
При выполнении команды SUB_I «Вычитание целых чисел» (см. рис. 2)
из пятнадцатиразрядного (двухбайтного) операнда, находящегося по адресу
VW100, вычитается пятнадцатиразрядный операнд, находящийся по адресу
VW200. Пятнадцатибитный (двухбайтный) результат вычитания записывается в
ячейку памяти по адресу VW300. Для команды SUB_I имеются ограничения:
входные операнды IN1 и IN2 не должны быть больше 3276710. Для экономии
памяти данных адрес хранения результата может совпадать с адресом операнда
IN1. При совпадении адреса хранения результата может с адресом операнда IN2
команда вычитания не выполняется, а результат представляется в виде дополнительного кода операнда IN2 в шестнадцатеричной системе счисления. При
выполнении команды вычитания SUB_I входные операнды IN1 и IN2 могут
быть записаны непосредственно. Условно операцию вычитания SUB_I для
микроконтроллеров семейства S7-200 на языке LAD представляют следующим
образом:
IN1 – IN2=OUT.
Команда вычитания SUB_I оказывает определенное влияние на биты состояния процессора (признаки, флаги, разряды). Если результат операции равен
нулю (0), то становится равным 1 бит состояния SM1.0. Если результат арифметической операции отрицателен, то становится равным единице бит состояния SM1.2. Если происходит переполнение, то становится равным единице бит
состояния SM1.1.
Таблица 2
Назначение битов SMB1
Биты состояния (специальные меркеры)
SM1.0
SM1.1
SM1.2
SM1.3
SM1.4
Назначение
Этот бит активизируется (становится равным 1), если результат операции равен нулю (0)
Этот бит активизируется, если происходит переполнение
Этот бит активизируется, если результат арифметической
операции отрицателен
Этот бит активизируется при делении на ноль
Этот бит активизируется, если при выполнении операции
42
SM1.5
SM1.6
SM1.7
«записать значение в таблицу» таблица переполняется
Этот бит активизируется, если при выполнении операции
LIFO или FIFO происходит считывание значений из «пустой» таблицы
Этот бит активизируется, если значение, представленное
не BCD – формате должно преобразовываться в двоичное
значение
Этот бит активизируется, если значение ASCII не может
быть преобразовано в шестнадцатеричное значение
На рис. 5 и рис. 6 представлены изображения команд умножения (MUL_I)
и деления (DIV_I) целых чисел. Эти команды работают с 15-разрядными операндами на входе и выходе, и их не следует путать с командами MUL и DIV, у
которых результат операции хранится в 32-разрядной ячейке памяти.
Рис. 5. Изображение команды «Умножить целые числа»
Рис. 6. Изображение команды деления целых чисел
При выполнении команды MUL_I «Умножение целых чисел» (см. рис. 5)
пятнадцатиразрядный (двухбайтный) операнд, находящийся по адресу VW100
умножается на пятнадцатиразрядный операнд, находящийся по адресу VW200.
43
Пятнадцатибитный (двухбайтный) результат умножения записывается в ячейку
памяти по адресу VW300. Для экономии памяти данных адрес хранения результата может совпадать с адресом операнда IN2. При выполнении команды умножения MUL_I входные операнды IN1 и IN2 могут быть записаны непосредственно. Для команды MUL_I имеются ограничения: входные операнды IN1 и
IN2 должны быть такой величины, чтобы результат операции не превосходил
3276710. Условно операцию умножения MUL_I для микроконтроллеров семейства S7-200 на языке LAD представляют следующим образом.
IN1 х IN2=OUT.
Команда умножения MUL_I оказывает такое же влияние на биты состояния процессора, как команда сложения. Если результат операции равен нулю
(0), то становится равным 1 бит состояния SM1.0. Если результат арифметической операции отрицателен, то становится равным 1 бит состояния SM1.2. Если
происходит переполнение, то становится равным 1 бит состояния SM1.1.
При выполнении команды DIV_I «Деление целых чисел» (см. рис. 6) пятнадцатиразрядный (двухбайтный) операнд (делимое), находящийся по адресу
VW100 делится на пятнадцатиразрядный операнд, находящийся по адресу
VW200 (делитель). Пятнадцатибитный (двухбайтный) результат деления (частное) записывается в ячейку памяти по адресу VW300. Для экономии памяти
данных адрес хранения результата может совпадать с адресом операнда IN2.
При выполнении команды деления DIV_I входные операнды IN1 и IN2 могут
быть записаны непосредственно. Для команды DIV_I имеются ограничения:
входные операнды IN1 и IN2 не должны быть больше 3276710. Условно операцию деления DIV_I для микроконтроллеров семейства S7-200 на языке LAD
представляют следующим образом.
IN1/IN2=OUT.
Команда деления DIV_I оказывает такое же влияние на биты состояния
процессора, как команда сложения.
На рис. 7 и рис. 8 представлены изображения команд умножения (MUL) и
деления (DIV) целых чисел с 32-разрядным результатом операции.
I0.2
MUL
EN
VW100
IN1
VW200
IN2
OUT
VD 300
Рис. 7. Изображение команды умножения целых чисел с 32-разрядным результатом
При выполнении команды MUL «Умножение целых чисел с 32разрядным результатом» (см. рис. 7) пятнадцатиразрядный (двухбайтный) операнд, находящийся по адресу VW100 умножается на пятнадцатиразрядный
44
операнд, находящийся по адресу VW200. Тридцатидвухбитный (четырехбайтный) результат умножения записывается в ячейку памяти по адресу VD300.
При выполнении команды умножения MUL входные операнды IN1 и IN2 могут
быть записаны непосредственно. Условно операцию умножения MUL для микроконтроллеров семейства S7-200 на языке LAD представляют следующим образом.
IN1 х IN2=OUT.
Команда умножения MUL оказывает такое же влияние на биты состояния
процессора, как команда сложения.
Рис. 8. Изображение команды деления целых чисел с 32-разрядным результатом
При выполнении команды DIV - «Деление целых чисел с 32-разрядным
результатом» (см. рис. 8) пятнадцатиразрядный (двухбайтный) операнд, находящийся по адресу VW100, делится на пятнадцатиразрядный операнд, находящийся по адресу VW200. Тридцатидвухбитный (четырехбайтный) результат
деления записывается в ячейку памяти по адресу VD300. При выполнении команды деления DIV входные операнды IN1 и IN2 могут быть записаны непосредственно. Условно операцию умножения DIV для микроконтроллеров семейства S7-200 на языке LAD представляют следующим образом.
IN1/IN2=OUT.
Команда деления DIV оказывает такое же влияние на биты состояния
процессора, как команда сложения.
Арифметические команды с двойными целыми числами
Команды «Сложить двойные целые числа» и «Вычесть двойные целые
числа» складывают или вычитают два 32-битовых целых числа IN1, IN2 и дают
32-битовый результат(OUT). Максимальное значение входных операндов в
арифметических командах над двойными целыми числами не должно превышать 214748364710.
На рис. 9 и 10 представлены на языке лестничной логики (LAD) изображения команд «Сложить двойные целые числа» (ADD_DI) и «Вычесть двойные
целые числа» (SUB_DI) соответственно. При выполнении команды «Сложение
двойных целых чисел» (ADD_DI) тридцатидцатиодноразрядный (четырехбайтный) операнд, находящийся по адресу VD100, складывается с тридцатидцати45
одноразрядным операндом, находящимся по адресу VD200. Тридцатидцатиоднобитный (четырехбайтный) результат сложения записывается в ячейку памяти
по адресу VD300. Условно операцию сложения ADD_DI для микроконтроллеров семейства S7-200 на языке LAD представляют следующим образом.
IN1 +IN2=OUT
Рис. 9. Изображение команды «Сложить двойные целые числа»
При выполнении команды SUB_DI -«Вычитание двойных целых чисел»
(см. рис. 10) из тридцатидцатиодноразрядного (четырехбайтного) операнда, находящегося по адресу VD100, вычитается тридцатидцатиодноразрядный операнд, находящийся по адресу VD200. Тридцатидцатиоднобитный (четырехбайтный) результат вычитания записывается в ячейку памяти по адресу VD300.
Для команды SUB_DI имеются ограничения: входные операнды IN1 и IN2 не
должны быть больше 214748364710. Условно операцию вычитания SUB_DI для
микроконтроллеров семейства S7-200 на языке LAD представляют следующим
образом.
IN1 - IN2=OUT
I0.2
SUB_DI
EN
VD100
IN1
VD200
IN2
OUT
VD300
Рис. 10. Изображение команды «Вычесть двойные целые числа»
Для указания адресов входных операндов арифметических команд с
двойными целыми числами в ПО STEP 7–MicroWIN могут использоваться различные области памяти данных (см. табл. 3).
46
Таблица 3
Области памяти для операндов арифметических команд, «работающих» с
двойными целыми числами
Операнды
IN1, IN2
OUT
Области памяти
VD, ID, QD, MD, SMD, SD, AC, константа
VD, ID, QD, MD, SMD, SD, AC
Арифметические команды, работающие с двойными целыми числами,
оказывают такое же влияние на биты состояния процессора, как арифметические команды с целыми числами.
На рис. 11 и 12 представлены на языке лестничной логики (LAD) изображения команд «Умножить двойные целые числа» (MUL_DI) и «Разделить
двойные целые числа» (DIV_DI) соответственно. При выполнении команды
«Умножение двойных целых чисел» (MUL_DI) тридцатидцатиодноразрядный
(четырехбайтный) операнд, находящийся по адресу VD100, умножается на тридцатидцатиодноразрядный операнд, находящийся по адресу VD200. Тридцатидцатиоднобитный (четырехбайтный) результат умножения записывается в
ячейку памяти по адресу VD300. Условно операцию умножения MUL_DI для
микроконтроллеров семейства S7-200 на языке LAD представляют следующим
образом: IN1 х IN2=OUT.
I0.2
MUL_DI
EN
VD100
IN1
VD200
IN2
OUT
VD300
Рис.11. Изображение команды «Умножить двойные целые числа»
При выполнении команды DIV_DI -«Деление двойных целых чисел» (см.
рис. 12) тридцатидцатиодноразрядный (четырехбайтный) операнд, находящийся по адресу VD100 делится на тридцатидцатиодноразрядный операнд, находящийся по адресу VD200. Тридцатиоднобитный (четырехбайтный) результат
деления записывается в ячейку памяти по адресу VD300. Результат деления состоит из двух частей (по два байта каждая). В старшей части (байты с адресами
VB300 и VB301) хранится остаток от деления. В младшей части (байты с адресами VB302 и VB303) хранится частное. Для команды DIV_DI имеются ограничения: входные операнды IN1 и IN2 не должны быть больше 214748364710.
Условно операцию деления DIV_DI для микроконтроллеров семейства S7-200
47
на языке LAD представляют следующим образом: IN1/IN2=OUT.
I0.2
DIV_DI
EN
VD100
IN1
VD200
IN2
OUT
VD300
Рис. 12. Изображение команды «Разделить двойные целые числа»
Команды инкремента и декремента
К арифметическим также относятся команды инкремента и декремента.
Всего таких команд 6. В зависимости от размера операнда это команды для
байта, слова и двойного слова. На рис. 13 и 14 представлены на языке лестничной логики (LAD) изображения команд инкремента и декремента байта (увеличения байта на 1 или уменьшения на 1). Эти команды в программах управления
могут быть использованы как счетчики.
I0.1
INC_B
EN
158
IN
OUT
VB300
Рис. 13. Изображение команды «Инкремент байта»
При выполнении команды INC_B «Инкремент байта» (см. рис. 13) к
восьмиразрядному (однобайтному) операнду 158 прибавляется 1. Результат выполнения команды, равный 159, записывается в ячейку памяти по адресу
VВ300. Возможны и другие варианты представления команды INC_B, приведенные на рис. 15. Условно операцию инкремента INC_B для микроконтроллеров семейства S7-200 на языке LAD представляют следующим образом: IN +
1=OUT.
При выполнении команды DEC_B -«Декремент байта» (см. рис. 14) от
восьмиразрядного (однобайтного) операнда 205 отнимается 1. Результат вы48
полнения команды, равный 204, записывается в ячейку памяти по адресу
VВ200. Условно операцию инкремента DEC_B для микроконтроллеров семейства S7-200 на языке LAD представляют следующим образом:
IN - 1=OUT.
Максимальное значение входного операнда в командах инкремента и
декремента над байтами не должно превышать 25510.
Команды инкремента и декремента оказывает такое же влияние на биты
состояния процессора, как и арифметические команды.
Рис.14. Изображение команды «Декремент байта»
Рис. 15. Варианты команды «Инкремент байта»
Таблица 4
Области памяти для операндов команд инкремента и декремента для байта
Операнды
Области памяти
IN
VВ, IВ, QВ, MВ, SMВ, SB, AC, константа
OUT
VВ, IВ, QВ, MВ, SMВ, SB, AC, константа
Для указания адресов входных операндов инкремента и декремента для
байта в ПО STEP 7–MicroWin могут использоваться различные области памяти
данных (см. табл. 4).
Выполнение команд инкремента и декремента для слова и двойного слова
производится так же, как и для байта. Отличие состоит только в размере входного операнда. Максимальный размер входного операнда – слова равен 3276710.
49
Максимальный размер входного операнда – двойного слова равен
214748364710. Операции и увеличения и уменьшения двойного слова на 1 учитывают знак. Изображения команд инкремента и декремента для слова приведены на рис. 16, для двойного слова на рис. 17, а области памяти данных в табл.
5 и 6.
Рис. 16. Изображения команд «Инкремент слова» и «Декремент слова»
Таблица 5
Области памяти для операндов команд инкремента и декремента для слова
Операнды
IN
OUT
Области памяти
VW, IW, QW, MW, SMW, AIW, T, C, SW, AC, константа
VW, IW, QW, MW, SMW, AIW, T, C, SW, AC, константа
Рис. 17. Изображения команд «Инкремент двойного слова» и «Декремент
двойного слова»
Таблица 6
Области памяти для операндов команд инкремента и декремента для
двойного слова
Операнды
IN
OUT
Области памяти
VD, ID, QD, MD, SMD, SD, AC, константа
VD, ID, QD, MD, SMD, SD, AC, константа
50
Арифметические команды с вещественными числами
Управляющие программы при обработке информации используют арифметические команды над вещественными числами для удобства составления
программы и повышения точности. К ним относятся команды сложения, вычитания, умножения и деления, извлечение квадратного корня, взятие логарифмов, определение тригонометрических функций. Для хранения операндов в
этих командах используются области памяти для двойных чисел (см. табл. 7).
Таблица 7
Области памяти для операндов арифметических команд с вещественными
числами
Операнды
IN
OUT
Области памяти
VD, AC, константа
VD, AC, константа
На рис. 18 и 19 представлены на языке лестничной логики (LAD) изображения команд «Сложить вещественные числа» (ADD_I) и «Вычесть вещественные числа» (SUB_I) соответственно. Значения входных операндов в арифметических командах над вещественными числами находятся в пределах от 10-37 до
1038 (положительные значения) и от -10-37 до -1038 (отрицательные значения).
Рис. 18. Изображение команды «Сложить вещественные числа»
51
Рис. 19. Изображение команды «Вычитание вещественных чисел»
При выполнении команды «Сложение вещественных чисел» (ADD_R)
операнд в формате реальных чисел, для представления в котором требуется четыре байта (старший байт находится по адресу VD100), складывается с операндом в формате реальных чисел, для представления в котором требуется четыре
байта (старший байт находится по адресу VD200). Результат сложения записывается в формате реальных чисел, для представления в котором требуется четыре байта (старший байт находится по адресу VD300). Условно операцию
сложения ADD_R для микроконтроллеров семейства S7-200 на языке LAD
представляют следующим образом:
IN1 +IN2=OUT.
Команда может использовать непосредственную адресацию для входных
операндов. На рис. 20 показан вариант использования непосредственной адресации.
Рис. 20. Изображение команды «Сложение вещественных чисел» с непосредственной адресацией
При выполнении команды «Вычитание вещественных чисел» (SUB_R) из
операнда в формате реальных чисел, для представления в котором требуется
четыре байта (старший байт находится по адресу VD100), вычитается операнд в
формате реальных чисел, для представления в котором требуется четыре байта
(старший байт находится по адресу VD200). Результат вычитания записывается
в формате реальных чисел, для представления в котором требуется четыре байта (старший байт находится по адресу VD300). Условно операцию вычитания
SUB_R для микроконтроллеров семейства S7-200 на языке LAD представляют
следующим образом: IN1 - IN2=OUT.
Арифметические команды над вещественными числами оказывает такое
же влияние на биты состояния процессора, как и арифметические команды с
целыми операндами.
На рис. 21 и рис. 22 представлены на языке лестничной логики (LAD)
изображения команд «Умножить вещественные числа» (MUL_R) и «Разделить
вещественные числа» (DIV_R) соответственно.
52
Рис. 21. Изображение команды «Умножить вещественные числа»
Условно операцию умножения MUL_R для микроконтроллеров семейства S7-200 на языке LAD представляют следующим образом:
IN1 х IN2=OUT.
I0.2
DIV_R
EN
VD100
IN1
VD200
IN2
OUT
VD300
Рис. 22. Изображение команды «Разделить вещественные числа»
Условно операцию деления DIV_R для микроконтроллеров семейства S7200 на языке LAD представляют следующим образом:
IN1/IN2=OUT.
Вещественные числа, или числа с плавающей точкой, представляются в
формате, описанном в стандарте ANSI/IEEE 754-1985 (одинарная точность).
В группу арифметических команд над вещественными числами также
входят: извлечение квадратного корня (SQRT, см. рис. 23), определение синуса
(SIN, см. рис. 24), косинуса (COS, см. рис. 25), тангенса (TAN, см. рис. 26), натурального логарифма (LN, см. рис. 27), экспоненциальной функции (EXP, см.
рис. 28).
53
Рис. 23. Изображение команды «Извлечение квадратного корня»
Рис. 24. Изображение команды «Определение синуса»
I0.2
COS
EN
VD100
IN
OUT
VD300
Рис. 25. Изображение команды «Определение косинуса»
Рис. 26. Изображение команды «Определение тангенса»
54
Рис. 27. Изображение команды «Определение натурального логарифма»
I0.2
EXP
EN
VD100
IN
OUT
VD300
Рис. 28. Изображение команды «Определение экспоненциальной функции»
Методические указания по выполнению лабораторной работы
1. Исследование арифметической команды осуществляется при ее выполнении микроконтроллером.
2. Максимальное значение входных операндов в арифметических командах над целыми числами не должно превышать 32767.
3. Максимальное значение входных операндов в арифметических командах над двойными целыми числами не должно превышать 2147483647.
4. Значения входных операндов в арифметических командах над вещественными числами могут находиться в пределах от 10-37 до 1038 (положительные
значения) и от .-10-37 до -1038 (отрицательные значения).
5. Максимальное значение входного операнда в командах инкремента и
декремента над байтами не должно превышать 255.
Содержание отчета по лабораторной работе.
1. Титульный лист.
2. Задание по лабораторной работе.
3. Программы для исследования арифметических команд на языке ступенчатой логики в пакете STEP 7–Micro/WIN.
4. Описание работы программ для исследования арифметических команд
на языке на языке ступенчатой логики в пакете STEP 7–MICRO/WIN.
6. Выводы по работе.
Контрольные вопросы.
1. С какой целью в программах управления применяются арифметические
55
команды?
2. Какие существуют типы арифметических команд?
3. Какие существуют ограничения на операнды арифметических команд?
4. Какие преимущества имеют арифметические команды с вещественными числами?
5. Каков порядок работы с программным пакетом STEP7-MicroWIN?
6. Какие модули ПМК S7-200 используются при управлении пуском и
остановом электрического двигателя?
7. Какие модули ПМК S7-200 используются при управлении скоростью
электрического двигателя?
8. Как проверить выполнение арифметической команды?
9. Как проверить выполнение арифметической команды в режиме «Program Status»?
10. Как проверить выполнение арифметической команды в режиме «Chart
Status»?
Лабораторная работа № 5. Исследование логических команд библиотеки
«S7-200».
Цель работы: разработка программ управления электроприводом для
мехатронных устройств с использованием логических команд микроконтроллера S7-200.
Задание по лабораторной работе.
1. Ознакомиться с теоретическими сведениями.
2. Исследовать с помощью микроконтроллера S7-222 команду логического сложения байтов WOR_B.
3. Исследовать с помощью микроконтроллера S7-222 команду логического сложения целых чисел WOR_W.
4. Исследовать с помощью микроконтроллера S7-222 команду логического сложения двойных целых чисел WOR_D.
5. Исследовать с помощью микроконтроллера S7-222 команду логического умножения байтов WAND_B.
6. Исследовать с помощью микроконтроллера S7-222 команду логического умножения целых чисел WAND_W.
7. Исследовать с помощью микроконтроллера S7-222 команду логического умножения двойных целых чисел WAND_D.
8. Исследовать с помощью микроконтроллера S7-222 команду «Исключающее ИЛИ» в формате байта WXOR_B.
9. Исследовать с помощью микроконтроллера S7-222 команду «Исключающее ИЛИ» в формате целых чисел WXOR_W.
10. Исследовать с помощью микроконтроллера S7-222 команду «Исключающее ИЛИ» в формате двойных целых чисел WXOR_D.
11. Исследовать с помощью микроконтроллера S7-222 команду инверсии
байта INV_B.
12. Исследовать с помощью микроконтроллера S7-222 команду инверсии
56
слова INV_W.
13. Исследовать с помощью микроконтроллера S7-222 команду инверсии
двойного слова INV_D.
25. Сделать выводы по работе.
Указания по методике выполнения задания.
Логические команды относятся к командам обработки информации и
применяются в основной части управляющей программы для реализации математической модели системы управления. Программное обеспечение (ПО) STEP
7–MicroWin имеет богатую библиотеку логических команд. В ней можно выделить логические команды над байтами, логические команды над целыми числами, логические команды двойных целых чисел.
Особенностью логических команд микроконтроллеров является то, что
они выполняют операцию конъюнкции (операция «И», совпадения, «логическое умножение»), операцию дизъюнкции (операция «ИЛИ», объединения,
«логическое сложение»), операцию «исключающее ИЛИ» (сложение по модулю «2», функция неравнозначности), операцию инверсии над многоразрядными операндами (для байтов – восемь разрядов, для целых чисел – 16 разрядов,
для двойных целых чисел – 32 разряда).
Логические команды над байтами
На рисунках 1, 2 и 3 представлены на языке лестничной логики (LAD)
изображения команд «Операция И» (WAND_B), «Операция ИЛИ» (WOR_B) и
«Операция исключающее ИЛИ» (WXOR_B), работающих с двумя операндами
соответственно (формат операнда – байт). На входы IN1 и IN2 подаются входные операнды. На рис. 4 приведено изображение команды «Инверсия байта»
(INV_B). На вход IN подается входной операнд. Максимальное значение входных операндов в логических командах над байтами не должно превышать 255.
Входные операнды в логических командах могут быть заданы непосредственно
числами в десятичной или шестнадцатеричной системах счисления, а также
участвовать в операциях с использованием абсолютного метода адресации, как
в командах, представленных на рис. 1, 2, 3 и 4. Логические команды имеют
один выход OUT. Программист записывает на этом выходе адрес ячейки памяти, в которую будет занесен результат логической операции. Адрес ячейки памяти на выходе OUT может совпадать с адресом одного из операндов. Логические команды оказывают влияние только на один разряд (признак, флаг)
состояния процессора – разряд нуля (zero), функцию которого выполняет
бит SM1.0 (область памяти специальных меркеров). Для запуска на вход EN
логических команд подается сигнал разрешения, равный логической единице и
формируемый с помощью любой битовой команды. Если на вход подан EN логический ноль, то логическая операция не выполняется.
57
Рис. 1. Изображение команды «Операция И» (WAND_B)»
Рис. 2. Изображение команды «Операция ИЛИ» (WOR_B)»
Рис. 3. Изображение команды «Операция Исключающее ИЛИ»
(WХOR_B)»
Рис. 4. Изображение команды «Инверсия байта» (INV_B)»
58
Логические команды над целыми числами и двойными целыми числами
На рисунках 5, 6 и 7 представлены на языке лестничной логики (LAD)
изображения команд «Операция И» (WAND_W), «Операция ИЛИ» (WOR_W) и
«Операция Исключающее ИЛИ» (WXOR_W) соответственно (формат операнда
– целое число). На рис. 8 приведено изображение команды «Инверсия слова»
(INV_W). Максимальное значение входных операндов в логических командах
над целыми числами не должно превышать 65535. Команды WAND_W,
WOR_W и WXOR_W работают с двумя с шестнадцатиразрядными операндами,
а команда INV_W – с одним операндом.
Рис. 5. Изображение команды «Операция И» (WAND_W)»
I0.1
WOR _W
EN
VW100
IN1
VW200
IN2
OUT
VW300
Рис. 6. Изображение команды «Операция ИЛИ» (WOR_W)»
I0.1
WXOR _W
EN
VW100
IN1
VW200
IN2
OUT
VW300
Рис. 7. Изображение команды «Операция Исключающее ИЛИ»
(WХOR_W)»
59
Рис. 8. Изображение команды «Инверсия слова» (INV_W)»
На рисунках 9, 10 и 11 представлены на языке лестничной логики (LAD)
изображения команд «Операция И» (WAND_DW), «Операция ИЛИ»
(WOR_DW) и «Операция Исключающее ИЛИ» (WXOR_DW) соответственно
(формат операнда – целое число). На рис. 12 приведено изображение команды
«Инверсия слова» (INV_DW). Максимальное значение входных операндов в
логических командах над целыми числами не должно превышать 4294967295.
Команды WAND_DW, WOR_DW и WXOR_DW работают с двумя с тридцатидвухразрядными операндами, а команда INV_DW – с одним операндом.
Рис. 9. Изображение команды «Операция И» (WAND_DW)»
Рис. 10. Изображение команды «Операция ИЛИ» (WOR_DW)»
60
Рис. 11. Изображение команды «Операция Исключающее ИЛИ»
(WХOR_DW)»
Рис. 12. Изображение команды «Инверсия двойного слова»
(INV_DW)»
Логические команды применяются для реализации математических моделей при управлении промышленными установками, технологическими комплексами, системами электроприводов, при эксплуатации автомобилей, сотовых телефонов и др. С их помощью выделяют сигналы датчиков, информирующих о завершении каких-либо процессов или операций, аварийных ситуаций. Они также участвуют в определении изменений сигналов задания в системах управления.
В команде «Инверсия» («НЕ») участвует один операнд. Математически
эта операция изображается формулой (1).
OUT
 IN .
(1)
Таблица истинности для команды «Инверсия»
IN
OUT
1
0
0
1
Операцию «И» для двух операндов представляют следующим образом и
называют командой логического умножения [формула (2)].
IN1  IN2=OUT.
(2)
Таблица истинности для команды «И»
61
Входы
IN1
0
1
0
1
IN2
0
0
1
1
Выход
OUT
0
0
0
1
Операцию «ИЛИ» для двух операндов и называют командой логического
сложения [формула (3)].
IN1  IN2=OUT.
(3)
IN1
0
1
0
1
Таблица истинности для команды «ИЛИ»
Входы
Выход
IN2
OUT
0
0
0
1
1
1
1
1
Команду «Исключающее ИЛИ» иначе называют операцией неравнозначности или операцией сложения по модулю «2» и математически записывают в
виде формулы (4).
IN1  IN2=OUT.
(4)
Таблица истинности для команды «Исключающее ИЛИ»
Входы
Выход
IN1
IN2
OUT
0
0
0
1
0
1
0
1
1
1
1
0
Функции «И», «ИЛИ», «НЕ» являются элементарными логическими
функциями. Функция «Исключающее ИЛИ» имеет более сложную структуру,
является производной от элементарных функций «И», «ИЛИ», «НЕ» и может
быть записана с использованием этих функций [формула (5)].
OUT  ( IN1  IN2 )  ( IN1  IN2) .
(5)
Все логические команды оказывают определенное влияние на бит нуля
состояния процессора (признак нуля; флаг нуля; разряд нуля). Значение бита
нуля указывает на результат последней логической операции. Для хранения
значений бита нуля состояния процессора в микроконтроллерах семейства S7200 используется бит SMB1.0 (область памяти специальных меркеров). В табл. 1
приведено назначение битов SMB1.
62
Таблица 1
Назначение битов SMB1
Биты состояния (специальные меркеры)
SM1.0
Назначение
Этот бит активизируется (становится равным 1), если результат операции равен нулю (0)
SM1.1
Этот бит активизируется, если происходит переполнение
SM1.2
Этот бит активизируется, если результат арифметической
операции отрицателен
SM1.3
Этот бит активизируется при делении на ноль
SM1.4
Этот бит активизируется, если при выполнении операции
«записать значение в таблицу» таблица переполняется
SM1.5
Этот бит активизируется, если при выполнении операции
LIFO или FIFO происходит считывание значений из «пустой» таблицы
SM1.6
Этот бит активизируется, если значение, представленное
не BCD – формате, должно преобразовываться в двоичное
значение
SM1.7
Этот бит активизируется, если значение ASCII не может
быть преобразовано в шестнадцатеричное значение
Бит SM1.0 активизируется (становится равным 1), если результат логической операции равен нулю (0). Если результат логической операции равен единице (1), то бит нуля (SM1.0) становится равным нулю.
При выполнении логических операций в ПО STEP 7–MicroWin могут использоваться разные методы адресации операндов, предусмотренные для S7200. Среди них: абсолютный метод адресации, когда в команде указывается адрес операнда, и непосредственный, при котором в команде указывается сам
операнд. Для записи результата операции указывается адрес операнда (абсолютный метод адресации). Операнды в логических командах при непосредственной адресации могут записываться в двух системах счисления: десятичной и
шестнадцатеричной. При использовании шестнадцатеричной системы счисления операнд 15А816 записывается следующим образом: 16#15A8.
Для указания адресов входных операндов логических команд с целыми
числами в ПО STEP 7–MicroWin могут использоваться различные области памяти данных (см. табл. 2).
Таблица 2
Области памяти для операндов логических команд, «работающих» с целыми числами
63
Операнды
IN1, IN2
OUT
Области памяти
VW, IW, QW, MW, SMW, AIW, T, C, AC, константа
VW, IW, QW, MW, SMW, AIW, T, C, AC
Рассмотрим примеры выполнения логических команд в формате байта.
Операнды:
1) 10010;
2) 20010.
Операция «И»
10010=6416=011001002;
20010=С816=110010002.
011001002

110010002
010000002=4016=6410.
Операция «ИЛИ»

011001002
110010002
111011002=ЕС16=23610.
Операция «Исключающее ИЛИ»
011001002

110010002
101011002=АС16=17210.
Операция «НЕ»-Инверсия
01100100 2  100110112  9 B16  15310.
Содержание отчета по лабораторной работе.
1. Титульный лист.
2. Задание по лабораторной работе.
3. Программы для исследования логических команд на языке ступенчатой
логики в пакете STEP 7–MicroWin.
4. Описание работы программ для исследования логических команд на
языке на языке ступенчатой логики в пакете Step 7–MicroWin.
6. Выводы по работе.
Контрольные вопросы.
1. С какой целью в программах управления применяются логические команды?
2. Какие существуют типы логических команд?
3. Какие существуют ограничения на операнды логических команд?
4. Каков порядок работы с программным пакетом STEP7-MicroWIN?
5. Какие модули ПМК S7-200 используются при управлении пуском и
остановом электрического двигателя?
6. Какие модули ПМК S7-200 используются при управлении скоростью
электрического двигателя?
64
7. Как проверить выполнение логической команды?
8. Как проверить выполнение логической команды в режиме «Program
Status»?
9. Как проверить выполнение логической команды в режиме «Chart
Status»?
Лабораторная работа № 6. Исследование команд сдвига библиотеки «S7200».
Цель работы: исследование команд сдвига для использования их при
разработке программ управления электроприводом для мехатронных устройств
на основе микроконтроллера S7-200.
Задание по лабораторной работе.
1. Ознакомиться с теоретическими сведениями.
2. Исследовать с помощью микроконтроллера S7-222 команду сдвига
байта вправо SHR_B.
3. Исследовать с помощью микроконтроллера S7-222 команду сдвига
слова вправо SHR _W.
4. Исследовать с помощью микроконтроллера S7-222 команду сдвига
двойного слова вправо SHR _DW.
5. Исследовать с помощью микроконтроллера S7-222 команду сдвига
байта влево SHR_B.
6. Исследовать с помощью микроконтроллера S7-222 команду сдвига
слова влево SHR _W.
7. Исследовать с помощью микроконтроллера S7-222 команду сдвига
двойного слова влево SHR _DW.
8. Исследовать с помощью микроконтроллера S7-222 команду циклического сдвига байта вправо SHR_B.
9. Исследовать с помощью микроконтроллера S7-222 команду циклического сдвига слова вправо SHR _W.
10. Исследовать с помощью микроконтроллера S7-222 команду циклического сдвига двойного слова вправо SHR _DW.
11. Исследовать с помощью микроконтроллера S7-222 команду циклического сдвига байта влево SHR_B.
12. Исследовать с помощью микроконтроллера S7-222 команду циклического сдвига слова влево SHR _W.
13. Исследовать с помощью микроконтроллера S7-222 команду циклического сдвига двойного слова влево SHR _DW.
14. Сделать выводы по работе.
Указания по методике выполнения задания.
Команды сдвига относятся к группе операций по обработке информации.
Они могут применяться для выделения нужного бита операнда (байт, слово,
двойное слово), для выполнения сложных математических операций и т.п.
Свойства операндов, записанных в двоичной системе счисления таковы, что
сдвиг содержимого операнда на один разряд вправо равносилен умножению
65
этого операнда на 2, а сдвиг содержимого операнда на один разряд влево – делению на 2.
Команды сдвига разделяются на две группы: обычный сдвиг и циклический сдвиг. В каждой группе деление на подгруппы можно продолжить в зависимости от направления сдвига (вправо и влево) и в зависимости от типа
операнда (байт, слово, двойное слово).
На рис. 1 представлено изображение команды «Сдвиг байта вправо», а на
рис. 3 - изображение команд «Сдвиг слова вправо» и «Сдвиг двойного слова
вправо».
Рис. 1. Изображение команды «Сдвиг байта вправо»
Операция «Сдвиг байта вправо» сдвигает вправо на N разрядов все биты
операнда, адрес которого указан на входе IN команды, и помещает «сдвинутый» операнд по адресу, представленному на выходе OUT команды. В этой
операции в разряды, которые занимали сдвигаемые биты, записываются логические нули. Значение N в команде сдвигов является целым числом и означает количество разрядов, на которое сдвигается операнд. Рекомендуется в
команде сдвига байтов это значение указывать числом не более 8. Если величина сдвига (N) будет больше 8, входной операнд сдвигается только на восемь разрядов.
Операции сдвига влияют на некоторые флаги состояния процессора, которые хранятся в битах специального меркера SM1.0 (нуль) и SM1.1 (переполнение-перенос). Если выходной операнд (OUT) в результате операции сдвига
станет равным нулю, то бит SM1.0 станет равным логической единице. Если
последний выдвигаемый бит равен 1, то бит SM1.1 станет равным логической
единице.
На рис. 2 схематично показан процесс сдвига операнда В516 вправо на 3
разряда. Входной операнд (IN) В516=100101012. Выходной операнд (OUT) после
сдвига на 3 разряда стал равен 000100102=1216. В пятом, шестом и седьмом разрядах выходного операнда (OUT) записаны логические нули. В бите SM1.1 записана логическая единица, так как последний выдвигаемый бит равен единице.
66
Рис. 2. Схема сдвига операнда В516 вправо
Рис. 3. Изображение команд «Сдвиг слова вправо» и «Сдвиг двойного слова вправо»
Аналогично осуществляется процесс сдвига слова и двойного слова. Отличие состоит в значении величины сдвига N. Для команды сдвига слова максимальное значение N равно логической единице6, а для двойного слова 32.
На рис. 4 представлено изображение команды «Сдвиг байта влево», а на
рис. 5 - изображение команд «Сдвиг слова влево» и «Сдвиг двойного слова влево».
67
Рис. 4. Изображение команды «Сдвиг байта влево»
Рис. 5. Изображение команд «Сдвиг слова влево» и «Сдвиг двойного слова
влево»
Операция «Сдвиг байта влево» сдвигает влево на N разрядов все биты
операнда, адрес которого указан на входе IN команды, и помещает «сдвинутый» операнд по адресу, представленному на выходе OUT команды. В этой
операции в разряды, которые занимали сдвигаемые биты, записываются логические нули.
На рис. 6 схематично показан процесс сдвига операнда В516 влево на 3
разряда. Входной операнд (IN) В516=100101012. Выходной операнд (OUT) после
сдвига на 3 разряда стал равен 101010002=А816. В нулевом, первом и втором
разрядах выходного операнда (OUT) записаны логические нули. В бите SM1.1
записан логический 0, так как последний выдвигаемый бит равен 0.
68
Рис. 6. Схема сдвига операнда В516 влево
На рис. 7 представлено изображение команды «Циклический сдвиг байта
влево», а на рис. 8 - изображение команд «Циклический сдвиг слова влево» и
«Циклический сдвиг двойного слова влево».
Рис. 7. Изображение команды «Циклический сдвиг байта влево»
Рис. 8. Изображение команд «Циклический сдвиг слова влево» и «Циклический сдвиг двойного слова влево»
Операция «Циклический сдвиг байта влево» циклически сдвигает влево
69
на N разрядов все биты операнда, адрес которого указан на входе IN команды, и
помещает «сдвинутый» операнд по адресу, представленному на выходе OUT
команды.
На рис. 9 схематично показан процесс циклического сдвига операнда В516
влево на 3 разряда. Входной операнд (IN) В516=100101012. Выходной операнд
(OUT) после циклического сдвига на 3 разряда стал равен 101010002=А816. В
бите SM1.1 записан логический 0, так как последний выдвигаемый бит равен 0.
Рис. 9. Схема циклического сдвига операнда В516 влево
На рис. 10 представлено изображение команды «Циклический сдвиг байта вправо», а на рис. 11 - изображение команд «Циклический сдвиг слова вправо» и «Циклический сдвиг двойного слова вправо».
Рис. 10. Изображение команды «Циклический сдвиг байта вправо»
70
Рис. 11. Изображение команд «Циклический сдвиг слова вправо» и «Циклический сдвиг двойного слова вправо»
Операция «Циклический сдвиг байта вправо» циклически сдвигает вправо на N разрядов все биты операнда, адрес которого указан на входе IN команды, и помещает «сдвинутый» операнд по адресу, представленному на выходе
OUT команды.
На рис. 12 схематично показан процесс циклического сдвига операнда
В516 вправо на 3 разряда. Входной операнд (IN) В516=100101012. Выходной
операнд (OUT) после циклического сдвига вправо на 3 разряда стал равен
101100102=В216. В бите SM1.1 записан логическая единица, так как последний
выдвигаемый бит равен 1.
Рис. 9. Схема циклического сдвига операнда В516 вправо
Методические указания по выполнению лабораторной работы
1. Исследование команд сдвига и циклического сдвига осуществляется
при их выполнении микроконтроллером.
2. Максимальное значение входных операндов в командах сдвига байтов
не должно превышать 25510.
71
3. Максимальное значение входных операндов в командах сдвига целых
чисел не должно превышать 6553510.
4. Максимальное значение входных операндов в командах сдвига двойных целых чисел не должно превышать 429496729510.
Содержание отчета по лабораторной работе.
1. Титульный лист.
2. Задание по лабораторной работе.
3. Программы для исследования команд сдвига и циклического сдвига на
языке ступенчатой логики в пакете STEP 7–Micro/WIN.
4. Описание работы программ для исследования команд сдвига и циклического сдвига на языке на языке ступенчатой логики в пакете Step 7–
MicroWin.
6. Выводы по работе.
Контрольные вопросы.
1. С какой целью в программах управления применяются команды сдвига
и циклического сдвига?
2. Какие существуют типы команд сдвига?
3. Какие существуют ограничения на операнды команд сдвига и циклического сдвига?
4. Какие существуют ограничения на значение параметра N в командах
сдвига и циклического сдвига?
5. Каков порядок работы с программным пакетом STEP7-MicroWIN?
6. Какие модули ПМК S7-200 используются при управлении пуском и остановом электрического двигателя?
7. Какие модули ПМК S7-200 используются при управлении скоростью
электрического двигателя?
8. Как проверить выполнение команды сдвига?
9. Как проверить выполнение команды сдвига в режиме «Program Status»?
10. Как проверить выполнение команды сдвига в режиме «Chart Status»?
Лабораторная работа № 7. Исследование команд преобразования библиотеки «S7-200».
Цель работы: исследование команд преобразования для использования
их при разработке программ управления электроприводом для мехатронных
устройств на основе микроконтроллера S7-200.
Задание по лабораторной работе.
1. Ознакомиться с теоретическими сведениями.
2. Исследовать с помощью микроконтроллера S7-222 команды преобразования: Байт в целое; Байт в целое; Целое в двойное целое; Двойное целое в
целое.
3. Исследовать с помощью микроконтроллера S7-222 команды преобра72
зования: Двойное целое в вещественное; Вещественное в двойное целое с округлением; Вещественное в двойное целое без округления.
4. Исследовать с помощью микроконтроллера S7-222 команды преобразования: Целое в двоично-десятичный код (BCD формат); Двоично-десятичный
код (BCD формат) в целое.
5. Исследовать с помощью микроконтроллера S7-222 команды преобразования: Бит в шестнадцатеричное число; Шестнадцатеричное число в бит.
6. Исследовать с помощью микроконтроллера S7-222 команду преобразования «Символ в семисегментный код».
7. Сделать выводы по работе.
Указания по методике выполнения задания.
Команды преобразования предназначены для изменения формата операндов. Среди них имеются команды преобразования байта в целое (B_I) и наоборот (I_B), целого в двойное целое (I_DI) и в обратном направлении (DI_I).
В табл. 1 приведены команды преобразования для микроконтроллеров
семейства S7-200.
Таблица 1
Библиотека команд преобразования ПМК семейства S7-200
Наименование команды преобОбозначение команды
Примеразования
чание
1
Байт в целое
B_I
2
Целое в байт
I_B
3
Целое в двойное целое
I_DI
4
Двойное целое в целое
DI_I
5 Двойное целое в вещественное
DI_R
6 Вещественное в двойное целое
ROUND
с округлением
7 Вещественное в двойное целое
TRUNC
без округления
8 Двоично-десятичный код (BCD
BCD_I
формат) в целое
9
Целое в двоично-десятичный
I_BCD
код (BCD формат)
10 Целое в строковую переменную
I_S
11 Строковая переменная в целое
S_I
12 Двойное целое в строковую пеDI_S
ременную
13 Строковая переменная в двойS_DI
ное целое
14 Вещественное в строковую пеR_S
ременную
15 Строковая переменная в вещеS_R
ственное
73
16 Целое в массив ASCII символов
17
18
19
20
21
22
23
ITA
Окончание табл. 1
DTA
Двойное целое в массив ASCII
символов
Вещественное в символы в
формате ASCII
Символы в формате ASCII в
шестнадцатеричное число
Шестнадцатеричное число в
символы в формате ASCII
Бит в шестнадцатеричное число
Шестнадцатеричное число в бит
Символ в семисегментный код
RTA
ATH
HTA
DECO
ENCO
SEG
На рис. 1 и 2 представлены на языке лестничной логики (LAD) изображения команд «Преобразование байта в целое» (B_I), «Преобразование целого в
байт» (I_B), а на рис. 3 и 4 - изображения команд «Преобразование целого в
двойное целое» (I_DI) и «Преобразование двойного целого в целое» (DI_I).
Рис. 1. Изображение команды «Преобразование байта в целое» (B_I)
Рис. 2. Изображение команды «Преобразование целого в байт» (I_B)
74
Рис. 3. Изображение команды «Преобразование целого в двойное целое»
(I_DI)
I0.2
DI_I
EN
ENО
OUT
VD 200
VW300
IN
Рис. 4. Изображение команды «Преобразование двойного целого в целое»
(DI_I)
При выполнении команды «Преобразование байта в целое» (B_I) (см. рис.
1) операнд в формате байта, находящийся в ячейке памяти (ЯП) по адресу
VB200, преобразуется в операнд в формате слова (целое) и сохраняется в ЯП по
адресу VW300. Допустим, что операнд на входе IN, записанный в двоичной
системе счисления, равен 110000112. После выполнения команды «Преобразование байта в целое» (B_I) операнд на выходе OUT в виде двоичного кода будет равен 00000000 110000112, т.е. без расширения знака. Условно команда
«Преобразование байта в целое» (B_I) изображается в следующем виде: IN

 OUT (байт 
 слово). Максимальное значение преобразуемого байта в
этой команде не должно превышать 25510.
При выполнении команды «Преобразование целого в байт» (I_B) (см. рис.
2) операнд в формате слова, находящийся в ячейке памяти (ЯП) по адресу
VW200, преобразуется в операнд в формате байта и сохраняется в ЯП по адресу
VВ300. Условно команда «Преобразование байта в целое» (B_I) изображается в
следующем виде: IN 
 OUT (слово 
 байт). Максимальное значение преобразуемого слова в этой команде не должно превышать 25510 (IN  25510). Если IN > 255, то вывод байта на выходе OUT не производится, а специальный
75
меркер SM1.1 активизируется, т.е. устанавливается в единицу. Это означает,
что произошло переполнение.
При выполнении команды «Преобразование целое в двойное целое»
(I_DI) (см. рис. 3) операнд в формате слова, находящийся в ячейке памяти (ЯП)
по адресу VW200, преобразуется в операнд в формате двойного слова и сохраняется в ЯП по адресу VD300. Допустим, что операнд на входе IN, записанный
в двоичной системе счисления, равен 00111100 110000112. После выполнения
команды (I_DI) операнд на выходе OUT в виде двоичного кода будет равен
00000000 00000000 00111100 110000112, т.е. c расширением положительного
знака. Если операнд на входе IN, записанный в двоичной системе счисления,
равен 11000011 001111002, то после выполнения команды (I_DI) операнд на
выходе OUT в виде двоичного кода будет равен 11111111 11111111 11000011
001111002, т.е. c расширением отрицательного знака. Условно команда «Преобразование байта в целое» (I_DI) изображается в следующем виде: IN 
 OUT
(слово 
 двойное слово). Максимальное значение преобразуемого байта в
этой команде не должно превышать 3276710.
При выполнении команды «Преобразование двойное целого в целое»
(DI_I) (см. рис. 4) операнд в формате слова, находящийся в ячейке памяти (ЯП)
по адресу VD200, преобразуется в операнд в формате байта и сохраняется в ЯП
по адресу VW300. Условно команда (DI_I) изображается в следующем виде: IN

 OUT (двойное слово 
 слово). Максимальное значение преобразуемого слова в этой команде не должно превышать 3276710 (IN  3276710). Если IN >
3276710, то вывод слова на выходе OUT не производится, а специальный меркер
SM1.1 активизируется, т.е. устанавливается в единицу. Это означает, что произошло переполнение.
На рис. 5 представлено на языке лестничной логики (LAD) изображение
команды «Преобразование двойного целого в вещественное байта» (DI_R), а на
рис. 6 и 7 - изображения команд «Преобразование вещественного в двойное целое с округлением» (ROUND) и «Преобразование вещественного в двойное целое без округления» (TRUNC).
Рис. 5. Изображение команды «Преобразование двойного целого в вещественное» (DI_R)
76
Рис. 6. Изображение команды «Преобразование вещественного в двойное
целое с округлением» (ROUND)
Рис. 7. Изображение команды «Преобразование вещественного в двойное
целое без округления» (TRUNC)
При выполнении команды «Преобразование двойного целого в вещественное» (DI_R) (см. рис. 5) операнд в формате двойного слова, находящийся в
ячейке памяти (ЯП) по адресу VD200, преобразуется в операнд в формате c
плавающей запятой (ФПЗ) и сохраняется в ЯП по адресу VD300. Допустим, что
операнд на входе IN, записанный в двоичной системе счисления, равен
00000000 00000000 00111100 110000112. После выполнения команды (DI_R)
операнд на выходе OUT в десятичной системе счисления (формат с плавающей
запятой) будет равен 15555.0. Условно команда (DI_R) изображается в следующем виде: IN 
 OUT (двойное слово 
 операнд в формате c плавающей запятой). Максимальное значение преобразуемого двойного целого в
этой команде не должно превышать 214748364710. Если IN > 214748364710, то
вывод слова на выходе OUT не производится, а специальный меркер SM1.1 активизируется, т.е. устанавливается в единицу. Это означает, что произошло переполнение.
При выполнении команды «Преобразование вещественного в двойное целое» (ROUND) (см. рис. 6) операнд в формате c плавающей запятой (ПЗ), находящийся в ячейке памяти (ЯП) по адресу VD200, преобразуется в операнд в
77
формате двойного слова и сохраняется в ЯП по адресу VD300. Допустим, что
операнд на входе IN, записанный в формате с ПЗ, равен 15555.010. После выполнения команды (ROUND) операнд на выходе OUT в десятичной системе
счисления в формате двойного слова будет равен 1555510. Дробная часть операнда при преобразовании из формата с ПЗ в формат двойного слова округляется. Например, операнд в формате с ПЗ равен 10.4310. После преобразования
операнд в формате двойного слова равен 10, а дробная часть, которая меньше
0.510 и равна 0.4310, отбрасывается. Если операнд в формате с ПЗ равен 10.5310,
то после преобразования операнд в формате двойного слова равен 1110, а дробная часть, которая больше 0.510 и равна 0.5310, округляется. Условно команда
(ROUND) изображается в следующем виде: IN 
 OUT (операнд в формате c
плавающей запятой 
 двойное слово). Максимальное значение преобразуемого вещественного операнда ограничено. Преобразованный операнд на выходе OUT в десятичной системе счисления в формате двойного слова в этой команде не должен превышать 214748364710. Если OUT > 214748364710, то вывод
слова на выходе OUT не производится, а специальный меркер SM1.1 активизируется, т.е. устанавливается в единицу. Это означает, что произошло переполнение.
При выполнении команды «Преобразование вещественного в двойное целое» (TRUNC) (см. рис. 7) операнд в формате c плавающей запятой (ПЗ), находящийся в ячейке памяти (ЯП) по адресу VD200, преобразуется в операнд в
формате двойного слова и сохраняется в ЯП по адресу VD300. Допустим, что
операнд на входе IN, записанный в формате с ПЗ, равен 10.4310. После выполнения команды (TRUNC) операнд на выходе OUT в десятичной системе счисления в формате двойного слова будет равен 1010. Дробная часть операнда при
преобразовании из формата с ПЗ в формат двойного слова отбрасывается. Если
операнд в формате с ПЗ равен 10.5310, то после преобразования операнд в формате двойного слова равен 1010, а дробная часть, которая больше 0.510 и равна
0.5310, как и в первом случае, отбрасывается. Условно команда (TRUNC) изображается в следующем виде: IN 
 OUT (операнд в формате c плавающей
запятой 
 двойное слово). Максимальное значение преобразуемого вещественного операнда ограничено. Преобразованный операнд на выходе OUT в десятичной системе счисления в формате двойного слова в этой команде не должен превышать 214748364710. Если OUT > 214748364710, то вывод слова на выходе OUT не производится, а специальный меркер SM1.1 активизируется, т.е.
устанавливается в единицу. Это означает, что произошло переполнение.
На рис. 8 и 9 представлены на языке лестничной логики (LAD) изображения команд «Преобразование целого в двоично-десятичный код (BCD формат)»
(I_BCD), «Преобразование двоично-десятичного кода в целое» (BCD_I), а на
рис. 10 и 11 - изображения команд «Преобразование бита в шестнадцатеричное
число» (DECO) и «Преобразование шестнадцатеричного числа в бит» (ENCO).
78
Рис. 8. Изображение команды «Преобразование целого в двоичнодесятичный код» (I_BCD)
Рис. 9. Изображение команды «Преобразование двоично-десятичного кода
в целое» (BCD_I)
Рис. 10. Изображение команды «Преобразование бита в шестнадцатеричное число» (DECO)
Рис. 11. Изображение команды «Преобразование шестнадцатеричного числа в бит» (ENCO)
При выполнении команды «Преобразование целого в двоично79
десятичный код» (I_BCD) (см. рис. 8) операнд в формате целых чисел (любая
система счисления), находящийся в ячейке памяти (ЯП) по адресу VD200, преобразуется в операнд в формате BCD (двоично-десятичный код) и сохраняется
в ЯП по адресу VD300. Допустим, что операнд на входе IN команды равен
167A16. После выполнения команды (I_BCD) операнд на выходе OUT в десятичной системе счисления в формате слова будет равен 575410. Условно команда (I_BCD) изображается в следующем виде: IN 
 OUT (операнд в любой
системе счисления в формате целых чисел 
 формат двоично-десятичного
кода BCD). Максимальное значение преобразуемого операнда на входе ограничено. Преобразованный операнд на выходе OUT в десятичной системе счисления в формате слова в этой команде не должен превышать 999910. Если OUT >
999910, то вывод слова на выходе OUT не производится, а специальный меркер
SM1.6 активизируется, т.е. устанавливается в единицу. Это означает, что выходной операнд в формате BCD не соответствует диапазону чисел.
При выполнении команды «Преобразование в двоично-десятичного кода
в целое» (BCD_I) (см. рис. 9) операнд в формате BCD (двоично-десятичный
код), находящийся в ячейке памяти (ЯП) по адресу VD200, но записанный на
входе IN в шестнадцатеричной системе счисления, преобразуется в операнд в
формате целых чисел (шестнадцатеричная система счисления) и сохраняется в
ЯП по адресу VD300. Условно команда (BCD_I) изображается в следующем
виде: IN 
 OUT. Максимальное значение преобразуемого операнда на входе
ограничено. Преобразованный операнд на выходе OUT в десятичной системе
счисления в формате слова в этой команде не должен превышать значения, соответствующего 999910 на входе IN. Если IN > 999910, то вывод слова на выходе
OUT не производится, а специальный меркер SM1.6 активизируется, т.е. устанавливается в единицу. Это означает, что выходной операнд в формате BCD не
соответствует диапазону чисел.
При выполнении команды «Преобразование бита в шестнадцатеричный
код» (DECO) (см. рис. 10) в выходном слове (OUT) находящимся в ячейке памяти (ЯП) по адресу VW300, устанавливается в единицу бит, номер которого
соответствует тому, который представлен младшим полубайтом (младшей тетрадой-4 бита) входного байта (IN), находящимся в ячейке памяти (ЯП) по адресу VВ200. Остальные биты выходного слова устанавливаются в ноль.
При выполнении команды «Преобразование шестнадцатеричного кода в
бит» (ENCO) (см. рис. 11) в младшем полубайте выходного байта (OUT), находящимся в ячейке памяти (ЯП) по адресу VВ300, записывается номер младшего
значащего бита входного слова (IN), находящимся в ячейке памяти (ЯП) по адресу VВ200. Допустим, что операнд на входе IN команды равен 834016. После
выполнения команды (ENCO) операнд на выходе OUT в шестнадцатеричной
системе счисления в формате байта будет равен 0616.
На рис. 12 представлено на языке лестничной логики (LAD) изображение
команды «Преобразование символа в семисегментный код» (SEG).
80
Рис. 12. Изображение команды «Преобразование символа в семисегментный код» (SEG)
При выполнении команды «Преобразование символа в семисегментный
код» (SEG) (см. рис. 12) в выходном байте (OUT), находящимся в ячейке памяти (ЯП) по адресу VВ300, образуется битовая комбинация, которая подсвечивает сегменты семисегментного индикатора. Подсвечиваемые сегменты представляют собой шестнадцатеричную младшую цифру входного байта (IN), находящимся в ячейке памяти (ЯП) по адресу VВ200. Допустим, что операнд на
входе IN команды равен 5016. После выполнения команды (SEG) операнд на
выходе OUT в двоичной системе счисления в формате будет равен 1111112, что
соответствует цифре ноль индикатора. В табл. 2 приведены битовые комбинации для разных цифр семисегментного индикатора.
Таблица 2
Битовые комбинации для цифр семисегментного индикатора
LSD
IN
0
1
2
3
4
5
6
7
Сим Битов. комбинац.
вол - g f e d c b a
0
0 0 1 1 1 1 1 1
1
0 0 0 0 0 1 1 0
2
0 1 0 1 1 0 1 1
3
0 1 0 0 1 1 1 1
4
0 1 1 0 0 1 1 0
5
0 1 1 0 1 1 0 1
6
0 0 1 1 1 1 1 1
7
0 0 0 0 0 1 1 1
LSD
IN
8
9
a
b
c
d
e
f
Символ
8
9
a
b
c
d
e
f
Битов. комбинац.
- g f e d c b a
0 1 1 1 1 1 1 1
0 1 1 0 0 1 1 1
0 1 1 1 0 1 1 1
0 1 1 1 1 1 0 0
0 0 1 1 1 0 0 1
0 1 0 1 1 1 1 0
0 1 1 1 1 0 0 1
0 1 1 1 0 0 0 1
Методические указания по выполнению лабораторной работы
1. Исследование команд преобразования осуществляется при их выполнении микроконтроллером.
2. Максимальное значение входных операндов в командах преобразования байтов не должно превышать 255.
3. Максимальное значение входных операндов в командах преобразования целых чисел не должно превышать 32767.
81
4. Максимальное значение входных операндов в командах преобразования двойных целых чисел не должно превышать 2147483647.
Содержание отчета по лабораторной работе.
1. Титульный лист.
2. Задание по лабораторной работе.
3. Программы для исследования команд преобразования на языке ступенчатой логики в пакете Step 7–Micro/Win.
4. Описание работы программ для исследования команд преобразования
на языке на языке ступенчатой логики в пакете Step 7–MicroWin.
6. Выводы по работе.
Контрольные вопросы.
1. С какой целью в программах управления применяются команды преобразования?
2. Какие существуют типы команд преобразования?
3. Какие существуют ограничения на операнды команд преобразования?
4. Каков порядок работы с программным пакетом STEP7-MicroWIN?
5. Какие модули ПМК S7-200 используются при управлении пуском и остановом электрического двигателя?
6. Какие модули ПМК S7-200 используются при управлении скоростью
электрического двигателя?
7. Как проверить выполнение команды преобразования?
8. Как проверить выполнение команды преобразования в режиме «Program Status»?
9. Как проверить выполнение команды преобразования в режиме «Chart
Status»?
Лабораторная работа № 8. Разработка и исследование программы управления цикловым робототехническим механизмом для реализации в ПМК S7200.
Цель работы: знакомство с описанием программы управления цикловым механизмом для реализации в ПМК S7-200.
Задание по лабораторной работе
1. Ознакомиться с теоретическими сведениями.
2. Подключить микроконтроллер (МК) к персональному компьютеру с
помощью кабеля связи PPI. Установить переключатели на кабеле в положение,
обеспечивающего скорость передачи 9,6 кбод.
3. Подключить источник питания к микроконтроллеру.
4. Произвести запуск ПО «STEP 7–Micro/WIN».
5. Провести анализ работы электропривода по схеме "ШИП-Д".
6. Составить функциональную схему микропроцессорной системы управления электроприводом по схеме "ШИП-Д".
82
7. Составить алгоритм управления электроприводом по схеме "ШИП-Д".
8. Выполнить анализ предлагаемой программы управления электроприводом по схеме "ШИП-Д" на языке на языке ступенчатой логики в пакете
«STEP 7–Micro/WIN».
9. Реализовать предлагаемую программу управления электроприводом по
схеме "ШИП-Д" на языке на языке ступенчатой логики в пакете «STEP 7–
Micro/WIN».
10. Выводы по работе.
Указания по выполнению лабораторной работы
Рассмотрим последовательность действий при разработке и исследовании
программы управления цикловым механизмом для реализации в ПМК S7-200.
Пусть двигатель постоянного тока питается от широтно-импульсного преобразователя. Обратная связь по скорости отсутствует. Параметры двигателя и широтно-импульсного преобразователя для всех вариантов одинаковы. Задана
циклограмма скорости электропривода (рис. 1).
Требуется разработать функциональную схему микропроцессорной системы для управления электроприводом по схеме «ШИП-Д» в соответствии с
заданной циклограммой скорости с применением ПМК. Широтно–импульсный
модулятор реализуется программно. Для решения поставленной задачи следует
описать взаимодействие узлов системы, составить математическую модель
функционирования микропроцессорной системы электропривода и разработать
в соответствии с вариантом (табл. 1) детализированную структурную схему
микропроцессорного устройства для управления электроприводом мехатронного устройства (ЭПМУ) в соответствии с заданной циклограммой скорости. Затем необходимо разработать структурную схему алгоритма управления ЭПМУ
в соответствии с заданной циклограммой скорости и составить подробный
комментарий и математическое обоснование к каждому блоку структурной
схемы алгоритма.
рад/с
4

1

3

2
0
t1

5
t2
t3
t4
t5
t ,c
Время цикла tц
Рис. 1. График цикла работы электропривода
Сначала необходимо составить схему, представляющую совокупность
функциональных блоков, каждый из которых выполняет определенные действия. Функциональная схема содержит основной модуль ПМК (CPU), широтно83
импульсный преобразователь (ШИП), электрический двигатель (М) и рабочую
машину (РМ) (рис. 2).
Ш
И
П
ПМК
М
РМ
Рис. 2. Функциональная схема микропроцессорного устройства для управления
электроприводом для мехатронных устройств по схеме «ШИП-Д»
ШИП состоит из двух узлов: Широтно–импульсного модулятора ШИМ и
системы вентилей. В данном случае ШИМ реализуется программно в ПМК
[2,3]. Широтно–импульсный модулятор (ШИМ), являющийся звеном ШИП,
вырабатывает сигналы, управляющие работой вентилей (электронных ключей
К). Суть широтно–импульсной модуляции состоит в том, что формируются импульсы с периодом следования Т, который остается постоянным (Т=const), а
значения длительности импульсов tи (и следовательно, значения длительности
паузы tП) можно изменять путем изменения напряжения управления Uу ШИМ
(ШИП) и таким образом регулировать время работы ключа в разомкнутом (Р)
или замкнутом (З) состоянии. Временная диаграмма работы ШИМ для разных
заданных значений скорости  показана на рис. 3. Длительность импульса tи
определяет время работы ключа (К) в замкнутом состоянии tP (tP – это время,
когда двигатель подключен к напряжению сети постоянного тока Uo), а время
паузы tn соответствует разомкнутому состоянию ключа (двигатель отключен от
сети). Временная диаграмма работы ключа показана на рис. 4.
t1
t2
t3
Uвых. шип
tp
tn
tp
tn
tp
tn
tp
tn
tp
tn
tp
t
Tk
Рис. 3. Временная диаграмма работы ШИМ для разных заданных значений скорости 
84
Таблица 1
Варианты заданной циклограммы скорости электропривода
Вариант
1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
t1
2
3
6
8
10
5
3
8
6
5
10
4
7
11
9
5
10
2
6
9
12
4
8
7
6
5
6
8
Временный интервал, с
t2
t3
t4
3
4
5
6
8
10
8
10
5
10
5
3
5
3
6
3
6
8
8
6
5
6
5
10
5
10
3
10
3
8
3
8
6
7
11
9
11
9
5
9
5
4
5
4
7
4
7
11
2
6
9
6
9
12
9
12
10
12
10
2
10
2
6
2
4
2
4
10
6
3
9
5
4
7
6
6
8
9
8
9
7
9
7
5
t5
6
5
3
6
8
10
10
3
8
6
5
5
4
7
11
9
12
10
2
6
9
8
12
11
10
7
5
6
Скорость, рад/с
2
3
4
8
9
10
30
50
120
50
120
100
120
100
30
100
30
50
100
30
0
100
30
120
30
120
50
120
60
100
50
100
30
100
30
0
60
100
80
100
80
0
100
60
30
60
30
80
30
80
100
20
30
40
40
60
80
80
120
0
100
40
150
20
80
30
40
60
60
80
120
0
90
130
40
100
140
50
140
50
0
50
0
80
0
80
100
1
7
100
30
50
120
120
50
100
30
120
50
30
60
80
100
60
10
20
40
80
150
30
60
70
80
100
140
50
Uдв
Uср.дв.
3
Р
3
Р
3
Р
3
Р
3
Р
3
tp
tn
tp
tn
tp
tn
tp
tn
tp
tn
tp
Uо
t
Tk
Рис. 4. Временная диаграмма работы ключа
85
5
11
0
0
0
0
0
0
0
0
0
120
0
30
0
0
0
50
0
100
0
0
0
30
0
0
80
100
140
Для составления математической модели функционирования заданной
микропроцессорной системы электропривода рассмотрим работу СЭП
«ШИП-Д». на рис. 3 и 4 используются следующие обозначения: tp – время замкнутого состояния ключа (рабочий участок цикла коммутации); tп – время паузы (разомкнутое состояние ключа); тк – период коммутации.
Тк=tp+tп
Условие работы ШИП выглядит так: Тк=const.
Изменяется значение tр и tп («ширина» импульса), но период коммутации
Тк остается постоянным.
Обычный ШИП состоит из широтно-импульсного модулятора (ШИМ) и
ключа, периодически замыкающегося под управлением ШИМ.
При программной реализации ШИП отсутствует аппаратный ШИМ, а рабочий интервал tР и интервал паузы tn формируется программно с использованием или программного или интервального таймера. При этом непосредственно
задаются значения tP или определяют по формуле
U
U
tP  У  TK У ,
K
U0
где Uу – напряжение управления ШИП; ТК – период коммутации ШИП; U0
– максимальное напряжение ШИП.
Скорость двигателя в рассматриваемой системе ЭП определяется по
уравнению электромеханической характеристики (ЭМХ):

U СР  I ЯСР  R Я
С

,
(1)
где Iяср – среднее значение тока якоря двигателя; Rя  и Ссопротивление цепи якоря и постоянная двигателя; Uср среднее значение напряжения, приложенного к цепи якоря двигателя.
Изменяя Uср, можно регулировать скорость двигателя. Определим
выражение для Uср и покажем его зависимость от значения tр. На рабочем участке работы ШИП в течение tр к якорю двигателя приложено напряжение U0, а
в течение паузы оно практически равно 0 (Uя = 0).
T
t
TK
1 K
1 P
U СР 
 u Я  dt 
  u Я  dt   u Я  dt
TK 0
TK  0
tP
t
 U 0  P  U 0  ,
TK
где  – скважность импульсов ШИП.
t
P
  1   U 0  dt 
TK 0
(2)
Уравнение (2) показывает, что среднее значение напряжения на выходе
ШИП пропорционально интервалу tр. Если подставить уравнение (2) в уравнение (1), получим зависимость угловой скорости двигателя от tр:
 СР  К  t P   C ,
U0
где K 
;
TK  C
(3)
 C  I Я СР 
RЯ 
–статический перепад скорости.
C
86
Итак, среднее значение напряжения, а следовательно, и скорость двигателя СР пропорциональны tр.
Таким образом, скорость двигателя можно задавать значением интервала
времени tр, если отсчитывать его при реализации ШИМ с помощью ПМК. С
этой целью в данной курсовой работе используется понятие интервала дискретности Т0 (t). Значения U 0 , TK и C подобраны таким образом, чтобы K
стало равно 1. Тогда  СР  t P   C . Используя понятие интервала дискретности
t («тик» таймера), можно задавать и отсчитывать tр числом тиков таймера. В
данном задании принято, что период коммутации ШИП условно равен 150 тикам таймера. Максимальная скорость двигателя также принята равной 150 рад в
сек. Учитывая  СР  t P   C , примем, что 1рад/с = 1 тик.
Итак, управление электронным ключом ШИП можно производить с помощью ПМК (см. рис. 2). Сигналы с дискретных выходов ПМК поступают на
импульсные усилители и далее на входы ключей ШИП.
На следующем этапе необходимо разработать и описать алгоритм циклового управления и алгоритм микропроцессорного управления системой «ШИПД» для одного интервала времени циклограммы, например, t1t2 (см. рис. 1).
На рис. 5 приведен алгоритм циклового управления (основная программа
– ОП). Блок 2 алгоритма циклового управления служит для ввода параметров
цикла: значений интервалов времени t i для пяти участков цикла и значений
скоростей на этих участках. Блок 3 алгоритма предназначен для записи в счетчик ПМК числа пройденных участков цикла, обозначенного в начале цикла как
I = 1. В блоке 4 реализуется команда вызова подпрограммы «ШИП». После каждого прохода подпрограммы «ШИП» содержимое счетчика увеличивается на
1 (I = I+1), что в алгоритме отражено в блоке 5. Шестой блок оценивает значение I (условный блок) и, если его значение равно 6, процесс выполнения циклограммы повторяется снова, начиная с первого участка, то есть значение I в начале цикла снова становится равным нулю (I = 0).
1
2
Начало
Ввод исходных данных
3
I=1
4
Вызов
подпрограммы" ШИП"
5
I=I+1
6
да
нет
I=6?
Рис. 5. Алгоритм циклового управления
87
На рис. 6 приведен алгоритм микропроцессорного управления системой
«ШИП-Д» для одного интервала времени циклограммы (см. рис. 3). В данном
случае алгоритм оформлен в виде подпрограммы «ШИП». В блоке 2 вычисляется время паузы tП. Условно алгоритм подпрограммы можно разделить на две
части: первая часть включает блоки, которые реализуют функционирование
ШИП на интервале tР , а вторая часть – tП. Поэтому, если на каком–либо интервале времени циклограммы tР равно нулю, то первую часть алгоритма нет необходимости для этого интервала времени выполнять, что и отражено на выходе
«да» блока 3 (рис. 6). Блоки 3 – 9 предназначены для реализации первой части
подпрограммы «ШИП», а блоки 10 – 16 выполняют вторую часть алгоритма.
В блоке 3 значение tР сравнивается с нулем. Если tР равно нулю, то производится переход к блоку 10, с которого начинается реализация второй части
подпрограммы «ШИП», т.е. паузы. В четвертом блоке на дискретный выход
выдается сигнал логической 1 и с этого момента времени начинается отсчет текущих значений рабочего интервала tТЕК Р i . Для программного контроля времени в блоке 5 организованы счетчики для «измерения» интервала цикла tТЕК i и
рабочего интервала tТЕК Р i. В начале подпрограммы (в блоке 5) счетчики обнуляются, то есть tТЕК i = 0 и tТЕК Р i = 0. Содержимое счетчиков увеличивается на 1
в блоке 7 после каждого обращения к подпрограмме «Время» в блоке 6. В следующем блоке 8 происходит сравнение значений t ТЕК i и t i (задан в блоке 2 ОП).
Если t ТЕК i становится равным t i, то это означает, что «i» - участок цикла
завершен и следует выйти из подпрограммы «ШИП». Это отражено в 8 блоке
выходом «да», который соединен с входом блока 17 (конец подпрограммы). Если tТЕК i не равно t i, то выполнение подпрограммы продолжается далее.
В блоке 9 происходит сравнение значений tТЕК Р i и tР. Из уравнения (3) ранее было получено, что  СР  t P   C , то есть   t P . Если tТЕК Р i становится
равным tР, то это означает, что рабочий интервал ШИП завершен и следует перейти к реализации интервала паузы в этой же подпрограмме. Это отражено в
блоке 9 выходом «да», который соединен с входом блока 17 (конец подпрограммы). Если tТЕК Р i не равно tР, то выполнение подпрограммы продолжается
далее (переход к блоку 6).
В блоке 10 происходит сравнение значения tП с нулем. Если на каком–
либо интервале времени циклограммы tП равно нулю, то вторую часть алгоритма (реализация паузы) нет необходимости выполнять для этого интервала времени и выйти из подпрограммы «ШИП», что и отражено на выходе «да» блока
10 (рис. 6). Блоки второй части алгоритма аналогичны блокам 3 - 9 первой части алгоритма, по которому выполняется программный ШИМ. В блоке 11 на
дискретный выход Q0.0 выдается сигнал логического 0 и с этого момента времени начинается отсчет текущих значений рабочего интервала tТЕК П i. Для программного контроля времени в блоке 12 организован счетчик для «измерения»
паузы tТЕК П i. В блоке 12 он обнуляется, то есть tТЕК П i = 0. Счетчик для контроля
tТЕК i был организован в блоке 5. Содержимое счетчиков увеличивается на 1 в
блоке 14 после каждого обращения к подпрограмме «Время» в блоке 13. В следующем блоке 15 происходит сравнение значений tТЕК i и t i. Если tТЕК i становится равным t i, то это означает, что «i» - участок цикла завершен и следует
выйти из подпрограммы «ШИП». Это отражено в 15 блоке выходом «да», который соединен с входом блока 17 (конец подпрограммы). Если tТЕК i не равно t i,
88
то выполнение подпрограммы продолжается далее. В блоке 16 происходит
сравнение значений tТЕК П i и tП. Значение интервала паузы было рассчитано в
блоке 2. Если tТЕК П i становится равным tП , то это означает, что интервал паузы
работы ШИП завершен и следует выйти из в подпрограммы ШИП. Это отражено в блоке 16 выходом «да», который соединен с входом блока 17 (конец подпрограммы). Если tТЕК П i не равно tП, то выполнение подпрограммы продолжается далее (переход к блоку 13).
При выполнении подпрограммы «ШИП» используется подпрограмма
«Время». Поэтому при выполнении 3 задания необходимо разработать и описать алгоритм подпрограммы «Время» (таймер), с помощью которой можно
реализовать временную задержку продолжительностью в один тик [2,3].
Временные интервалы длительностью более 1 мс и кратных 1 мс в Step-7
можно сформировать, используя встроенные в программное обеспечение таймерные команды (операции) с дискретностью 1 мс, 10 мс и 100 мс.
Временные интервалы длительностью менее 1 мс и не кратных 1 мс в
Step-7 получают, применяя разрабатываемые подпрограммы «Время». На рис. 7
приведен алгоритм подпрограммы «Время» (1 тик = 0,1мс).
Сущность разрабатываемых подпрограмм «Время» можно сформулировать следующим образом. Любая команда микроконтроллера выполняется за
определенное время. Если набрать определенное число команд с известным
временем выполнения и повторять их выбранное число раз, то можно сформировать любую задержку во времени. В табл. 2 для анализа приведено время выполнения некоторых команд S7-200 на языке релейной логики.
Таблица 2
Время выполнения команд S7-200 на языке релейной логики
Операция
Описание
CPU 212
(мкс)
+D
Сложение двойных целых чисел (32 бита)
154
-D
Вычитание двойных целых чисел (32 бита)
156
+I
Сложение целых чисел (16 бит)
119
-I
Вычитание целых чисел (16 бит)
68
+R
Сложение действительных чисел
220
-R
Вычитание действительных чисел
225
Пересылка целых чисел (16 бит)
72
89
1
Начало п/п
2
Вычисление времени
паузы
да
t
3
= 0?
Рi
нет
Выдача логической 1
4
на дискретный выход Q0.0
=0
t тек i =0
tp тек i
5
6
Обращение к п/п
«
TIME
»
7
t тек pi = t тек pi + 1
t тек i = t тек i + 1
да
t текi = t i ?
8
нет
9
да
t тек pi < t pi ?
нет
10
Выдача логического 0
на дискретный выход Q0.0
t
11
=
0
Обращение к п/п
« TIME »
12
13
пi
тек
t тек пi = t тек пi + 1
t тек i = t тек i + 1
да
14
t текi= ti ?
нет
15
да
t тек пi  t пi ?
нет
16
Конец п/п
Рис. 6. Алгоритм микропроцессорного управления системой ШИП-Д
для одного интервала времени циклограммы
Допустим, что требуется осуществить временную задержку tзад.= 0.,9 мс.
Выберем MOV_W в качестве команды блока 3 (рис. 7). Время выполнения этой
90
команды t
MOV_W.
N
Б3
составляет 72 мкс. Определим число повторений N команды
t зад  t Б 2
,
tБ3  tБ4  tБ5
где tБ2 – время выполнения команд второго блока; tБ4 – время выполнения
команд блока 4; tБ5 – время выполнения команд блока 5.
Во втором блоке организуется счетчик числа циклов (повторений блоков
3, 4 и 5), т. е. содержит команду «Прямой счет». В начале подпрограммы счетчик обнуляется (I = 0). Третий блок включает команду MOV_W. В 4 блоке
включается счетчик и его содержимое I увеличивается на 1. В пятом блоке производится сравнение содержимого счетчика I c числом циклов N. Если I < N, то
производится повторное выполнение блоков 3, 4 и 5. Если I = N, то осуществляется выход из подпрограммы «Время».
1
Начало п/п "Время"
2
Организация счетчика циклов N
подпрограммы "Время"
I=0
3
Набор команд с общим временем
выполнения, равным tк
4
I=I+1
5
нет
I= N?
да
6
Конец п/п "Время"
Рис. 7. Алгоритм подпрограммы «Время»
Описание программы циклового управления
Программа циклового управления (рис. 8) начинается с ввода параметров
цикла: значений интервалов времени t i для пяти участков цикла и значений
скоростей на этих участках. Программа циклового управления состоит из девяти схем (Network) и двух подпрограмм.
Описание основной программы циклового управления
Схема Network1 (рис. 8, листы 1 и 2) включает 10 команд MOV_R, запускаемых специальным меркером SM0.0. Первые пять из этих команд предназначены для ввода значений интервалов времени ti для пяти участков цикла, а
остальные пять – для ввода значений скоростей ωi на этих участках. Ввод производится в формате реальных чисел.
Схема Network2 (рис. 8, лист 2) включает команду LBL с номером 0
91
(метка с номером 0). В это место программы происходит переход по команде
JMP с номером 0. Это означает, что начинается работа на первом интервале
цикла.
Схема Network3 (рис. 8, лист 2) включает команду CTU С0, реализующую счетчик на возрастание и запускаемый специальным меркером SM0.0.
Этот счетчик С0 необходим для того, чтобы реализовать контроль номера участка цикла. В данном случае число участков цикла принято равным 5. Об этом
свидетельствует значение задания для счетчика (PV), равное 5. С помощью
данной команды счетчик обнуляется (т.е. текущее значение счетчика становится равным 0). Это происходит, когда включается контакт S0.1 (это происходит в
первом цикле работы CPU) или контакт V1.1, кода срабатывает катушка V1.1
(Network7 на рис. 8, лист3).
Схема Network4 (рис. 8, лист 2) включает команду LBL с номером 1
(метка с номером 1). В это место программы происходит переход по команде
JMP с номером 1. Это означает, что сделан переход на следующий интервал
цикла работы.
Схема Network5 (рис. 8, лист 2) включает команду MOV_W, с помощью
которой текущее значение счетчика С0 (текущее значение номера участка цикла) передается в ячейку VW200. Это делается для удобства работы подпрограммы ШИП (SBR_0).
Схема Network5 также включает команду обращения к подпрограмме с номером 0 (SBR_0), реализующую подпрограмму ШИП.
Схема Network6 (рис. 8, лист 3) включает команду CTU С0, реализующую возрастание текущего значения счетчика С0 при нарастающем фронте импульса разрешения. Нарастающий фронт импульса вырабатывается контактом
«положительный переход» Р при каждом выходе из подпрограммы SBR_0.
Схема network7 (рис. 8, лист 3) включает две команды, выполняемые
только в случае, если текущее значение счетчика С0 достигает значение задания (в данном случае оно равно 5). Одна из них подает питание на катушку
v1.1, которая срабатывает и обнуляет счетчик с0 (см рис. 8, лист 2, network3) и
в результате происходит подготовка на переход на первый участок цикла, т.е.
начинается новый цикл работы. Вторая команда JMP с номером 0 фактически
начинает новый цикл работы установки.
Схема Network8 (рис. 8, лист 3) включает команду JMP с номером 1, которая
будет выполняться, если текущее значение счетчика С0 не достигает значения
задания, т.е. происходит переход на следующий участок цикла.
Схема Network9 (рис. 8, лист 3) включает команду, которая завершает
основную программу, если сработал дискретный датчик I0.3. Управление циклом работы завершается. Если дискретный датчик I0.3 не сработал, то работа
по циклу под управлением программы продолжается.
Описание первой подпрограммы ("ШИП") циклового управления
(SBR_0)
92
Первая подпрограмма циклового управления состоит из 29 схем Network.
Схема Network1 (рис. 8, лист 4) включает пять команд сравнения содержимого текущего значения счетчика С0, переданного в ячейку памяти vw200 и
номеров участков цикла 1 или 2 или 3 или 4 или 5. Если, например, текущее
значение счетчика С0 равно 1, то срабатывает катушка q0.1. При текущем значении счетчика С0, равном 2, срабатывает катушка q0.2. При текущем значении
счетчика С0, равном 3, срабатывает катушка q0.3. При текущем значении счетчика С0, равном 4, срабатывает катушка q0.4. При текущем значении счетчика
С0, равном 5, срабатывает катушка q0.5.
Схема Network2 (рис. 8, лист 5) включает две команды MOV_R, с помощью которых производится загрузка параметров первого участка цикла в первую подпрограмму. Одна из команд MOV_R загружает значение интервала
времени t1, а другая предназначена для ввода скорости ω1 на этом участке. Загрузка параметров происходит только в том случае, если сработал контакт Q0.1.
Срабатывание этого контакта подтверждается свечением соответствующего
светодиода на передней панели модуля CPU222.
Схема Network3 (рис. 8, лист 5) включает две команды, с помощью которых производится загрузка параметров второго участка - цикла интервала времени t2 и скорости ω2 в первую подпрограмму. Загрузка параметров происходит
только в том случае, если сработал контакт Q0.2. Срабатывание этого контакта
подтверждается свечением соответствующего светодиода на передней панели
модуля CPU222.
Схема Network4 (рис. 8, лист 5) включает две команды, с помощью которых производится загрузка параметров третьего участка цикла - цикла интервала времени t3 и скорости ω3 в первую подпрограмму. Загрузка параметров происходит только в том случае, если сработал контакт Q0.3. Срабатывание этого
контакта подтверждается свечением соответствующего светодиода на передней
панели модуля CPU222.
Схема Network5 (рис. 8, лист 5) включает две команды, с помощью которых производится загрузка параметров четвертого участка цикла - цикла интервала времени t4 и скорости ω4 в первую подпрограмму. Загрузка параметров
происходит только в том случае, если сработал контакт Q0.4. Срабатывание
этого контакта подтверждается свечением соответствующего светодиода на передней панели модуля CPU222.
Схема Network6 (рис. 8, лист 6) включает две команды, с помощью которых производится загрузка параметров пятого участка цикла - цикла интервала
времени t5 и скорости ω5 в первую подпрограмму. Загрузка параметров происходит только в том случае, если сработал контакт Q0.5. Срабатывание этого
контакта подтверждается свечением соответствующего светодиода на передней
панели модуля CPU222.
Интервал времени ti хранится в ячейке памяти VD250, а скорость ωi - в
ячейке VD254.
Схема Network7 (рис. 8, лист 6) включает команду SUB_R (вычитание реальных чисел) позволяет вычислить время паузы ШИП (t П). Из уравнения
Тк=tp+tп видно, что для нахождения tп следует из Тк (период коммутации) не93
обходимо вычесть tp.
tп =Тк - tp
Условие работы ШИП выглядит так: Тк=const. Период коммутации Тк
примем равным 150 мкс (0.00015 с). Рабочий интервал может изменяться от 0
(скорость электропривода равна 0) до 150 мкс (номинальная скорость электропривода). tР – рабочий интервал периода коммутации зависит прямо пропорционально от заданной скорости на интервале цикла (ωi ). Поэтому первый
операнд (IN1) в этой команде установлен равным 150, а второй (IN2) хранится
в ячейке памяти VD254 (см. рис. 8, лист 5).
Схема Network8 (рис. 8, лист 6) включает команду сравнения tp с нулем в
формате реальных чисел. Если tp равно нулю, то рабочий интервал программой
в таком случае не реализуется и происходит переход на метку 2 (в схеме
Network19).
Схема Network9 (рис. 8, лист 6) включает команду подачи напряжения
на якорь двигателя с независимым возбуждением. В этой схеме подается напряжение на катушку Q0.0, которая при срабатывании замыкает контакт с таким же именем. Такой вариант реализуется в модулях CPU и модулях ввода –
вывода с транзисторными дискретными выходами (выходы постоянного тока –
модель CPU 6ES7 212-1AB22-0XB0).
Схема Network10 (рис. 8, лист 6) включает команду CTU С1, реализующую счетчик на возрастание и запускаемую специальным меркером SM0.0.
Этот счетчик С1 необходим для того, чтобы реализовать контроль временного
интервала ti участка цикла. В данном случае временной интервал ti участка
цикла задан числом, хранящимся в ячейке памяти (ЯП) VD250. Об этом свидетельствует адрес ЯП для счетчика (PV), равный VD250. Счетчик обнуляется
(т.е. текущее значение счетчика становится равным 0), когда включается контакт S0.1 (это происходит в первом цикле работы CPU) или контакт V1.3, когда
срабатывает катушка V1.3 (см. Network16 на рис. 8, лист 8).
Схема Network11 (рис. 8, лист 7) содержит команду CTU С2, реализующую счетчик на возрастание и запускаемую специальным меркером SM0.0.
Этот счетчик С2 необходим для того, чтобы реализовать контроль рабочего интервала периода коммутации tР, пропорционального скорости на «i»- том участке цикла. В данном случае временной интервал tР задан числом, хранящимся
в ячейке памяти (ЯП) VD254. Об этом свидетельствует адрес ЯП для счетчика
(PV), равный VD254. С помощью данной команды счетчик С2 обнуляется (т.е.
текущее значение счетчика становится равным 0). Это происходит, когда включается контакт S0.1 (это происходит в первом цикле работы CPU) или контакт
V1.4, когда срабатывает катушка V1.4 (см. Network18 на рис. 8 –лист 8).
Схема Network12 (рис. 8, лист 7) содержит команду CTU С3, реализующую счетчик на возрастание и запускаемую специальным меркером SM0.0.
Этот счетчик С3 необходим для того, чтобы реализовать контроль tП. В данном
94
случае временной интервал tП задан числом, хранящимся в ячейке памяти (ЯП)
VD258. Об этом свидетельствует адрес ЯП для счетчика (PV), равный VD258. С
помощью данной команды счетчик обнуляется (т.е. текущее значение счетчика
С3становится равным 0). Это происходит, когда включается контакт S0.1 (это
происходит в первом цикле работы CPU) или контакт V1.5, когда срабатывает
катушка V1.5 (см. Network27 на рис. 8, лист 10).
Схема Network13 (рис. 8, лист 8) включает команду LBL с номером 3
(метка с номером 3). В это место программы происходит переход по команде
JMP с номером 3. Это означает, что сделан переход на повторение подпрограммы 1.
Схема Network14 включает команду обращения к подпрограмме с номером 1 (SBR_1), реализующую подпрограмму "Время".
Схема Network15 (рис. 8, лист 8) включает команду CTU С1, реализующую возрастание текущего значения счетчика С1 при нарастающем фронте импульса разрешения. Нарастающий фронт импульса вырабатывается контактом
«положительный переход» Р при каждом выходе из подпрограммы SBR_1.
Схема Network16 (рис. 8, лист 8) включает 2 команды, выполняемые
только в случае, если текущее значение счетчика С1 достигает заданного значения временного интервала ti участка цикла (в данном случае оно определяется значением, содержащимся в ЯП с адресом VD250). Одна из этих команд подает питание на катушку V1.3, которая срабатывает и обнуляет счетчик С1 (см
рис. 8-лист 8, Network15) и в результате происходит подготовка к реализации
нового временного интервала ti участка цикла, т.е. переход к новому участку
цикла. Вторая команда JMP с номером 4 вызывает выход из подпрограммы
SBR_0.
Схема Network17 (рис. 8, лист 8) включает команду CTU 2, реализующую возрастание текущего значения счетчика С2 при нарастающем фронте импульса разрешения при каждом выходе из подпрограммы SBR_1. Нарастающий
фронт импульса вырабатывается контактом «положительный переход» Р.
Схема Network18 (рис. 8, лист 8) включает команды сравнения и перехода (JMP) с номером 3, которая вызывает переход на метку 3 (т.е. к новому повторению подпрограммы SBR_1), если текущее содержимое счетчика С2 не
равно tР. Вторая команда в схеме Network18 представляет команду "обычная
катушка". Когда текущее содержимое счетчика С2 становится равным tР, катушка срабатывает и замыкает свой контакт в Network17. В результате счетчик
С2 обнуляется (сбрасывается).
Схема Network19 (рис. 8, лист 9) включает команду LBL с номером 2
(метка с номером 2). В это место программы происходит переход по команде
JMP с номером 2 (см. Network8 на рис. 8-лист 6). Это означает, что сделан переход на повторение подпрограммы 1.
Схема Network20 (рис. 8, лист 9) включает команды сравнения JMP с
номером 4,вызывающую выход из подпрограммы SBR_0, если содержимое ЯП
95
с адресом VD258, где содержится значение величины паузы периода коммутации, равно нулю.
Схема Network21 (рис. 8, лист 9) включает команду выключения напряжения на якоре двигателя с независимым возбуждением. В этой схеме отключается напряжение на катушке Q0.0, которая при отпускании размыкает контакт с таким же именем.
Схема Network22 (рис. 8, лист 9) включает команду LBL с номером 5
(метка с номером 5). В это место программы происходит переход по команде
JMP с номером 5. Это означает, что сделан переход на повторение подпрограммы 1.
Схема Network23 (рис. 8, лист 9) включает команду обращения к подпрограмме с номером 1 (SBR_1), реализующую подпрограмму "Время".
Схема Network24 (рис. 8, лист 9) включает команду CTU С1, реализующую возрастание текущего значения счетчика С1 при нарастающем фронте импульса разрешения. Нарастающий фронт импульса вырабатывается контактом
«положительный переход» Р при каждом выходе из подпрограммы SBR_1.
Схема Network25 (рис. 8, лист 10) включает 2 команды, выполняемые
только в случае, если текущее значение счетчика С1 достигает заданного значения временного интервала ti участка цикла (в данном случае оно определяется значением, содержащимся в ЯП с адресом VD250). Одна из этих команд подает питание на катушку V1.3, которая срабатывает и обнуляет счетчик С1 (см
рис. 8, лист 9, Network24) и в результате происходит подготовка к реализации
нового временного интервала ti участка цикла, т.е. переход к новому участку
цикла. Вторая команда JMP с номером 4 вызывает выход из подпрограммы
.SBR_0.
Схема Network26 (рис. 8, лист 10) включает команду CTU 3, реализующую возрастание текущего значения счетчика С3 при нарастающем фронте импульса разрешения при каждом выходе из подпрограммы SBR_1. Нарастающий
фронт импульса вырабатывается контактом «положительный переход» Р.
Схема Network27 (рис. 8, лист 10) включает команды сравнения и перехода (JMP) с номером 5, которая вызывает переход на метку 5 (т.е. к новому
повторению подпрограммы SBR_1), если текущее содержимое счетчика С3 не
равно tП. Вторая команда в схеме Network27 представляет команду "обычная
катушка". Когда текущее содержимое счетчика С3 становится равным tП, катушка срабатывает и замыкает свой контакт в Network26. В результате счетчик
С3 обнуляется (сбрасывается).
Схема Network28 (рис. 8, лист 10) включает команду LBL с номером 4
(метка с номером 4). В это место программы происходит переход по команде
JMP с номером 4 (см. Network16 на рис. 8, лист 8 и Network25 на рис. 8, лист
10 ). Это означает, что необходимо выйти из подпрограммы 0.
Схема Network29 (рис. 8, лист 10) включает команду RET (выход из
подпрограммы SBR_0).
96
Описание второй подпрограммы ("ВРЕМЯ) циклового управления
(SBR_1)
Схема Network1 (рис. 8, лист 11) содержит команду CTU С4, реализующую счетчик на возрастание и запускаемую специальным меркером SM0.0.
Этот счетчик С4 необходим для того, чтобы реализовать контроль числа повторений в подпрограмме "Время". В данном случае число повторений задано числом 15. С помощью данной команды счетчик обнуляется (т.е. текущее значение
счетчика С3становится равным 0). Это происходит, когда включается контакт
S0.1 (это происходит в первом цикле работы CPU) или контакт V1.6, когда срабатывает катушка V1.6 (см. Network5 на рис. 8 –лист 11).
Схема Network2 (рис. 8, лист 11) включает команду LBL с номером 6
(метка с номером 6). В это место программы происходит переход по команде
JMP с номером 6. Это означает, что сделан переход на повторение нескольких
команд подпрограммы 1 (Network3 и Network4).
Схема Network3 (рис. 8, лист 11) включает команду пересылки MOV_W,
которая повторяется в данном случае 15 раз.
Схема Network4 (рис. 8, лист 11) включает команду CTU 4, реализующую возрастание текущего значения счетчика С4 при нарастающем фронте импульса разрешения при каждом повторении части подпрограммы SBR_1. Нарастающий фронт импульса вырабатывается контактом «положительный переход» Р.
Схема Network5 (рис. 8, лист 11) включает 2 команды, выполняемые
только в случае, если текущее значение счетчика С4 достигает заданного значения (в данном случае –это число 15). Одна из этих команд подает питание на
катушку V1.6, которая срабатывает и обнуляет счетчик С4 (см рис. 8, лист 11,
Network4). Вторая команда JMP с номером 6 вызывает выход из подпрограммы
.SBR_1.
Схема Network6 (рис. 8, лист 11) включает команду RET (выход из подпрограммы SBR_1).
97
Network1-Основная программа
SM0.0
EN MOV_R
3.0
IN
OUT
VD300
EN MOV_R
4.0
IN
OUT
VD304
EN MOV_R
10.0
2.0
IN
OUT
EN
MOV_R
IN
OUT
EN
7.0
25.0
IN
MOV_R
OUT
EN
MOV_R
IN
OUT
VD308
VD312
VD316
VD320
EN MOV_R
48.0
IN
OUT
VD324
EN MOV_R
16.0
IN
OUT
VD328
Рис. 8. Программа на языке Step-7 для микропроцессорного управления цикловой системой (электропривод по схеме "ШИП-Д")
Лист 1
98
Network1
EN MOV_R
IN
32.0
OUT
VD332
EN MOV_R
90.0
IN
OUT
VD336
Network2
0
LBL
Network3
SM0.0
C0
CU
CTU
S0.1
R
PV
+5
V1.1
Network4
1
LBL
Network5
SM0.0
EN MOV_W
C0
IN
OUT
VW200
EN SBR_0
Рис. 8. Программа на языке Step-7 для микропроцессорного управления цикловой системой (электропривод по схеме "ШИП-Д")
Лист 2-продолжение
99
Network6
SM0.0
C0
Р
CU
CTU
V1.2
R
+5
Network7
SM0.0
PV
C0
V1.1
0
JMP
Network8
SM0.0
1
JMP
Network9
I0.3
END
Рис. 8. Программа на языке Step-7 для микропроцессорного управления цикловой системой (электропривод по схеме "ШИП-Д")
Лист 3-продолжение
100
Подпрограмма 0-SBR_0
Network1
SM0.0
+1
Q0.1
==1
VW200
+2
Q0.2
==1
VW200
+3
Q0.3
==1
VW200
+4
Q0.4
==1
VW200
+5
Q0.5
==1
VW200
Рис. 8. Программа на языке Step-7 для микропроцессорного управления цикловой системой (электропривод по схеме "ШИП-Д")
Лист 4-продолжение
101
Network2
Q0.1
EN MOV_R
VD300
IN
OUT
VD250
EN MOV_R
Network3
Q0.2
VD300
IN
OUT
VD254
EN MOV_R
VD304
Network4
VD324
IN
OUT
EN
MOV_R
IN
OUT
VD250
VD254
Q0.3
VD308
Network5
VD328
EN
MOV_R
IN
OUT
EN
MOV_R
IN
OUT
VD250
VD254
Q0.4
EN MOV_R
VD312
IN
OUT
VD250
EN MOV_R
VD332
IN
OUT
VD254
Рис. 8. Программа на языке Step-7 для микропроцессорного управления цикловой системой (электропривод по схеме "ШИП-Д")
Лист 5-продолжение
102
Network6
Q0.5
EN MOV_R
VD316
IN
OUT
VD250
EN MOV_R
Network7 VD336
SM0.0
IN
OUT
EN
150.0
IN1
VD254
IN2
VD254
SUB_R
OUT
VD258
Network8
VD254
2
==R
JMP
0
Network9
Q0.0
SM0.0
Начало интервала
t раб
i
Network10
SM0.0
C1
CU
CTU
V1.3
VD250
R
PV
Рис. 8. Программа на языке Step-7 для микропроцессорного управления цикловой системой (электропривод по схеме "ШИП-Д")
Лист 6-продолжение
103
Network11
SM0.0
C2
CU
CTU
V1.4
R
S0.1
VD254
PV
Network12
SM0.0
C3
CU
CTU
V1.5
R
S0.1
VD258
PV
Рис. 8. Программа на языке Step-7 для микропроцессорного управления цикловой системой (электропривод по схеме "ШИП-Д")
Лист 7-продолжение
104
Network13
3
LBL
Network14
SM0.0
EN SBR_1
Network15
SM0.0
C1
Р
CU
VD250
R
PV
CTU
V1.3
Network16
SM0.0
C1
Network17
SM0.0
4
C2
Р
CU
V1.3
CTU
JMP
V1.4
R
PV
VD254
Network18
C2
<R
3
JMP
VD254
SM0.0
V1.4
Рис. 8. Программа на языке Step-7 для микропроцессорного управления цикловой системой (электропривод по схеме "ШИП-Д")
Лист 8-продолжение
105
Network19
2
LBL
Network20
VD258
4
==R
JMP
0
Network21
Q0.0
SM0.0
NOT
Network22
5
LBL
Network23
SM0.0
EN SBR_1
Network24
SM0.0
C1
Р
CU
VD250
R
PV
CTU
V1.3
Рис. 8. Программа на языке Step-7 для микропроцессорного управления цикловой системой (электропривод по схеме "ШИП-Д")
Лист 9-продолжение
106
Network25
SM0.0
C1
V1.3
4
Network26
SM0.0
JMP
C3
Р
CU
VD258
R
PV
CTU
V1.5
Network27
5
C3
<R
JMP
VD258
SM0.0
V1.5
Network28
4
LBL
Network29
SM0.0
RET
Рис. 8. Программа на языке Step-7 для микропроцессорного управления цикловой системой (электропривод по схеме "ШИП-Д")
Лист 10-продолжение
107
Network1-Подпрограмма 2
SM0.0
C4
Р
CU
CTU
S0.1
R
15
V1.6
PV
Network2
6
LBL
Network3
SM0.0
EN MOV_W
Network4
IN
0
SM0.0
OUT
VW280
C4
Р
CU
CTU
V1.6
R
15
PV
Network5
SM0.0
C4
SM0.0
V1.6
6
Network6
JMP
RET
Рис. 8. Программа на языке Step-7 для микропроцессорного управления цикловой системой (электропривод по схеме "ШИП-Д")
Лист 11-окончание
108
Содержание отчета
1. Титульный лист.
2. Задание по лабораторной работе.
3. Функциональная схема микропроцессорной системы управления электроприводом по схеме "ШИП-Д".
4. Алгоритм управления электроприводом по схеме "ШИП-Д".
5. Программа для управления электроприводом постоянного тока по схеме "ШИП-Д" на языке ступенчатой логики в пакете STEP 7–Micro/WIN.
6. Описание работы программы для управления электроприводом постоянного тока по схеме "ШИП-Д" на языке ступенчатой логики в пакете Step 7–
Micro/Win.
7. Выводы по работе.
Контрольные вопросы
1. Структура программного блока в пакете STEP 7–Micro/WIN.
2. На какие группы можно разделить инструкции ПМК S7-200 на языке «лестничной логики»?
3. Какие инструкции ПМК S7-200 входят в группу «релейных» команд?
4. Какие инструкции ПМК S7-200 входят в группу математических команд?
5. Какие управляющие входы имеет программный блок таймера?
6. Какая разница между ПБ «катушка реле» и ПБ «катушка реле с памятью»?
7. Какая разница между ПБ «счетчик на возрастание» и ПБ «счетчик на убывание»?
8. Какая разница между ПБ «секундный таймер» и ПБ «миллисекундный таймер»?
9. С какой целью в ПБ «секундный таймер» используются управляющие входы?
10. Каким образом в программе реализуется интервал tp?
6.4.Краткое описание практических занятий
6.4.1. Перечень практических занятий (наименования, темы)
1. Классификация промышленных микропроцессорных контроллеров.
2. Этапы проектирования микропроцессорных систем управления на основе
промышленных микропроцессорных контроллеров.
3. Интерфейсные узлы промышленных микропроцессорных контроллеров.
4. Битовые команды промышленных микропроцессорных контроллеров.
5. Таймерные команды. Команды счетчиков. Команды передачи информации.
6. Команды обработки информации ПМК.
7. Микропроцессорное управление электроприводами устройств мехатроники
на основе промышленных контроллеров.
8. Программная реализация ПИД – регулятора.
9. Микропроцессорное управление системой электропривода устройств мехатроники по схеме «ШИП – Д».
109
Практическое занятие № 1. Классификация промышленных микропроцессорных контроллеров.
Цель занятия: научиться разделять на группы различные типы промышленных микропроцессорных контроллеров.
Задание на занятие: определить основные свойства и характеристики различных типов промышленных микропроцессорных контроллеров.
Рекомендации по выполнению заданий:
Классификация промышленных микропроцессорных контроллеров.
• Промышленные микропроцессорные контроллеры (ПМК) могут быть
разделены на группы по разным признакам:
• 1. в зависимости от мощности ПМК;
• 2. в зависимости от назначения ПМК.
Классификация промышленных микропроцессорных контроллеров по назначению.
• 1. Программируемые микропроцессорные контроллеры (ПрМК) являются
универсальными микропроцессорными устройствами, которые могут
применяться в разнообразных системах управления (автоматики). ПМК
необходимо программировать для решения конкретной задачи.
• 2. Встроенные (интегрированные) ПМК. Интегрированные ПМК более
специализированы и, как правило, конструктивно встраиваются в
управляемый объект и уже запрограммированы; например, встроенный
ПМК для управления преобразователем частоты
Классификация программируемых микропроцессорных контроллеров.
• 1. ПрМК делятся (по назначению и мощности) на следующие группы:
• 1.1. Контроллер сбора данных (КСД).
• 1.2. Программируемый логический контроллер (ПЛК) –PLC (свободно
программируемый контроллер).
• 1.3. Промышленный контроллер (ПКОН).
• 1.4. Промышленный компьютер (ПКОМ).
• Порядковый номер в этой классификации характеризует мощность
ПрМК.
• Наибольшее распространение получили программируемые логические
контроллеры (ПЛК) –PLC.
Особенности и свойства программируемых контроллеров – ПрМК.
• 1. Программируемость ПрМК.
• 2. ПрМК - самодостаточное средство автоматизации (законченное устройство, не требует аппаратных доработок в процессе адаптации к объекту управления).
• 3. Модульное конструктивное исполнение ПрМК, возможность наращивания мощности ПрМК, гибкость ПрМК при реализации задач управления.
• 4. Специальное конструктивное исполнение ПрМК, обеспечивающее работоспособность с высокой надежностью в условиях повышенного уровня параметров окружающей среды.
Классификация программируемых логических контроллеры (ПЛК) –PLC
110
по мощности.
• 1. Микро PLC – ПЛК малого формата;
• 1.1. Simatic S7-200;
• 1.2. Modicon TSX Micro;
• 1.3. DL205.
• 2. Мини PLC - ПЛК среднего формата;
• 2.1. Simatic S7-300;
• 2.2. TSX 47;
• 2.3. DL305;
• 2.4. C200;
• 2.5. SLC-500.
• 3. Power PLC – мощные ПЛК;
• 3.1. Simatic S7-400;
• 3.2. FPC400;
• 3.3. TSX 40.
Требования (свойства) к программируемым логическим контроллерам
(ПЛК) –PLC.
• 1. Универсальность.
• 2. Высокая надежность.
• 3. Удобство обслуживания и эксплуатации.
• 4. Простое программирование и перепрограммирование.
• 5. Стандартизация входов и выходов для подключения датчиков и исполнительных устройств.
• 6. Малые габариты.
• 7. Малое энергопотребление.
• 8. Возможность обмена информацией с системой верхнего уровня.
• 9. Приемлемая стоимость в сравнении с традиционными СУ.
Особенности и свойства программируемых логических контроллеров.
• 1. Гарвардская архитектура:
• 1.1. Память программ и память данных ПЛК разделены логически и физически;
• 1.2. Память данных ПЛК разделена на области;
• 1.3. Область памяти выходных переменных выполнена энергонезависимой;
• 1.4. Отсутствует аккумулятор.
• 2. CPU ПЛК имеет аппаратные устройства контроля адресного пространства;
• 3. При построении CPU используются методы структурного резервирования (имеют 2 обрабатывающих блока);
• 4. CPU ПЛК имеет в своем составе несколько сторожевых таймеров, контролирующих время выполнения цикла управляющей программы.
Особенности и свойства программируемых логических контроллеров
(Гарвардская архитектура).
1
Операнд 1
1
Операнд 1
111
3
Результат
Аккумулятор
Операнд 2
1
Рис. 65. Классический и современный принципы обработки
информации в МП
Гарвардская архитектура.
• 1. В современных микропроцессорах (МП) реализована более совершенная регистр – регистровая архитектура. В регистр – регистровой архитектуре в микропроцессор интегрирована оперативная память объемом от
нескольких десятков до нескольких сотен байт. Эту память называют
сверхоперативной памятью МП, или регистровым ОЗУ (сверхбыстродействующая память). Любые ячейки регистрового ОЗУ в такой архитектуре
рассматриваются либо как место хранения операндов, участвующих при
выполнении команды, либо как место для хранения результата операции.
Аккумулятор при этом не требуется.
• 2. Такая процедура выполнения команд обработки информации не требует дополнительного времени для пересылки результата операции из аккумулятора в память.
CPU средних и мощных ПЛК часто выполняются многопроцессорными.
Интерфейс между датчиками, исполнительными устройствами и CPU
ПЛК обеспечиваются специальными модулями ввода/вывода, которые называются адаптерами ввода/вывода.
Практическое занятие № 2. Этапы проектирования микропроцессорных систем управления на основе промышленных микропроцессорных контроллеров.
Цель занятия: научиться анализировать выполнение этапов проектирования микропроцессорных систем управления на основе промышленных микропроцессорных контроллеров.
Задание на занятие: разработать функциональную схему системы управления линейным пуском электродвигателя на основе промышленных микропроцессорных контроллеров.
Рекомендации по выполнению заданий:
1. Разработка технического задания.
2. Разработка функциональной схемы микропроцессорной системы
управления.
112
3. Разработка математической модели системы управления в дискретной
форме.
4. Выбор интервала квантования (дискретности).
5. Выбор основных блоков, узлов и элементов системы.
6. Разработка алгоритма функционирования МПС.
7. Составление программы управления.
8. Отладка программы.
Техническое задание.
• 1. Создание МПС для управления каким-либо объектом начинается с разработки технического задания.
• 2. В нем определяются требования к разрабатываемой системе управления, ее параметры и характеристики.
• 3. Далее разработчик производит построение (практически синтез) функциональной схемы системы, отвечающей основным требованиям технического задания.
Обоснование этапов разработки и проектирования микропроцессорных
систем управления.
• 1. Функциональную схему разработчик создает на основе технического
задания.
• 2. Математическая модель системы управления в дискретной форме разрабатывается на основе технического задания и функциональной схемы
микропроцессорной системы управления
3. Выбор основных блоков, узлов и элементов системы производится на
основе функциональной схемы микропроцессорной системы управления и математической модели.
• 4. Выбор интервала квантования (дискретности) осуществляется на основе технического задания, математической модели в дискретной форме и
функциональной схемы микропроцессорной системы управления .
• 5. Разработка алгоритма функционирования МПС производится на основе
функциональной схемы микропроцессорной системы управления и математической модели в дискретной форме МПС.
• 6. Составление программы управления осуществляется на основе алгоритма функционирования МПС.
Рассмотрим пример разработки микропроцессорной системы, осуществляющей пуск двигателя по линейному закону изменения скорости в системе
«Силовой преобразователь –Двигатель (СП-Д) без обратных связей».
• Исходные данные
• 1. Двигатель питается от силового преобразователя (широтноимпульсного преобразователя - ШИП).
• 2. Обратная связь по скорости отсутствует.
• 3. Параметры двигателя, силового преобразователя и режима пуска заданы.
• 4. Контроль скорости производится либо с помощью тахогенератора, либо импульсного датчика скорости.
113
•
Задана зависимость («линейный» пуск) изменения скорости ЭД от времени. Также задана интенсивность пуска К.


1. Тогда
t1 
C
K
• Задана зависимость Uвых сп = f(Uу) – характеристика управления силового преобразователя.
Uвых, В
Uвых ном
0
Uупр, В
Uупр ном
Разработка функциональной схемы микропроцессорной системы управления.
ЦАП
Разработка и построение (синтез) функциональной схемы микропроцессорной системы управления, отвечающей основным требованиям технического
задания осуществляется на основе технического задания.
1. ПМК = Базовый модуль CPU+Дополнительные модули расширения +
ЦАП + АЦП.
2. СП – силовой преобразователь.
114
3. М – электрический двигатель.
4. РМ – рабочий механизм.
5. ДС – датчик скорости.
ПМК – промышленный микропроцессорный контроллер выполняет управляющую программу и вырабатывает управляющее напряжение Uу, поступающее на вход СП.
СП – силовой преобразователь усиливает напряжение Uу и управляет электрическим двигателем М.
М – электрический двигатель приводит в движение
рабочий механизм РМ.
ДС – датчик скорости измеряет скорость движения РМ.
Допустим, что ДС является аналоговым устройством (например, тахогенератором).
ЦАП – цифроаналоговый преобразователь преобразует выходной цифровой
код ПМК в аналоговый сигнал Uу.
АЦП - аналого-цифровой преобразователь преобразует аналоговое напряжение тахогенератора в цифровой код, который поступает в ПМК.
ЦАП
Практическое занятие № 3. Интерфейсные узлы промышленных микропроцессорных контроллеров.
Цель занятия: изучить свойства и характеристики интерфейсных узлов
промышленных микропроцессорных контроллеров.
Задание на занятие: выбрать конфигурацию промышленного микропроцессорного контроллера с требуемыми интерфейсными узлами.
Рекомендации по выполнению заданий:
115
ДС – датчик скорости измеряет скорость движения РМ.
Допустим, что ДС является аналоговым устройством (например, тахогенератором).
ЦАП – цифроаналоговый преобразователь преобразует выходной цифровой код ПМК в аналоговый сигнал Uу.
АЦП - аналого-цифровой преобразователь преобразует аналоговое напряжение тахогенератора в цифровой код, который поступает в ПМК. Аналогоцифровой преобразователь (АЦП) имеет аналоговый вход и многоразрядный
цифровой выход. Аналоговая величина поступает на вход АЦП от датчика. Выходной цифровой сигнал из АЦП направляется в МП. Число разрядов цифрового выхода определяется требуемой точностью преобразователя. Чем больше
число разрядов, тем выше точность преобразователя.
Классификация аналого-цифровых преобразователей (АЦП).
АЦП с динамической компенсацией.
Следящий АЦП с динамической компенсацией.
АЦП с поразрядным уравновешиванием.
АЦП с двойным интегрированием.
АЦП с преобразователем «напряжение-частота».
Быстродействующий АЦП параллельного преобразования.
Как правило, схема АЦП включает в себя ЦАП
ЦАП – цифро – аналоговый преобразователь.
ЦАП служит для преобразования цифрового кода в аналоговую величину.
Преобразование цифрового кода микроконтроллера в аналоговый сигнал исполнительного органа (например, силовой преобразователь -ТП, ШИП, ПЧ и
др.). Цифро-аналоговый преобразователь (ЦАП) имеет многоразрядный цифровой вход и аналоговый выход. Цифровой сигнал поступает на вход ЦАП от МП.
Выходная аналоговая величина из ЦАП направляется к исполнительному органу. Число разрядов цифрового входа определяется требуемой точностью преобразователя. Чем больше число разрядов, тем выше точность преобразователя.
Классификация цифро - аналоговых преобразователей (ЦАП).
ЦАП содержит:
регистр из n-фиксаторов (триггеров), в которых находится двоичное число,
подлежащее преобразованию в соответствующее аналоговое напряжение;
резисторную матрицу; каждый фиксатор управляет работой транзисторного ключа, связанного с определенным резистором в резисторной матрице;
прецизионный источник опорного напряжения, подключенный к резисторной матрице, задает диапазон изменения выходного напряжения ЦАП (например, от 0 В до 10 В);
выходной операционный усилитель (ОУ) выполняет функцию сумматора
(тока), обеспечивая сложение результатов при одновременном срабатывании
116
того или иного набора ключей.
ЦАП отличаются типом резисторной матрицы. Различают два типа резисторной матрицы:
резисторная матрица со взвешенными резисторами;
резисторная матрица типа «R-2R».
Практическое занятие № 4. Битовые команды промышленных микропроцессорных контроллеров.
Цель занятия: изучить возможности битовых команд промышленных микропроцессорных контроллеров для управления электроприводами, промышленными установками и технологическими комплексами.
Задание на занятие: разработать управляющую программу с использованием битовых команд промышленных микропроцессорных контроллеров для
управления электроприводами, промышленными установками и технологическими комплексами.
1. Разработать алгоритм программы управления пуском, реверсом и
остановом электрического двигателя.
2. Составить программу управления пуском, реверсом и остановом
электрического двигателя на основе промышленного микропроцессорного
контроллера семейства S7-200.
3. Инструментально оценить длительность цикла сканирования при выполнении программы управления пуском, реверсом и остановом электрического
двигателя на основе промышленного микропроцессорного контроллера семейства S7-200.
Рекомендации по выполнению заданий:
При выполнении п. 1 задания необходимо учесть следующие требования:
1. Сначала программа проверяет, должна ли быть включена блокировка
установкой блокирующего меркера M2.0. Это как раз тот случай, когда обе
кнопки, на входах I0.0 и I0.1 нажаты одновременно или если время ожидания
включения еще не вышло. Если обе кнопки (I0.0 и I0.1) снова находятся в отжатом состоянии, и кончилось время ожидания, т.е. вспомогательный меркер
M2.3 сброшен, будет сброшен и блокирующий меркер M2.0.
2. Разрешение на вращение влево осуществляется установкой соответствующего бита деблокирующего меркера влево M2.1, если ни защитный выключатель двигателя (защита двигателя) на входе I0.3 или кнопка ВЫКЛ. на
I0.2 (оба нормально закрытые) не нажаты, ни бит состояния для вращения
вправо (меркер состояния вправо) M1.1 не установлен. Бит состояния для
вращения влево (меркер состояния влево) - это M1.0.
3. Деблокировка вращения вправо происходит аналогично. При этом устанавливается деблокирующий меркер влево M2.2
4. Двигатель (ЭД) включается влево, если нажата одна кнопка включения
I0.0 и ни бит блокировки M2.0 ни бит состояния направления вправо M1.1 не
установлены. Пуск двигателя влево происходит установкой выхода (Q0.0 и
Q0.1) и относящегося к нему бита состояния влево M1.0, обеспечивающего самоподхват. На выходе Q0.0 срабатывает контактор левого вращения. Кроме то117
го загорается сигнальная лампа режима влево. Сигнальная лампа движения
влево подключается с помощью Q0.3.
5. Двигатель включается вправо, если нажата одна кнопка включения I0.1
и ни бит блокировки M2.0 ни бит состояния направления влево M1.0 не установлены. Пуск двигателя вправо происходит установкой выхода (Q0.4 и Q0.5) и
относящегося к нему бита состояния вправо M1.1, обеспечивающего самоподхват. На выходе Q0.1 срабатывает контактор правого вращения. Кроме того загорается сигнальная лампа режима влево. Сигнальная лампа движения вправо
подключается с помощью Q0.3.
6. Двигатель выключается, если I0.0 = =«0» и I0.1 = =«0». Выход
Q0.2=«1»). Лампа состояния ВЫКЛ подключается с помощью Q0.2.
7. Если после состояния «Двигатель отключен» снова производится
включение ЭД, то устанавливается один из меркеров состояния движения (M1.0
или M1.1) в зависимости от направления вращения. При этом сбрасывается выход Q0.2 (Q0.2=«0») и то по отрицательному фронту «команды N» устанавливается вспомогательный меркер M2.3 (начало интервала ожидания). Если
M2.3 установлен, то запускается таймер ожидания с уставкой 5 с (500*10 мс).
По завершении этого времени вспомогательный меркер M2.3 сбрасывается.
Во время работы таймера ожидания на выходе Q0.3 мигает сигнальная лампа.
L1
Q0.0 Q0.1 Q0.2
L2
Q0.3 Q0.4 Q0.5
Рис. 1. Принципиальная схема дискретных выходов CPU 222 семейства ПМК
S7-200
118
Рис. 2. Принципиальная схема управления ЭД механизма с помощью
дискретных выходов CPU 222 семейства ПМК S7-200
При выполнении п. 2 задания необходимо учесть следующие особенности
семейства ПМК S7-200:
1. При разработке управляющих программ в качестве ПМК
рекомендуется использовать микроконтроллер типа S7-200 с центральным
процессорным модулем CPU 222 и дискретными выходами релейного типа.
Принципиальная схема дискретных (для CPU 222 c заказным номером 2122BD23-0XB0) релейных выходов приведена на рис. 1.
2. Дискретные релейные выходы Q0.0, Q0.1, Q0.2 и Q0.3 имеют между
собой гальваническую связь.
3. Для «прямого» вращения ЭД рекомендуется использовать релейные
выходы Q0.0 и Q0.1. Для «обратного» вращения ЭД (реверса) рекомендуется
использовать релейные выходы Q0.4 и Q0.5.
Практическое занятие № 5. Таймерные команды. Команды счетчиков. Команды передачи информации.
Цель занятия: изучить возможности таймерных команд, команд счетчиков и команд передачи информации промышленных микропроцессорных контроллеров для управления электроприводами, промышленными установками и
технологическими комплексами.
Задание на занятие: разработать управляющую программу с использованием таймерных команд, команд счетчиков и команд передачи информации
промышленных микропроцессорных контроллеров для управления электроприводами, промышленными установками и технологическими комплексами.
1. Разработать программу с использованием таймерных команд для
управления электроприводом.
2. Разработать программу с использованием команд счетчиков для
управления электроприводом.
3. Разработать программу с использованием команд передачи
информации для управления электроприводом.
4. Сделать выводы.
Рекомендации по выполнению заданий:
1. Управление промышленными установками (ПУ), в том числе электроприводом (ЭП), и технологическими комплексами (ТК) осуществляется в режиме реального времени. Для этого требуется использовать таймеры (специальные «промышленные» часы). Программное обеспечение (ПО) контроллеров
S7-200 имеет в своей библиотеке до 256 таймеров с разным максимальным
временем уставки таймера (32.767 с; 327.67; 3276.7 с). В программе управления
ПУ таймер вызывается с помощью таймерной команды.
Различают «обычные» таймеры (TON, TOF) и таймеры с запоминанием
(TONR). Для команд таймеров уместно использовать термин «тик таймера» или
просто «тик». В ПО S7-200 имеются таймеры с тиком, равным 1 мс (4 шт), 10
мс (16 шт) и 100 мс (236 шт). В табл. 1 приведено распределение таймеров по
119
величине разрешающей способности.
Таблица 1
Распределение таймеров по величине разрешающей способности
Тип таймера
Разрешающая спо- Максим. время
Номера (адреса)
собность, мс
уставки, с
таймеров
TONR
1
32.767
Т0, Т64
10
327.67
Т1-Т4, Т65-Т68
100
3276.7
Т5-Т31, Т69-Т95
TON
1
32.767
Т32, Т96
TOF
10
327.67
Т33-Т36, Т97-Т100
100
3276.7
Т37-Т63, Т101-Т255
Таймер характеризуется текущим временем и битом. Текущее время таймера
t ÒÅÊ
отсчитывается и представляется числом тиков
N ÒÅÊ .
Текущее
t
время таймера периодически сравнивается с уставкой таймера У , также задаваемой числом тиков
t
NУ  У ,
tТ
NÓ.
где tУ -время уставки, с; tT -время тика, с.
Аналогично связаны NÒÅÊ и
N ТЕК 
tТЕК .
tТЕК
tТ ,
t ТЕК -текущее время таймера.
Когда t ТЕК ( N ÒÅÊ ) станет равным tУ ( NÓ ),
где
срабатывает бит таймера
(таймер сработал). Если при срабатывании бит таймера принимает значение,
равное логической единице, то это таймер с задержкой включения TON. Если
при срабатывании бит таймера принимает значение, равное логическому нулю,
это таймер с задержкой выключения TOF. Максимальная уставка таймера PТ
равна 32767.
Для запуска команды «Таймер» необходимо на ее разрешающий вход
«IN» подать сигнал, равный логической единице. На входе «РТ» (Preset Time)
следует указать время уставки в тиках или адрес, где уставка хранится.
Сравнение текущего времени с уставкой для таймеров с разным максимальным временем уставки производится неодинаково. Для одномиллисекундного таймера обновляется бит таймера (т.е. производится сравнение текущего
времени с уставкой) и текущее значение каждую миллисекунду (т.е. асинхронно с циклом обработки программы – циклом сканирования). Если на вход «IN»
подать сигнал, равный логическому нулю, выполняется сброс таймера. При
120
этом таймер выключается, его текущее значение устанавливается в нуль, а бит
таймера становится равным логическому нулю.
Для десятимиллисекундного таймера сравнение текущего времени с уставкой производится в начале каждого цикла сканирования управляющей программы (интервала дискретности t ). При этом к текущему значению таймера
прибавляется количество истекших интервалов величиной 10 мс с начала предыдущего цикла сканирования.
Для стомиллисекундного таймера сравнение текущего времени с уставкой производится всякий раз, когда выполняется таймерная операция (команда). При этом к текущему значению таймера прибавляется количество истекших интервалов величиной 100 мс, начиная с предыдущего сравнения.
На рис. 1. представлено изображение таймерной команды TON на языке
Ladder (STEP7–MicroWIN) микроконтроллера S7-200. Когда значение бита на
входе разрешения «IN» будет равно логической единице, таймер с задержкой
включения TON и разрешающей способностью (дискретностью таймера) 100
мс запускается и начинается отсчет времени таймера. Адрес таймера – Т37. Уставка таймера в тиках (РТ) равна 10010, т.е. N Ó = 10010. Уставка таймера в секундах t У равна 10 с ( t T = 100 мс; tУ = tT  N У = 100 мс*100 = 10 с).
На рис. 2 приведены временные диаграммы, поясняющие выполнение
таймерной команды TON. По этим диаграммам можно провести анализ выполнения таймерной команды TON для трех возможных характерных ситуаций.
Адрес
бита
T37
100
IN
TON
PT
100 мс
Рис. 1. Изображение таймерной команды TON на языке Ladder (STEP7–
MicroWIN) микроконтроллера S7-200
Когда значение бита на входе разрешения «IN» будет равно логической
единице, таймер с задержкой включения TON запускается и начинается отсчет
времени. Отсчет времени таймера продолжается до тех пор, пока значение бита
на входе разрешения «IN» равно логической единице. Когда текущее время
таймера t ТЕК станет равным времени уставки tУ , срабатывает бит таймера и
остается в состоянии логической единице, пока значение бита на входе разрешения «IN» равно логической единице. Когда значение бита на входе разрешения «IN» становится равным 0, текущее значение таймера обнуляется, а бит
таймера сбрасывается (состояние логического нуля).
Если при «работающем» таймере текущее время таймера tТЕК не достига121
ет значения времени уставки t У , а значение бита на входе разрешения «IN»
изменяет состояние и становится равным 0, таймер сбрасывается, т.е. текущее
значение таймера обнуляется, а бит таймера в этом варианте не устанавливается в 1.
В третьей ситуации при «работающем» таймере значение бита на входе
разрешения «IN» равно логической единице в течение времени, большего, чем
максимальное время уставки таймера. В этом случае отсчет времени таймера
продолжается до тех пор, пока не достигнет значения максимального времени
уставки. Когда текущее время таймера tТЕК станет равным времени уставки tУ ,
срабатывает бит таймера и остается в состоянии логической единицы, пока значение бита на входе разрешения «IN» равно логической единице.
На рис. 3. представлено изображение таймерной команды TONR на языке
Ladder (STEP7-MicroWIN) микроконтроллера S7-200. Когда значение бита на
входе разрешения «IN» будет равно логической единице, таймер с задержкой
включения с запоминанием TONR и разрешающей способностью (дискретностью таймера) 10 мс запускается и начинается отсчет времени. Адрес таймера –
Т4. Уставка таймера в тиках (РТ) равна 2010, т.е. N У = 2010. Уставка таймера в
секундах
tУ равна 0,2 мс ( t
T
=10 мс;
tУ = t T  N У
= 10 мс*20=0,2 мс).
Рис. 2. Временные диаграммы, поясняющие выполнение таймерной
команды TON
122
Рис. 3. Изображение таймерной команды TONR на языке Ladder (STEP7–
MicroWIN) микроконтроллера S7-200
На рис. 4. приведены временные диаграммы, поясняющие выполнение
таймерной команды TONR. По этим диаграммам можно провести анализ выполнения таймерной команды TONR для возможных характерных ситуаций.
Рис. 4. Временные диаграммы, поясняющие выполнение таймерной
команды TONR
Текущее значение таймера с задержкой включения сбрасывается, когда
выключается разрешающий вход (IN), тогда как текущее значение таймера с
задержкой включения с запоминанием сохраняется, когда этот вход выключается. Можно использовать таймер с задержкой включения с запоминанием для
накопления времени за несколько периодов, когда включен разрешающий вход.
Для стирания текущего значения таймера с задержкой включения с запоминанием используется команда «Сброс» (R). Для формирования команды «сброс»
применяется фрагмент программы, представленный на рис. 5.
123
Рис. 5. Фрагмент программы для формирования команды «сброс»
Таймер с задержкой включения и таймер с задержкой включения с запоминанием продолжают счет после достижения значения уставки; они останавливают счет при достижении максимального значения N MAX , равного 3276710.
На рис. 6. представлено изображение таймерной команды TOF на языке
Ladder (STEP7-MicroWIN) микроконтроллера S7-200. Когда значение бита на
входе разрешения «IN» будет равно логической единице, устанавливается в
единицу бит таймера (см. рис. 7), но таймер с задержкой выключения TOF и
дискретностью таймера 1 мс не запускается и не начинается отсчет времени
таймера. Адрес таймера – Т32. Уставка таймера в тиках (РТ) равна 5010, т.е.
мс ;
N У =5010. Уставка таймера в секундах tУ равна 0,05 с ( t T  1
tУ 
tT  NУ

1
мс
 50

0,05
с) .
Рис. 6. Изображение таймерной команды TOF на языке Ladder (STEP7–
MicroWIN) микроконтроллера S7-200
Таймер с задержкой выключения (TOF) используется для задержки
выключения выхода (сброса бита таймера) на фиксированный интервал времени после выключения сигнала на входе IN. Когда включается разрешающий
вход, немедленно включается бит таймера, а текущее значение времени устанавливается в 0. Когда вход IN выключается, таймер ведет отсчет, пока текущее
время не достигнет времени уставки. Когда время уставки достигнуто, бит таймера сбрасывается, а отсчет текущего значения прекращается. Если сигнал на
входе IN выключен в течение более короткого интервала времени, чем время
уставки, то бит таймера остается включенным. Команда TOF должна обнаружить переход от включенного состояния к выключенному, чтобы начать отсчет
времени.
Таймеры TOF и TON не могут иметь один и тот же номер. Например, не
могут одновременно использоваться TON Т32 и TOF Т32.
Для сброса любого таймера (TON, TOF или TONR) может быть использована команда «Сброс» (R). Команда «Сброс» выполняет следующую операцию:
бит таймера сбрасывается. Текущее значение после этого равно нулю. Таймер
TONR может быть сброшен только командой «Сброс». После сброса таймер
124
TOF, чтобы перезапуститься, требует наличия разрешающего входа (IN в состоянии логической единицы) для перехода из выключенного состояния в
включенное.
Рис. 7. Временные диаграммы, поясняющие выполнение таймерной
команды TOF
Используя таймерные команды, можно программировать включение и
выключение источника питания, пуск и торможение электропривода в любой
момент времени, изменение параметров и характеристик регуляторов и системы управления по заданному алгоритму.
Методические указания по выполнению лабораторной работы
1. Подключить микроконтроллер (МК) к персональному компьютеру с
помощью кабеля связи PPI. Установить переключатели на кабеле в положение,
обеспечивающее скорость передачи 9,6 кбод.
2. Подключить разъем имитатора дискретных входов и выходов к разъему на щитке с микроконтроллером.
3. Включить автоматический выключатель в щитке. При этом подключается источник питания к микроконтроллеру.
4. Произвести запуск ПО «STEP7–MicroWIN» и выполнить все операции,
связанные с выбором типа микроконтроллера S7-222 и его адреса. При выборе
типа микроконтроллера S7-222 и его адреса используют раздел «PLC» меню
«STEP7–MicroWIN» и подраздел «Type».
5. Для выполнения лабораторной работы при исследовании таймерной
команды TON с разрешающей способностью 1 мс следует на рабочем поле
MicroWIN подготовить программу, представленную на рис. 14. Для составления собственного плана действий по исследованию таймерной команды TON
можно воспользоваться сведениями, приведенными в меню «Help» программ125
ного пакета STEP 7-MicroWIN для таймерной команды TON. В качестве бита,
управляющего сигналом на разрешающем входе IN таймера, можно воспользоваться дискретным входом I 0.0 ПМК S7-222. Установим значение операнда на
входе РТ, равное 30000, что соответствует уставке 30 с. В программе (рис. 14)
бит таймера Т32 управляет дискретным выходом Q 0.0, с которым связан светодиод, расположенный на передней панели имитатора дискретных входов и
выходов.
6. Используя команду меню «Compile» или «Compile All», откомпилировать составленную программу, а потом записать в память микроконтроллера
S7-222 командой «Download». Выполнение указанных действий можно контролировать по информации, появляющейся в статусной строке основного окна
программы STEP7-MicroWIN и окне, появляющемся после подачи команды
«Download».
Рис. 8. Программа для исследования таймерной команды TON
с разрешающей способностью 1 мс
7. После записи программы нажать на команду меню «Пуск программы»
в основном окне программы STEP7-MicroWIN.
8. Для контроля выполнения программы можно использовать команду
«Status Chart» - статусная таблица или команду «Program Status».
9. При контроле выполнения программы с помощью команды «Status
Chart» выполняются следующие действия (программа запущена). Левой клавишей мыши запускается команда «Status Chart» и статусная таблица выводится
на рабочее поле (рис. 18). Затем в адресное поле этой таблицы с помощью клавиатуры записываются адреса переменных. Для программы на рис. 12 такими
переменными являются бит таймера Т32, текущее значение таймера Т32, дискретный вход I0.0, дискретный выход Q0.0. В следующем поле «Format» выбирается соответствующий формат для переменных. Для программы на рис. 12
для переменных I0.0 и Q0.0 выбирается битовый формат, для переменной «бит
таймера» Т32 должен быть установлен также битовый формат, а для переменной «текущее значение таймера» Т32 выбирается шестнадцатеричное число
(шестнадцатеричный формат). Выбор формата осуществляется с помощью левой клавиши мыши.
126
Чтобы определить значения переменных при выполнении программы,
необходимо в любой строке поля «Current Value» (текущая величина) или «New
Value» (новая величина) правой клавишей мыши вызвать окно режима просмотра результатов работы программы и выбрать команду «Read All Forced».
Для всех указанных переменных в поле «Current Value» после этой процедуры
появляются текущие значения переменных. Если значения переменных и их
форматы были выбраны в предыдущем опыте исследования команд, то для вывода текущих значений достаточно перейти в режим «Status Chart» и на поле
«Current Value» нажать левую клавишу мыши. При анализе текущих значений
переменных в поле «Current Value» следует учитывать, что переменная в формате слова, например VW100, включает два байта: старший байт с адресом
VB100 и младший с адресом VB101.
10. При контроле выполнения программы с помощью команды «Program
Status» (программный режим) выполняются следующие действия (программа
запущена). С помощью команды «Program Status» программа на рабочем поле
становится «активной» и показывает в режиме реального времени выполнение
каждой команды программы изменением цвета команды с черного (команда не
выполняется) на синий (команда выполняется).
11. При контроле выполнения программы микроконтроллера в режиме
«Status Chart» имеется возможность воспользоваться командой «Trend View».
Сначала выполняют команду «Status Chart» - статусная таблица, а потом левой
клавишей мыши запускают команду «Trend View». Остановить режим «Trend
View» можно либо повторной подачей команды «Trend View», либо командой
«Status Chart».
12. При контроле выполнения программы микроконтроллера в режиме
«Program Status» алгоритм работы состоит в следующем. После составления на
рабочем поле программного пакета STEP 7-MicroWIN управляющую программу записывают в память микроконтроллера. Затем включают режим «Program
Status» и запускают в работу управляющую программу. Далее выполнение программы микроконтроллера в этом режиме отображается на экране дисплея.
Допустим, что требуется на разных временных промежутках изменять
скорость электродвигателя (ЭД).
рад/с
4

1

3

2
0
t1

5
t2
t3
t4
t5
t ,c
Время цикла tц
Рис. 9. График цикла работы электропривода
Для реализации временных промежутков необходимо использовать таймерные команды.
127
2. Программно реализуемые счетчики могут работать в режиме прямого,
обратного и реверсивного счета, т.е. на увеличение или уменьшение содержимого счетчика. Реверсивные счетчики выполняют операции и увеличения, и
уменьшения. Общее число счетчиков в ПО S7-222 равно 25610. Номера счетчиков в режимах прямого, обратного и реверсивного счета не должны совпадать.
На рис. 8 приведено изображение команды «Счетчик на увеличение».
Рис. 10. Изображение команды «Счетчик на увеличение» на языке Ladder
(STEP7–MicroWIN) микроконтроллера S7-200
Команда «Счетчик на увеличение» (прямой счет) увеличивает содержимое счетчика при появлении нарастающих фронтов сигнала на входе CU (Count
Up – прямой счет). Когда текущее значение содержимого счетчика (С57) становится больше или равно уставке (предустановленному значению PV – Preset
Value), бит счетчика (С57) устанавливается в состояние логической единице.
Счетчик сбрасывается, когда включается вход сброса R. Счетчик при отсутствии сигнала сброса на входе R всякий раз увеличивает свое содержимое на единицу, когда сигнал на входе CU переходит из состояния 0 в 1 (the transition from
off to on). Счетчик прекращает счет, когда текущее значение достигает значения
уставки PV. Максимальная уставка PV равна 3276710.
На рис. 9. приведены временные диаграммы, поясняющие выполнение
команды «Счетчик на увеличение» (прямой счет) с PV=3. По временным диаграммам можно провести анализ выполнения команды «Счетчик на увеличение» для характерных ситуаций. Будем рассматривать вариант, когда счетчик
был сброшен и его содержимое равняется 0. Сигнал на входе R до момента
времени t6 равен логическому нулю. В момент времени t1 сигнал на входе CU
изменяет свое состояние с 0 на 1 (положительный фронт импульса) и содержимое счетчика увеличивается на 1. В момент времени t2 сигнал на входе CU снова изменяет свое состояние с 0 на 1 и содержимое счетчика также увеличивается на 1 и становится равным 2. В момент времени t3 сигнал на входе CU в третий раз изменяет свое состояние с 0 на 1, а содержимое счетчика становится
равным 3 и уравнивается со значением уставки PV=3. В этот момент срабатывает бит счетчика и устанавливается в 1. В моменты времени t4 и t5 сигнал на
входе CU изменяет свое состояние с 0 на 1, но бит счетчика находится в со128
стоянии 1, а содержимое счетчика последовательно увеличивается до 4, а затем
и до 5. Если бы положительный фронт на входе CU продолжал появляться, то
содержимое счетчика увеличивалось бы последовательно на 1 до значения
3276710. В момент времени t6 сигнал на входе сброса R изменяет свое состояние
с 0 на 1, а содержимое счетчика становится равным 0. В этот же момент сбрасывается бит счетчика и становится равным 0.
Рис. 11. Временные диаграммы, поясняющие выполнение
команды «Счетчик на увеличение» CTU
Счетчик с момента времени t6 готов к новому счету. В момент времени t7
сигнал на входе CU изменяет свое состояние с 0 на 1, а содержимое счетчика
становится равным 1 и т.д.
На рис. 10 приведено изображение команды «Счетчик на уменьшение».
Команда обратного счета уменьшает содержимое счетчика от значения уставки
PV при появлении нарастающих фронтов сигнала (передних фронтов) на входе
CD (Count Down – обратный счет). Когда текущее содержимое счетчика становится равным нулю, бит счетчика (С15) включается. Счетчик сбрасывает свой
бит (С15) и загружает текущее значение значением уставки (PV), когда включа129
ется вход загрузки (LD). Обратный счет прекращается, когда содержимое счетчика достигает нуля.
Рис. 12. Изображение команды «Счетчик на уменьшение» на языке Ladder
(STEP7–MicroWIN) микроконтроллера S7-200
На рис. 11. приведены временные диаграммы, поясняющие выполнение
команды «Счетчик на уменьшение» (обратный счет) с PV=3. По этим диаграммам можно провести анализ выполнения данной команды для характерных ситуаций.
В некоторых случаях при управлении электроприводами (ЭП) может потребоваться применение команд - счетчиков с реверсивным счетом, например,
сначала на сложение, а потом на вычитание. Такие задачи приходится решать
при реализации узлов сравнения в регуляторах положения ЭП с позиционированием систем программного управления промышленными установками и робототехническими комплексами.
На рис. 12 приведено изображение команды «Реверсивный счетчик». Эта
команда увеличивает содержимое счетчика при появлении нарастающих (передних) фронтов сигнала на входе CU (Count Up – прямой счет). Эта же команда уменьшает содержимое счетчика при появлении нарастающих фронтов сигнала на входе CD (Count Down – обратный счет). Когда текущее содержимое
счетчика становится равным уставке PV или больше PV, бит счетчика (С25)
включается. Сравнение текущего содержимого счетчика с уставкой PV производится всякий раз, когда выполняется команда «Реверсивный счетчик». К биту
счетчика можно обращаться в битовых командах. К текущему содержимому
счетчика обращаются в командах сравнения, арифметических и логических командах, командах пересылки и в других командах обработки информации.
Счетчик сбрасывается, когда включается вход сброса R. При этом текущее содержимое счетчика становится равным нулю, а бит счетчика (С25) выключается.
130
На входе CD счетчика
На входе LD счетчика
t
t
Текущее содержимое счетчика
Уставка cчетчика PV=3
5
4
3
2
1
0
3
3
2
2
1
t1 t2
t3
Состояние бита
счетчика
0
t4
t5
t6
t7
t8
t
t
Рис. 13. Временные диаграммы, поясняющие выполнение
команды «Счетчик на уменьшение» CTD
Максимальное значение содержимого реверсивного счетчика при его работе на сложение равно 3276710. Если при таком содержимом приходит сигнал
на вход CU, то содержимое становится равным 32768 со знаком минус. Максимальное значение содержимого реверсивного счетчика при его работе на вычитание равно -3276810. Если при таком содержимом приходит сигнал на вход CD,
то содержимое становится равным 3276710.
На рис. 13. приведены временные диаграммы, поясняющие выполнение
команды «Реверсивный счетчик» (обратный счет) с PV=4. По временным диаграммам можно провести анализ выполнения данной команды для характерных
ситуаций.
131
Адрес бита
C25
CU
CTUD
Адрес бита 1
CD
Адрес бита 2
R
10
PV
Рис. 14. Изображение команды «Реверсивный счетчик» на языке Ladder
(STEP7–MicroWIN) микроконтроллера S7-200
Для исследования команды «счетчик на увеличение» следует на рабочем
поле MicroWIN подготовить программу, представленную на рис. 21. Уставка
счетчика равна 5. Пять раз включают и выключают тумблер I0.0. Если после
этих действий включается светодиод, соответствующий дискретному выходу
Q0.0, можно считать, что команда успешно выполнена.
Рис. 15. Программа для исследования команды счетчика на увеличение CTU
3. Команды передачи информации составляют до 80% от объема программ управления промышленными установками. Эту группу команд часто на132
зывают командами пересылки. К ним относятся операции «Передача байта»,
«Передача слова», «Передача двойного слова», «Передача действительного
числа», «Блочная передача байтов», «Блочная передача слов», «Блочная передача двойных слов», «Передача в память байта физических дискретных входов»
и «Передача из памяти байта данных на восемь физических дискретных выходов». На рис. 1 представлено изображение команд «Передача байта» и «Передача слова», а на рис. 2 – команд «Передача двойного слова» и «Передача действительного числа».
Рис 16. Изображение команд «Передача байта» и «Передача слова»
Рис 17. Изображение команд «Передача двойного слова» и «Передача действительного числа»
Операция «Передача байта» передает входной байт (8 бит), представленный по адресу на входе IN в выходной байт (8 бит), адрес которого представлен
на выходе OUT. Входной байт при этом не изменяется.
Таблица 1
Области памяти для операндов команд передачи информации микроконтроллера S7-200, «работающих» с байтами
Операнды
IN1
OUT
Области памяти
VВ, IВ, QВ, MВ, SMВ, SB, AC, константа
VВ, IВ, QВ, MВ, SMВ, SB, AC
Операция «Передача слова» (16 бит) передает входное слово, представленное на входе IN, в выходное слово (16 бит), адрес которого представлен на
133
выходе OUT. Входное слово при этом не изменяется. Входные операнды могут
быть записаны с использованием непосредственной адресации (см. рис. 3).
Таблица 2
Области памяти для операндов команд передачи информации микроконтроллера S7-200, «работающих» со словами
Операнды
Области памяти
IN1, IN2
VW, IW, QW, MW, SMW, AIW, T, C, AC, константа
OUT
VW, IW, QW, MW, SMW, AIW, T, C, AC
Аналогичные выводы можно сделать также и по отношению к командам
передачи информации микроконтроллера S7-200, «работающим» с двойными
словами (32 бита).
Рис 18. Изображение команд «Передача байта» и «Передача слова» с использованием непосредственной адресации
На рис. 4 представлено изображение команд «Блочная передача байтов» и
«Блочная передача слов», а на рис. 5 – команд «Блочная передача двойных
слов».
I0.1
I0.1
BLKMOV_ B
BLKMOV_ W
EN
VB 100
IN
25
N
EN
OUT
VB 300
VW100
IN
17
N
OUT
VW300
Рис 19. Изображение команд «Блочная передача байтов» и «Блочная передача
слов»
134
Рис 20. Изображение команды «Блочная передача двойных слов»
Команда «Блочная передача байтов» передает заданное количество байтов (N) входного массива, начинающегося с адреса, указанного на входе IN, в
выходной массив, начальный адрес которого указан на выходе OUT. Параметр
N находится в пределах от 1 до 255. Аналогичный вывод можно сделать в отношении других «блочных» команд. Области памяти для операндов команд
блочной передачи информации микроконтроллера S7-200 такие же, как и для
обычных команд пересылки.
Все команды пересылки не изменяют состояния флагов процессора Z, C и
S ( значений битов SM1.0 - нуль, SM1.0 - перенос, SM1.0 – отрицательный знак
числа).
К командам пересылки относится также операция «Перестановка байтов
в слове» (Обмен байтов в слове, см. рис. 21).
Рис 21. Изображение команд «Перестановка байтов в слове»
Практическое занятие № 6. Команды обработки информации ПМК.
Цель занятия: изучить возможности команд обработки информации промышленных микропроцессорных контроллеров для управления электроприводами, промышленными установками и технологическими комплексами.
Задание на занятие: разработать управляющую программу с использованием команд обработки информации промышленных микропроцессорных контроллеров для управления электроприводами, промышленными установками и
технологическими комплексами.
Рекомендации по выполнению заданий:
Основой для вывода уравнений регулятора в дискретной форме служат
структурная схема и уравнения ПИД-регулятора в аналоговой форме
Uвх =Uз-Uoc ;
(4.18)
135
UВЫХ=Кр{Uвх+
1
TИ
t
U
ВХ
d  T Д
0
dU ВХ
},
dt
(4.19)
где UЗ и UОС - сигналы задания и обратной связи;
UВХ - входной сигнал регулятора;
КР - коэффициент передачи пропорциональной части регулятора;
ТИ - постоянная времени интегрирующей части;
ТД - постоянная времени дифференцирующей части.
Уравнения для ПИД-регулятора в дискретной форме можно вывести из
формул (4.18) и (4.19), если использовать такие понятия как квантование во
времени, первая обратная разность, сумма решетчатых функций.
С этой целью ось времени разобьем на бесконечно большое число отрезков, равных шагу дискретности ТО. Тогда произвольный момент времени t запишется как
t=KTО,
где К - номер шага дискретности.
С учетом этого получим
UВХ(t) = UВХ(КТ0) = UВХ(К);
UЗ = UЗ(К);
UОС = UОС(K);
UВЫХ = UВЫХ(К);
t
(4.20)
(4.21)
(4.22)
(4.23)
k 1
 U ВХ d  U ВХ (i) ,
0
(4.24)
i 0
где  =Т0;
dU ВХ U ВХ (k )  U ВХ (k  1)

,
dt
t
Здесь  t = Т0.
(4.25)
Подставив формулы (4.20 - 4.25) в выражения (4.18) и (4.19), получим
уравнения ПИД-регулятора в дискретной форме, позволяющие вычислить напряжение на выходе регулятора для К шага квантования:
Uвх(К) = Uз(К) - Uoc(K) ;
(4.26)
U ВХ›  K p [U ВХ ( K ) 
T
TИ
k 1
U
ВХ
(i )  TД
i 0
U ВХ ( K )  U ВХ ( K  1)
].
T
(4.27)
Полученная математическая модель по уравнениям (4.26) и (4.27) может
применяться в МПС, но потребует при реализации суммы значительный объем
памяти для хранения всех предыдущих дискретных значений и будет характеризоваться большим временем при вычислении суммы для больших К. Поэтому практически в МПС используется модель на основе рекуррентных соотношений для выходного напряжения регулятора.
С этой целью по аналогии с выражением (4.27) составим выражение для
UВЫХ в предыдущий (К-1) шаг квантования:
U ВЫХ ( К  1)  К р[U ВХ ( К  1) 
T
TИ
k 2
U
i 0
ВХ
( i )  TД
U ВХ ( K  1)  U ВХ ( К  2)
]
Т
.
(4.28)
После вычитания из уравнения (4.27) выражения (4.28), получим:
136
U ВЫХ ( К )  U ВЫХ ( К  1)  К р{[U ВХ ( К )  U ВХ ( К  1)] 
ТД
Т
T
U ВХ ( К  1) 
TИ
(4.29)
[U ВХ ( К )  2U ВХ ( К  1)  U ВХ ( К  2)]}.
В этом уравнении приращение интегральной составляющей равно
T
U ВХ ( К  1) , а изменение дифференциальной составляющей определяется
TИ
T
по выражению Д [U ВХ ( К )  2U ВХ ( К  1)  U ВХ ( К  2)] .
Т
Значение UВЫХ(К-1) на первом шаге квантования принимается равным нулю.
Следует заметить, что в уравнении (4.29) отсутствует суммирование дискретных значений входного сигнала, что снимает ограничения по объему памяти МПС при вычислении суммы.
Выражение (4.30) для определения UВЫХ принято называть рекуррентным,
то есть позволяющим вычислять выходное напряжение на текущем шаге по его
значению в предыдущий шаг дискретности.
U ВЫХ ( К )  U ВЫХ ( К  1)  К р{U ВХ ( К )  [1 
U ВХ ( К  2) 
ТД
Т
TД
Т
]  U ВХ ( K  1)  [1 
Т
T
 2 Д ]
TИ
Т
(4.30)
}.
Для того, чтобы исключить дифференциальную или интегральную составляющие из выходного сигнала, необходимо изменить коэффициенты в уравнении (4.30). Например, для исключения дифференциальной составляющей требуется ТД приравнять нулю.
Тогда получим уравнение (4.31) для ПИ-регулятора.
U ВЫХ ( К )  U ВЫХ ( К  1)  К р  [U ВХ ( К )  U ВХ ( К  1)  (
Т
 1)] .
ТИ
(4.31)
Итак, дискретная модель ПИД-регулятора во временной области представляет собой уравнения (4.20) и (4.30). Эта модель относительно легко реализуется в МПС.
Если обозначить постоянные коэффициенты в уравнении (4.30) как А0, А1
и А2 , то получим более компактную запись дискретной модели регулятора:
UВХ К=UЗАД К – UОС К ;
(4.32)
UВЫХ К=UВЫХ (К-1)+А0UВХ К+А1UВХ (К-1)+А2UВХ (К-2) ;
(4.33)
где А0=Кр[1+
А1=Кр[-1+
А2=Кр TД
Т
TД
Т
];
T
T
 2 Д ];
TИ
Т
.
Анализ уравнения дискретной модели ПИД-регулятора (4.30) показывает,
что для ее реализации на каждом интервале дискретности требуется три значения входной величины (т.е. ошибки управления): Uвх(К) в текущем интервале
137
квантования, Uвх(К-1) в предыдущем интервале и Uвх(К-2) в еще более раннем интервале дискретности. Также требуется хранить предыдущее значение
выходной величины Uвых(К-1).
Уравнения (4.32) и (4.33) реализуются с использованием команд обработки
информации (команды умножения и сложения).
Практическое занятие № 7. Микропроцессорное управление электроприводами и промышленными установками на основе промышленных контроллеров.
Цель занятия: ознакомиться с методикой разработки систем микропроцессорного управления электроприводами и промышленными установками на
основе промышленных контроллеров.
Задание на занятие: составить алгоритм микропроцессорного управления
электроприводами и промышленными установками на основе промышленных
контроллеров.
Рекомендации по выполнению заданий:
Допустим, что требуется разработать микропроцессорную систему (МПС)
для управления пуском двигателя по линейному закону. После разработки математической модели МПС и выполнения других этапов проектирования необходимо разработать алгоритм микропроцессорного управления.
Алгоритм управления пуском ЭП по линейному закону разрабатывается
на основе математической модели микропроцессорной системы управления.
Так в алгоритме на рис. 16 блоки 6 и 7 реализуют уравнения (14)-(17) математической модели. Условно алгоритмы управления пуском ЭП по линейному закону можно разделить на две части: основная и сервисная. Сервисная часть алгоритма готовит «почву» для выполнения основной части, включающей блоки
вычисления по формулам математической модели. В сервисную часть алгоритма на рис. 16 входят блоки 2, 3, 4 и 9, в которых вводятся исходные данные и
производится вывод управляющего напряжения.
138
1
Начало
2
Ввод ΔU, U0
Программирование таймера
3
U ук =0
4
Пуск таймера
5
6
Преобразование U ук из формата с
плавающей запятой в формат
целого числа
Вывод Uук на ЦАП
13
да
нет
7
Uyk= Uyk+ΔU к
8
Uyk< U0
Таймер
сработал?
да
нет
9
Uyk= U0
10
Преобразование Uкиз формата с
плавающей запятой в формат
целого числа
11
Вывод Uук
12
конец
Рис. 22. Алгоритм выдачи управляющего напряжения тиристорного преобразователя с аппаратным таймером
В алгоритме на рис. 17 блок 7 непосредственно реализует уравнение математической модели. Блоки 2, 5, 6, 10 и 11 можно условно отнести к сервисной
части.
Практическое занятие № 8. Программная реализация ПИД – регулятора.
Цель занятия: изучить дискретные математические модели ПИД – регулятора.
Задание на занятие: разработать алгоритм программной реализации ПИД
– регулятора на основе промышленных контроллеров.
Рекомендации по выполнению заданий:
На основе математической модели разрабатываемого регулятора на этом
этапе составляется алгоритм функционирования МПС. Примерная структурная
139
схема алгоритма основной программы приведена на рис. 5.
В начале управляющей программы производится ввод исходных данных в
формате с плавающей запятой (ФПЗ), т.е. параметров реализуемого программного регулятора Кр, Ти, Тд, Т0. Затем в программе управления скоростью электропривода производится расчет коэффициентов А0, А1, А2 математической модели (ММ) регулятора.
Управление скоростью электропривода осуществляется в режиме реального времени, поэтому в системе используется таймер. Следовательно, необходимо произвести программирование задержки времени таймера. В алгоритме реализации ПИД-регулятора это реализуется применением прерывающей подпрограммы.
Для каждой переменной ММ ПИД-регулятора резервируется несколько
ячеек памяти, приняв их равными нулю при пуске МПС.
Начало
Загрузка
Uзад ,К Р, ТИ ,ТД , Т 0
Вычисление
А0=1+ ТД /Т0
А1=(-1+Т 0 /ТИ-2Т Д /Т 0)
А2=Т Д /Т 0
Разблокирование
прерываний
по таймеру
Конец
Рис. 5. Структурная схема алгоритма основной программы
В основной программе практически реализуются вспомогательные операции ввода исходных данных и расчета параметров математической модели
ПИД-регулятора и подготовлена работа ПМК в режиме прерываний по таймеру. В блоке «Разблокировка прерываний по таймеру» также устанавливается
интервал прерываний, равный Т0.
Принцип работы в режиме прерываний по таймеру заключается в следующем. Периодически выполнение основной программы временно прерывается на
интервал Т0 и ПМК переходит на выполнение прерывающей подпрограммы. В
течение этого на интервала Т0 реализуется ММ программного ПИД-регулятора.
Примерная структурная схема алгоритма прерывающей программы приведена
на рис. 6.
140
Начало
ППП
Ввод сигнала
датчика скорости Uоосс
Нормализация сигнала
датчика скорости Uооссн
Вычисление выходного сигнала
ПИД-регулятора
UвхК = Uзад-Uооссн
U выхК =А0UвхК +А1U вхК-1 + А2U вхК-2
UК = UК-1+U выхК
Нормализация выходного сигнала
ПИД-регулятора
Вывод сигнала
ПИД-регулятора
Конец
ППП
Рис. 6. Структурная схема алгоритма прерывающей программы
Таким образом программный регулятор работает циклически. Длительность цикла составляет T0 =  t. В начале каждого цикла (прерывающей подпрограммы) осуществляется пуск таймера и ввод сигнала обратной связи по скорости (с датчика скорости). Затем производится вызов подпрограммы (ПП) нормализации сигнала обратной связи по скорости. Далее рассчитывается UВХ К и
U ВЫХ К . Перед выводом сигнала управления на СП его сначала нормализуют.
Таймер в проектируемой МПС отсчитывает отрезок времени, равный Т0.
Он запускается в начале цикла и по истечении Т0 выдает сигнал прерывания,
информирующий микропроцессор (МП) о том, что время цикла закончилось.
МП переходит к обслуживанию этого прерывания и после выполнения прерывающей подпрограммы в конце цикла «ожидает» начало нового цикла.
1. Перед составлением управляющей программы (УП) необходимо подготовить символьную таблицу. Управляющая программа может быть составлена
на различных языках программирования. В странах ЕЭС существует стандарт
141
на языки программирования для промышленных микропроцессорных контроллеров. В качестве примера на рис. 7 приведена управляющая программа на языке лестничной логики (Ladder) для ПМК S7-200, выпускаемых фирмой Siemens.
Network1
SM0.1
SBR_0
EN
END
Рис. 7. Основная управляющая программа на языке лестничной логики для
ПМК S7-200
Network1
SM0.0
EN MOV_R
0.75
IN
OUT
VD104
EN MOV_R
0.25
IN
OUT
VD112
EN MOV_R
0.1
30.0
0.0
100
0
10
IN
OUT
EN
MOV_R
IN
OUT
EN
MOV_R
IN
OUT
EN
MOV_B
IN
OUT
VD116
VD120
VD124
SMB34
EN ATCH
IN
EVENT
ENI
RET
Рис. 8. Подпрограмма на языке лестничной логики для ПМК S7-200
142
Network1
SM0.0
EN WXOR_DW
AC0
AC0
AIW0
AC0
IN1
IN2
OUT
EN
MOV_W
IN
OUT
EN
DI_REAL
IN
OUT
IN1
AC0
OUT
IN2
EN
AC0
AC0
DIV_R
EN
AC0
32000
AC0
AC0
MOV_R
OUT
IN
VD100
Network2
E0.0
PID
EN
VB100
0
TABLE
LOOP
Рис. 9. Прерывающая подпрограмма на языке лестничной логики для ПМК
S7-200
Network3
SM0.0
EN
MUL_R
VD108
IN1
32000
IN2
EN
AC0
AC0
IN
OUT
AC0
TRUNC
OUT
EN
MOV_W
IN
OUT
AC0
AQW0
RETI
Рис. 10. Прерывающая подпрограмма на языке лестничной логики для
ПМК S7-200 (продолжение)
143
Практическое занятие № 9. Микропроцессорное управление системой электропривода по схеме «ШИП – Д».
Цель занятия: ознакомиться с методикой разработки системы микропроцессорного управления электроприводом по схеме «ШИП – Д» на основе промышленных контроллеров.
Задание на занятие: разработать математическую модель микропроцессорного управления электроприводом по схеме «ШИП – Д» на основе промышленных контроллеров.
1. Разработать функциональную схему микропроцессорной системы для
управления электроприводом по схеме «ШИП-Д» в соответствии с заданной
циклограммой скорости с применением ПМК. Широтно- импульсный модулятор реализовать программно. Описать взаимодействие узлов системы.
2. Составить математическую модель функционирования заданной микропроцессорной системы электропривода.
3. Разработать в соответствии с вариантом (табл. 5) детализированную
структурную схему микропроцессорного устройства для управления электроприводом в соответствии с заданной циклограммой скорости.
4. Выбрать и обосновать выбор элементов разрабатываемой микропроцессорной системы (МПС).
1. Разработать структурную схему алгоритма управления электроприводом в соответствии с заданной циклограммой скорости.
2. Выбрать интервал дискретности.
3. Составить подробный комментарий и математическое обоснование к
каждому блоку структурной схемы алгоритма.
4. Разработать программу, реализующую управление электроприводом в
соответствии с заданной циклограммой скорости. Привести в пояснительной
записке текст программы.
5. Разработать схему подключения ПМК к источнику питания, тахогенератору и силовому преобразователю.
6. Разработать алгоритм и программу измерения скорости электропривода
с помощью импульсного датчика скорости (ИДС).
Рекомендации по выполнению заданий:
рад/с
4

1

3

2
0
t1

5
t2
t3
t4
t5
t ,c
Время цикла tц
График цикла работы электропривода
Максимальная скорость электропривода (ЭП) составляет max = 150 рад/с.
Сначала необходимо составить схему, представляющую совокупность
функциональных блоков, каждый из которых выполняет определенные дейст144
вия. Функциональная схема содержит модули ПМК, в т. ч. цифроаналоговый
преобразователь (ЦАП), широтно-импульсный преобразователь (ШИП), электрический двигатель (М), рабочую машину (РМ), импульсный датчик скорости
(ИДС).
Ш
И
П
ЦАП
ПМК
М
РМ
ИДС
Рис. 22. Функциональная схема микропроцессорного устройства
для управления электроприводом по схеме «ШИП-Д»
ШИП состоит из двух узлов: широтно–импульсного модулятора ШИМ и
системы вентилей. В данном случае ШИМ реализуется программно в ПМК.
Широтно-импульсный модулятор (ШИМ), являющийся звеном ШИП, вырабатывает сигналы, управляющие работой вентилей (электронных ключей К). Суть
широтно-импульсной модуляции состоит в том, что формируются импульсы с
периодом следования Т, который остается постоянным (Т=const), а значения
длительности импульсов tи (и следовательно, значения длительности паузы tП)
можно изменять путем изменения напряжения управления Uу ШИМ (ШИП) и
таким образом регулировать время работы ключа в разомкнутом (Р) или замкнутом (З) состоянии. Временная диаграмма работы ШИМ для разных заданных
значений скорости  показана на рис. 23. Длительность импульса tи определяет время работы ключа (К) в замкнутом состоянии tP (tP - это время, когда двигатель подключен к напряжению сети постоянного тока Uo), а время паузы tn
соответствует разомкнутому состоянию ключа (двигатель отключен от сети).
Временная диаграмма работы ключа показана на рис. 24.
t1
t2
t3
Uвых. шип
tp
tn
tp
tn
tp
tn
tp
tn
tp
tn
tp
t
Tk
Рис. 23. Временная диаграмма работы ШИМ для разных заданных значений скорости 
145
Uдв
Uср.дв.
3
Р
3
Р
3
Р
3
Р
3
Р
3
tp
tn
tp
tn
tp
tn
tp
tn
tp
tn
tp
Uо
t
Tk
Рис. 24. Временная диаграмма работы ключа
Для составления математической модели функционирования заданной
микропроцессорной системы электропривода рассмотрим работу СЭП «ШИПД».
На рис. 23 и 24 используются следующие обозначения: tp - время замкнутого состояния ключа (рабочий участок цикла коммутации); tп - время паузы
(разомкнутое состояние ключа); Тк - период коммутации.
Тк=tp+tп
Условие работы ШИП выглядит так: Тк=const.
Изменяется значение tр и tп («ширина» импульса), но период коммутации
Тк остается постоянным.
Обычный ШИП состоит из широтно-импульсного модулятора (ШИМ) и
ключа, периодически замыкающегося под управлением ШИМ.
При программной реализации ШИП отсутствует аппаратный ШИМ, а рабочий интервал tР и интервал паузы tn формируется программно с использованием или программного или интервального таймера. При этом непосредственно
задаются значения tP или определяют по формуле:
U
U
tP  У  TK У ,
K
U0
где Uу напряжение управления ШИП; ТК - период коммутации ШИП; U0 максимальное напряжение ШИП.
Скорость двигателя в рассматриваемой системе ЭП определяется по уравнению электромеханической характеристики (ЭМХ):

U СР  I ЯСР  R Я
С

,
(18)
где Iяср - среднее значение тока якоря двигателя; Rя  и С - сопротивление
цепи якоря и постоянная двигателя; Uср - среднее значение напряжения, приложенного к цепи якоря двигателя.
Изменяя Uср, можно регулировать скорость двигателя. Определим выражение для Uср и покажем его зависимость от значения tр. На рабочем участке
работы ШИП в течение tр к якорю двигателя приложено напряжение U0, а в течение паузы оно практически равно 0 (Uя = 0).
146
T
t
TK
1 K
1 P
U СР 
 u Я  dt 
  u Я  dt   u Я  dt
TK 0
TK  0
tP
t
 U 0  P  U 0  ,
TK
где  - скважность импульсов ШИП.
t

1 P
 U 0  dt 
TK 0
(19)
Уравнение (19) показывает, что среднее значение напряжения на выходе
ШИП пропорционально интервалу tр. Если подставить уравнение (19) в уравнение (18), получим зависимость угловой скорости двигателя от tр:
 СР  К  t P   C ,
(20)
где K 
U0
;
TK  C
 C  I Я СР 
RЯ 
-статический перепад скорости.
C
Итак, среднее значение напряжения, а следовательно, и скорость двигателя
 СР пропорциональны tр.
Таким образом, скорость двигателя можно задавать значением интервала
времени tр, если отсчитывать его при реализации ШИМ с помощью ПМК. С
этой целью в данной курсовой работе используется понятие интервала дискретности Т0 (t). Значения U 0 , TK и C подобраны таким образом, чтобы K
стало равно 1. Тогда  СР  t P   C . Используя понятие интервала дискретности
t («тик» таймера), можно задавать и отсчитывать tр числом тиков таймера. В
данном задании принято, что период коммутации ШИП условно равен 150 тикам таймера. Максимальная скорость двигателя также принята равной 150 рад в
сек. Учитывая  СР  t P   C , примем, что 1рад/с = 1 тик.
Итак, управление электронным ключом ШИП можно производить с помощью ПМК (см. рис. 22). Сигналы с дискретных выходов ПМК поступают на
импульсные усилители и далее на входы ключей ШИП.
На следующем этапе необходимо разработать и описать алгоритм циклового управления и алгоритм микропроцессорного управления системой «ШИПД» для одного интервала времени циклограммы, например, t1t2 (рис. 21).
На рис. 25 приведен алгоритм циклового управления (основная программа
– ОП). Блок 2 алгоритма циклового управления служит для ввода параметров
цикла: значений интервалов времени t i для пяти участков цикла и значений
скоростей на этих участках. Блок 3 алгоритма предназначен для записи в счетчик ПМК числа пройденных участков цикла, обозначенного в начале цикла как I
= 0. В блоке 4 реализуется команда вызова подпрограммы «ШИП». После каждого прохода подпрограммы «ШИП» содержимое счетчика увеличивается на 1 (I =
I+1), что в алгоритме отражено в блоке 5. Шестой блок оценивает значение I
(условный блок) и, если его значение равно 6, процесс выполнения циклограммы повторяется снова, начиная с первого участка, то есть значение I начале
цикла снова становится равным нулю (I = 0).
147
1
Начало
Ввод исходных данных
2
I=0
3
Вызов
4
подпрограммы "ШИП"
5
I=I+1
да
6
нет
I=6?
Рис. 25. Алгоритм циклового управления
На рис. 26 приведен алгоритм микропроцессорного управления системой
«ШИП-Д» для одного интервала времени циклограммы (см. рис. 23). В данном
случае алгоритм оформлен в виде подпрограммы «ШИП». В блоке 2 вычисляется время паузы t П. Условно алгоритм подпрограммы можно разделить на две
части: первая часть включает блоки, которые реализуют функционирование
ШИП на интервале t Р , а вторая часть – t П. Поэтому, если на каком–либо интервале времени циклограммы t Р равно нулю, то первую часть алгоритма нет
необходимости для этого интервала времени выполнять, что и отражено на выходе «да» блока 3 (рис. 26). Блоки 3 – 9 предназначены для реализации первой
части подпрограммы «ШИП», а блоки 10 – 16 выполняют вторую часть алгоритма.
В блоке 3 значение t Р сравнивается с нулем. Если t Р равно нулю, то производится переход к блоку 10, с которого начинается реализация второй части
подпрограммы «ШИП», т. е. паузы. В четвертом блоке на дискретный выход
выдается сигнал логической 1 и с этого момента времени начинается отсчет текущих значений рабочего интервала t ТЕК Р i . Для программного контроля времени в блоке 5 организованы счетчики для «измерения» интервала цикла t ТЕК i
и рабочего интервала t ТЕК Р i. В начале подпрограммы (в блоке 5) счетчики обнуляются, то есть t ТЕК i = 0 и t ТЕК Р i = 0. Содержимое счетчиков увеличивается
на 1 в блоке 7 после каждого обращения к подпрограмме «Время» в блоке 6. В
следующем блоке 8 происходит сравнение значений t ТЕК i и t i (задан в блоке 2
ОП).
148
1
Начало п/п
Вычисление времени
паузы
2
да
t Рi = 0 ?
3
нет
Выдача логической 1
на дискретный выход Q0.0
4
5
tpтекi =0
t текi=0
6
Обращение к п/п
«TIME»
t тек pi
= t тек pi + 1
tтекi=tтекi + 1
7
да
tтекi = t i?
8
нет
да
9
t тек pi < tpi
?
нет
да
t Пi = 0 ?
10
нет
11
Выдача логического 0
на дискретный выход Q0.0
t тек пi = 0
12
Обращение к п/п
«TIME»
13
t тек пi = t тек пi + 1
14
15
tтекi = tтекi + 1
да
tтекi = t i?
нет
нет
16
t тек пi  t пi
?
да
17
Конец п/п
Рис. 26. Алгоритм микропроцессорного управления системой ШИП-Д
для одного интервала времени циклограммы
Если t ТЕК i становится равным t i, то это означает, что «i» - участок цикла
завершен и следует выйти из подпрограммы «ШИП». Это отражено в 8 блоке
выходом «да», который соединен с входом блока 17 (конец подпрограммы). Если t ТЕК i не равно t i, то выполнение подпрограммы продолжается далее.
В блоке 9 происходит сравнение значений t ТЕК Р i и t Р. Из уравнения (20)
ранее было получено, что  СР  t P   C , то есть   t P . Если t ТЕК Р i становится
равным t Р, то это означает, что рабочий интервал ШИП завершен и следует пе149
рейти к реализации интервала паузы в этой же подпрограмме. Это отражено в
блоке 9 выходом «да», который соединен с входом блока 17 (конец подпрограммы). Если t ТЕК Р i не равно t Р, то выполнение подпрограммы продолжается
далее (переход к блоку 6).
В блоке 10 происходит сравнение значения t П с нулем. Если на каком–
либо интервале времени циклограммы t П равно нулю, то вторую часть алгоритма (реализация паузы) нет необходимости выполнять для этого интервала
времени и выйти из подпрограммы «ШИП», что и отражено на выходе «да»
блока 10 (рис. 26). Блоки второй части алгоритма аналогичны блокам 3 - 9 первой части алгоритма, по которому выполняется программный ШИМ. В блоке
11 на дискретный выход Q0.0 выдается сигнал логического 0 и с этого момента
времени начинается отсчет текущих значений рабочего интервала t ТЕК П i. Для
программного контроля времени в блоке 12 организован счетчик для «измерения» паузы t ТЕК П i. В блоке 12 он обнуляется, то есть t ТЕК П i = 0. Счетчик для
контроля t ТЕК i был организован в блоке 5. Содержимое счетчиков увеличивается на 1 в блоке 14 после каждого обращения к подпрограмме «Время» в блоке
13. В следующем блоке 15 происходит сравнение значений t ТЕК i и t i. Если t ТЕК i
становится равным t i, то это означает, что «i» - участок цикла завершен и следует выйти из подпрограммы «ШИП». Это отражено в 15 блоке выходом «да»,
который соединен с входом блока 17 (конец подпрограммы). Если t ТЕК i не равно t i, то выполнение подпрограммы продолжается далее. В блоке 16 происходит сравнение значений t ТЕК П i и t П. Значение интервала паузы было рассчитано в блоке 2. Если t ТЕК П i становится равным t П , то это означает, что интервал
паузы работы ШИП завершен и следует выйти из в подпрограммы ШИП. Это
отражено в блоке 16 выходом «да», который соединен с входом блока 17 (конец
подпрограммы). Если t ТЕК П i не равно t П, то выполнение подпрограммы продолжается далее (переход к блоку 13).
5. При выполнении подпрограммы «ШИП» используется подпрограмма
«Время». Поэтому при выполнении 3 задания необходимо разработать и описать алгоритм подпрограммы «Время» (таймер), с помощью которой можно
реализовать временную задержку продолжительностью в один тик.
Временные интервалы длительностью более 1 мс и кратных 1 мс в Step-7
можно сформировать, используя встроенные в программное обеспечение таймерные команды (операции) с дискретностью 1 мс, 10 мс и 100 мс.
1
Начало п/п "Время"
2
Организация счетчика циклов N
подпрограммы "Время"
I=0
3
Набор команд с общим временем
выполнения, равным tк
4
5
I=I+1
нет
I= N?
150да
6
Конец п/п "Время"
Рис. 27. Алгоритм подпрограммы «Время»
Временные интервалы длительностью менее 1 мс и не кратных 1 мс в Step7 получают, применяя разрабатываемые подпрограммы «Время». На рис. 27
приведен алгоритм подпрограммы «Время» (1тик = 0.1мс).
Сущность разрабатываемых подпрограмм «Время» можно сформулировать следующим образом. Любая команда микроконтроллера выполняется за
определенное время. Если набрать определенное число команд с известным
временем выполнения и повторять их выбранное число раз, то можно сформировать любую задержку во времени. В табл. 6 для анализа приведено время выполнения некоторых команд S7-200 на языке релейной логики.
Таблица 6
Операция
Описание
CPU
212
(в
мкс)
+D
Сложение двойных целых чисел (32 бита)
154
-D
Вычитание двойных целых чисел (32 бита)
156
+I
Сложение целых чисел (16 бит)
119
-I
Вычитание целых чисел (16 бит)
68
+R
Сложение действительных чисел
220
-R
Вычитание действительных чисел
225
Окончание таблицы 6
*R
Умножение действительных чисел
255
/R
Деление действительных чисел
810
ATCH
Назначение прерывания
52
CALL
Вызов подпрограммы
38
DIV
ENI
JMP
LD
MOV_W
MOV_DW
MOV_R
Деление целых чисел
Разблокировка всех событий прерывания
Переход на метку
Операция загрузки
Передача слова
Передача двойного слова
Передача действительного числа
444
38
1.3
1.3
72
89
89
151
Допустим, что требуется осуществить временную задержку tзад.= 0.9 мс.
Выберем MOV_W в качестве команды блока 3 (см. рис. 27). Время выполнения
этой команды t Б3 составляет 72 мкс. Определим число повторений N команды
MOV_W.
N
t зад  t Б 2
,
tБ3  tБ4  tБ5
где t Б2 – время выполнения команд второго блока; t Б4 – время выполнения
команд блока 4; t Б5 – время выполнения команд блока 5.
Во втором блоке организуется счетчик числа циклов (повторений блоков 3,
4 и 5), т. е. содержит команду «Прямой счет». В начале подпрограммы счетчик
обнуляется (I = 0). Третий блок включает команду MOV_W. В 4 блоке включается счетчик и его содержимое I увеличивается на 1. В пятом блоке производится сравнение содержимого счетчика I c числом циклов N. Если I < N, то
производится повторное выполнение блоков 3, 4 и 5. Если I = N, то осуществляется выход из подпрограммы «Время».
Составление программ управления на одном из языков применительно к
ПМК реализуется на основе разработанных алгоритмов.
Сначала рассматривается основная программу. Потом составляются подпрограммы «ШИП» и «Время».
При разработке алгоритма и программу измерения скорости с ИДС следует
учесть, что скорость двигателя оценивается косвенно по частоте импульсов
датчика скорости, определяемая или с помощью внешнего программного таймера.
6.5.Краткое описание видов самостоятельной работы
6.5.1. Общий перечень видов самостоятельной работы
1. Самостоятельная подготовка к выполнению лабораторных работ.
2. Составление отчета и подготовка к защите лабораторных работ.
3. Подготовка к экзамену.
6.5.2. Методические рекомендации для выполнения для каждого задания самостоятельной работы
Задание № 1. Подготовка к лабораторным занятиям № 1-8.
Цель задания: самостоятельная работа по подготовке к лабораторным занятиям № 1-8.
152
Содержание задания: 1. Ознакомиться с теоретическими сведениями. 2.
Подготовить ответы на контрольные вопросы.
Методические рекомендации для выполнения для задания № 1 по самостоятельной работе: При ознакомлении с теоретическими сведениями следует обратить внимание на назначение команд промышленного микроконтроллера. При подготовке ответов на контрольные вопросы рекомендуется
рассматривать особенности выполнения команд ПМК и учитывать форматы команд при оценке предполагаемых результатов их выполнения.
Задание №2. Подготовка к защите отчетов по лабораторным работам № 18.
Цель задания: самостоятельная работа по подготовке к защите отчетов по
лабораторным работам № 1-8.
Содержание задания: Провести анализ результатов выполнения лабораторных работ и сделанных выводов.
Методические рекомендации для выполнения для задания № 2 по самостоятельной работе: При проведении анализа результатов выполнения лабораторных работ следует обратить внимание на соответствие полученных
численных данных результатам, полученных вручную.
6.5.3. Описание курсового проекта
Выполнение курсового проекта по дисциплине учебным планом не предусмотрено.
6.5.3. Учебно-методическое обеспечение самостоятельной работы студентов
Основная литература
1. Сартаков В. Д. Программное обеспечение мехатронных и робототехнических систем. Учебное пособие: – Иркутск, Изд-во ИрГТУ, 2013. – 145 с.
2. Сартаков В. Д. Программное обеспечение мехатронных и робототехнических систем: Методические указания для выполнения лабораторных работ. Иркутск: ИрГТУ, 2013. - 80 с. (ЭР)
3. Сартаков В. Д. Программное обеспечение мехатронных и робототехнических систем: Методические указания по практическим занятиям. - Иркутск:
ИрГТУ, 2013. - 90 с. (ЭР)
4. Сартаков В. Д. Программное обеспечение мехатронных и робототехнических систем: Методические указания к самостоятельной работе. -Иркутск:
ИрГТУ, 2013. - 10 с. (ЭР)
Дополнительная литература
1. В. Д. Сартаков. Микропроцессорные средства и системы: Конспект
лекций в формате презентаций. - Иркутск: ИрГТУ, 2009. 750 слайдов. ЭИ
(Шифр ДСК-2275-2012).
2. Программируемый контроллер. S7-200. Системное руководство.
www.siemens.ru
153
7. Применяемые образовательные технологии
При реализации данной программы применяются образовательные технологии, описанные в табл. 2.
Таблица 2 - Применяемые образовательные технологии
Технологии
Лекции Лаб. Практич. СРС
раб.
занят
Слайд - материалы
+
+
+
+
Виртуальное моделирование
+
+
Тренинг
+
+
+
1. Лекции и практические занятия проводятся в форме презентаций.
2. Лабораторные занятия проводятся с применением промышленных микропроцессорных контроллеров.
7. Контрольно-измерительные материалы и оценочные средства для
текущего контроля успеваемости, промежуточной аттестации по итогам
освоения дисциплины
7.1. Краткое описание контрольных мероприятий, применяемых контрольно-измерительных технологий и средств.
- вопросы к экзамену,
- тестирование.
7.2. Описание критериев оценки уровня освоения учебной программы.
На лабораторных занятиях осуществляется текущий контроль в два этапа:
- по готовности к выполнению лабораторных работ с применением контрольных вопросов;
- защита выполненных отчетов по лабораторным работам с оценкой результатов работ.
Итоговый контроль осуществляется в формате семестрового экзамена по
экзаменационным билетам.
Для промежуточного контроля усвоения материала применяется тестирование (максимальное количество баллов – 20).
Для итогового контроля усвоения материала применяется экзамен (максимальное количество баллов – 80).
7.3. Для получения оценки отлично необходимо набрать не менее 90
баллов, хорошо – от 70 до 89 баллов, удовлетворительно – от 50 до 69 баллов,
неудовлетворительно – менее 50 баллов. Контрольно измерительные материалы
для итоговой аттестации по дисциплине
Вопросы к экзамену:
1. Структурная схема ПМК S7-222.
2. Как вывести аналоговый сигнал из микроконтроллера?
3. Как ввести аналоговый сигнал в микроконтроллер?
154
4. Как вывести дискретный сигнал из микроконтроллера?
5. Как ввести дискретный сигнал в микроконтроллер?
6. С какой целью производится вывод аналоговых сигналов из микроконтроллера?
7. С какой целью производится ввод аналоговых сигналов в микроконтроллер?
8. С какой целью производится вывод дискретных сигналов из микроконтроллера?
9. С какой целью производится ввод дискретных сигналов в микроконтроллер?
10. Виды сигналов, вводимых в ПМК S7-222.
11. Структурная схема алгоритма ПД-регулятора.
12. На каком средстве готовится программа для контроллера?
Каким образом программа «попадает» в контроллер?
13. Что представляет собой программа, подготовленная средствами ПО «Step7/MicroWin»?
14. Структурная схема алгоритма ПИД-регулятора.
15. Структурная схема алгоритма ПИ-регулятора.
16. Блок-схема ПМК.
17. Детализированная структурная схема МПС для управления пуском
ЭД по линейному закону.
18. Структурная схема алгоритма регулятора.
19. Функциональная схема МПС для управления пуском ЭД по линейному закону?
20. Что является основой алгоритма УП?
21. Этапы проектирования МПС.
Тесты:
1.
2.
3.
4.
5.
6.
мера?
7.
фейса?
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
цей?
По каким критериям производится выбор МП?
По каким критериям производится выбор ПЗУ?
По каким показателям производится выбор ОЗУ?
По каким критериям производится выбор АЦП?
По каким показателям производится выбор ЦАП?
По каким показателям (критериям) производится выбор БИС тайПо каким показателям производится выбор параллельного интерПо каким показателям производится выбор типа интерфейса?
По каким показателям производится выбор ППЗУ?
Из каких блоков состоит ОЗУ?
Из каких блоков состоит ППЗУ?
Из каких блоков состоит таймер?
Из каких блоков состоит ЦАП с «весовыми резисторами»?
Из каких блоков состоит параллельный интерфейс?
Какие типы памяти используются в МПС?
Какие типы ЦАП используются в МПС?
Какие типы АЦП используются в МПС?
Из каких блоков состоит ЦАП с «лестничной» резисторной матри-
155
19.
Из каких блоков состоит АЦП с «динамической» компенсацией?
20.
Какие недостатки имеет АЦП с «динамической» компенсацией?
21.
Из каких блоков состоит АЦП с поразрядным уравновешиванием?
22.
Из каких блоков состоит АЦП с двойным интегрированием?
23.
Какие недостатки имеет АЦП с двойным интегрированием?
24.
Какие недостатки имеет ЦАП с «весовыми резисторами»?
25.
Из каких этапов состоит программирование таймера?
26.
Из каких этапов состоит программирование параллельного интерфейса?
27.
Каким образом производится программирование режима работы
таймера?
28.
Каким образом производится программирование выдержки времени
таймера?
29.
Каким образом производится программирование режима работы
параллельного интерфейса?
30.
Каким образом производится программирование ввода информации
от датчика?
31.
Какую информацию содержит управляющее слово таймера?
32.
Какую информацию содержит управляющее слово параллельного
интерфейса?
33.
Этапы проектирования МПС.
34.
На основании чего осуществляется разработка детализированной
структурной схемы МПС?
35.
На основании чего осуществляется разработка алгоритма работы
МПС?
36.
На основании чего осуществляется составление управляющей программы МПС?
37.
В чем проявляются особенности математической модели МПС?
38.
Достоинства и преимущества микропроцессорных систем управления по сравнению с традиционными.
8.
Рекомендуемое информационное обеспечение дисциплины
8.1. Основная учебная литература
1. Сартаков В. Д. Программное обеспечение мехатронных и робототехнических систем. Учебное пособие: – Иркутск, Изд-во ИрГТУ, 2013. – 145 с.
2. Сартаков В. Д. Программное обеспечение мехатронных и робототехнических систем: Методические указания для выполнения лабораторных работ. Иркутск: ИрГТУ, 2013. - 80 с. (ЭР)
3. Сартаков В. Д. Программное обеспечение мехатронных и робототехнических систем: Методические указания по практическим занятиям. - Иркутск:
ИрГТУ, 2013. - 90 с. (ЭР)
4. Сартаков В. Д. Программное обеспечение мехатронных и робототехнических систем: Методические указания к самостоятельной работе. -Иркутск:
ИрГТУ, 2013. - 10 с. (ЭР)
156
8.2. Дополнительная учебная и справочная литература.
1. Микропроцессорное управление электроприводами. В. Д. Сартаков. В
2 ч. – Иркутск: Изд-во ИрГТУ, 1999. –399 стр.
2. Промышленные микропроцессорные контроллеры. В. Д. Сартаков.
Учебное пособие. – Иркутск: Изд-во ИрГТУ, 2005. –144 с.
3. Микропроцессорные средства и системы. В. Д. Сартаков, М. П. Дунаев. Учебное пособие. – Иркутск: Изд-во ИрГТУ, 2005. – 47 с.
8.3. Электронные образовательные ресурсы:
8.3.1. Ресурсы ИрГТУ, доступные в библиотеке университета или в локальной сети университета
1. Сартаков В. Д. Программное обеспечение мехатронных и робототехнических систем. Учебное пособие: – Иркутск, Изд-во ИрГТУ, 2013. – 145 с.
2. Сартаков В. Д. Программное обеспечение мехатронных и робототехнических систем: Методические указания для выполнения лабораторных работ. Иркутск: ИрГТУ, 2013. - 80 с. (ЭР)
3. Сартаков В. Д. Программное обеспечение мехатронных и робототехнических систем: Методические указания по практическим занятиям. - Иркутск:
ИрГТУ, 2013. - 90 с. (ЭР)
4. Сартаков В. Д. Программное обеспечение мехатронных и робототехнических систем: Методические указания к самостоятельной работе. -Иркутск:
ИрГТУ, 2013. - 10 с. (ЭР)
4. В. Д. Сартаков. Микропроцессорные средства и системы: Конспект лекций в формате презентаций. - Иркутск: ИрГТУ, 2009. 750 слайдов. ЭР.
8.3.2. Ресурсы сети Интернет
1. www.siemens.ru
1. Рекомендуемые специализированные программные средства
- программный пакет Step 7 Micro-Win, предоставленный Иркутским представительством фирмы Siemens ИрГТУ для учебных целей.
2. Материально-техническое обеспечение дисциплины
- специализированная учебная лаборатория Д-220.
157
Программа составлена в соответствии с ФГОС 221000 «Мехатроника и робототехника»
Программу составил:
ФИО, должность, ученая степень и ученое звание разработчика
_ Сартаков Валерий Дмитриевич, профессор, к.т.н., доцент
_________________________ “_12_”июля________ 2013 г.
(подпись)
158
1/--страниц
Пожаловаться на содержимое документа