ABB RAPID Language Basics
ABB RAPID Language Basics
Оглавление
Оглавление ......................................................................................................................................... 1
1. RoboStudio RAPID Programming language Manual........................................................................ 2
2. Переменные ................................................................................................................................... 2
a. Основные типы данных............................................................................................................. 2
b. Сохраняющиеся переменные ................................................................................................... 4
c. Константа. ................................................................................................................................... 5
3. Операторы ...................................................................................................................................... 6
a. Числовые операторы ................................................................................................................. 6
b. Операторы отношения .............................................................................................................. 6
c. Конкатенация ............................................................................................................................. 7
4. Логические инструкции IF/ELSE .................................................................................................... 8
5. Цикл For и While ........................................................................................................................... 10
6. Массивы........................................................................................................................................ 12
7. Источники ..................................................................................................................................... 12
1. ROBOSTUDIO RAPID PROGRAMMING LANGUAGE
MANUAL
В данном разделе будут рассмотрены основы языка программирования RAPID в ABB
RobotStudio.
2. ПЕРЕМЕННЫЕ
a. Основные типы данных
Тип данных Описание
VAR «data type» «varialbe name»; - Ключевое слово VAR «тип данных» «имя
переменной».
Присваивается значение переменной, используется команда :=. Обратите внимание что
знак := это не знак равенства, а знак присваивание значения.
Пример:
VAR «data type» «variable name» := value - VAR «тип данных» «имя переменной» :=
значение.
NB!!! Язык программирования RAPID имеет статическую типизацию – это значит, что
тип переменной задаётся при объявлении переменой. Если у переменной числовой тип,
то присвоение значение другого типа недопустимо. Если всё-таки идёт присвоение
переменой значение другого типа, то среда разработки выдаст ошибку и подчеркнёт то
место где это происходит «Рисунок 1».
PERS «data type» «variable name» := value – PERS «тип данных» «имя переменной» :=
значение.
CONST «data type» «variable name» := value – CONST «тип переменной» «имя
переменной» := значение
3. ОПЕРАТОРЫ
a. Числовые операторы
Числовые операторы работают только с числами и результат выражение тоже число. В
таблице num1, num2 и num3 переменные числового типа (num или dnum).
+ Сложение
- Вычитание
* Умножение
/ Деление
b. Операторы отношения
Операторы отношений работают с разными типами данных, но результат их работы
является булевские значение (TRUE или FALSE). В таблице num1 и num2 – числовые
типы, result – булевское.
Пример:
Допустим нам нужно проверить пустая ли строка. Тогда код будет такой.
Если температура будет в пределах 15-40, то будет выполнена команда «TPWrite "Cool";»
если будет больше 40 то выполнится команда «THEN TPWrite "Hot";», в остальных
случаях выполнится команда «TPWrite "Cold";».
5. ЦИКЛ FOR И WHILE
Во многих случаях требуется повторить какую-нибудь операцию несколько раз подряд.
Это возможно сделать несколькими способами. Самый простой это несколько раз подряд
записать команду или набор команд, что увеличит размер кода в разы и читабельность
кода уменьшится. Чтобы этого избежать были придуманы циклы. В языке
программирования RAPID существует два цикла For и While, каждый из них
предназначен для своей цели. Например, цикл FOR повторит команду (блок команд)
несколько раз подряд с определённым шагом.
Допустим нужно выписать на экран строку 7 раз. Например, можно написать команду
несколько раз подряд.
Результатом этой программы будет вывод на экран 7 раз строки «Hello». Однако, если
нужно будет изменить количество команд с 7 до 100, тогда уже будет солоновато
написать такую программу копирование кода.
Если эту же задачу выполним с использованием цикла FOR, тогда результат будет такой.
Рассмотрим конструкцию цикла FOR. Начало цикла начинается с команды FOR, затем
создаётся переменная i (итератор), которая при каждом проходе цикла будет менять своё
значение. Затем идёт условие цикла с чего начинать (FROM) до (TO) какого момента
заканчивать выполнять процедуру. Затем идёт команда выполнить (DO), после которой
идёт тело цикла, которое должно выполнится. ENDFOR указывает на конец цикла.
Также бывают задачи выполнить определённую операцию до какого-то условия.
Например, нужно посчитать с 1 до 100. Для этого предусмотрен цикл WHILE.
В этом примере показана работы цикла WHILE. Сначала задаём числовую переменную
sum равную 0. Затем начинаем цикл WHILE с условием выполнятся до тех пор, пока
переменная sum ни будет равна 100. Затем в теле цикла мы прибавляем к переменной
sum единичку, тем самым задаётся шаг цикла равный одному. И с каждым проходом
цикла переменная sum будет увеличивается на 1 до тех пор, пока не будет равна 100.
Пример массива.
7. ИСТОЧНИКИ
1) Variables [WWW]
http://developercenter.robotstudio.com/BlobProxy/manuals/IntroductionRAPIDProgO
pManual/doc6.html (17.02.2017)
3) Constants [WWW]
http://developercenter.robotstudio.com/BlobProxy/manuals/IntroductionRAPIDProgOpMan
ual/doc8.html (17.02.2017)
4) Operators [WWW]
http://developercenter.robotstudio.com/BlobProxy/manuals/IntroductionRAPIDProgOpMan
ual/doc9.html (17.02.2017)
5) IF/ELSE [WWW]
http://developercenter.robotstudio.com/BlobProxy/manuals/IntroductionRAPIDProgOpMan
ual/doc10.html (17.02.2017)
6) FOR loop [WWW]
http://developercenter.robotstudio.com/BlobProxy/manuals/IntroductionRAPIDProgOpMan
ual/doc12.html (27.02.2017)
7) WHILE loop [WWW]
http://developercenter.robotstudio.com/BlobProxy/manuals/IntroductionRAPIDProgOpMan
ual/doc13.html (27.02.2017)
8) Arrays [WWW]
http://developercenter.robotstudio.com/BlobProxy/manuals/IntroductionRAPIDProgOpMan
ual/doc26.html (27.02.2017)