Программирование на языке MELFA-BASIC IV промышленных роботов фирмы Mitsubishi Electric: практическое пособие

СПб.:Балт. гос. техн. ун-т., 2013. — 41 с.Приведены описание языка MELFA-BASIC IV для программирования промышленных робо

239 76 832KB

Russian Pages [42]

Report DMCA / Copyright

DOWNLOAD PDF FILE

Recommend Papers

Программирование на языке MELFA-BASIC IV промышленных роботов фирмы Mitsubishi Electric: практическое пособие

  • Commentary
  • 1245488
  • 0 0 0
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up
File loading please wait...
Citation preview

Ю.В. ЛЫЧАГИН

ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ MELFA-BASIC IV ПРОМЫШЛЕННЫХ РОБОТОВ ФИРМЫ MITSUBISHI ELECTRIC

Министерство образования и науки Российской Федерации Балтийский государственный технический университет «ВОЕНМЕХ»

Ю. В. ЛЫЧАГИН

ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ MELFA-BASIC IV ПРОМЫШЛЕННЫХ РОБОТОВ ФИРМЫ MITSUBISHI ELECTRIC Практическое пособие

Санкт-Петербург 2013

1

УДК 004.438:621.865.8(076) Л88 Лычагин, Ю.В. Программирование на языке MELFA-BASIC IV промышленных роботов фирмы Mitsubishi Electric: практическое пособие / Ю.В. Лычагин; Балт. гос. техн. ун-т. – СПб., 2013. – 41 с. Приведены описание языка MELFA-BASIC IV для программирования промышленных роботов фирмы Mitsubishi Electric и примеры использования основных типов команд языка. Предназначено для студентов, специализирующихся в области проектирования мехатронных и робототехнических систем. УДК 004.438:621.865.8(076)

Р ец ен з ен т канд. техн. наук, доц. БГТУ Е.Б. Коротков

Утверждено

редакционно-издательским советом университета

© Ю.В. Лычагин, 2013 © БГТУ, 2013

2

1. Основные символы и переменные Язык программирования роботов MELFA BASIC IV является языком высокого уровня и имеет широкие возможности, и в то же время он легок для обучения, что позволяет пользователям в очень короткое время начать писать собственные эффективные программы для роботов. Символы, имеющие специальные значения: 1) верхний и нижний регистры. Символы нижнего регистра используются только в комментариях и данных типа «строка». Во всех других случаях они будут конвертированы в верхний регистр; 2) символ подчёркивания «_» используется в именах внешних переменных. Пример: P_CURR, M_01, M_ABC; 3) апостроф «'» начинает линии комментариев, аналог команды REM. Пример: 100 MOV P1 'GET; GET будет прочитано как комментарий; 150 'GET PARTS; как 150 REM GET PARTS; 4) звездочка «*» ставится перед названием меток. Пример: 200 *CHECK; 5) запятая «,» используется как разделитель между несколькими параметрами. Пример: P1= (200, 150 ...). Все переменные разделяются на две основные группы: системные и пользовательские. Системные или внешние, в свою очередь, делятся на системные управляющие переменные и пользовательские управляющие переменные. Системные управляющие переменные могут быть только считаны, например, P_CURR – XYZ координаты текущего положения робота. Пользовательские управляющие переменные могут быть считаны и установлены, например, M_OUT(8)=1 устанавливает "1" на 8-й выход параллельного порта. Для пользовательских внешних переменных выделены имена с Р_00 до Р_39, с Р_100( ) до Р_109( ), с J_00 до J_39, с J_100( ) до J_109( ), с M_00 до M_39, с M_100( ) до M_109( ), с C_00 до C_39, с C_100( ) до C_109( ). Все системные переменные имеют вторым символом в имени “_”. 3

Типы переменных по умолчанию: С – символьные, строковые типы переменной; J – Joint тип переменной (позиционная); P – XYZ тип переменной (позиционная); M – числовая переменная. Рассмотрим более подробно форматы Joint и XYZ. Joint формат

J01=(5, 10, 100, 0, 10, 90, 0, 0), M1=J01.J2 – присваивает M1 значение 10.

XYZ формат

P01=(100, 100, 300, 0, 90, 90, 0, 0)(6,0) M1=P01.Z присваивает M1 значение 300; M1=P01.FL1 присваивает M1 значение 6.

Флаги FL1 и FL2 (рис. 1) имеют битовую структуру и определяют ориентацию системы координат. 4

Флаг FL1

Для 5-степенного робота NonFlip всегда.

Флаг FL2

Рис. 1. Флаги позиционных данных

5

2. ПРОСТЕЙШИЕ ОПЕРАТОРЫ Язык MELFA-BASIC IV содержит большое количество команд, приведем основные: “=” – присвоение – левой части присваивается значение правой; “+” – суммирование – производит суммирование; “-“ – вычитание – вычислять разность; “*” – произведение – производит перемножение; “/” – деление – осуществляет деление; “^” – возведение в степень – возводит в степень; “\” – целочисленное деление – производит деление и округляет в меньшую сторону; “mod” – остаток деления – возвращает остаток от деления; “-“ – смена знака – меняет знaк; “=” – сравнение на равенство – сравнивает правые и левые части на равенство; “” или “>2 THEN 300 - переход на 300-ю строчку, если

длина строки STS$ больше 2;

IF M1=6 THEN 300 - переход на 300-ю строчку, если

длина строки STS$ больше или равна 6.

Пример преобразования координат (рис. 2): P1=(200,150,100,0,0,45)(4,0) 10 P2=(10,5,0,0,0,0)(0,0) 20 P100=P1*P2 30 MOV P1 40 MVS P100

Рис. 2. Преобразования координат

8

3. Приоритеты Последовател ьность 1 2 3 4 5 6 7 8 9 10 11 12 13 14

Операции (операторы) Операции в скобках () Функции Экспоненты Одиночные операторы аргументов (+, -) * / \ MOD + > Операторы сравнения (=,,>