04 (1087172), страница 2
Текст из файла (страница 2)
• CPU считывает состояние входов;
• Программа, хранимая в CPU, использует эти входы для вычисления
логики управления. Во время выполнения программы CPU обновляет
данные;
• CPU записывает данные в выходы.
Рисунок 4.1 – Общий вид процедуры обработки программы в контроллере CJ1M
Таблица 4.2 – Технические характеристики контроллера CJ1M-CPU21
Возможности цифрового ввода/вывода | 160 точек |
Емкость памяти программы | 5 тыс. операций |
Память данных | 32 тыс. слов |
Время выполнения двоичной команды | 100 нс |
Встроенные входы/выходы | 10 входов и 6 выходов, включая высокоскоростные счетчики и импульсные выходы |
Структура программного обеспечения управления включает в себя следующие модули:
-
Модуль выхода в нулевое положение;
-
Модуль аварийного отключения;
-
Модуль управления позиционированием по оси X;
-
Модуль управления позиционированием по оси Y;
-
Модуль управления позиционированием по оси Z;
-
Модуль контроля концевых датчиков.
Программа разрабатывается на основе раздела 3.4 настоящего диплома.
4.3.2 Настройка системы управления лабораторным стендом.
Система управления лабораторным стендом выполнена на базе промышленного протокола передачи данных: Device Net. Для настройки данного протокола используется программа CX-Integrator из пакета программного обеспечения CX-One.
Рассмотрим последовательность настройки сети Device Net для управления нашим лабораторным стендом. Так как в сети Device Net для нашей лаборатории предполагается использование только одного ведущего и одного ведомого устройства, то возможно настроить сеть без использования специализированного ПО (OMRON Device Net Configurator), использую только программы, входящие в состав пакета CX-One.
Настройка сети начинается с настройки ведомых модулей (slave).
Начнем настройку с антенны WD30-SE и мастер модуля входов-выходов системы Smart-Slice - GRT1-DRT. Для этого необходимо отключить систему от питания, подключить все Smart-Slice модули питания к мастер модулю и подключить к нему антенну WD30-SE.
При выключенном питании в разъеме SW3 антенны выставить 6ой бит в положение «1», перевести антенну в режим SET и включить. На дисплее антенны в это время должны отобразиться 2 точки, после их появления необходимо зажать кнопку SW2, до погасания дисплея на антенне. После этого можно выключить питание, перевести 6-ой бит в разъеме SW3 в положение «0», перевести антенну в режим RUN и включить питание антенны. Вышеуказанная последовательность операций необходима для регистрации в памяти антенны адресов входов и выходов Smart-Slice модулей.
На антеннах WD30-ME и WD30-SE есть возможность выставления трех значений: N Node, W Node, W Ch. Рассмотрим подробнее каждый из них:
N Node – Node Name (имя узла) – уникальный номер узла для каждого устройства промышленной сети (уникальный)
W Node – Wireless Node Name (имя беспроводного узла) – уникальный номер узла в рамках беспроводных коммуникаций (для мастер модуля не может быть равен нулю)
W Ch – Wireless Channel – с помощью этого переключателя настраивается частота передачи данных в сети Device Net (должно быть одинаковым для трех модулей – ведущей антенны (WD30-ME), ведомой антенны (WD30-SE), модуля DeviceNet в составе контроллера CJ1M-CPU21.
После вышеуказанных установок можно перейти к настройке режима обмена данными между ведущими и ведомыми составляющими системы. Для этого используем программу CX-Integrator. Настройки сохраняются в мастер модуле обмена CJ1W-DRM21, установленном в контроллере. Необходимо подключить контроллер CJ1M к ПК через последовательный порт и запустить CX-Integrator.
В программе последовательно выбираем пункты: «File», «New» и создаем новый проект. Далее выбираем закладку «Network», «Auto-Online» и в появившемся окне диалога нажимаем «OK».
После опроса подключенного к ПК контроллера, программа выведет все модули связи данного контроллера. Так как нам интересен только протокол Device Net – выбираем его и нажимаем на кнопку «Connect». В течении 2-5 минут (в случае первого запуска) происходит опрос устройства и первичная автоматическая настройка общих параметров коммуникаций. В результате мы увидим на экране все мастер модули нашего контроллера (см рис. 4.2)
Рисунок 4.2 – Мастер модули контроллера CJ1M-CPU21 в программе CX-Integrator
Двойным щелчком по антенне вызовем окно настройки ее параметров (рис 4.3).
Рисунок 4.3 – Параметры настроек антенны WD30-ME
В данном окне нам необходимо указать количество байт, которые будут пересылаться в каждом цикле обмена данными между ведущим и ведомым устройством.
Разберем все настройки в данном окне:
Wireless Slave Unit Node No. – установленный нами на ведомой антенне (WD30-SE) параметр W Node – в нашем случае «1».
OUT Size, IN Size – количество байт на выходы и входы. Каждый вход и выход, задействованный на Smart-Slice модулях требует по 4 бита данных, следовательно при наших требованиях к СУ нам достаточно выделить 4 байта на входы и 2 байта данных на выходы. При этом при расчетах следует добавить 16 бит данных – состояние системы Smart Slice, пересылаемые в каждом цикле обмена данными. В результате выберем 6 байт данных на входы и 6 байт данных на выходы. Выбор сделан с запасом, в расчете на дальнейшую модернизацию лабораторного стенда.
После выбора OUT size и IN size необходимо отметить галочкой параметр «Register Slave», нажать на кнопку «Download» для загрузки параметров из ПК в антенну, дождаться момента, когда индикация на антенне погаснет и нажать на кнопку «RESET» для перезагрузки устройства.
Далее можно вернуться к экрану выбора устройств Device Net (рис. 4.4) щелкнуть правой кнопкой мышки по WD30-ME и выбрать пункт «Register to another component», «CJ1W-DRM21». Далее двойным щелчком по иконке «CJ1W-DRM21» зайти в интерфейс настройки параметров мастер модуля связи (рис 4.4).
Рисунок 4.4 – Настройки модуля CJ1W – DRM21
Последовательно выполняем следующие операции:
-
на закладке General отмечаем галочкой пункт «Auto allocation as is registered», чтобы избежать ручного переноса настроек;
-
на закладке «I/O Allocation (OUT)» нажимаем кнопку «Auto», для выделения необходимого числа байт данных для выходов модулей Smart-Slice в адресном пространстве контроллера;
-
на закладке «I/O Allocation (IN)» нажимаем кнопку «Auto», для выделения необходимого числа байт данных для выходов модулей Smart-Slice в адресном пространстве контроллера;
-
в закладке «Communication Cycle Time» выбираем минимальные значения для времени цикла обмена данными, это необходимо для более быстрой реакции на изменение состояния управляемого объекта.
После этого нажимаем последовательно кнопки «Download» и «ОК». После этого сеть Device Net настроена и готова к работе. Адреса входов и выходов модуля Smart Slice можно увидеть на закладках «I/O Allocation (IN)» и «I/O Allocation (OUT)» (см рис. 4.4).
4.3.3 Настройка среды программирования CX-Programmer.
Для создания нового проекта в CX-Programmer выбираем «File», «New». В появившемся окне запроса (рис 4.5) указываем необходимые параметры для подключения к контроллеру:
Device Type – CJ1M CPU21
Network Type – Ethernet
IP Address: 192.168.250.1
Остальные настройки оставляем без изменения.
Рисунок 4.5 – Параметры подключения к контроллеру в CX-Programmer
Затем нажимаем «ОК». После установки соединения с контроллером среда разработки полностью готова к работе.
4.3.4 Основные элементы языка линейных диаграмм в среде программирования CX-Programmer
Перечислим в таблице 4.3 основные и наиболее часто используемые команды.
Таблица 4.3 – Основные команды релейных диаграмм LD применимо к среде разработки CX-Programmer
Команда | Символ/Обозначение | Функция |
Команды последовательного ввода | ||
LOAD (LD) |
| Указывает начало логической ветви и формирует условие выполения, которое определяется состоянием указанного бита-операнда |
AND |
| Операция «логическое И» над состоянием указанного бита-операнда и текущим условием выполнения. |
AND NOT |
| Инверсия состояния указанного бита-операнда и операция «логическое И» над результатом инверсии и текущим условием выполнения |
Продолжение таблицы 4.3 | ||
OR |
| Операция «логическое ИЛИ» над состоянием (ВКЛ/ВЫКЛ) указанного бита-операнда и текущим условием выполенния |
Команды последовательного вывода | ||
OUTPUT |
| Запись результата (условия выполнения) логической операции в указанный бит. |
OUTPUT NOT |
| Инверсия результата (условия выполнения) логической операции в указанный бит. |
SET |
| Команда SET включает бит-операнд, когда включается условие выполнения. |
RESET (RSET) |
| Команда RSET сбрасывает бит-операнд, когда включается условие выполнения. |
Команды управления таймерами и счетчиками | ||
TIMER TIM-(BCD) TIMX – (двоичн.) |
| Команда TIM/TIMX запускает декрементный таймер с шагом 0.1с. Значение таймера устанавливается в пределах 0..999.9с (в формате BCD) и 0…6553.5с (в двоичном формате) |
Продолжение таблицы 4.3 | ||
REVERSIBLE COUNTER CNTR 012 (BCD) CNTRX 548 (Двоичн.) |
| Команда CNTR(012)/CNTRX(548) запускает реверсивный счетчик |
Команды сравнения | ||
Символ сравнения (без знака) 300 (=) 305(<>) 310(<) 315(<=) 320(>) 325(>=) |
| Команды сравнения выполняют сравнение двух величин (констант и/или содержимого указанных слов) в формате 16-битовых слов и устанавливают (ВКЛ) если сравнение дает положительный результат. |
Более подробную информацию о командах можно найти в справочнике «Программируемые контроллеры. Руководство по программированию», ОМРОН, 2003г, 407стр.
4.3.5. Рассмотрим пример программы в среде CX-Programmer
В качестве примера рассмотрим фрагмент программы из моего дипломного проекта.
Рисунок 4.6 – Фрагмент программы
Если начальные условия выполнены, включить привод М1 (перемещения по оси Х влево). Одновременно с этим включается счетчик положения по оси Х (CNTR 0001), положительным считается направление «влево» (когда отключено реле реверса). Как только значение счетчика становится равным #40 (что равняется ___ импульсам), отключается двигатель М1, и включается переменная H0.01, которая в свою очередь включает таймер (TIM 0001), со значением #10, что равно ___ секундам.
71