Открыть Электронные книги
Категории
Открыть Аудиокниги
Категории
Открыть Журналы
Категории
Открыть Документы
Категории
ЛАВРОВ
ПРОГРАММИРОВАНИЕ
СИСТЕМ
ПОЗИЦИОНИРОВАНИЯ,
УПРАВЛЯЕМЫХ
КОНТРОЛЛЕРОМ
SPC200 ФИРМЫ FESTO,
В ПАКЕТЕ WINPISA
Министерство образования и науки Российской Федерации
Балтийский государственный технический университет «Военмех»
В.Ю. ЛАВРОВ
ПРОГРАММИРОВАНИЕ СИСТЕМ
ПОЗИЦИОНИРОВАНИЯ,
УПРАВЛЯЕМЫХ
КОНТРОЛЛЕРОМ SPC200
ФИРМЫ FESTO,
В ПАКЕТЕ WINPISA
Учебное пособие
Санкт-Петербург
2008
УДК 681.583.318.2 : 004.35 : 004.42(075.8)
Л13
Лавров, В.Ю.
Л13 Программирование систем позиционирования, управ-
ляемых контроллером SPC200 фирмы FESTO, в пакете
WinPISA: учебно е по собие / В.Ю. Лавров; Балт. гос. техн.
ун-т. – СПб., 2008. – 81 с.
ISBN 978-5-85546-421-4
Приводится описание методов программирования систем позицио-
нирования, управляемых контроллером SPC200, в среде пакета WinPISA,
управление проектами, их планирование и редактирование, ввод систем в
действие, а также язык программирования, примеры.
Предназначено для студентов технических специальностей и специ-
альностей промышленного менеджмента.
УДК 681.583.318 : 004.35 : 004.42(075.8)
Утверждено
редакционно-издательским
советом университета
3
1. ОБЩЕЕ ОПИСАНИЕ
*
В документации по SPC200 используется термин «Axis», что переводится как
«ось», хотя в данном случае имеется в виду устройство для прямолинейного пе-
ремещения каретки по направляющим, снабженное пневматическим или электри-
ческим приводом.
4
Пневматические и электрические оси могут использоваться
совместно. SPC200 может связываться с компонентами пневмати-
ческих осей и внешними модулями ввода-вывода максимум через
две ветви интерфейса с одним кабелем каждая.
Контроллер SPC200 может функционировать независимо, но
мы рассматриваем его применение в соединении с компьютером
более высокого уровня PLC/IPC. В этом варианте на PLC/IPC не-
обходимо установить пакет WinPISA, который создает удобную
среду программирования и работы программ.
Структура контроллера. SPC200 имеет модульную конструк-
цию. Модули устанавливаются в корпус (рис. 1.2, где 1 – корпус,
2 – модули, 3 – монтажная плата внутри корпуса). Главный про-
цессор и память контроллера находятся на монтажной плате, рас-
положенной на задней стороне корпуса. Корпус с этой монтажной
платой называется базовым элементом.
*
В последнее время вместо терминов "каталоги" и "директории" стал более
употребителен термин «папка».
12
Для выбора директорий предлагаются соответствующие окна
диалога (рис. 1.10).
2. УПРАВЛЕНИЕ ПРОЕКТАМИ
*
Только латинские буквы и цифры, длина имени – до 8 символов.
16
6. Подтвердите вход в проект, щелкнув кнопку Ok. После этого
открывается окно проекта (рис. 2.3), где Вы можете редактировать
проект.
21
2.7.1. Редактирование раздела аппаратных средств (Hardware)
3. ПЛАНИРОВАНИЕ ПРОЕКТА
24
3.1. Выбор готовых осей
25
3.1.1. Выбор пневматической оси
Тип цилиндра, диаметр, длина, тип клапана и система измере-
ния показываются под надписью Planned axes. Выберите исполь-
зуемую систему измерения для комбинации «клапан-цилиндр».
Если список не содержит оси нужной длины, то выберите
ось с ближайшей меньшей минимальной длиной. Под надписью
Cylinder type (Тип цилиндра) приведен диапазон длин, а длина,
указанная в спецификации, соответствует минимальной длине для
комбинации «клапан-цилиндр».
Пример. Вам нужна ось диаметром 40 мм, длиной 600 мм.
В этом случае выбираете из списка под надписью Projected
axes ось "DGP-40-250 ... 850; Ø40; L250; MPYE-5-1/8HF-010B".
4. ПРОГРАММИРОВАНИЕ
4.1. Редактор программ
28
4.2. Список позиций и регистр
29
Рис. 4.4. Список позиций
Т а б л и ц а 4.2
Колонка Содержание
Индекс позиции. Соответствует номеру, указанному в регистре
Index
позиций
Символический идентификатор позиции. Может использоваться
в программе вместо позиции в абсолютных величинах. Макси-
Symbol мальная длина идентификатора – 20 знаков, нельзя использовать
никакие специальные символы, зарезервированные для команд
программы, первый символ не должен быть цифрой
Axis X Значение позиции для оси X
Axis Y Значение позиции для оси Y
Axis Z Значение позиции для оси Z
Axis U Значение позиции для оси U
Comment Комментарий
Идентификатор Описание
N Идентификатор номера записи
Команда позиционирования или команда задания усло-
G
вий позиционирования
M Вспомогательная функция
E Безусловный переход
L Вызов подпрограммы
# Единичный бит и многобитовые операции
X, Y, Z, U Идентификаторы осей: Ось X, Ось Y, и т.д.
F Скорость движения
Идентификатор регистра позиции
@
Символическое задание позиции через регистр позиций
; Начало комментария распространяется до конца строки
. Десятичный разделитель
36
Т а б л и ц а 4.5
Т а б л и ц а 4.6
Операнд Описание Диапазон адресов Диапазон значений
F Флаг* F0…F63 0/1
R Регистр* R0…R99 –32767...+32767
Регистр
Описание Номер Диапазон значений
позиции
Регистр до 100
@ @0 ... @99 –9999.98...+9999.99**
позиций на ось*
37
Т а б л и ц а 4.7
Идентификатор Описание
n Групповой символ для числовых значений
<Операнд> Групповой символ для операндов (например, Q0.0)
Параметры в скобках определяются как альтернатив-
[]
ные или дополнительные*
Параметры, разделенные вертикальными линиями,
|
являются альтернативами
* Идентификаторы осей будут обозначаться в упрощенной форме: [Y.., Z.., U..].
Дополнительные параметры при этом опускаются.
Пневматическая ось
Движение в позицию с максимально возможной
G00
скоростью (от точки к точке)
x Режим выбора строки
Структура команды Nn G00 [G90|G91] Xn|X@n [X..,Y..,Z..,U..]
Xn Позиция в мм; n = ± 9999.99
Параметры
X@n Регистр позиций; n = 0...99
Указанные пневматические оси движутся от те-
кущих положений с максимальной скоростью до
указанных позиций, ссылки на которые даются в
абсолютных или относительных координатах (см.
Действие описания команд G90/G91).
Автоматически генерируемые значения скорости
и ускорения во избежание возникновения колеба-
ний ограничены максимальными величинами, оп-
ределенными при идентификации (см. рис. 4.8)
39
Рис. 4.8. Зависимости для выполнения команды G00 (пневматические оси)
Шаговый двигатель
Движение в позицию с максимально возможной
G00
скоростью (от точки к точке)
x Режим выбора строки
Структура команды Nn G00 (G90|G91) Xn|X
G01
Движение в позицию с заданной скоростью
x Режим выбора строки
Структура команды Nn G01 [G90|G91] Xn|X@n FXn [Y..,Z..,U..]
Xn Позиция в мм; n = ± 9999.99
X@n Регистр позиций; n = 0 ... 99
FXn Скорость перемещения в % от
Параметры
максимальной специфици-
рованной скорости n = 0 ... 99
0 = 100%, 1 = 1 % ... 99 = 99%
Движение оси с указанной скоростью и ускоре-
нием от текущего положения до указанного, кото-
рые могут быть заданы в абсолютных или относи-
тельных величинах. Принятые зависимости для
изменения скорости показаны на рис. 4.10.
Действие
Для пневматических осей значения, указанные
для скорости и ускорения, автоматически ограни-
чиваются максимальными величинами, опреде-
ленными в течение динамической идентификации,
во избежание поломок.
41
G01
Движение в позицию с заданной скоростью
x Режим выбора строки
N000 G01 X100 FX10 ;Переместить ось X
; в позицию со скоростью
; 100 % от заданной
Примеры N001 G01 X@2 FX30; Переместить ось X
; в позицию, указанную
; в регистре 2, максимальная
; скорость 30 % от указанной
Время позиционирования:
при разгоне: t1 = v/a1, s1 = a1/(2t12), где v – ско-
рость, a1 – ускорение разгона, s1 – перемещение
при разгоне;
при торможении: t2 = v/a2, s2 = a2/(2t22), где a2 –
ускорение торможения, s2 – перемещение при
торможении;
движение с постоянной скоростью: s3 = s0 – (s1 +
+s2), t3 = s3/v, где s0 – общее перемещение пози-
ционирования.
В начале выполнения команды будут установлены:
– режим позиционирования в абсолютных ко-
ординатах (G90),
Примечания – ускорение разгона – 100% от максимального
(G08),
– ускорение торможения – 100% от максималь-
ного (G09).
Команда G01 остается зарезервированной пока
не будет отменена командой G00 или G02.
При программировании в WinPISA позиции мо-
гут быть определены и символически. Для этой
цели значения позиций и их имена вводятся в
список позиций.
Пример:
N005 G01 x@ABHOL_POS FX20
y@ABHOL_POS FY30
N006 x@ABLAGE_POS
Пневматическая ось
43
Пневматическая ось
Сглаженное движение в позицию
G02
с заданной скоростью
x Режим выбора строки
N010 G02 X90 FX0 ;Переместить ось X в позицию
;X90, максимальная скорость
;100% от указанной.
Примеры N011 G02 X@2 FX30;Переместить ось X в позицию,
; указанную в регистре 2,
;максимальная скорость 30%
;от указанной
Этот режим позволяет уменьшить вибрации в
процессе движения ползуна при разгоне и торможе-
нии.
В начале выполнения команды будет установлено:
– позиционирование в абсолютных координатах
(G90),
– ускорение разгона – 100% от максимального
(G08),
– ускорение торможения – 100% от максимально-
го (G09).
Примечания Команда G02 остается зарезервированной, пока не
будет отменена командой G00 или G01.
При программировании в WinPISA позиции могут
быть определены и символически. Для этой цели
значения позиций и их имена вводятся в список по-
зиций.
Пример:
N10 G02 x@ABHOL_POS FX20 x@ABHOL_POS
FY30
Расчет времени позиционирования был дан при
описании команды G01.
Шаговый двигатель
G02 Движение в позицию с частотой Start/Stop
x Режим выбора
строки
Структура команды Nn G02 [G90|G91] Xn|X@n FXn [Y..,Z..,U..]
Xn Позиция в мм; n = ± 9999.99
X@n Регистр позиций; n = 0 ... 99
Параметры FXn Зарезервировано, n = 0 ... 99
параметр должен быть специфици-
рован, но будет игнорироваться
Движение оси с шаговым двигателем с заданной
частотой Start/Stop от текущего положения до указан-
Действие
ного. Позиции могут быть заданы в абсолютных или
относительных величинах.
45
Шаговый двигатель
G02
Движение в позицию с частотой Start/Stop
x Режим выбора
строки
N010 G02 X90 FX0 ;Переместить ось X в позицию
;X90 с частотой Start/Stop.
N011 G02 X@2 FX30;Переместить ось X в позицию,
;указанную в регистре 2,
Примеры
;с частотой Start/Stop.
N012 X100 ; Переместить ось X в
; позицию 100 с частотой
;Start/Stop
Параметр F...n должен быть определен без синтак-
сических ошибок. Иначе его значение будет игнори-
роваться, поскольку движение осуществляется с час-
тотой start/stop. Параметры разгона и торможения,
определенные в командах G08 и G09, тогда также
будут игнорироваться.
В начале выполнения команды будет установлено:
позиционирование в абсолютных координатах (G90).
Примечания Команда сохраняется до тех пор, пока не отменяет-
ся командой G00 или G01.
При программировании в WinPISA позиции могут
также быть определены символически. Для этой цели
значения позиций и их имена вводятся в список пози-
ций.
Пример:
N10 G02 x@ABHOL_POS FX20 x@ABHOL_POS FY30
46
G08
x Режим выбора Ускорение разгона. Для команд G01 и G02
строки
Структура команды Nn G08 Xn [Y..,Z..,U..]
Xn Ускорение в % от определенного
Параметры максимального
n = 0 ... 99, 0 = 100 %, 1 = 1 % ...99 = 99 %
При выполнении указанных ниже команд позицио-
нирования разгон будет производиться с указанным
Действие здесь максимальным ускорением.
Для пневматических осей: G01 и G02
Для осей с шаговыми двигателями: G01
N020 G08 X50 Y50 ;Скат разгона = 50 %
N021 G01 X80 FX50 ;Движение в позицию X80
N022 G08 X0 ;Скат разгона – с
;максимальным ускорением
Пример
Здесь при перемещении в позицию X80 ось X сна-
чала будет иметь ускор ение в 5 0 % от заданного, за-
тем ускорение оси X будет переключено на макси-
мальное значение
Эта команда сохраняется и останется активной, по-
Примечание
ка не будут заданы новые параметры ската.
G09
x Режим выбора Ускорение торможения. Для команд G01 и G02
строки
Структура команды Nn G09 Xn [Y..,Z..,U..]
Xn Ускорение в % от определенного
Параметры максимального,
n = 0 ... 99, 0 = 100%, 1 = 1% ...99 = 99%
При выполнении указанных ниже команд позицио-
нирования торможение будет производиться с указан-
Действие ным здесь максимальным ускорением.
Для пневматических осей: G01 и G02
Для осей с шаговыми двигателями: G01
N000 G09 X50 ;Скат торможения = 50 %
N001 G01 X100 FX50 ;Движение в позицию X100
Пример N002 G01 X150 FX50 ;Движение в позицию X150
N003 G09 X0 ;Скат торможения – с
;максимальным ускорением
Примечание Эта команда сохраняется и останется активной, пока
не будут заданы новые параметры ската.
47
Переход на следующую строку программы в зави-
G25
симости от положения
Структура команды Nn G25 Xn [Y..,Z..,U..]
n Величина перемещения в % от пути
позиционирования, когда должен
Параметры
срабатывать данный переключатель,
0 = 100 %, 1 = 1 % ...99 = 99 %
Если ось, для которой запрограммирован такой
переключатель перемещается, то передача управле-
ния на следующую NC-запись будет выполнена
только тогда, когда путь оси достиг указанного про-
цента. После этого SPC200 будет обрабатывать сле-
дующие NC-записи уже для остальной части пути к
позиции назначения.
После этого могут использоваться все NC-
команды. Однако команды позиционирования не
должны требовать изменения направления.
Для осей с шаговыми двигателями: если сама
Действие команда G25 относится к оси с шаговым двигателем,
то следующие не должны относиться к той же самой
оси с шаговым двигателем.
Для систем с несколькими осями: программно
можно задавать значение для нескольких осей в
одной NC-записи. Эти величины для отдельных
осей будут иметь силу до тех пор, пока команда
позиционирования для соответствующей оси не
выполнена и значение не достигнуто.
Дальнейшие условия переключения нескольких
осей могут быть связаны командой позиционирова-
ния (см. ниже, пример 4).
Примеры См. ниже примеры 1 … 4.
Эта команда позволяет:
• для пневматических осей в процессе движения
в нужных положениях переключать скорость и ус-
корение;
• для оптимизированных по времени систем с
двумя осями обходить преграды.
Примечания
Если остановка произошла тогда, когда указанное
значение превышено и передано следующей NC-
записи, то будет достигнута позиция назначения.
Если остановка произошла прежде, чем достигну-
то указанное значение, то ось будет доведена до
позиции, указанной в данной команде
48
Замечания к переключению скорости/ускорения для пнев-
матических осей. Переход к новой скорости производится с теку-
щими значениями, установленными для ускорения разгона и тор-
можения. Автоматический контроль ускорения торможения и его
ограничение не осуществляется.
Предостережение. Нереально высокие значения ускорения
могут привести к большим колебаниям и повредить оси. Если Вы
используете команду G25, то удостоверьтесь, что устанавливаете
осуществимые значения ускорения для используемой оси и остав-
шейся части пути.
N010 G00 X0
N011 G25 X1
N012 G01 X500 FX60
N013 #TNI0.0 13
N014 G01 X500 FX10
50
Здесь после прохождения 1% пути позиционирования от X0 до
X500 SPC200 передает управление на NC-запись N013. По команде
в этой записи пауза длится до тех пор, пока не произойдет событие
(здесь это сигнал 1 на вх оде I0.0). Переключение осуществляется
только или по этому сигналу, или в том случае, когда в пр оцессе
позиционирования произошел переход к следующей задаче пози-
ционирования (здесь понижение скорости).
Если событие происходит после того, как была достигнута по-
зиция назначения, то следующая команда позиционирования в
этом пр имере не будет иметь никакого смысла, поскольку запро-
граммирована та же самая позиция назначения (X500).
Пример 4. Переключение по связанным условиям
N010 G01 X0 FX0 Y0 FY0 Z0 FZ0
N011 G25 X10 Y10 Z10
N012 G01 X100 FX10
N013 #SQ0.0
N014 G01 Y100 FY10 Z100 FZ10
N015 .......
В этой программе по команде N011 SPC200 сохраняет ука-
занные значения* для о сей X, Y и Z. По следующей NC-команде
перемещается только ось X. Когда она достигнет значения
preselect, указанного в команде N011, то будет установлен выход
Q0.0.
NC-запись N014 перемещает оси Y и Z. Переключатель к сле-
дующей NC-записи срабатывает, когда обе оси достигают значений
preselect, указанных в команде N011 (Логическое соединение «И»).
Если в дополнение к оси, для которой было установлено зна-
чение preselect, другие оси должны быть перемещены той же самой
NC-командой, то значение preselect на 100 % будет относиться и к
этим осям.
N015 G01 X0 FX0 Y0 FY0
N016 G25 X50
N017 G01 X200 FX0 Y200 FY0
N018 #SQ0.0
*
В оригинале эти значения называют preselect – предустановленные или зара-
нее установленные.
51
N019 .......
Здесь выход Q0.0 будет установлен тогда, когда ось Y достиг-
нет положения Y200, а ось X – указанного значения preselect (здесь
это X100).
52
ния. В конфигурации каждой оси имеются ее собствен-
ные записи регистра позиций. Они хранят позиции, со-
держащиеся в списке позиций
Пневматическая ось Установка режима точного останова (рис. 4.14,
где 1 – требуемое значение позиции, 2 – пределы
G60 допуска, 3 – продолжительность периода контро-
ля по длине цилиндра, 4 – истечение периода кон-
x Режим выбора строки троля, 5 – период контроля, 6 – MC-сигнал на
точный останов)
Структура команды Nn G60 X [Y, Z, U]
Параметры X Обозначение оси
Переключает на режим точного останова (класс
качества 3). Посылается MC-сигнал, если по исте-
Действие
чении времени наблюдения указанная ось все еще
находится в пределах допуска
N000 G60 X ; Активизация режима точного
; останова,
N001 X100 ; Движение в позицию X100
Например, если допуск равен 0.2 мм, то в про-
Пример
цессе движения к позиции 100 мм будет послан
сигнал MC при условии, что ось X в течение дли-
тельного времени остается в пределах допуска
(99.8 ... 100.2 мм)
Эта команда сохраняется и останется дейст-
вующей, пока командой G62 не будет установлен
Примечание
режим быстрого останова или командой G61 –
другой класс точности
53
Рис. 4.14. Установка режима точного останова
Пневматическая ось
G61 Установка класса точности.
x Режим выбора строки
Структура команды Nn G61 Xn [Yn]
Параметры Xn Класс точности, n = 0 … 6
MC-сигнал (движение выполнено) будет выдан
Действие только тогда, когда ось выполнила требуемые кри-
терии для заданного класса точности (см. рис. 4.14).
N005 G61 X1 ; Класс точности = 1, быстрый
;останов
N006 G00 X100 ; Перемещение в позицию 100 мм
N007 G60 X ; Установка режима точного
Пример ;останова
При перемещении в позицию X100 MC-сигнал
будет послан, когда ось входит в пределы допуска
(быстрый останов), тогда произойдет переключение
на режим точного останова
Эта команда сохраняется и останется действую-
Примечание щей, пока не будет установлен другой класс точно-
сти. Различные классы качества описаны в табл. 4.8
Т а б л и ц а 4.8
Класс
Тип точности Описание
Переключение набора прикладных параметров на
Задание 0
класс точности позиционирования (1...6)
Быстрый останов без контроля времени торможе-
1 ния. MC-сигнал посылается тогда, когда оси попада-
Быстрый ют в пределы допуска (рис. 4.15)
останов Быстрый останов с контролем времени торможе-
2 ния. MC-сигнал посылается тогда, когда оси попада-
ют в пределы допуска и истекло время торможения
Точный останов без контроля времени торможения.
3 MC-сигнал посылается тогда, когда оси попадают в
пределы допуска в течение времени контроля
Точный останов с контролем времени торможения.
MC-сигнал посылается тогда, когда оси попадают в
4 пределы допуска в течение времени контроля и пе-
Точный
риода торможения
останов Точный останов с контролем скорости окончания
процесса. MC-сигнал посылается тогда, когда указан-
5 ная ось попадает в пределы допуска и останавливает-
ся там в течение времени контроля
Точный останов с контролем скорости окончания
6
процесса. MC-сигнал посылается тогда, когда указан-
54
ная ось попадает в пределы допуска и останавливается
там в течение времени контроля и периода торможения
Длительность времени торможения и времени контроля опре-
деляется автоматически SPC200.
Пневматическая ось
Быстрый останов (рис. 4.15, где 1 – требуемое
G62 значение для позиции, 2 – пределы допуска, 3 –
достижение предела допуска, 4 – MC-сигнал на
x Режим выбора быстрый останов).
строки
Структура команды Nn G62 X [Y, Z, U]
Параметры X Обозначение оси
Переключает на режим быстрого останова. MC-
сигнал (движение выполнено) выдается, если ука-
Действие
занная ось попадает в пределы допуска первый раз
(см. рис 4.15).
N000 G60 X ; Активизация режима точного
;останова.
N001 G00 X200 ; Движение в позицию X200.
N002 G62 X ;Активизация режима быстрого
;останова.
N003 G00 X100 ;Движение в позицию X100.
Пример
N004 G00 X300 ;Движение в позицию X300.
При перемещении в позицию X100 MC-сигнал
(движение выполнено) будет послан тогда, когда
ось войдет в переделы допуска. После этого
SPC200 немедленно готов двигаться в позицию
X300.
Команда сохраняется и останется действующей,
Примечание пока не будет установлен режим точного останова
или другой класс точности.
55
Рис. 4.15. Быстрый останов
Шаговый двигатель Старт движения к опорной точке со ссылкой на
G74 режим (рис. 4.16, где 1 – стартовая позиция, 2 –
позиция, установленная как опорная точка, 3 –
x Режим выбора строки область переключения концевого и опорного пе-
реключателя)
Структура команды Nn G74 X [Y..,Z..,U..]
Параметры Xn Режим движения к опорной точке; n = 0 ... 4
Старт движения к опорной точке в указанном
Действие
режиме (см. рис. 4.16 и табл. 4.9)
N000 G74 X0 ; Установка текущей позиции
Пример
; в качестве опорной точки
Все позиции косвенно обращаются к опорной
точке. Точное положение точки переключения, на
Примечание
которую ссылается переключатель, зависит от
выбранного режима движения (табл. 4.9)
56
Рис. 4.16. Режим движения к опорной точке
Т а б л и ц а 4.9
Режим Описание
G90
x Режим выбора Установка режима абсолютных координат
строки
Структура
Nn G90 Xn|X@n [Y..,Z..,U..]
команды
Xn ; Позиция в мм, n = ± 9999.99
Параметры
X@n ; Регистр позиции, n = 0 … 99
Переключение на режим позиционирования в абсо-
лютных координатах и перемещение с текущей скоро-
стью и, если задано, с текущими параметрами разгона-
Действие торможения в указанную в абсолютных координатах
позицию. Все последующие позиции в программе будут
интерпретироваться как заданные в абсолютных коор-
динатах. Режим остается в силе, пока не будет установ-
*
О выключателях REF и LIM см. разд. 6 документации по контроллеру
SPC200.
57
лен другой (см. также описания команд G00, G01, G02)
G90
x Режим выбора Установка режима абсолютных координат
строки
N000 G00 G90 X200 ; Перемещение с максимально
; возможной скоростью в позицию
; X200, заданную в абсолютных
; координатах.
N001 X100 ; Перемещение с максимально
; возможной скоростью в позицию
; X100, заданную в абсолютных
; координатах.
Пример
N002 X@5 Y@1 ; Перемещение в позицию,
; указанную в регистре 5 и
; регистре 1.
N003 G90 Y100 ;Перемещение в позицию Y100,
; заданную в абсолютных
; координатах.
N004 G91 X100 ;Перемещение на 100 мм в
; положительном направлении
По умолчанию для позиций устанавливается режим
абсолютных координат.
Действие команды G90 останется в силе пока не бу-
дет отменено командой G91.
Пример: N010 G90 X100
N011 X200
Примечание
N012 G91 X300
При программировании в WinPISA позиции могут
быть определены и символически. Для этой цели значе-
ния позиций и их имена вводят в список позиций.
Пример N010 G00 x@ABHOL_POS y@ABHOL_POS
N011 x@ABLAGE_POS
G91
x Режим выбора Установка режима относительных координат
строки
Структура команды Nn G91 Xn|X@n [Y..,Z..,U..]
Xn ; Позиция в мм, n = ± 9999.99
Параметры
X@n ; Регистр позиции, n = 0 … 99
Переключение на режим позиционирования в отно-
сительных координатах и перемещение с текущей
Действие скоростью и, если задано, с текущими параметрами
разгона-торможения в указанную позицию. Все по-
следующие позиции в программе будут интерпрети-
58
роваться как относительные. Режим остается в силе,
пока не будет установлен другой (см. также описания
команд G00, G01, G02).
N000 G00 G91 X200 ; Относительное перемещение
; с максимально возможной
; скоростью на 200 мм.
N001 X100 ; Относительное перемещение
; с максимально возможной
; скоростью на 100 мм.
Пример N002 G90 X@5 Y@ ; Перемещение в позицию,
; указанную в регистре 5 и
; регистре 1
N003 G91 X-100 ;Перемещение на 100 мм
; в отрицательном направлении
N004 X200 ;Перемещение на 200 мм в
; положительном направлении
По умолчанию для позиций устанавливается режим
абсолютных координат
Действие команды G91 останется в силе пока не
будет отменено командой G90.
Пример: N010 G91 X100
N011 X200
Примечание
N012 G90 X300
При программировании в WinPISA позиции могут
быть определены и символически. Для этой цели зна-
чения позиций и их имена вводят в список позиций.
Пример: N013 G91 x@ABHOL_POS
N014 x@ABLAGE_POS
Параметры Нет
По команде M00 выполнение программы останав-
ливается и будет продолжено только после получения
Действие синхронизирующего сигнала. В режиме start/stop
ниспадающий фронт сигнала на входе SYNC_IA/IB
интерпретируется как синхронизирующий сигнал
N005 M00 ; Ждать SYNC сигнал
Пример
N006 G00 X100 ; Движение в позицию X100
59
В режиме start/stop эту команду используют для
Примечание синхронизации работы программы с другими устрой-
ствами
61
Команда M12 может использоваться для того, чтобы снова де-
зактивировать аналоговый канал. Автоматически дезактивиро-
вание происходит в следующих случаях: при управляемой оста-
новке, если выход не активизирован (запрос ENABLE, сигнал 0).
Если после остановки все еще есть сигнал 1 на соответствую-
щем выходе или нет разрешающего сигнала, то аналоговый канал
снова будет автоматически активизирован.
Примеры. Режим 0. Непрерывное отслеживание положения.
…
N010 M11 X100 ; Смещение для значений с аналогового входа 100 мм
N011 M13 X0 ; Установка режима 0, непрерывное движение
N012 M10 X30 ; Активизация аналогового входа
; коэффициент масштабирования = 30 мм/V
N013 #TNI0.0 013 ; Ждать, пока I0.0 выдаст сигнал 1
N014 M12 X ; Дезактивизация аналогового входа
....
....
N020 M30 ; Конец программы с повторным вызовом
Т а б л и ц а 4.10
64
** В этом режиме имеют силу параметры разгона-торможения, установ-
ленные командами G08 и G09, а также последняя запрограммированная ско-
рость.
Назначение аналогового входа (Установка соответ-
M14
ствия между осями и аналоговыми входами)
Структура команды Nn M14 Xn [Y..,Z..,U..]
Пневматические оси
Установка процента массы
M37
Структура команды Nn M37 Xn [Y..,Z..,U..]
Xn Учитываемая масса груза в % от указанно-
Параметры го рабочего груза, n = 0 ... 99; 0 = 100%, 1 =
1%…99 = 99%
Настраивает контроллер на указанную нагрузку
Действие
для указанной оси
N010 M37 X50 ; Нагрузка 50% от указанной рабо-
Пример
чей
Рабочая нагрузка – это прикладной параметр.
Примечание Данная команда сохраняется и остается в силе для
различных рабочих нагрузок.
65
Если Вы хотите использовать эту NC-команду, то
рекомендуется предварительно выполните динами-
ческую идентификацию с минимальной и макси-
мальной рабочей нагрузкой
68
N10 #RQ0.0 ; Сброс выхода Q0.0
Пример После того, как этот оператор проработает выход
Q0.0, будет выдан сигнал 0
За некоторыми выходами резервируются ранее ус-
Примечание
тановленные функции. Флаги остаются
70
В регистр загружается или значение n или значе-
Действие
ние из регистра, на который указывает n
N011 #LR1=100 ;Запись значения 100 в регистр
Пример
R1
Примечание Registers are remanent. Регистры остаются
71
Программы нужно проверять на отсутствие синтаксических
ошибок. Пакет WinPISA позволяет производить:
• проверку отсутствия или неправильного синтаксиса записей,
• исправление командных слов,
• исправление структуры записей,
• проверку символических идентификаторов,
• проверку диапазонов значений.
Для проверки синтаксиса в программах выполните следующие
действия.
1. Удостоверьтесь, что окно программы, которую нужно ком-
пилировать активно.
2. Выберите команду [Syntax check] в меню [Compile]
или щелкните кнопку «Syntax check».
3. Процесс проверки синтаксиса будет демонстрироваться в
окне «Compile». Подождите, пока процедура проверки не выпол-
нится полностью.
4. Щелкните Ok в окне «Compile» для подтверждения оконча-
ния проверки.
5. Проверьте окно сообщений. Если есть сообщения об ошиб-
ках, то исправьте их и повторите операцию.
Результаты синтаксического контроля появляются в окне со-
общений (рис. 4.20).
72
Если Вы дважды щелкаете на линии в окне со общения
(рис. 4.21), то откроется соответствующее окно программы и кур-
сор будет расположен на линии, в которой имеется ошибка.
74
Неразрешенное значе- Разрешенные регистры позиций: X@0.. X@99 [@Y]
ние регистра позиции
Non-permitted quality Вы определили недействительный класс точ-
class. ности в команде G61.
Неразрешенный класс Разрешенные класс качества: 0 … 6
точности
Вы определили недействительный номер реги-
Non-permitted register
стра в одной из команд L .. , #LR .. , #T .. , #AR ..
value.
(вызов подпрограммы, загрузка, тест, добавление
Неразрешенное значе-
значения в регистр).
ние регистра
Разрешенные регистры: R0.. R99
75
зите Windows
Position list file cannot Файл смена позиций не может быть прочитан.
be read (fatal error). Проверьте Windows System Resources (Ресур-
Файл списка позиций не сы ОС Windows). Закройте приложения, которые
читается (фатальная Вам не нужны. Проверьте Ваш жесткий диск на
ошибка) наличие ошибок
Position value ex- Вы задали значение позиции, большее, чем ука-
ceeded/not reached. зано в конфигурации системы измерений или
Значение позиции пре- длина цилиндра в одной из команд позициониро-
высило допустимое или вания G00, G01, G02. Это значение может быть
недостижимо задано в операторе или в списке позиций
76
4.6. Компиляция программ
В процессе компиляции программы, список позиций и уста-
новки системы преобразуются во внутреннюю систему команд
контроллера SPC200. Так готовятся данные для SPC200, и в такой
форме они могут быть разгружены в SPC200.
Если в программы, список позиций или установки были внесе-
ны какие-либо изменения, то перед компиляцией нужно их сохра-
нить.
При компиляции автоматически проверяется синтаксис про-
грамм. Любые найденные синтаксические ошибки будут показаны,
и компиляция будет прервана. В этом случае исправьте ошибки и
повторите компиляцию.
В контроллер SPC200 могут быть загружены только програм-
мы без ошибок.
Компилирование текущей программы. Вы можете откомпили-
ровать отдельную программу в процессе её редактирования в окне
программы.
Для этого выполните следующие действия:
1. Удостоверьтесь, что окно программы, которую нужно ком-
пилировать активно.
2. Дайте команду Save из меню File или щелкните на
кнопке Save active window, чтобы сохранить модифика-
ции.
3. Дайте команду Program из меню Compile или
щелкните на кнопке Compile program.
4. Прогресс компиляции будет показываться в окне Compile.
Подождите, пока он полностью не закончится.
5. Щелкните Ok в окне Compile для подтверждения окончания
проверки и компиляции.
6. Проверьте окно сообщений. Если есть ошибки, их нужно
исправить и повторить компиляцию. Если Вы дважды щелкните на
сообщении об ошибке, то WinPISA откроет нужную программу и
установит курсор на строку программы, содержащую ошибку.
Компилирование нескольких программ. Вы можете выбир ать
одну или несколько программ, окна которых не открыты для одно-
временной компиляции.
Для указания компилируемых программ выполните следую-
щие действия:
77
1. Дайте команду Programs из меню Compile или щелкните на
кнопке Compile selected programs.
2. Выберите одну или несколько программ из списка Program
list project в диалоговом окне Program list (рис. 4.22) или устано-
вите маркер в окошке All, чтобы указать, что выбр аны все про-
граммы.
3. Для начала компиляции щелкните кнопку Compile.
4. Прогресс компиляции показывается в окне Compile. Подож-
дите, пока процесс не закончится.
5. Щелкните Ok в окне Compile для подтверждения окончания
проверки и компиляции.
78
1. Сохраните проект, используя команду Save project в меню
File.
2. Выберите Project от Compile меню или щелкните
на кнопке Compile project.
3. Прогресс компиляции показывается в окне Compile. Подож-
дите, пока процесс не закончится.
4. Щелкните Ok в окне Compile для подтверждения окончания
проверки и компиляции.
5. Проверьте окно сообщений. Если есть ошибки, их нужно
исправить и повторить компиляцию. Если Вы дважды щелкните на
сообщении об ошибке, то WinPISA откроет нужную программу и
установит курсор на строку программы, содержащую ошибку.
4.7. Загрузка программы в SPC200 и её запуск
79
Рис. 4.23. Загрузка программ
80
ОГЛАВЛЕНИЕ
П р е д и с л о в и е ...................................................................................... 3
1. ОБЩЕЕ ОПИСАНИЕ .............................................................................. 4
1.1. Системы позиционирования, управляемые контроллером SPC200 4
1.2. Схема работы ................................................................................... 7
1.3. Структура ветви осевого интерфейса .............................................. 9
1.4. Режимы работы SPC200................................................................... 9
1.5. Применение SPC200 для систем с несколькими осями................. 10
1.6. Панель управления......................................................................... 10
1.7. Старт пакета WinPISA ................................................................... 11
1.8. Установка каталогов ...................................................................... 12
1.9. Работа в пакете WinPISA ............................................................... 13
1.10. Диалоговый режим (Online mode) ............................................... 14
2. УПРАВЛЕНИЕ ПРОЕКТАМИ ............................................................. 15
2.1. Создание проекта ........................................................................... 15
2.2. Открытие и закрытие проекта........................................................ 17
2.3. Сохранение проекта ....................................................................... 18
2.4. Сохранение проекта под друим именем ........................................ 18
2.5. Загрузка проектов из SPC200 (Upload) .......................................... 19
2.6. Загрузка проектов в SPC200 (Download) ....................................... 19
2.7. Редактирование проекта в окне проекта ........................................ 20
2.7.1. Редактирование раздела аппаратных средств (Hardware) .. 22
2.7.2 Редактирование раздела программного обеспечения............. 23
3. ПЛАНИРОВАНИЕ ПРОЕКТА ............................................................. 24
3.1. Выбор готовых осей ....................................................................... 25
3.1.1. Выбор пневматической оси .................................................... 26
3.1.2. Выбор электрической оси....................................................... 26
3.2. Изменение параметров оси ............................................................ 27
4. ПРОГРАММИРОВАНИЕ ..................................................................... 27
4.1. Редактор программ......................................................................... 27
4.2. Список позиций и регистр ............................................................. 29
4.3. Общие замечания о программировании ........................................ 32
4.3.1. Параллельная обработка программ ....................................... 33
4.3.2. Режимы для систем с несколькими осями ............................ 33
4.4. Синтаксис команд .......................................................................... 35
4.4.1. Структура программы .......................................................... 35
4.4.2. Описание NC- команд для контроллера SPC200 ................... 38
4.5. Проверка программ ........................................................................ 71
4.6. Компиляция программ ................................................................... 77
4.7. Загрузка программы в SPC200 и её запуск .................................... 79