Escolar Documentos
Profissional Documentos
Cultura Documentos
Banca Examinadora:
Prof.ª Dra. Ana Beatriz Alvarez Mamani
Prof. Dr. Anselmo Fortunato Ruiz Rodriguez
Prof. Dr. Roger Fredy Larico Chavez
Rio Branco – AC
2015
Ficha catalográfica elaborada pela Biblioteca Central da UFAC
CDD: 629.895
ii
COMISSÃO JULGADORA
TRABALHO DE CONCLUSÃO DE CURSO
______________________________________________
Prof.ª Dra. Ana Beatriz Alvarez Manani (Presidente)
CCET/UFAC
_________________________________________________
Prof. Dr. Anselmo Fortunato Ruiz Rodriguez
Bionorte/UFAC
______________________________________________
Prof. Dr. Roger Fredy Larico Chavez
CCET/UFAC
iii
À minha filha Maraisa Maria.
iv
AGRADECIMENTOS
v
RESUMO
vi
ABSTRACT
The present work aims to develop a robotic arm of four degrees of freedom
that mimics the movements performed by another articulated arm. For this, the work
includes the system modeling for the structure analysis, model simulation in computing
environment and its experimental development.
For the analysis of arm movements, it is performed the modeling through
forward kinematics by using the Denavit-Hartenberg methodology, tool used to
organize the kinematic description of articulated mechanical systems with n degrees
of freedom. After that, the values obtained by forward kinematics developed are
compared to the results from simulation in Matlab® Simulink® environment. For the
construction of the prototype were used components such as open source electronic
prototyping board Arduino™, MPU-6050™ sensor (three-axis gyroscope + three-axis
accelerometer), servomotors and structural elements produced in acrylic and MDF
(Medium-Density Fiberboard) designed with the help of the AutoCAD® 2013. Among
the possible applications of this prototype, it can highlight the use for inspection of
explosive devices and harmful materials to health and physical integrity of persons.
At the end of the work are discusses the results of the computational simulation
and demonstration of the robot arm operation developed in experimental bench.
vii
LISTA DE FIGURAS
viii
Figura 2.24 – Representação de um sistema de coordenadas de um robô (θ 1, θ2, θ3) ......... 47
Figura 2.25 – Notação de Denavit-Hartenberg (geometria e parâmetros de juntas rotativas)
............................................................................................................................................ 49
Figura 2.26 – Algoritmo resumido de Denavit-Hartenberg.................................................... 54
Figura 3.1 – Alocação de frames intermediários {P}, {Q} e {R} ............................................. 57
Figura 3.2 – Representação por imagem computacional do braço robótico ......................... 59
Figura 3.3 – Representação dos quatro eixos de revolução do braço robótico .................... 60
Figura 3.4 – Representação dos eixos de revolução e extração dos frames de coordenadas
(dimensões em milímetros) .................................................................................................. 60
Figura 3.5 – Detalhe dos eixos coordenados e alocação dos frames (dimensões em
milímetros) ........................................................................................................................... 61
Figura 3.6 – Comandos para a elaboração em ambiente Matlab® do braço robótico com
auxílio da ferramenta Robotics Toolbox ............................................................................... 66
Figura 4.1 – Imagem ilustrando alguns produtos Arduino™: (a) Arduino™ Uno; (b) Arduino™
Mega; (c) Arduino™ Micro; (d) Arduino™ Nano; (e) Arduino™ Lilypad ................................ 70
Figura 4.2 – Vista frontal de uma placa Arduino™ Uno ........................................................ 70
Figura 4.3 – Especificações técnicas da placa Arduino™ Uno ............................................. 72
Figura 4.4 – Exemplos dos componentes de um servomotor ............................................... 74
Figura 4.5 – Exemplo de pulsos de controle de um servomotor ........................................... 76
Figura 4.6 – Servomotores: (a) TowerPro™ SG90; (b) TowerPro™ SG-5010 ..................... 77
Figura 4.7 – Especificações técnicas dos servomotores utilizados ...................................... 77
Figura 4.8 – Placa GY-525 composta pelo sensor InvenSense® MPU-6050™.................... 79
Figura 4.9 – Diagrama de blocos do MPU-6050™ ............................................................... 79
Figura 4.10 – (a) Braço robótico atuador; (b) Braço articulado controlador .......................... 81
Figura 4.11 – Esquema de ligação elétrica dos componentes no software Fritzing .............. 82
Figura 4.12 – Ângulos de operação do braço robótico ......................................................... 83
Figura 4.13 – Região de operação do braço robótico ........................................................... 83
Figura 5.1 – Comandos para a elaboração da cinemática direta no Matlab®: valores dos
ângulos de juntas θ1 = θ2 = θ3 = θ4 = 0 (destaque) ............................................................... 85
Figura 5.2 – Resultados da cinemática direta no Matlab® para ângulos θ 1 = θ2 = θ3 = θ4 = 0
............................................................................................................................................ 86
Figura 5.3 – Simulação gráfica do braço robótico para valores de θ 1 = θ2 = θ3 = θ4 = 0 (valores
em milímetros) ..................................................................................................................... 87
Figura 5.4 – Comandos para a elaboração da cinemática direta no Matlab®: valores dos
ângulos de juntas θ1 = θ3 = 90º e θ2 = θ4 = -90 (destaque) ................................................... 88
ix
Figura 5.5 – Resultados da cinemática direta no Matlab® para ângulos θ 1 = θ3 = 90º e θ2 = θ4
= -90 .................................................................................................................................... 89
Figura 5.6 – Simulação gráfica do braço robótico para valores de θ 1 = θ3 = 90º e θ2 = θ4 = -90
(valores em milímetros) ....................................................................................................... 89
Figura 5.7 – Comandos para a elaboração da cinemática direta no Matlab®: valores dos
ângulos de juntas θ1 = 180º, θ2 = -60º, θ3 = -45 e θ4 = 30º (destaque) .................................. 91
Figura 5.8 – Resultados da cinemática direta no Matlab® para ângulos θ 1 = 180º, θ2 = -60º, θ3
= -45 e θ4 = 30º .................................................................................................................... 91
Figura 5.9 – Simulação gráfica do braço robótico para valores de θ 1 = 180º, θ2 = -60º, θ3 = -45
e θ4 = 30º (valores em milímetros) ....................................................................................... 92
Figura 5.10 – Modelo geral do braço robótico em ambiente Simulink® ................................ 93
Figura 5.11 – Modelo Simulink® do bloco Base Rígida........................................................ 94
Figura 5.12 – Modelo Simulink® do bloco Base Giratória .................................................... 94
Figura 5.13 – Modelo Simulink® do bloco Braço.................................................................. 94
Figura 5.14 – Modelo Simulink® do bloco Antebraço ........................................................... 95
Figura 5.15 – Modelo Simulink® do bloco Garra1 ................................................................ 95
Figura 5.16 – Movimentos simulados no Simulink® (1) ........................................................ 96
Figura 5.17 – Movimentos simulados no Simulink® (2) ........................................................ 96
Figura 5.18 – Movimentos simulados no Simulink® (3) ........................................................ 97
Figura 5.19 – Movimentos simulados no Simulink® (4) ........................................................ 97
Figura 5.20 – Correlação entre braço robótico atuador e braço controlador (1) ................... 98
Figura 5.21 – Correlação entre braço robótico atuador e braço controlador (2) ................... 99
Figura 5.22 – Correlação entre braço robótico atuador e braço controlador (3) ................... 99
Figura 5.23 – Correlação entre braço robótico atuador e braço controlador (4). ................ 100
x
LISTA DE ABREVIATURAS E SIGLAS
CC Corrente Contínua
D-H Denavit-Hartenberg
GL Grau de Liberdade
PPP Prismática-Prismática-Prismática
RPP Revolução-Prismática-Prismática
RRP Revolução-Revolução-Prismática
RRR Revolução-Revolução-Revolução
RT Rotacional-Torcional
xi
Selective Compliance Assembly Braço de Robô com Montagem
SCARA
Robot Arm Seletiva Obediente
TRT Torcional-Rotacional-Torcional
xii
SUMÁRIO
xiii
3.1 CONSIDERAÇÕES BIBLIOGRÁFICAS PARA A MODELAGEM ............................................56
3.2 OBTENÇÃO DA MATRIZ DE TRANSFORMAÇÃO DE REFERÊNCIA ....................................56
3.3 APRESENTAÇÃO DO BRAÇO ROBÓTICO PROPOSTO .......................................................59
3.4 ATRIBUIÇÃO DOS FRAMES DE COORDENADAS PELO MÉTODO DE D-H .........................59
3.5 CINEMÁTICA DIRETA: CÁLCULO DA MATRIZ DE TRANSFORMAÇÃO ..............................61
3.6 CINEMÁTICA DIRETA DO BRAÇO ROBÓTICO EM AMBIENTE MATLAB® ..........................65
xiv
15
CAPÍTULO 1 – INTRODUÇÃO
1
Informação que o emissor obtém da reação do receptor à sua mensagem, servindo para avaliar e
comparar os resultados da transmissão.
19
2
Empresa produtora do Sistema Cirúrgico da Vinci®. Disponível em:
<http://intuitivesurgical.com/company/media/images/davinci_s_images.html>. Acesso em: 15 set.
2015.
3
Site Cirurgia Cardiotorácica, Escola de Medicina Keck – Universidade do Sul da Califórnia. Disponível
em: < http://www.cts.usc.edu/roboticsurgery-davincisystem.html>. Acesso em: 15 set. 2015.
20
4
Empresa fabricante do produto. Disponível em: <https://www.qinetiq-na.com/products/unmanned-
systems/dragon-runner/>. Acesso em: 02 set. 2015.
5
Empresa fabricante do produto. Disponível em: <https://www.qinetiq-na.com/products/unmanned-
systems/talon/>. Acesso em: 02 set. 2015.
21
6
Disponível em: <http://grypheng.com/shop/supplier/qinetiq-na-unmanned-systems/universal-tactical-
robotic-controller>. Acesso em: 15 set. 2015.
22
Figura 1.6 – Correlação entre braços humano e robótico proposto por Serrano et al. (2010)
7
Do inglês Medium-Density Fiberboard, é um material fabricado através da aglutinação de fibras de
madeira com resinas sintéticas e outros aditivos. Tal expressão pode ser traduzida para o português
como placa de madeira de média densidade e é bastante utilizada na indústria moveleira.
8
A expressão em inglês open source pode ser traduzida para o português como código aberto. A
iniciativa pelo código aberto surgiu em 1998, tendo como objetivos principais o de apoiar e promover a
criação de softwares livres, ou seja, softwares com códigos abertos para os usuários.
24
1.6 JUSTIFICATIVA
9
Quando em comparação aos principais dispositivos robóticos encontrados no mercado.
25
1.7 MOTIVAÇÃO
10
Termo em inglês que significa elo ou conexão, e para não divergir das explicações dadas por
Rosário (2005), optou-se por usá-la neste trabalho.
28
Articulado ou Antropomórfico;
Esférico ou Polar;
SCARA.
Cada uma dessas classes é descrita de acordo com os primeiros três graus
de liberdade, podendo ser descritos em suas próprias coordenadas, que podem ser
mapeadas para o sistema de coordenadas cartesiano. O código usado para essa
classificação consiste numa sequência de três letras, que representam os tipos de
juntas na ordem em que ocorrem, começando da junta mais à extremidade do braço
(ROSÁRIO, 2005).
Conforme Santos (2014), a seguir será mostrada a caracterização cinemática
destas configurações de robôs:
Figura 2.11 – Áreas de trabalho de um robô articulado RRR de três graus de liberdade
ortogonal ao plano formado pelos dois primeiros vínculos (CRAIG, 2006). A figura 2.15
demonstra o volume de trabalho de um robô SCARA.
Por possuir duas juntas de revolução e uma prismática, a codificação deste
tipo de mecanismo é RRP (Revolução-Revolução-Prismática). Rosário (2005)
menciona que, muito embora na configuração SCARA sejam encontrados tipos de
juntas idênticos ao de uma configuração esférica, os robôs do tipo SCARA se
diferenciam dos esféricos tanto na aparência quanto na aplicação.
Como atrativos, Craig (2006) menciona que a principal vantagem deste
manipulador é que as três primeiras articulações não tem que suportar o peso do
manipulador ou da carga. Já para Carrara (2008), a área de trabalho desses robôs é
menor do que a de robôs esféricos e maior que cartesianos e cilíndricos.
Figura 2.18 – Definição dos ângulos de orientação roll, pitch e yaw (ϕ, θ, Ψ)
Um robô é projetado para atuar de acordo com seu ambiente, e para tal deve
ser dotado de um elemento terminal. Como o atuador é o elemento fundamental para
a correta execução de uma tarefa, faz-se necessário que tal membro seja
adequadamente elaborado e adaptado às condições do seu meio de trabalho
(ROSÁRIO, 2005).
O elemento terminal é o responsável por realizar a manipulação de objetos
em diferentes tamanhos, formas e materiais, porém esta manipulação depende da
aplicação ao qual se destina (CARRARA, 2008).
Podem-se comparar as garras de dispositivos robóticos às mãos humanas,
apesar disso elas não são capazes de replicar os movimentos humanos com
fidelidade, fato que resulta na limitação desses movimentos a algumas faixas de
operação particulares. A enorme demanda por atuadores deste tipo culminou com o
desenvolvimento de garras capazes de manusear diferentes tipos de objetos sob
diversos tamanhos e aplicações (ROSÁRIO, 2005). Elas podem ser assim
classificadas conforme seguem os itens abaixo.
Este tipo de garra consiste de dois dedos com um, dois, ou vários semicírculos
chanfrados, permitindo, assim, a captura de objetos cilíndricos de diâmetros distintos,
conforme é possível se observar na figura 2.21. Porém, para Rosário (2005), as
principais desvantagens associadas a este tipo de mecanismo é que os movimentos
são limitados em função do tamanho da garra e que o seu peso deve ser sustentado
pelo braço robótico durante o desempenho de suas funções.
43
2.5.1 INTRODUÇÃO
11
Os conceitos de sistemas de referência apresentados nos itens que seguem até o Capítulo 3 são
baseados majoritariamente em Rosário (2005), que, para o assunto discutido, difere de Craig (2006)
no modo como as matrizes de transformação são dispostas. Esta escolha se deu pelo fato de Rosário
(2005) abordar de maneira mais didática este tema. Tal informação é válida pois a partir do Capítulo 3
deste trabalho existe a predominância do uso de Craig (2006), que melhor aborda os temas ali tratados.
12
Este referencial na verdade trata-se de um sistema de coordenadas cartesianas ortonormal X, Y e Z.
Craig (2004) usa a expressão em inglês frames para se referir a sistemas de coordenadas cartesianas
ortonormais X, Y e Z, enquanto que Craig (2006) faz o uso do termo em espanhol trama. Ambas
palavras são utilizadas para o mesmo propósito: tanto frame quanto trama podem ser traduzidas para
o português como quadro, fazendo alusão à expressão quadro ou sistema de coordenadas. Para este
trabalho será usada a expressão frame.
45
O i 1 O i Ai,i 1 Li (2.1)
Onde:
N xo S xo Axo
Ai,i 1 N yo S yo Ayo (2.3)
N zo S zo Azo
que a equação 2.3 é a matriz de orientação associada. Esta matriz pode ser expressa
por meio de componentes angulares associadas às três direções de rotação
correspondentes aos eixos de referência, como roll, pitch e yaw (ϕ, θ, Ψ)
(ROSÁRIO, 2005).
Por fim, em um dispositivo robótico, seus diferentes graus de liberdade podem
ser associados aos diversos sistemas de coordenadas que irão, por sua vez,
descrever cada grau de liberdade. Tal relação pode ser expressa de forma matemática
a partir de uma matriz que faz a relação entre o sistema de coordenadas da base do
robô com o sistema de coordenadas do último elemento deste, chamada de matriz de
transformação de coordenadas homogêneas do robô (ROSÁRIO, 2005).
Onde:
θ θ1 ,θ 2 ,θ 3 ,...,θ n = vetor das posições angulares das juntas;
Tn A0 ,1 A0 , 2 ... An 1,n
(2.5)
T n ns a p
Onde:
p [px ,p y ,pz ] = vetor posição;
n [nx ,n y ,nz ] t , s [s x ,s y ,s z ] t e a [ax ,a y ,az ] t = vetores ortonormais
Rosário (2005) afirma que, embora esta definição de modelo geométrico seja
única, a forma de se obter a matriz de passagem homogênea da máquina robótica
está associada ao sistema de referência empregado. Existem várias formas de se
48
obter tais matrizes e cada uma destas gera expressões diferentes, diferindo quanto
ao número de operações aritméticas necessárias ao cálculo numérico, todavia
equivalentes quantitativamente. Rosário (2005) afirma que existem duas maneiras
para obter a matriz de passagem homogênea do robô: por meio da sistemática de
Denavit-Hartenberg e dos vetores locais.
Comprimento do elo a ;
Deslocamento da junta d .
O modelo cinemático de um sistema articulado no espaço tridimensional pode
ser representado pela evolução no tempo das coordenadas das juntas deste sistema
(ROSÁRIO, 2005).
De acordo com Magril (2010, p. 28), “a notação de Denavit-Hartenberg é uma
ferramenta utilizada para sistematizar a descrição cinemática de sistemas mecânicos
articulados com n graus de liberdade”. Rosário (2005) deixa claro que, através deste
método, são obtidas apenas as coordenadas do elemento terminal do dispositivo
articulado. Desta forma, os parâmetros de D-H poderão ser utilizados em programas
computacionais de geração de trajetórias e de identificação de erros, por exemplo,
neste caso requer apenas as coordenadas do elemento terminal do robô.
49
Na figura 2.25 podemos visualizar dois links conectados por uma junta com
duas superfícies que deslizam uma sobre a outra e permanecem em contato, sendo
que o eixo de uma junta estabelece a conexão entre dois links adjacentes.
Seguindo este método13, aos eixos de juntas devemos conectar duas normais,
uma para cada link. A posição relativa dos dois links conectados, link i-1 e link i é
definida por di , que é a distância medida ao longo do eixo da junta entre suas normais.
O ângulo da junta θi entre as normais é medido em um plano normal ao eixo θi da
junta. Assim, di e θi podem ser chamados de distância e ângulo entre links adjacentes,
respectivamente. São eles que definem a posição relativa de links vizinhos
(ROSÁRIO, 2005).
Um link qualquer (link i, por exemplo) poderá estar conectado a, no máximo,
dois outros links adjacentes (link i-1 e link i+1). Assim, dois eixos de junta são
estabelecidos em ambos terminais de conexão. Do ponto de vista cinemático, os links
13
Muitas convenções relacionadas levam o nome Denavit-Hartenberg, mas diferem em alguns detalhes
de autor para autor. Aqui, Rosário (2005) utiliza um sistema coordenado com Zi-1 associado ao eixo de
rotação θi. No Capítulo 3, já com base em Craig (2006), será possível identificar uma pequena
diferenciação na atribuição dos sistemas coordenados, porém em nada afetará a devida compreensão
principal desta sistemática.
50
são os elementos que mantêm uma configuração fixa entre suas juntas, podendo esta
configuração ser caracterizadas por dois parâmetros: a i e αi (ROSÁRIO, 2005).
O parâmetro ai é a menor distância medida ao longo da normal comum entre
os eixos de junta (no caso da figura 2.25, trata-se da distância entre os eixos Zi-1 e Z i
para a junta i e junta i+1, respectivamente). Desta maneira, a i e αi, podem ser
chamados, respectivamente, comprimento e ângulo de torção do link i. Eles
determinam a estrutura do link i (ROSÁRIO, 2005).
Portanto, os quatro parâmetros ai , αi , di e θi são associados a cada um dos n
links do manipulador. O estabelecimento de uma convenção de sinais para cada um
destes parâmetro fornece condição suficiente para determinar a configuração
cinemática de cada link do manipulador (MAGRIL, 2010). É importante mencionar que
estes quatro parâmetros aparecem em pares:
(ai , αi) determinam a estrutura do link e os parâmetros da junta;
(di , θi) determinam a posição relativa de links vizinhos.
Quando o acionador ativa a junta i, o link i deve mover-se com relação a seu
elo anterior, isto é, ao link i-1. Assim, o i-ésimo sistema de coordenadas é solidário ao
link i, se movimentando junto com o mesmo, e o n-ésimo sistema de coordenadas se
movimentará com o elemento terminal (link n). As coordenadas da base são definidas
como o sistema de coordenadas 0 (X0, Y0, Z0), nomeado também de sistema de
referência inercial14. Os sistemas de coordenadas são determinados e estabelecidos
respeitando três regras:
O eixo Zi-1 é colocado ao longo do eixo de movimento da junta i;
O eixo Xi é normal ao eixo Zi-1 e apontando para fora dele;
O eixo Yi completa o sistema utilizando a regra da mão direita.
Esse grupo de regra nos permite ver que, em primeiro lugar, como a escolha
de coordenadas é livre, elas podem ser alocadas em qualquer lugar da base de
suporte do braço articulado, ao passo que a posição do eixo Z 0 deve ser a do eixo de
movimento da primeira junta. Em segundo lugar, o último sistema de coordenadas (n-
ésimo) pode ser colocado em qualquer parte do componente final do robô, à medida
que o eixo Xi é normal ao eixo Zi-1 (ROSÁRIO, 2005).
Conforme enunciado no item 2.6.2, a representação de D-H de um elo rígido
depende de quatro parâmetros a ele associados, os quais descrevem totalmente o
comportamento cinemático de uma junta que pode ser tanto de revolução quanto
prismática (ROSÁRIO, 2005). Da figura 2.25 podemos enunciar o seguinte:
θi é o ângulo de junta obtido entre os eixos X i-1 e Xi no eixo Zi-1 (pelo uso da
regra da mão direita);
di é a distância entre a origem do (i-1)-ésimo sistema de coordenada até a
interseção do eixo Zi-1 com o eixo Xi por toda a extensão do eixo Z i-1;
ai é a distância (off-set) entre a interseção do eixo Zi-1 com o eixo Xi até a origem
do i-ésimo sistema de referência tomado ao longo do eixo X i, isto é, a menor
distância entre os eixos Zi-1 e Zi;
αi é o ângulo (off-set) entre os eixos Zi-1 e Zi tomado ao longo do eixo Xi pelo
uso da regra da mão direita.
Para uma junta rotativa, di, ai e αi são os parâmetros de junta, cujos valores
variam pela rotação do link i em relação ao link i-1.
14
Conforme utilizado por Rosário (2005). Entretanto é valido mencionar que alguns autores utilizam
tanto a letra “O” quanto o número “0” (zero) para definir o sistema de coordenadas de referência.
52
De acordo com Rosário (2005) e com base na figura 2.25, suponhamos que
exista um ponto P qualquer ao longo do eixo Z i-1 (para melhor entendimento,
convencionaremos que este ponto esteja na interseção do vetor a i com o eixo Zi-1) e
que a este ponto P esteja rigidamente vinculado um sistema de coordenadas X, Y e
Z. Ainda com base na figura 2.25, suponhamos também que exista um ponto P’
localizado exatamente na interseção do eixo Z i com o eixo Xi e que este ponto P’
também possua um sistema de coordenadas X’, Y’ e Z’ não necessariamente paralelo
ao sistema X, Y e Z do ponto P.
Necessitamos, portanto, gerar uma matriz que relacione ambos sistemas de
coordenadas: a esta matriz (ou conjunto de matrizes) denominaremos matriz de
i 1
transformação homogênea iA (ROSÁRIO, 2005).
Com os sistemas de coordenadas de D-H já estabelecidos, a matriz de
transformação homogênea pode facilmente ser desenvolvida relacionando o i-ésimo
ao (i-1)-ésimo sistema de coordenadas. Desejamos, portanto, representar um ponto
Pi qualquer com base (i-1)-ésimo sistema de coordenadas. Para isto faz-se necessário
aplicarmos transformações matriciais de rotação e translação (ROSÁRIO, 2005).
A matriz de transformação homogênea aqui proposta deverá ser capaz de
efetuar os seguintes passos:
Rotacionar em θ graus o eixo Zi-1 para alinhar o eixo X i-1 com o eixo Xi (o eixo
Xi-1 é paralelo ao eixo X i e aponta para a mesma direção);
Realizar uma translação (ou simplesmente transladar) de uma distância d i ao
longo do eixo Zi-1 de modo a fazer com que os eixos Xi-1 e Xi coincidam;
Transladar ao longo do eixo X i uma distância de ai, de modo a coincidir as duas
origens (ou seja, trazer o eixo Xi-1 já rotacionado de θ graus e transladado de
di);
Por fim, produzir rotação no eixo Xi de um ângulo αi graus.
Cada uma dessas quatro operações pode ser expressa por uma matriz
homogênea de rotação ou translação, e o produto dessas quatro matrizes de
transformações elementares origina uma matriz de transformação homogênea
i 1
composta i A, conhecida como matriz de transformação de D-H para sistemas de
coordenadas adjacentes i e i-1 (ROSÁRIO, 2005).
53
cosθ senθ 0 0 1 0 0 0 1 0 0 0 1 0 0 a
senθ
cosθ 0 0 0 1 0 0 0 cosα senα 0 0 1 0 0
i 1
i A (2.7)
0 0 1 0 0 0 1 d 0 senα cos α 0 0 0 1 0
0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1
cosθ senθ 0 a
cosα senθ d senα
i 1 1
iA
senα senθ
cosα cosθ senα
senα cosθ cosα
d cosα
(2.9)
0 0 0 1
Inicialização e iteração:
D2
Para cada i, i = 1, . . ., n-1, efetuar passos D3 até D6.
Encontrar di:
di é a distância da origem do (i-1)-ésimo sistema de coordenadas até a interseção
D9
do eixo Zi-1 e o eixo Xi ao longo do eixo Zi-1. Ela é a variável de junta se a junta i é
prismática.
Encontrar ai:
D10 ai é a distância da interseção do eixo Zi-1 e o eixo Xi para a
origem do i-ésimo sistema de coordenadas ao longo do eixo Xi.
Encontrar θi:
D11 θi é o ângulo de rotação entre os eixos Xi-1 e Xi sobre o eixo Zi-1. Esta é a variável
de junta se a junta é rotativa.
Encontrar αi:
D12
αi é o ângulo de rotação entre os eixos Zi-1 e Zi no eixo Xi.
0
Esta transformação nT será uma função de todas as n variáveis de
articulação. Se, por exemplo, os sensores de posição da articulação do robô forem
confrontados, pode-se calcular a posição e orientação cartesiana do último segmento
mediante a equação 3.1 (CRAIG, 2006).
15
O livro em inglês Introduction to Robotics: Mechanics and Control, 3ª ed. [CRAIG. John J., editora
Pearson Prentice Hall, 2004] utiliza a expressão em inglês frames para se referir a sistemas de
coordenadas cartesianas que são alocadas no intuito de descrever a posição e orientação de um corpo
no espaço. Por sua vez, o livro em espanhol Robótica, 3ª ed. [CRAIG, John J., editora Pearson Prentice
Hall, 2006] utiliza a expressão tramas no lugar de frames.
57
Uma análise da figura 3.1 semelhante àquela realizada no item 2.6.3 será aqui
também realizada.
A figura 3.1 mostra a mesma sistemática de articulações da figura 2.25,
entretanto aqui com os frames {P}, {Q} e {R} definidos. Observe que só se mostram
os eixos X e Z de cada frame para que o desenho se torne mais claro:
O frame {R} difere do frame {i−1} somente por uma rotação de αi−1;
O frame {Q} difere de {R} por uma translação a i−1;
58
i 1
P i R1T QRT QPT PiT iP (3.2)
Ou
i 1
P i 1i T iP (3.3)
Onde
i 1 i 1 R Q P
iT R T QT PT iT (3.4)
i 1
T R X (α i 1 ) D X (a i 1 ) R Z (θ i ) D Z (d i )
i (3.5)
i 1
T ParafusoX (a i 1 ,α i 1 ) ParafusoZ (d i ,θ i )
i
(3.6)
Onde a notação ParafusoQ r,φ representa a combinação de uma translação por uma
distância r sobre um eixo Q e uma rotação por um ângulo ϕ sobre este mesmo eixo.
Uma abordagem semelhante à utilizada na equação 2.7 deve ser utilizada
para se proceder à multiplicação dos termos de rotação e translação apresentados na
equação 3.5 e na equação 3.6.
Desta forma, realizando a multiplicação da equação 3.5 obtemos a forma geral
i 1
de iT :
cosθ i senθ i 0 a i 1
senθ cosα cosθ i cosα i 1 senα i 1 senα i 1 d i
i 1
T i i 1 (3.7)
i
senθ i senα i 1 cosθ i senα i 1 cosα i 1 cosα i 1 d i
0 0 0 1
59
Figura 3.4 – Representação dos eixos de revolução e extração dos frames de coordenadas
(dimensões em milímetros)
61
Figura 3.5 – Detalhe dos eixos coordenados e alocação dos frames (dimensões em
milímetros)
1 0 0 0
0 1 0 0
4
T (3.12)
5
0 0 1 106 , 2
0 0 0 1
Agora, de posse das cinco matrizes que relacionam seus frames à frames
imediatamente anteriores a eles, é possível formar a matriz de transformação que
relaciona o último sistema de coordenadas ao sistema de referência, isto é, a
0
transformada 5T .
r11=c 4 (c 1 c 2 c 3 c 1 s 2 s 3 ) s 1 s 4
r21=c 1 s 4+c 4(c 2 c 3 s 1 s 1 s 2 s 3 )
r31= c 4 (c 2 s 3+c 3 s 2 )
r12= c 4 s 1 s 4 (c 1 c 2 c 3 c 1 s 2 s 3 )
r22=c 1 c 4 s 4 (c 2 c 3 s 1 s 1 s 2 s 3 )
r32=s 4 (c 2 s 3 + c 3 s 2 )
r13=c 1 c 2 s 3 c 1 c 3 s 2
r23=c 2 s 1 s 3 c 3 s 1 s 2 (3.14)
r33=c 2 c 3 s 2 s 3
(X, Y e Z) e a orientação (matriz 3x3 r11 até r33) do frame {5}, que se encontra fixo na
base da garra, com relação ao frame de referência {0}, alocado na base fixa do braço.
Estas são as equações básicas para toda a análise cinemática deste braço
robótico, sendo os valores acima medidos em milímetros (mm).
Assim, com a inserção dos valores dos ângulos θ1, θ2, θ3 e θ4 na equação 3.14
é possível calcular a posição e orientação do frame 5 (X5, Y5, Z5) em relação ao frame
0 (X0, Y0, Z0), que é o sistema de coordenadas fixo à base do braço robótico.
16
Disponível em: <http://www.petercorke.com/Robotics_Toolbox.html>. Acesso em: 20 ago. 2015.
66
Figura 3.6 – Comandos para a elaboração em ambiente Matlab® do braço robótico com
auxílio da ferramenta Robotics Toolbox
17
Placas de ensaio ou matriz de contato: são placas dotadas de orifícios de conexões condutoras para
montagem de circuitos elétricos experimentais.
18
Disponível em: <https://www.arduino.cc>. Acesso em: 12 out. 2015.
70
Figura 4.1 – Imagem ilustrando alguns produtos Arduino™: (a) Arduino™ Uno; (b) Arduino™
Mega; (c) Arduino™ Micro; (d) Arduino™ Nano; (e) Arduino™ Lilypad
O Arduino™ Uno (figura 4.2) é um dos mais utilizados, uma vez que possibilita
uma gama variada de possibilidades para a realização de projetos aliada ao seu baixo
custo. Os componentes de hardware deste produto podem ser descritos de acordo
com a numeração que aparece na figura 4.2.
19
Disponível em: <https://www.arduino.cc/en/Main/>. Acesso em: 10 set. 2015.
20
Disponível em: <https://www.arduino.cc/en/Main/ArduinoBoardUno>. Acesso em: 11 set. 2015.
71
21
Input/Output: Entrada/Saída.
72
Fonte: Dados coletados pelo Autor com base no site oficial Arduino™22.
22
Disponível em: <https://www.arduino.cc/en/Main/ArduinoBoardUno>. Acesso em: 12 set. 2015.
23
Integrated Development Environment, que em português significa Ambiente de Desenvolvimento
Integrado.
73
4.3.2 SERVOMOTORES
motor ali permanece e o motor não irá girar. Se o circuito verifica que o ângulo não é
o correto, então o motor irá girar no sentido adequado até alcançar o ângulo correto.
A comparação entre o valor do potenciômetro e a largura dos impulsos e as
eventuais correções são partes de um processo de controle conhecido por controle
em malha fechada. Os condutores externos de ligação consistem em dois condutores
para a alimentação em CC e outro para transmissão do sinal de comando. A tensão
de alimentação dos servomotores está normalmente compreendida entre 4.8 V e
7.2 V, sendo recomendável para a maioria dos modelos uma tensão de alimentação
de 5 V. Assim, quanto menor a tensão, mais lenta será a resposta e menor será o seu
torque (BAJERSKI; ABELLA, 2010).
que o servomotor rode para posições intermédias entre 90º e 180º, conforme figura 4.5
(BAJERSKI; ABELLA, 2010).
Especificações Modelo
SG5010 SG90
Dimensões 40,2 x 20,2 x 43,2 mm 23 x 12,2 x 29 mm
Peso 38 g 9g
5,5 kg.cm (4,8 V)
Torque de bloqueio 1,8 kg.cm (4,8 V)
6,5 kg.cm (6 V)
0,2 s/60 graus (4,8 V)
Velocidade de operação 0,1 s/60 graus (4,8 V)
0,16 s/60 graus (6 V)
Voltagem de operação 4,8 V – 6 V 4,8 V
Temperatura de operação 0 ºC – 55 ºC 0 ºC – 55 ºC
Tipo de engrenagem Nylon Nylon
Fonte: Dados coletados pelo Autor com base na página na internet da Datasheet4U26.
24
Disponível em: <http://devpix.net/blog/?p=236>. Acesso em: 12 set. 2015
25
Disponível em: <http://letsmakerobots.com/files/Servo_5010_4dd8c8306b263.jpg>. Acesso em: 13
set. 2015
26
Disponível em: <http://www.datasheet4u.com >. Acesso em: 13 set. 2015.
78
27
Em computação e eletrônica, trata-se do conjunto de instruções operacionais programadas
diretamente no hardware do equipamento eletrônico. É armazenado permanentemente num circuito
integrado de memória como uma ROM, PROM, EPROM, EEPROM ou memória flash no momento da
fabricação do componente.
79
sobre o microcontrolador (do Arduino™, por exemplo). A figura 4.9 mostra o diagrama
de blocos da família de dispositivos MPU-6000™.
28
Disponível em: <http://playground.arduino.cc/Main/MPU-6050>. Acesso em: 14 set. 2015.
29
Disponível em: <http://www.invensense.com/products/motion-tracking/6-axis/mpu-6050/>. Acesso
em: 14 set. 2015.
80
dedos de movimento paralelo conforme demonstrado na figura 3.2, sendo que tais
juntas de serão acionadas por meio de servomotores: este será chamado de braço
robótico atuador. Em seguida é tratada a descrição dos procedimentos da
elaboração de um segundo braço articulado, chamado de controlador.
Os elos estruturais do atuador foram primeiramente projetados com o auxílio
do software AutoCAD® 2013, para, posteriormente, serem efetivamente produzidos
em acrílico através de cortes à laser em impressora especial. A escolha desta
metodologia se deu pela ampla gama de possibilidades de criação e tratamento de
formas geométricas com precisão e exatidão que o AutoCAD® 2013 é capaz de
proporcionar.
O projeto base contendo todas as cotas em milímetros das estruturas do braço
atuador produzido no AutoCAD® 2013 pode ser encontrado no Apêndice A.
As juntas de revolução do mecanismo são compostas por servomotores que
se encarregam de propiciar a movimentação de todo o braço robótico.
O comando para o acionamento de três juntas do braço atuador é realizado
por meio da placa de circuito integrado MPU-6050™. Desta maneira, os servomotores
fazem a leitura dos dados enviados pelo sensor e convertem esses dados em
movimentos. A junta restante do braço robótico é controlada por um potenciômetro
linear rotativo de 10 KΩ, uma vez que o sensor MPU-6050™ fica encarregado de
movimentar as três outras juntas.
No intuito de se produzir movimentos precisos e específicos para a aplicação
requerida, foi construído o braço articulado controlador em material MDF ao qual
acoplam-se o MPU-6050™ e o potenciômetro. Este mecanismo foi elaborado com a
mesma metodologia do braço robótico em acrílico: projetado previamente com auxílio
do software AutoCAD® 2013 e em seguida recortado em impressora especial. Desta
forma, a segunda estrutura também possui quatro graus de liberdade, juntas de
revolução, dispostos de maneira semelhante ao braço anterior. Este servirá de
dispositivo base para a movimentação e controle do braço robótico.
Detalhes do projeto base das estruturas do braço controlador produzido no
AutoCAD® 2013 são mostrados no Apêndice B.
Vale frisar que este controlador articulado será operado manualmente
(operado pelo homem) a fim de o braço robótico atuador reproduzir movimentos
precisos e semelhantes a alguns dos principais movimentos de um braço humano.
81
Figura 4.10 – (a) Braço robótico atuador; (b) Braço articulado controlador
5.2.1 SITUAÇÃO 1
X 133 ,406 mm
Y 21,39 mm
Z 122 ,99 mm
Figura 5.1 – Comandos para a elaboração da cinemática direta no Matlab®: valores dos
ângulos de juntas θ1 = θ2 = θ3 = θ4 = 0 (destaque)
86
5.2.2 SITUAÇÃO 2
X 21,39 mm
Y 12 ,406 mm
Z 243 ,99 mm
88
Figura 5.4 – Comandos para a elaboração da cinemática direta no Matlab®: valores dos
ângulos de juntas θ1 = θ3 = 90º e θ2 = θ4 = -90 (destaque)
Figura 5.6 – Simulação gráfica do braço robótico para valores de θ 1 = θ3 = 90º e θ2 = θ4 = -90
(valores em milímetros)
90
5.2.3 SITUAÇÃO 3
X 35.97697 mm
2 2
Y 21,39 ( 1) 7 , 4 ( 0 ) 121 ( 0 ,5 ) ( 0 ) 5 ,006 ( 0 ,5 ) ( ) ( 0 ) 106 , 2 ( 0 ,5 ) ( 0 ) ( )
2 2
2 3 3 2
106 , 2 ( ) ( 0 ) ( ) 5 ,006 ( 0 ) ( ) ( )
2 2 2 2 (5.3)
Y 21,39mm
1 2 3 1 2 2 3
Z 106 , 2 ( ) ( ) 121 ( ) 5 ,006 ( ) ( ) 5 , 006 ( ) ( )
2 2 2 2 2 2 2
3 2
106 , 2 ( ) ( ) 16 ,79
2 2
Z 98 ,92791mm
Figura 5.7 – Comandos para a elaboração da cinemática direta no Matlab®: valores dos
ângulos de juntas θ1 = 180º, θ2 = -60º, θ3 = -45 e θ4 = 30º (destaque)
Figura 5.8 – Resultados da cinemática direta no Matlab® para ângulos θ1 = 180º, θ2 = -60º,
θ3 = -45 e θ4 = 30º
92
Figura 5.9 – Simulação gráfica do braço robótico para valores de θ 1 = 180º, θ2 = -60º, θ3 = -
45 e θ4 = 30º (valores em milímetros)
30
Exemplo de importação e simulação de movimentos em ambiente Matlab® Simulink® de um braço
robótico elaborado por software do tipo CAD. Disponível em:
93
conforme seus eixos de rotação e seus pontos de encaixe com seus elos adjacentes,
onde cada elo rígido, sistema de referência e junta de revolução é tratado como sendo
um bloco no Simulink®.
Vale frisar que o braço robótico (exemplo base) citado no endereço eletrônico
acima trata-se de um mecanismo que, quando executado passa a realizar movimentos
aleatórios que consideram apenas os tipos de juntas ali presentes, porém sem
controle de posição e sem levar em conta restrições físicas e angulares inerentes a
qualquer mecanismo do tipo. O mesmo ocorre na simulação do protótipo em estudo,
o braço robótico simulado em ambiente Simulink® realiza movimentos aleatórios que
consideram apenas as características de movimento e juntas do mecanismo. Na
figura 5.10 se apresentam os blocos do modelo criados para simular este protótipo.
Da figura 5.11 a 5.15 são mostrados detalhes contidos no interior dos blocos
Base Rígida, Base Giratória, Braço, Antebraço e Garra1, respectivamente.
Figura 5.20 – Correlação entre braço robótico atuador e braço controlador (1)
31
Delay trata-se de uma palavra em inglês que significa atraso ou demora, sendo também utilizada
como termo técnico para designar o retardo entre sinais transmitidos e recebidos em circuitos
eletrônicos, atrasos em transmissões via satélite e na propagação de ondas sonoras.
99
Figura 5.21 – Correlação entre braço robótico atuador e braço controlador (2)
Figura 5.22 – Correlação entre braço robótico atuador e braço controlador (3)
100
Figura 5.23 – Correlação entre braço robótico atuador e braço controlador (4).
101
Por fim, sugere-se que o braço robótico desenvolvido e descrito neste trabalho
acadêmico pode vir a ser acoplado a veículos de pequeno porte remotamente
controlados e destinados à inspeção, manuseio e desativação de materiais de
suspeitos, nocivos ou explosivos.
104
REFERÊNCIAS BIBLIOGRÁFICAS
BAJERSKI, Igor; ABELLA, Vinicius Dal Bó. Braço robótico com controle remoto
bluetooth. 63 p. Trabalho de Conclusão de Curso (Engenharia de Computação) –
Pontifícia Universidade Católica do Rio Grande do Sul, 2010.
MORAES, Airton Almeida de. Robótica. Curso Técnico em Mecatrônica. São Paulo:
SENAI-SP, 2003.
MOURA, José Luiz de. Robôs cartesianos. Revista Mecatrônica Atual, nº 15, abr.
2004.
WANG, Yongbo. Error modeling and accuracy analysis of a novel mobile hybrid
parallel robot. 68 p. Tese (Mestrado em Engenharia Mecânica) –
Lappeenranta/Finlândia: Universidade de Tecnologia Lappeenranta, 2009.
YUSOFF, Mohd Ashiq Kamari; SAMIN, Reza Ezuan; IBRAHIM, Babul Salam Kader.
Wireless mobile robotic arm. Engineering Procedia, v. 41, p. 1072–1078, 2012.
107
#include "Wire.h"
#include "MPU6050.h"
#include <Servo.h>
#include <I2Cdev.h>
Servo servo1;
Servo servo2;
Servo servo3;
Servo myservo_A; // Cria objeto servo 1 para controlar um servo
Servo myservo_B; // Cria objeto servo 2 para controlar um servo
Servo servo_garra;
MPU6050 accelgyro;
uint32_t timer;
void setup() {
Wire.begin();
// Iniciando dispositivos
Serial.println("Inicializando cominicação I2C...");
accelgyro.initialize();
servo1.attach(11);
servo2.attach(10);
servo3.attach(9);
myservo_A.attach(5); // atribui o servo de pino 9 para o objeto servo
myservo_B.attach(6); // atribui o servo de pino 10 para o objeto servo
servo_garra.attach(3);
timer = micros();
}
113
void loop() {
// Fazendo a leitura de conexão com a MPU6050
accelgyro.getMotion6(&ax, &ay, &az, &gx, &gy, &gz);
servo1.write(gyroYangle-72); // pwm 11
servo2.write(gyroXangle-150); // pwm 10
servo3.write(gyroZangle-70); // pwm 9
val_2 = analogRead(potenciometro_2);
val_2 = map(val_2, 0, 1023, 0, 180);
servo_garra.write(val_2);
delay(15);
timer = micros();
// A taxa de amostras máxima do acelerometro é de 1KHz
delay(1);
Serial.print("\n");
}
114
Potenciômetro linear
rotativo de 10k Ω –
--- R$ 10,55 R$ 10,55
Embalagem com 12
Compra 02 unid.
(Via nternet) Cabo de alimentação
bateria 9 volts p/ R$ 10,55 R$ 10,55
Arduino™ Kit 6 unid.
Frete R$ 12,00
Total compra 02 R$ 33,10