Escolar Documentos
Profissional Documentos
Cultura Documentos
Tutorial RobotStudio PT
Tutorial RobotStudio PT
Tutorial RobotStudio PT
TUTORIAL Nº 1
PROGRAMAÇÃO OFFLINE E SIMULAÇÃO COM O ROBOTSTUDIO 6.04
Índice
1 Objetivos .................................................................................................................................. 2
2 Introdução ................................................................................................................................ 2
3 Elementos Base....................................................................................................................... 2
3.1 Versão Utilizada ................................................................................................................................. 3
3.2 Ambiente de Trabalho ........................................................................................................................ 4
3.3 Abrir e Simular um Ambiente de Trabalho Exemplo .......................................................................... 5
3.4 Criar Ambientes de Trabalho ............................................................................................................. 8
3.5 Sistemas de Coordenadas ................................................................................................................ 9
3.6 Espaço de Trabalho e Alcance do Robô ......................................................................................... 10
3.7 Adicionar Ferramentas Existentes .................................................................................................... 11
3.8 Adicionar Objetos Existentes ........................................................................................................... 12
3.9 Criar e Importar Novos Objetos ....................................................................................................... 14
3.10 Modos de Visualização .................................................................................................................... 16
3.11 Movimentar o Robô e Criar Caminhos ............................................................................................ 17
4 Criar um Workobject .............................................................................................................. 20
5 Criar um Caminho com Base nos Vértices de um Objeto....................................................... 22
6 Criar Caminhos ao Longo das Arestas de um Objeto............................................................. 26
7 Alteração da Localização do Espaço de Trabalho Após a Criação das Posturas e/ou do
Caminho ....................................................................................................................................... 29
8 Adicionar Sinais ao Robô ....................................................................................................... 30
9 Programação Gráfica do Robô e Simulação .......................................................................... 32
10 Utilização Direta de Código RAPID .................................................................................... 37
11 Principais Instruções RAPID .............................................................................................. 40
11.1 Variáveis e Constantes .................................................................................................................... 41
11.2 Controlo de Fluxo ............................................................................................................................ 42
11.3 Instruções de Movimento ................................................................................................................. 42
11.4 Entradas/Saídas (sinais) .................................................................................................................. 44
11.5 Procedimentos (Funções) com Argumentos ................................................................................... 44
11.6 Algumas Notas Finais ...................................................................................................................... 45
12 Gravação da Simulação em Vídeo ..................................................................................... 45
2 Introdução
Dada a complexidade no desenvolvimento de uma tarefa automatizada com recurso a robôs, é
imprescindível a utilização de software de simulação para uma maior produtividade. Além de reduzir
o tempo de desenvolvimento e possíveis erros de conceção, permite ainda reduzir o tempo de
paragem das linhas de produção durante o processo de desenvolvimento.
Neste tutorial encontra uma descrição passo a passo dos principais elementos do RobotStudio, bem
como exemplos e/ou ligações para exemplos fornecidos pelos docentes e/ou juntamente com o
software. Este tutorial foi desenvolvido de modo a que os estudantes adquiram autonomia na
procura de soluções para problemas inesperados que possam surgir. Assim, ao longo deste
documento encontrará vários ponteiros para secções de ajuda do próprio RobotStudio. Todos os
elementos que não façam parte deste tutorial, ou não sejam fornecidos juntamente com o
RobotStudio, são disponibilizados no Moodle ou num sítio Web relacionado com o fabricante com
a respetiva ligação explicitamente indicada na respetiva secção deste tutorial.
3 Elementos Base
Tal como indicado nas aulas teóricas, a cada manipulador robótico está associado um controlador
e uma consola, tal mostra a Figura 1.
No caso da ABB são utilizadas as seguintes terminologias (robôs de outras marcas usam
terminologias semelhantes):
• RAPID – linguagem de programação utilizada para controlar os robôs da ABB;
2016/2017 – 2º Semestre, EEC, RVC Hugo Costelha e Carlos Simplício 2/45
• Robot manipulator – corresponde ao manipulador robótico em si;
• Control module – corresponde ao módulo responsável pelo controlo dos movimentos do
robô, normalmente constituído por um computador capaz de interpretar linguagem RAPID e
comunicar com os módulos de acionamento;
• Drive module – módulo que contém a eletrónica de potência, capaz de receber as indicações
do módulo de controlo e acionar os motores das juntas do manipulador. Tipicamente um
módulo de acionamento da ABB suporta até 9 juntas, pelo que é necessário um módulo por
robô (o qual tem tipicamente 6 juntas);
• FlexController – Corresponde à unidade denominada como “Controlador” na Figura 1, a qual
contém o módulo de controlo, o módulo de acionamento, e outros módulos necessários ao
funcionamento do ABB (por exemplo, de comunicação);
• FlexPendant – Consola de comando ligado ao controlador. Com um ecrã, que poderá ser
tátil, e teclas, esta permite de uma forma fácil a programação e controlo do manipulador
online;
• Tool – Ferramenta utilizada no elemento terminal do robô. A título de exemplo, e tal como
poderá confirmar na Figura 1, poderá ser utilizada uma garra;
• RobotWare – designação utilizada pela ABB para se referir ao software utilizado para
controlar o robô, i.e., corresponde ao sistema instalado no controlador;
• Station – ambiente de trabalho, constituído por um ou mais manipuladores robóticos e
demais objetos e mecanismos.
Consola
Manipulador
Controlador
1Note-se que um ambiente de trabalho no RobotStudio é composto por múltiplos ficheiros. A opção Pack &
Go permite criar um único ficheiro comprimido que inclui todos esses ficheiros.
2016/2017 – 2º Semestre, EEC, RVC Hugo Costelha e Carlos Simplício 5/45
O RobotStudio inclui alguns exemplos completos que pode experimentar, dois dos quais se
descrevem de seguida.
-
Figura 5 – Exemplo de soldadura.
3. Proceda com as opções indicadas por omissão, exceto relativamente à opção Library
Handling, onde deverá escolher a opção Load files from Pack & Go. Quando clicar em Finish
ambiente de trabalho será carregado (note que o carregamento do ambiente de trabalho
usando a opção Unpack and Work pode demorar algum tempo, podendo surgir alguns
avisos, os quais podem ser ignorados). No final deverá surgir um ambiente semelhante ao
da Figura 5. No canto inferior direito pode visualizar “Controller status: 1/1”, sendo o dígito
da esquerda o número de controladores utilizados, e o dígito da direita o número de
controladores ativos.
NOTA: Procure utilizar e desenvolver um dado ambiente de trabalho sempre na mesma pasta, no
mesmo PC, para assim evitar gastar tempo com a operação Unpack and Work.
Neste ambiente encontra um manipulador robótico e um posicionador, estando o manipulador
equipado com uma ferramenta de soldadura ABICOR Binzel.
Para iniciar a simulação do sistema, escolha o menu Simulation e pressione a opção Play. Em
qualquer altura poderá utilizar o botão esquerdo do rato para selecionar objetos do ambiente de
trabalho e o botão direito para aceder a opções desses mesmos objetos. A roda do rato permite
aproximar e afastar, Ctrl + botão esquerdo do rato permite arrastar o ambiente e, finalmente, Ctrl +
Shift + botão esquerdo do rato permite rodar o ambiente.
Feche o ambiente clicando no menu File seguido da opção Close. Note que sempre que executa
uma simulação ocorrem alterações no ambiente, incluindo configuração dos robôs, posição dos
2 Para verificar quais os tipos de ficheiros suportados para importar objetos 3D para o RobotStudio, clique em
Home Import Geometry Browse for Geometry e confirme na nova janela as extensões suportadas. Note
que algumas geometrias não permitem operações de snap, como é o caso das criadas no Google SketchUp.
3 Poderá visualizar algumas reportagens sobre casos reais na utilização de manipuladores robóticos, em
4O nome do robô indica que este é um modelo com 6 kg de carga máxima suportada e 1.2 m de alcance
máximo.
2016/2017 – 2º Semestre, EEC, RVC Hugo Costelha e Carlos Simplício 9/45
World Coordinate System – Este é o referencial do mundo, que serve de base a todo o
ambiente de trabalho. Sempre que alguma coordenada é especificada em coordenadas do
mundo, é a este referencial que se refere;
Task Frame Coordinate System – Este referencial, definido relativamente ao referencial
anterior, pode ser usado como referencial base de uma dada tarefa. É sobretudo útil se
houver múltiplas células de trabalho no mesmo ambiente, com múltiplos robôs ou
mecanismos a trabalhar numa mesma célula. Nessa situação poderá haver um mesmo
referencial base para os vários robôs ou mecanismos5;
Base Coordinate System – Sistema de coordenadas base associado a cada robô,
localizado por omissão no centro da base do mesmo, junto ao plano de apoio da sua base;
Tool Center Point Coordinate System (TCP) – Referencial associado à ferramenta.
Tipicamente o local onde a ferramenta deverá trabalhar será especificado para que o TCP
fique coincidente com essa postura, sendo essa postura a que é armazenada durante a
opção Teach Target (a descrever posteriormente). Cada robô tem um referencial por omissão
denominado tool0, inicialmente localizado no extremo do punho;
Workobject Coordinate System – O Workobject é um referencial auxiliar que pode servir
de base a uma qualquer zona de trabalho, facilitando a alteração e especificação de pontos
de trabalho com base em objetos existentes. Por omissão todos os robôs possuem
inicialmente um Workobject denominado wobj0, o qual é coincidente com o referencial base
do robô.
A título de exemplo pode observar um conjunto de referenciais na Figura 11 num ambiente
semelhante ao que irá criar ao longo deste tutorial. Neste exemplo os referências do mundo, de
base do robô, da tarefa, bem como o Workobject por omissão (wobj0) estão coincidentes. O
referencial da “ferramenta” por omissão, tool0, encontra-se no extremo do punho. O referencial
AW_Gun corresponde ao referencial associado à ferramenta inserida no robô. Neste exemplo foi
ainda adicionado um novo Workobject (Workobject_1), associado a um hipotético espaço de
trabalho (neste caso a face superior do cubo exibido). Note que as cores dos eixos são sempre as
mesmas, isto é, os eixos X são vermelhos, os Y são verdes e os Z são azuis (XYZ ↔ RGB).
tool0 AW_Gun
Figura 10 – Relação entre os vários referenciais. Figura 11 – Examplo the referenciais utilizados.
5Note que não é obrigatória esta abordagem quando são utilizados múltiplos robôs. A abordagem típica é que
cada robô utilize o seu referencial base, sendo assim os movimentos independentes.
2016/2017 – 2º Semestre, EEC, RVC Hugo Costelha e Carlos Simplício 10/45
espaço de trabalho, operações a efetuar e alcance necessário. Assim, a escolha do robô deverá ser
feita apenas depois de responder a estas questões. Em termos de alcançabilidade, isto é,
determinação do espaço de trabalho do robô, o RobotStudio possui uma ferramenta útil (note que
o alcance do robô, bem como a carga máxima e outros dados fazem parte das especificações
tipicamente disponibilizadas pelo fabricante).
Tendo por base a estação criada anteriormente (ver Figura 9) clique, no separador Layout, com o
botão direito do rato no robô (IRB1600_6_120__02) e selecione a opção Show Work Envelope,
resultando no ambiente de trabalho ilustrado na Figura 12. Desta forma fica bem patente quais os
pontos que o robô consegue alcançar.
Note que esta informação só por si não é suficiente, pois o facto de o robô atingir um dado ponto
com uma determinada orientação não significa que o consiga com qualquer outra orientação. Assim,
se o robô irá conseguir ou não atingir uma determinada postura (posição mais orientação) irá
depender muito da orientação escolhida.
6 Pode ainda aplicar uma operação de rotação seguindo passos similares com a opção de rotação/orientação.
7 Opções semelhantes às que encontra no AutoCAD ou outro qualquer software de desenho geométrico.
2016/2017 – 2º Semestre, EEC, RVC Hugo Costelha e Carlos Simplício 13/45
do tabuleiro da mesa, à semelhança do ilustrado na Figura 22;
Relativamente aos objetos compostos apenas por figuras geométricas, o RobotStudio permite
importar um conjunto de formatos diferentes, nomeadamente sat, igs/iges, stp/step/p21, vda/vdafs,
model/exp, CATPart/CATProduct, prt/asm, ipt, wrl/vrml/vrml1/vrml2, jt, stl, ply, 3ds e dae (aceda à
lista completa fazendo Home Import Geometry Browse for Geometry). Note no entanto que
alguns formatos poderão necessitar de uma licença extra. Com a instalação do RobotStudio é ainda
disponibilizada uma ferramenta que permite converter conjuntos de ficheiros do AutoCAD numa
única operação, ferramenta essa denominada de CAD Converter.
Caso o estudante se sinta confortável com um destes formatos pode desenvolver o seu ambiente
de trabalho na aplicação correspondente e importá-la no RobotStudio. Caso contrário pode
desenvolver o ambiente no próprio RobotStudio, embora com bastantes limitações quando
comparado com aplicações específicas de modelação e desenho 3D. Lembre-se que o RobotStudio
é um software de simulação na área da Robótica, não é um software de desenho.
Os passos seguintes descrevem a utilização básica do RobotStudio para criar figuras geométricas:
1. Abra a estação criada anteriormente, caso esteja fechada, e selecione a opção Modeling
Solid Box (ver Figura 25);
2. Como pode confirmar na Figura 26, na definição da posição e dimensão do paralelepípedo
tem a opção de escolher qual o referencial utilizado como base (por omissão é no referencial
do mundo). Neste caso pretende-se adicionar um paralelepípedo com 600 mm de lado,
centrado na posição (0, 1100, 0) [mm] e orientado segundo os eixos de coordenadas. Dado
que a especificação da posição do paralelepípedo se baseia num dos vértices deste, tem
que introduzir as coordenadas para o vértice (-300, 800, 0) [mm] e orientação (0,0,0) para
manter o alinhamento com o referencial de base. Relativamente à dimensão, se colocar
apenas o comprimento, o RobotStudio assume a mesma dimensão para todos os lados.
Corner
Point
NOTA: Os nomes atribuídos aos vários elementos constituintes do ambiente de trabalho podem
facilmente ser editados clicando duas vezes com o botão esquerdo do rato nos mesmos, ou clicando
com o botão direito do rato seguido da opção Rename. Procure atribuir sempre nomes sugestivos
aos vários elementos, permitindo assim uma mais fácil reutilização, depuração e avaliação do
trabalho desenvolvido.
4 Criar um Workobject
Tal como detalhado na ajuda do RobotStudio, na secção “How to program robots”, item
2016/2017 – 2º Semestre, EEC, RVC Hugo Costelha e Carlos Simplício 20/45
“Workobjects”, um Workobject consiste num referencial de coordenadas que é utilizado como
origem na criação de um conjunto de posturas/caminhos tipicamente associados a um objeto, área
de trabalho e operação específicos. Considere que criou um caminho ao longo das arestas de um
dado objeto e que esse caminho tem por base um Workobject. Caso pretenda processar a peça
numa postura diferente, tudo o que terá que fazer será reajustar o Workobject. Caso não tivesse
usado um Workobject nessa situação, seria necessário refazer todo o caminho e criar novamente
todas as posturas associadas. É fundamental a utilização de Workobjects para cada operação,
devendo sempre começar qualquer tarefa pela criação destes.
Outro conceito importante reside na escolha da configuração com que cada postura é atingida num
dado caminho. Embora tipicamente um manipulador, em particular um com seis juntas, seja capaz
de atingir a mesma postura com várias configurações distintas (valores diferentes de juntas), a
escolha das configurações é crucial para a execução do caminho com sucesso. Ao longo desta
secção ficará mais familiarizado com este conceito.
Realize os seguintes passos:
1. Abra o ambiente de trabalho gerado no tutorial anterior;
2. Selecione a peça em cima da mesa e centre-a no
separador de visualização, clicando na mesma com o
botão direito do rato e escolhendo a opção View Center.
Faça zoom à peça, resultando numa visualização
semelhante à da Figura 42;
3. Ative a opção Snap End ou Snap Object;
Figura 42 – Visualização da peça.
4. Clique em Home Other Create Workobject;
5. Modifique o nome do Workobject de Workobject_1 para MyWorkobject (procure sempre que
estes nomes sejam sugestivos);
Figura 45 – Criação de posturas num objeto. Figura 46 – Posturas criadas num objeto.
3. De modo a facilitar a perceção das posturas definidas é possível visualizar a ferramenta do
robô nestas. Para tal selecione todas as posturas do Workobject criado e ative a opção
Target Tools Modify View tool at target MyTool, resultando na informação disponível
na Figura 47.
Figura 48 – Posturas após primeira rotação. Figura 49 – Posturas após segunda rotação.
4. Tal como a Figura 47 mostra, as posturas escolhidas não são as ideais, pelo que têm de ser
alteradas. Para tal, mantendo todas as posturas selecionadas, clique em Target Tools
Modify Rotate. Com o referencial local selecionado, selecione o eixo de rotação X e rode
180º, obtendo o resultado ilustrado na Figura 48. Selecione agora o eixo de rotação Z e rode
novamente 180º, obtendo o resultado ilustrado na Figura 49;
8Poderá também aceder à opção Jump To Target clicando com o botão direito do rato na postura. Um número
razoável das opções disponíveis nos menus está também disponível por esta via.
2016/2017 – 2º Semestre, EEC, RVC Hugo Costelha e Carlos Simplício 23/45
6. Ative a opção Target Tools Modify View Robot at Target de modo a visualizar o robô
na postura selecionada. Selecione uma postura de cada vez das 4 criadas para o Workobject
e escolha a configuração desejada, de preferência a mesma que na postura anterior ou
próxima desta. Após configurar todas as posturas feche a janela das configurações e cancele
a opção View Robot at Target. Note que à medida que configura as posturas estas deixam
de ter um ponto de exclamação associado, indicando que a postura foi verificada e é
alcançável pelo robô;
7. Crie um novo caminho vazio e adicione estas 4 posturas a esse caminho, arrastando-as
para lá;
8. Teste a execução do caminho, selecionando o mesmo e clicando em Path Tools Modify
Move Along Path, obtendo a trajetória indicada na Figura 51;
9. Como pode verificar pelo resultado obtido, o robô não executa os movimentos sempre em
linha reta entre posturas consecutivas, embora o resultado seja bastante mais próximo do
que o esperado, comparativamente à utilização de movimentos de juntas (MoveJ). Tal deve-
se aos parâmetros utilizados para o movimento. Como não efetuou qualquer alteração a
estes parâmetros, este terá sido definido com as características indicadas na barra inferior
da janela do RobotStudio, nomeadamente movimentos lineares (MoveL) com velocidade de
1000 mm/s (v1000), aproximação de 100 mm (z100), a ferramenta MyTool e o Workobject
MyWorkobject (pode confirmar estes parâmetros colocando o ponteiro do rato por cima de
cada instrução de movimento). Neste caso em concreto, como definiu uma aproximação de
100 mm, assim que o robô estiver a menos de 100 mm da próxima postura, este avança
para o movimento seguinte;
Figura 51 – Caminho executado com erro. Figura 52 – Caminho executado com precisão.
10. Para a trajetória a realizar, tem duas hipóteses: poderá apagar as instruções, alterar as
opções na barra inferior da janela do RobotStudio e voltar a adiciona-las; alternativamente
pode selecionar todos os movimentos no separador Paths&Targets e, clicando com o botão
direito do rato, escolher a opção Edit Instruction. Na janela que aparece altere a opção zone
de z100 para fine, a precisão máxima do robô. Clique em Apply e feche a janela;
11. Aceda novamente à opção Simulation Monitor e clique na opção Clear Trace para apagar
o traçado anterior e altere a cor para magenta para ser mais visível;
12. Corra novamente o caminho criado e verifique que a trajetória realizada pela ferramenta é a
apresentada na Figura 52. Verifique ainda que agora o robô para nos cantos da peça por
breves instantes, algo que não acontecia no movimento anterior;
13. Grave o ambiente criado.
Figura 88 – Lista final de sinais do utilizador. Figura 89 – Simulador de E/S com lista de utilizador.
16. Inicie novamente a simulação (Simulation Play) e force a entrada diStartOperation a 1
para o sistema IRB_1600_6kg_1.2m. Verifique que o robô executa a trajetória e ativa a saída
diOperationEnded no final. Repita as operações para o outro robô e verifique o mesmo
comportamento;
17. Embora já seja possível controlar a operação de ambos os robôs, estes não executam ainda
as operações de forma coordenada, pois falta ainda interligar os robôs. Clique em Simulation
Station Logic, resultando na janela da Figura 90. Esta janela permite definir a lógica de
funcionamento de alto nível da estação de trabalho, incluindo ligações entre controladores
e outros dispositivos;
18. Neste caso apenas existem dois controladores/robôs em termos de equipamento ativo, o
que pode ser confirmado clicando no separador Design, como mostra a Figura 91. Para
interligar os mesmos, aceda ao separador Signals and Connections e clique em Add I/O
Connections. Na janela que aparece escolha as opções como mostra a Figura 92 e clique
em OK;
Nesta secção terá oportunidade de interagir diretamente com o código RAPID e ficar a conhecer as
principais funções deste. Para informação mais detalhada dessas e outras funções deverá consultar
a ajuda RAPID indicada acima.
Com os próximos passos pretende-se perceber como é feito o acesso ao código RAPID. O código
será ainda alterado para que o robô esteja a operar continuamente, sem que para tal seja necessário
alterar a configuração da simulação ou forçar manualmente uma entrada do robô.
1. Abra o ambiente criado na secção anterior, caso não esteja aberto;
2. Vá a Simulation Simulation Setup e confirme que a opção Single Cycle está selecionada
para ambos os controladores;
3. No I/O Simulator verifique que todas as entradas e saídas que foram adicionadas a ambos
os controladores estão a 0.
4. Arranque a simulação, situação em que os robôs deverão ficar parados à espera da entrada
digital a 1, como mostra a Figura 94;
O módulo gerado automaticamente pelo RobotStudio com base nas posturas e caminhos criados
tem tipicamente atribuído o nome Module1. A linha de código MODULE Module1 no início do ficheiro
identifica isso mesmo, isto é, o início do módulo denominado Module1. Pode igualmente verificar
que o módulo é terminado com a instrução ENDMODULE.
Imediatamente após o início do módulo encontra a definição das posturas definidas no ambiente
gráfico do RobotStudio, sendo estas constantes (CONST) do tipo robtarget. Estes valores não
deverão ser editados diretamente em código.
De seguida encontra procedimentos (funções), cujo início e fim estão identificados pelas instruções
PROC função() e ENDPROC, respetivamente. Estes procedimentos são o equivalente às funções
em linguagem C, podendo também ter argumentos. A função main, tal como em linguagem C,
corresponde à função principal, sendo esta a função chamada quando o código arranca. Quando
esta função terminar o programa termina a sua execução. Neste momento esta função não existe,
pois não foi ainda definida, dado que foi definida a função Path_Part_surf como sendo a função de
arranque (caso nada seja feito, por omissão a função main é a função principal, de arranque).
8. No código gerado pode confirmar que existem uma função, Path_Part_surf(), a qual
corresponde exatamente aos caminhos criados anteriormente no ambiente gráfico;
9. Para resolver o problema de ser necessário ativar uma entrada para o sistema arrancar,
basta agora adicionar essa instrução diretamente no código RAPID. De facto, para ter
maiores garantias no arranque, devem sempre confirmar o estado inicial do sistema e
PROC main()
! Ir para a postura base
MoveJ Home,v1000,z50,MyTool\WObj:=wobj0;
! Garantir condições iniciais
SetDO doOperationEnded,0;
WaitDI diStartOperation,0;
! Entrar no ciclo infinito
WHILE TRUE DO
Path_Part_surf;
ENDWHILE
ENDPROC
PROC main()
! Ir para a postura base
MoveJ Home,v1000,z50,MyTool\WObj:=wobj0;
! Garantir condições iniciais
SetDO doOperationEnded,0;
WaitDI diStartOperation,0;
! Dar ordem de arranque ao outro robô
SetDO doOperationEnded,1;
! Entrar no ciclo infinito
WHILE TRUE DO
Path_Part_surf;
ENDWHILE
ENDPROC
A conjugação da criação de caminhos no ambiente gráfico, com a edição direta do código RAPID,
permite criar simulações mais complexas, aliando uma fácil e prática criação de caminhos com a
utilização de um conjunto vasto de instruções disponibilizadas pela linguagem RAPID, à
semelhança de uma outra qualquer linguagem de programação (por exemplo, C). É assim possível
criar execuções alternativas com base em, por exemplo, informação de sensores ou ordens
externas.
11.1.2 Constantes
Constantes são variáveis cujo valor é atribuído na declaração e não pode ser alterado
posteriormente.
11.1.3 Operadores
Tal como em C, estão disponíveis operadores numéricos e relacionais. Os operadores numéricos
básicos são os mesmos da linguagem C, isto é:
+: adição;
-: subtração;
*: multiplicação;
/: divisão.
Relativamente aos operadores relacionais, são em tudo semelhantes aos da linguagem C:
=: comparação de igualdade;
<: comparador menor;
>: comparador maior;
<=: comparador menor ou igual;
>=: comparador maior ou igual;
<>: comparador de não igualdade;
É também possível utilizar o operador “+” para concatenação de cadeias de caracteres
Neste exemplo o robô parte da postura onde se encontrar e realiza uma trajetória circular que passa
pela postura Target_90 e termina na postura Target_100.
Na primeira instrução utiliza-se a instrução Offs para movimentar o robô para uma postura 10 mm
acima em z relativamente à postura p2. Na segunda instrução é guardada na variável p3 uma
postura definida relativamente à postura p1.
A instrução RelTool é semelhante à instrução Offs mas permite definir uma orientação além de um
deslocamento. Veja-se um exemplo.
Esta instrução atualiza o valor da saída doMechanismControl para o valor 0. Note-se que é possível
incluir outros argumentos, como por exemplo um atraso. Consulte a documentação do RAPID para
mais informação.
Esta instrução bloqueia a execução do programa até que a entrada diDoorClosed tenha o valor 1.
É possível especificar um tempo máximo de espera (consulte a documentação do RAPID para mais
informação).