Documentos de Académico
Documentos de Profesional
Documentos de Cultura
IV
MELFA
Robots
introduccin
Introduccin a la programacin
Melfa Basic IV
MITSUBISHI ELECTRIC EUROPE, B.V. Sucursal en Espaa
MELFA Basic
IV
MELFA
Robots
introduccin
Programacin estructurada
En este lenguaje la programacin se estructura como
un conjunto de instrucciones cuyo flujo de proceso se
realiza en un lenguaje BASIC estndar.
El aspecto de un programa es un conjunto de
instrucciones propias del sistema de Robot entre
sentencias ya conocidas de BASIC.
Se obtiene as una forma intuitiva de programacin ,
sencilla incluso para aquellos usuarios con pocos
conocimientos de BASIC.
MELFA Basic
IV
MELFA
Robots
introduccin
Ejemplo de programa
...
10 DEF INTE VEL
12 VEL=50
15 OVRD VEL
20 FOR T= 0 TO 6
30 MVS P1
40 MOV P2
50 MVS P4
60 NEXT T
70 GOSUB 1000
75 HCLOSE 1
80 MOV P7
85 OVRD 30
90 MVS P9
95 RETURN
100 GOTO 20
Sentencias propias de
MELFA para el movimiento
del Robot
1000 MOV P3
1005 DLY 1
1200 ...
MELFA Basic
IV
MELFA
Robots
introduccin
Apstrofe ()
Las lneas de comentarios estn indicadas con apstrofes, y sern
sern transferidas
tambin a la drive unit.
Ejemplo:
Asterisco (*)
El asterisco define marcas de salto (etiquetas). No sern tranferidas
tranferidas a la drive unit
Ejemplo:
110 *TABLA1
MELFA Basic
IV
MELFA
Robots
introduccin
Coma (,)
La coma sirve de separador cuando se especifican muchos parmetros
parmetros consecutivos.
Ejemplo:
Punto (.)
Para datos mltiples ,como los datos posicionales, el punto sirve
sirve como separador
de cada componente singular.
Ejemplo:
MELFA Basic
IV
MELFA
Robots
introduccin
Espacio ( )
Debe guardarse entre instrucciones y datos individuales, y tras los nmeros de lnea
Ejemplo:
MELFA Basic
IV
MELFA
Robots
introduccin
Declaracin de variables
P
J
M
C
=
=
=
=
MELFA Basic
IV
MELFA
Robots
introduccin
Constantes numricas
Ejemplos:
Ejemplos:
decimal
hexadecimal
binario
MELFA Basic
IV
MELFA
Robots
introduccin
Constantes alfanumricas
Ejemplo:
"MELFA BASIC es altamente eficiente"
Siguiente posicin"
Esperando entrada 5"
MELFA Basic
IV
MELFA
Robots
introduccin
Constantes angulares
Ejemplo:
90DEG
120DEG
10
MELFA Basic
IV
MELFA
Robots
introduccin
Joint J
Arithmetic M
Character string C
P1
J100
M10
C30$
P124
J100.W
M99
C$[M5+4] (!)
P100.X
J10.T
M[M6+3] (!)
P110.Z
P[M5+3] (!)
P[M10].Z (!)
11
MELFA Basic
IV
MELFA
Robots
introduccin
12
MELFA Basic
IV
MELFA
Robots
introduccin
13
MELFA Basic
IV
MELFA
Robots
introduccin
14
MELFA Basic
IV
MELFA
Robots
introduccin
15
MELFA Basic
IV
MELFA
Robots
introduccin
10 MOV P1
20 MOV P2,-50
30 MOV P2
40 MOV P3,-100 WTH M_OUT(17)=1
50 MOV P3
60 MOV P3,-100
70 END
MITSUBISHI ELECTRIC EUROPE, B.V. Sucursal en Espaa
;mueve hacia P1
;mueve respecto P2, 50mm atrs de la
;posicin de la mano (desp. relativo)
;mueve hacia P2
;mueve respecto P3,100mm atrs, mientras activa
;salida bit n 17
;mueve hacia P3
;mueve respecto P3, 100mm atrs(desp.relativo)
;fin de programa
16
MELFA Basic
IV
MELFA
Robots
introduccin
+Z
17
MELFA Basic
IV
MELFA
Robots
introduccin
18
MELFA Basic
IV
MELFA
Robots
introduccin
10 MVS P1,-50
19
MELFA Basic
IV
MELFA
Robots
introduccin
20
10
MELFA Basic
IV
MELFA
Robots
introduccin
Ejemplo:
MVR P1,P2,P3
P1
P2
21
MELFA Basic
IV
MELFA
Robots
introduccin
P3
Ejemplo:
P1
MVR2 P1,P2,P3
P2
22
11
MELFA Basic
IV
MELFA
Robots
introduccin
P3
MVR3 P1,P2,P3
P2
23
MELFA Basic
IV
MELFA
Robots
introduccin
P3
P1
MVC P1,P2,P3
P2
24
12
MELFA Basic
IV
MELFA
Robots
introduccin
MVR P3,P4,P5
MVR2 P5,P7,P6
MVR3 P7,P9,P8
MVC P9,P10,P11
END
25
MELFA Basic
IV
MELFA
Robots
introduccin
;Designa la activacin
de la funcin CNT
;Designa la desactivacin de la funcin CNT
;Designa la activacin de la funcin, y
;define que el punto De comienzo a 100mm y
;el de final a 200mm del punto destino
26
13
MELFA Basic
IV
MELFA
Robots
introduccin
10
20
30
40
50
MOV
CNT
MVR
MVS
CNT
P1
1
; a partir de las siguientes lneas se habilita CNT
P2,P3,P4
P5
;
1,100,200
; El punto de comienzo ms cercano a 100mm,
;el de final ms cercano a 200mm
60 MVS P6
70 MVS P1
80 CNT 0
90 END
MITSUBISHI ELECTRIC EUROPE, B.V. Sucursal en Espaa
27
MELFA Basic
IV
MELFA
Robots
introduccin
28
14
MELFA Basic
IV
MELFA
Robots
introduccin
10 OVRD 100
20 MOV P1
30 MOV P2,-50
40 OVRD 50
50 MVS P2
60 SPD 120
70 OVRD 100
80 ACCEL 70,70
90 MVS P3
100 SPD M_NSPD
110 JOVRD 70
120 ACCEL
130 MVS, -50
140 MOV P1
150 END
29
MELFA Basic
IV
MELFA
Robots
introduccin
30
15
MELFA Basic
IV
MELFA
Robots
introduccin
Funcin de Paletizado
Descripcin:
Descripcin:
Esta funcin desarrolla un movimiento programado en filas y
columnas, para realizar operaciones del tipo de manipulacin
en cajas compartimentadas, operaciones seriadas en una
superficie, etc.
DEF PLT : Define el pallet a ser usado
PLT : calcula la posicin actual de una casilla del pallet usado
Sintaxis:
Sintaxis:
DEF PLT <Pallet No.>, <punto START>, <punto FINAL A>, <punto final B>,
[<punto Diagonal >], <cantidad A>, <cantidad B>, <direccin de
avance>
MITSUBISHI ELECTRIC EUROPE, B.V. Sucursal en Espaa
31
MELFA Basic
IV
MELFA
Robots
introduccin
Funcin de Paletizado
32
16
MELFA Basic
IV
MELFA
Robots
introduccin
Funcin de Paletizado
10 DEF PLT 1,P2,P3,P4,P5,3,5,2
20 M1=1
30 *BUCLE
40 MOV P1,-50
50 OVRD 50
60 MVS P1
70 HCLOSE 1
80 DLY 0.5
90 OVRD 100
100 MVS,-50
110 P10=PLT 1,M1
120 MOV P10,-50
130 OVRD 50
140 MVS P10
150 HOPEN 1
160 DLY 0.5
170 OVRD 100
180 MVS,-50
;Mov.50mm atrs
;de posicin actual
190 M1=M1+1
200 IF M1<=15 THEN *BUCLE
210 END
MITSUBISHI ELECTRIC EUROPE, B.V. Sucursal en Espaa
33
MELFA Basic
IV
MELFA
Robots
introduccin
17
MELFA Basic
IV
MELFA
Robots
introduccin
Ejemplos:
Ejemplos:
ON M1 GOTO 100,200,300
35
MELFA Basic
IV
MELFA
Robots
introduccin
36
18
MELFA Basic
IV
MELFA
Robots
introduccin
End SELECT
MITSUBISHI ELECTRIC EUROPE, B.V. Sucursal en Espaa
37
MELFA Basic
IV
MELFA
Robots
introduccin
38
19
MELFA
Basic
MELFA
Robots
MELFA
Basic
IV IV
introduccin
Sintaxis:
Sintaxis:
WAIT <condicin>
Ejemplo:
WAIT M_IN(1)
39
MELFA Basic
IV
MELFA
Robots
introduccin
Repeticin incondicional
FORNEXT : Repite las instrucciones comprendidas entre
FOR y NEXT las veces que indique la sentencia FOR. El
comando STEP es opcional
Sintaxis:
FOR <variable> = <const./variable> TO <const./variable>
STEP <paso>
(sentencias)
NEXT
Ejemplo:
10 FOR M1 = 1 TO 10
;Las lneas entre 10 y 60 se
:
;repetirn 10 veces
:
60 NEXT
70 FOR M2= 0 TO 50 STEP 10
;Se incrementa M2 en pasos de
:
; 10 unidades
:
100 NEXT
MITSUBISHI ELECTRIC EUROPE, B.V. Sucursal en Espaa
40
20
MELFA Basic
IV
MELFA
Robots
introduccin
Repeticin condicional
WHILEWEND: Repite las sentencias comprendidas
entre WHILE y WEND hasta que se cumpla una condicin
determinada
Sintaxis:
WHILE <variable condicin>
(sentencias)
WEND
Ejemplo:
10 WHILE (M1>=1)AND(M1<=10)
:
:
:
60 WEND
41
MELFA Basic
IV
MELFA
Robots
introduccin
Ejemplo:
10 GOSUB 1000
20 <sentencias>
:
:
:
1000 <sentencias>
:
:
1400 RETURN
MITSUBISHI ELECTRIC EUROPE, B.V. Sucursal en Espaa
;LLAMADA a subrutina
;transfiere el control a
;la lnea 1000 hasta que
;encuentra RETURN, tras
;ello vuelve a 20
42
21
MELFA Basic
IV
MELFA
Robots
introduccin
Ejemplos:
Ejemplos:
ON M1 GOSUB 100,200,300
:
:
100 <sentencias>
:
200 <sentencias>
:
300 <sentencias>
1000 RETURN
43
MELFA Basic
IV
MELFA
Robots
introduccin
Llamada a subsub-programas
CALLP :Transfiere
:Transfiere el control del programa a otro programa
almacenado en la Drive Unit;
Unit; una vez lo ejecuta, vuelve a
pasar el control al programa principal. Opcionalmente puede
pasar parmetros .
FPRM :Recibe parmetros y variables desde el programa
principal, hacia el programa llamado.
Sintaxis:
CALLP <Nombre programa> <parmetros y argumentos>
Ejemplo:
Programa principal
10 MOV P1
20 CALLP 2,P2,P7
30 END
MITSUBISHI ELECTRIC EUROPE, B.V. Sucursal en Espaa
Progr. No.2
10 FPRM P200,P700
100 MOV P200
110 MOV P700
120 END
44
22
MELFA Basic
IV
MELFA
Robots
introduccin
Interrupciones
DEF ACT :Define
:Define las condiciones de la interrupcin y la
instruccin a realizar tras ella .
ACT :Establece la prioridad de esta interrupcin sobre las
otras
Sintaxis:
DEF ACT <Nde Int.> <condicin> <Proceso> <L>
Ejemplo:
10 DEF ACT 1,M_IN(17)=1 GOSUB 100
100 M_TIMER(1)=0
110 ACT 3=1
;Establece prioridades
45
MELFA Basic
IV
MELFA
Robots
introduccin
Interrupciones
Notas:
Notas:
Los saltos por interrupcin que lleven a una instruccin
GOSUB, deben retornar con RETURN, en este caso:
RETURN <n de interrupcin>
Las prioridades se establecen con ACT<nint>=<nivel>
ACT<nint>=<nivel> y
van de 1(mayor) a 8(menor)
Prioridad 0 significa interrupcin desabilitada
(ACT<nint>=0)
ACT<nint>=0)
Cuando se pone una L al final significa que la interrupcin se
ejecutar al finalizar la instruccin en curso :
DEF ACT 1,M_IN(17)=1 GOSUB 100, L
MITSUBISHI ELECTRIC EUROPE, B.V. Sucursal en Espaa
46
23
MELFA Basic
IV
MELFA
Robots
introduccin
Paro incondicional
HLT :Para
:Para el programa en aquel punto
Sintaxis:
HLT
Ejemplo:
10 IF M_IN(20)THEN HLT
;detiene el programa si la
;entrada 20 es ON
Retardos
DLY :establece
:establece un retardo
Sintaxis:
DLY <segundos (0.05 mnimo)>
Ejemplo:
10 DLY 0.8
47
MELFA Basic
IV
MELFA
Robots
introduccin
Entradas y Salidas
Sintaxis:
Entradas:
<variable>=M_IN(<bit>)
<variable>=M_INB(<byte>)
<variable>=M_INW(<word
>)
<variable>=M_INW(<word>)
Salidas:
M_OUT(<bit>)=<1/0>
M_OUT(<byte>)=<byte>
M_OUT(<word
>)=<word
word>
>
M_OUT(<word>)=<
Ejemplos:
M1=M_INB(20)
;BitsOUT 20 a 27 pasan a M1
WAIT M_IN(3)=1
;Espera hasta que bitIN 3 es ON
M_OUT(1)=1 DLY 0.5 ;conmuta bitOUT 1 a ON durante 0.5S
MITSUBISHI ELECTRIC EUROPE, B.V. Sucursal en Espaa
48
24
MELFA Basic
IV
MELFA
Robots
introduccin
49
25