Buscar

TCC2 Braço Robótico 03 07 18

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 114 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 114 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 114 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

FACULDADE ESTÁCIO DE CURITIBA
TRABALHO DE CONCLUSÃO DE CURSO
CURSO DE ENGENHARIA ELÉTRICA
CHRISTOFER DOS REIS KLEM
WESLEY CESAR PORTUGAL DE MATOS
BRAÇO ROBÓTICO COM VISÃO COMPUTACIONAL
CURITIBA
2018
CHRISTOFER DOS REIS KLEM
WESLEY CESAR PORTUGAL DE MATOS
	
BRAÇO ROBÓTICO COM VISÃO COMPUTACIONAL
Trabalho de Conclusão de Curso apresentado como requisito parcial para obtenção do grau de Bacharel no curso de Engenharia Elétrica da Faculdade Estácio de Curitiba.
Orientador: Professor Me Carlos André Barbosa de Almeida 
CURITIBA
2018
DEDICATÓRIA
Dedico a minha família pelo apoio, minha futura noiva que está desde o início me incentivando para nunca desistir, pois o sacrifício de noites sem dormir, enfrentar o isolamento social para se dedicar somente os estudos e ao trabalho, e também sempre ter uma companheira que possa nos incentivar, apoiar e jamais desistir.
Christofer dos Reis Klem
Dedico esse trabalho e todo os meus esforços ao meu filho Thiago Laine de Matos, que é a maior motivação para meu retorno aos estudos, para que eu possa dar a ele uma condição melhor de estudos.
Wesley Cesar Portugal de Matos
AGRADECIMENTO
Agradeço a Deus pelo apoio que vem me concedendo para concluir minha graduação de engenharia elétrica, na qual iniciei em 2014. No início, a caminhada é animada, divertida e tudo vai ocorrendo conforme planejado na metade dos 5 anos de faculdade, começam as dificuldades, alguns ficam pelo caminho, é nessa hora que o desespero começa a aparecer, e graça a professores competentes que nos dão uma injeção de ânimo, colegas que são nossos psicólogos que nos motivam e ajudam para assim juntos chegar ao sucesso.
 Christofer Dos Reis Klem
Agradeço primeiramente a Deus, pela saúde que tem me dado, pelos meus familiares que sempre tem palavras de incentivo, pelos professores que tem motivado a continuar sempre em frente, pelos colegas de turma que juntos estudando para passar cada etapa em adquirir novos conhecimentos, pela orientadora do curso e pelos funcionários da instituição.
Wesley Cesar Portugal de Matos
EPÍGRAFE
“ A mente que se abre a uma nova ideia jamais voltará ao seu tamanho original. A imaginação é mais importante que o conhecimento. Procure ser uma pessoa de valor, em vez de procurar ser uma pessoa de sucesso. O sucesso é consequência. ” [Albert Einstein]
“ Não seja sábio aos seus próprios olhos; tema o Senhor e evite o mal. ”
[Bíblia Sagrada: Provérbios 3.7]
RESUMO
A utilização da robótica aplicada, nas mais diversas áreas de aplicação requer o desenvolvimento de recursos que permitam automatizar o processo de localização de objetos dentro da área de trabalho ou célula do robô. Neste trabalho desenvolveu-se um braço robótico com 5 graus de liberdade, dotado de recursos de visão computacional através de uma câmera de rede IP, que analisa a imagem da área de trabalho e classifica os objetos previamente cadastrados pelo seu formato, localizando seu posicionamento e assim reposicionando-o conforme programa pré-estabelecido. A aplicação desenvolvida emprega OpenCV como plataforma e rotinas em Python sobre Linux, rodando em uma placa de desenvolvimento Raspberry Pi B3, que controla o hardware do braço robótico empregando a matemática envolvida na cinemática inversa para calcular os ângulos entre os links e posicionar o manipulador desenvolvendo uma trajetória elíptica sem alcançar os limites de singularidade do braço.
Palavras-chave: Robótica. Raspberry. OpenCV. Python.
ABSTRACT
The use of applied robotics in the most diverse areas of application requires the development of resources that allow to automate the process of finding objects within the work area or cell of the robot. In this work a robotic arm with 5 degrees of freedom was developed, equipped with computer vision resources through an IP network camera, which analyzes the image of the work area and classifies the objects previously registered by its format, locating its positioning and thus repositioning it according to the pre-established program. The developed application employs OpenCV as a platform and routines in Python on Linux, running on a Raspberry Pi B3 development board, which controls the hardware of the robotic arm employing the mathematics involved in inverse kinematics to calculate the angles between the links and position the manipulator developing an elliptical trajectory without reaching the limits of the singularity of the arm.
Keywords: Robotics. Raspberry. OpenCV. Python.
LISTA DE FIGURAS
Figura 1 – Figura Adaptada. Fragmentação de fornecedores na indústria de robótica industrial	17
Figura 2 - Algumas Aplicações Industriais Antropomórficas	20
Figura 3 - Classificação de Máquinas	21
Figura 4 - Juntas e Elos (Joints and Links)	23
Figura 5 - Exemplo de Junta Deslizante, Junta Rotacional e Junta Esférica.	24
Figura 6 - O Robô Puma 560	24
Figura 7 - Braço de Stanford	25
Figura 8 - Diferentes Garras	26
Figura 9 - Parâmetros de Ligação de DH	30
Figura 10 - Mecanismo de Ângulos	31
Figura 11 - Relação entre as Cinemáticas	31
Figura 12 - Triângulo Retângulo	32
Figura 13 - Lei dos Senos	33
Figura 14 - Lei dos Cossenos	33
Figura 15 - FIGURA ADPATADA Manipulador 3 Eixos	37
Figura 16 - Regra da Mão Direita	39
Figura 17 - Projeção de uma Imagem	41
Figura 18 - Imagens Digitais	42
Figura 19 – Pixel	42
Figura 20 - Resoluções de Vídeos	43
Figura 21 - O Sistema Mecatrônico	44
Figura 22 - Raspberry Pi 3 Modelo B	48
Figura 23 - Arduino Mega 2560	49
Figura 24 - Protocolo de Comunicação I2C	50
Figura 25 - Comunicação Com Outros Dispositivos I2C	50
Figura 26 - Servomotor RDS3135MG alto torque	51
Figura 27 - Dimensões servo motor	51
Figura 28 - Fonte de Alimentação Chaveada - Output 7,5V	52
Figura 29 - Articulações Braço Robótico	53
Figura 30 - Garra Braço Robótico de Alumínio	54
Figura 31 - Camera IMS0 Series Sarix Mini Indoor Fixed Dome	54
Figura 32 – Midspan	55
Figura 33 - Exemplo de Linguagem Python	56
Figura 34 - Fluxo do Sistema	58
Figura 35 - Foto do Braço Robótico	59
Figura 36 - Perspectiva do Braço Robótico	59
Figura 37 - Vista Lateral Identificando as Juntas	60
Figura 38 - Elos do Braço Robótico	60
Figura 39 - Vista em Perspectiva do Elo 0 (zero)	61
Figura 40 - Planta do Elo 0 (zero)	61
Figura 41 - Vista lateral do Elo 0 (zero)	61
Figura 42 - Vista em perspectiva do Elo 1 (um)	62
Figura 43 - Planta do Elo 1 (um)	62
Figura 44 - Vista lateral do Elo 1 (Um)	62
Figura 45 - Vista em perspectiva do Elo 2 (Dois)	63
Figura 46 - Planta do Elo 2 (dois)	63
Figura 47 - Vista lateral do Elo 2 (dois)	63
Figura 48 - Vista em perspectiva do pulso	64
Figura 49 - Planta do Pulso	64
Figura 50 - Vista Lateral do Pulso	64
Figura 51 - Vista em perspectiva da garra	65
Figura 52 - Planta da garra	65
Figura 53 - Vista Lateral da garra	65
Figura 54 - Servos Ligados nos Elos	66
Figura 55 - Planta da Base	66
Figura 56 – Esquema de Ligações dos Hardwares	67
Figura 57 - Rasberry Pi 3 Model B+	67
Figura 58 - Arduino Mega 2560	68
Figura 59 - Ligação Raspberry com Arduino usando I2C	68
Figura 60 - Ligação I2C em placa impressa – Vista superior	69
Figura 61 - Ligação I2C em placa impressa - Vista inferior	69
Figura 62 – Matrizes de Controle no Arduino	72
Figura 63 - Esquema de Ligação para Alimentação dos Servos	73
Figura 64 - Foto da placa de alimentação dos servos – vista superior	73
Figura 65 - Foto da placa de alimentação dos servos - vista inferior	74
Figura 66 - Esquema de ligação da câmera no Raspberry	74
Figura 67 - Configuração da Câmera Pelco	75
Figura 68 - Imagem da Câmera	75
Figura 69 - Definição dos Planos para cada Junta	76
Figura 70 - Determinado Angulo da Junta 0 (zero)	80
Figura 71 - Fluxo do Software	86
Figura 72 – Singularidade Junta2 (dois)	87
Figura 73 – Singularidade Junta 3 (três)	87
Figura 74 – Tela do Raspberry Durante a Execução	88
Figura 75 - Braço Robótico manipulando um objeto	88
 
LISTA DE TABELAS
Tabela 1 - Parâmetros de DH	34
Tabela 2 - Estrutura PID	45
Tabela 3 – Dados Modelo de DH para Cinemática Direta	76
Tabela 4 – Matriz Modelo DH para cada Junta	76
Tabela 5 - Matriz Modelo DH para cada Junta Calculados	78
LISTA DE EQUAÇÕES
Equação 1 - Teorema Pitágoras	32
Equação 2 – Relação Lei dos senos	33
Equação 3 - Relação Lei dos Cossenos	34
Equação 4 - Forma Funcional Direta	34
Equação 5 - Associação de Articulações dos Membros	35
Equação 6 - Representação de DH	35
Equação 7 - Matriz de Representação de DH	35
Equação 8 – Forma Funcional Inversa	36
Equação 9 - Relação de Girard	37
Equação 10 – Fórmula de Bhaskara	38
Equação 11 - 2ª Lei de Newton	39
Equação 12 - Duty Cycle (Ciclo de Trabalho)	45
Equação 13 - Fórmula para q0 (zero)	79
 
LISTA DE GRÁFICOS
Gráfico 1 - Fabricantes de Robôs Industriais	14
Gráfico 2 – Robôs industrias: instalação anual global e crescimento anual do estoque global estimado -1993-2015	19
Gráfico 3 - Ação de Controle Proporcional	46
Gráfico 4 - Ação de Controle Integral	46
Gráfico 5 - Ação de Controle Derivativo	47
Gráfico 6 - Cinemática Direta - Plano da junta 0(zero) ZY	79
Gráfico 7 - Definição Angulo Inicial da Garra	81
Gráfico 8 - Determinado Coordenadas da Junta 3	83
Gráfico 9 - Determinado q1, q2 e q3	84
Gráfico 10 – Resultado dos ângulos do Braço Robótico	85
LISTA DE SIGLAS
ART		Artigo
GL Grau de Liberdade
U			Medida de Tensão
I			Medida de Corrente Elétrica
R			Medida de Resistência Elétrica
A			Ampère
Ω			Ohms
V			Volts
α			Alfa 
θ			Teta
β			Beta
ϕ			Fi
Ω			Ômega
π			Pi
γ			Gama
BR			Brasil
SP			São Paulo
CNC			Controle Numérico Computadorizado
MIG			Metal Inert Gás (Gás Inerte de Metal)
MAG			Metal Active Gás (Gás Ativo De Metal)
TIG			Tungsten Inert Gás (Gás Inerte de Tungstênio)
SMAW	Shielded Metal Arc Welding (Soldadura de Arco de Metal Blindado)
MMA			Manual Metal Arc (Arco de Metal Manual)
EUA			Estados Unidos da América
ISO	International Organization for Standardization (Organização Internacional para Padronização)
JIRA	japanese Industrial Robot Association (Associação Japonesa Robôs Industriais)
RIA 	Robotics Institute of America (Instituto de Robótica da América)
PID	Proporcional, Integral e Derivativo
CCD	Charge Coupled Device (Dispositivo acoplado de carga)
CMOS	Complementary Metal Oxide Semiconductor (Semicondutor complementar de óxido metálico)
HD			High Definition (Alta Definição)
PWM			Pulse Width Modulation (Modulação por Largura de Pulso)
GDL			Graus de Liberdades
DH			Denavit e Hartenberg
3D			Espaço de 3 Dimensões (x,y e z)
2D			Espaço de 2 Dimensões (x,y)
SD			Secure Digital (Digital Seguro)
USB			Universal Serial Bus (Barramento Serial Universal)
HDMI	High Definition Multimedia Interface (Interface Multimídia de Alta Resolução)
BSD	Berkeley Software Distribution (Distribuição de Software de Berkeley)
IP	Internet Protocol (Protocolo da Internet)
I2C	Integrated Circuit (Circuito Integrado)
GND	Ground (Terra)
Vcc	Voltage Current Continuo (Tensão Corrente Continua) 
RPI 	Raspberry Pi
SUMÁRIO
1	INTRODUÇÃO	12
1.1	RESUMO HISTÓRICO	12
1.2	CLASSIFICAÇÃO DE ROBÔS	13
1.3	OBJETIVOS	15
1.3.1	Objetivo Geral	15
1.3.2	Objetivos Específicos	15
1.4	JUSTIFICATIVA	15
2	FUNDAMENTAÇÃO TEÓRICA	17
2.1	FABRICAÇÃO DE UM ROBÔ	17
2.2	AUTOMAÇÃO E ROBÔS	19
2.2.1	Definição de Robôs	22
2.3	BRAÇO ROBÓTICO	23
2.3.1	Estrutura	23
2.3.2	End-effector (Finalizador ou Efetuadores)	25
2.3.3	Atuadores e Controladores	27
2.3.4	Sensores	28
2.3.5	Graus de Liberdade	29
2.4	CADEIAS CINEMÁTICAS	30
2.4.1	Trigonometria	32
2.4.2	Cinemática Direta	34
2.4.3	Cinemática Inversa	36
2.4.4	Trajetória	38
2.4.5	Singularidades	40
2.5	VISÃO COMPUTACIONAL	40
2.5.1	Imagens e Vídeos	41
2.6	TECNOLOGIAS	44
2.6.1	Mecatrônica	44
2.6.2	PWM - Pulse Width Modulation	45
2.6.3	Controle PID	45
3	MATERIAS E MÉTODOS	48
3.1	HARDWARE	48
3.1.1	Sistema Computacional	48
3.1.2	Servosmotores	50
3.1.3	Fontes de Alimentação	52
3.1.4	Articulações de Acrílico e Alumínio para o Braço Robótico	53
3.1.5	Câmera	54
3.2	SOFTWARE	55
3.2.1	Raspbian OS	55
3.2.2	Linguagem Python	56
3.2.3	Linguagem C++	56
3.2.4	OpenCV	57
4	DESENVOLVIMENTO	58
4.1	CONCEITOS	58
4.2	PARTES MECÂNICA	59
4.2.1	Braço Robótico	59
4.2.2	Juntas do Braço Robótico	60
4.2.3	Elos do Braço Robótico	60
4.2.4	Elo 0 (Zero)	61
4.2.5	Elo 1 (um)	62
4.2.6	Elo 2 (Dois)	63
4.2.7	Pulso	64
4.2.8	Garra	65
4.2.9	Servos	66
4.2.10	Base	66
4.3	HARDWARE E SOFTWARE	67
4.3.1	Ligações	67
4.3.2	Raspberry Pi 3 Model B+	67
4.3.3	Arduino Mega 2560	68
4.3.4	Ligação Raspberry com Arduino Mega 2560	68
4.3.5	Lógica no Arduino.	72
4.3.6	Ligação dos Servos com o Arduino e a fonte Alimentação.	73
4.3.7	Ligação Câmera de Vídeo	74
4.3.8	Definição das Funções e Cálculos	76
4.3.9	Códigos	86
4.3.10	Fluxo do Software	86
4.3.11	Singularidades	86
4.3.12	Resultados	88
5	CONCLUSÃO	89
6	REFERÊNCIAS	90
7	APÊNDICE 1	92
8	APÊNDICE 2	96
9	APÊNDICE 3	103
INTRODUÇÃO
	 
	O desenvolvimento da sociedade envolve a necessidade de atividades que sejam realizadas com perfeição em pouco tempo, mais sabemos que a pressa é inimiga da perfeição, mais não para robótica.
	A robótica é um ramo que procura desenvolver aparelhos e dispositivos eletrônicos, para agilizar e aperfeiçoar atividades que possam ser realizadas por humanos. 
	Denominados ao longo do tempo por “Robô” esses dispositivos podendo ser encontrados de várias formas e modelos, com articuladores ou sem, com programações definitivas ou pré-definidas, utilizando formas e aparência humana. (ANGELES, 2007)
	Os robôs foram criados no intuído de ajudar, mas aos poucos estão tomando conta do mercado industrial. Em geral, são máquinas ou dispositivos que podem ser controlados automaticamente através de inteligência artificial ou controle remoto e botões, assim aplicando o conhecimento de automação.
	Para se fabricar um robô é necessário domínio de algumas técnicas e ramos da ciência como matemática, física e economia. Além disso, áreas da engenharia estão presentes neste processo como a mecânica, eletrônica, automação, controle de sistemas, energia e outros, destinados principalmente ao desenvolvimento da robótica em geral.
	Os robôs estão se fazendo mais presentes no nosso dia a dia contribuindo principalmente com os avanços tecnológicos na área computacional e comunicações, podendo ser utilizados em situações de trabalhos que prejudicam o ser humano, sendo um exemplo situações que causam riscos à saúde. Com base nisso, também podemos citar a redução de custo, sendo a substituição de vários colaboradores por apenas um sistema robótico. (BRAZ, 2007)
RESUMO HISTÓRICO
	A palavra robô originou-se de Robótica Tcheca (Czech robota), que significa “servidão, trabalho forçado”. Considerado pela mídia, em 1923, como máquinas semelhantes aos humanos.
	Desde aproximadamente III a.C, existem máquinas que fazem atividades repetidas por um período longo de tempo. Na idade média, existem relatos de máquinas que realizam as mesmas atividades já mencionadas, mais próximo por volta do século XVIII bonecos controlados por cabos e outros meios mecânicos, eram utilizados em peças teatrais e musicais. Já no século XX, os robôs estão presentes na ficção, iniciando seus trabalhos industriais no ano de 1960, com as primeiras aplicações de George Devol, considerado por muitos como “Pai da Robótica”. (KURFESS, 2005)
	Além deste breve histórico, podemos citar cientista como Ctesibius (pai da pneumática), Al-Jazari, Leonardo Da Vinci, Pierre, Henri-Louise e Jacquet-Droz entre outros que deram início aos primeiros estudos relacionados ao robô, fora da ficção. Aproximadamente em 1960, Joseph Engelberger e Devol criam a primeira indústria na fabricação de robôs paracomercio, chamada Unimation. Tendo como seu primeiro cliente a empresa GM (General Motors), instalando seu primeiro robô em uma linha de produção.
	Após 1960, iniciou-se a automatização de sistemas industriais e começou a se reduzir as tarefas repetitivas feitas por operadores, reduzindo a crise de acidentes e afastamentos por lesões. Não somente na indústria, os sistemas robóticos começaram a ser usados na medicina, na exploração espacial chegando em lugares onde humanos já mais possa estar. (DUMBÁ, 2016) 
CLASSIFICAÇÃO DE ROBÔS
	
Na indústria, existem vários tipos de robôs para auxiliar no processo fabril tendo uma classificação a seguir:
Robôs executores – repetição de uma sequência de ações pré-gravadas.
Robôs controlados por sensores – são comandados de forma que haja uma resposta de sensores, um feedback.
Robôs controlados por visão – um sistema que haja um reconhecimento visual para seu funcionamento.
Robôs com controle adaptativo – seu funcionamento é baseado em seus próprios sensores.
Robôs com inteligência artificiais – usam técnicas de inteligência humana para resolver os problemas que são apresentados.
Um robô pôde-se considerar um como um sistema autônomo existente em um mundo físico, que através de sensores pode sentir e agir sobre o ambiente, interagindo de forma a mover-se e finalidade de objetivos destinados por humanos.
(MATARÍC, 2014)
Conforme a tecnologia se desenvolve, a um crescimento exponencial em relação a automatização de serviços, utilizando robôs ou sistemas controlados principalmente para tarefas que trazem grandes ricos, lugares inabitáveis, substituição de membros articulados do corpo humano.
Com a evolução da robótica nos últimos anos e com o crescimento de novas tecnologias e a necessidade de automatizar cada vez mais as atividades do homem tanto nas indústrias como no dia a dia, sendo real que a maioria das atividades serão exercidas por robôs grandes empresas tem investido grandes valores de conhecimentos e financeiros para acompanhar a evolução humana nessa área. (BOUCHARD, 2009)
 
Gráfico 1 - Fabricantes de Robôs Industriais
Fonte: (SERVNEWS ROBÓTICA E AUTOMAÇÃO, 2015)
OBJETIVOS
Objetivo Geral
	O projeto tem como objetivo construir um braço robótico que possa manipular objetos, com auxílio de um sistema computacional que processa imagens de vídeo e localiza o objeto no espaço através de coordenadas cartesianas.
Objetivos Específicos	
Construir um braço robótico com seis eixos de liberdade incluído a garra em uma extremidade.
Controlar o braço através de um computador Raspberry Pi com sistema operacional Linux
Identificar um objeto previamente cadastro no sistema computacional através de uma câmera.
Passar para um sistema computacional as coordenadas do objeto identificado.
Manipular um braço robótico para que o mesmo possa pegar um objeto em qualquer posição de seu alcance e transporte esse objeto para uma posição determinada pelo sistema.
JUSTIFICATIVA
Hoje, os seres humanos estão sendo trocados por máquinas? Podemos se dizer que sim, porem qualquer dispositivo robótico tem que obedecer às leis básicas em seu funcionamento, não podendo assim tomar decisões próprias, se não forem programadas por um operador humano, resumidamente sejam programados que em nenhuma hipótese ofereçam riscos a sociedade como possivelmente vemos no filme “Eu, Robô”, baseado do livro Isaac Asimov, apresentando uma história que enfatiza as três leis da robótica. Em todos os casos os profissionais destinados ao desenvolvimento de robôs, obedecem:
- A primeira lei diz que um robô não é autorizado ferir um ser humano, ou permitir que o ser humano possa se machucar.
- A segunda lei diz que um robô deve ser obediente às ordens dadas pelo homem, exceto se a ordem for destinada a considerar a primeira lei.
- A terceira lei diz que um robô deve proteger sua própria existência, desde que isso não entre conflito com a primeira ou segunda lei. (BRAZ, 2007)
 
FUNDAMENTAÇÃO TEÓRICA
FABRICAÇÃO DE UM ROBÔ
Para se construir um robô, primeiramente define quais atividades deseja que ele execute, depois define a mecânica dele para que possa executar as atividades com agilidade e precisão, também uma interface para comunicação e operação com usuários. 
Figura 1 – Figura Adaptada. Fragmentação de fornecedores na indústria de robótica industrial
Fonte: (ROBÔ INDUSTRIAL FANUC, 2016)
Ao se referir a integração de uma célula robótica, análise a produção básica de uma determinada fábrica, que possui uma entrada definida, a seguir a execução de um operador qualquer e saída do produto final. Já com um sistema robótico, podendo ser uma célula robótica simples ou um conjugado de robôs, podendo conter inúmeros trabalhando na fabricação de um carro substituindo três vezes mais operadores. Objetivo final de todo o trabalho de se montar um sistema de implantação da robótica é fazer com que robô facilite e agregue valor na fase de operação de sua indústria. Por isso é importante incluir e observar se realmente ele irá auxiliar no desenvolvimento da sua indústria.
	Para um projeto robótico o custo acaba sendo elevado, tendo em vista que o retorno previsto do investimento será a longo prazo, não justificando o custo de automatização de uma tarefa manual, se tornando inviável para empresa implantar sistema de células robóticas, por mais que facilite seu processo e maximize sua produção. O custo hoje de um robô é variável, se tornando mais barato com desenvolver da tecnologia, sendo exemplo um robô industrial usado fabricado pela Fanuc, modelo S420-iw e painel remoto tipo R-J2 com seis graus de liberdade e capacidade de movimentação de 155 kg, fabricado em abril de 1997, bastante utilizado para movimentação de peças e para soldas ponto de materiais. (ROBÔ INDUSTRIAL FANUC, 2016)
	Ao contrário dos computadores, os robôs precisam ser adaptados ao mundo real, não apenas para processar informações digitais, feito através de bits (zero e um) com padronização de hardware, software e protocolos de comunicação, fato que o sistema real ao seu redor não pode ser padronizado, trazendo dificuldades em sua fabricação e adaptação, mesmo sendo hoje bons em receber instruções e uma programação logica de funcionamento. Um exemplo é a soldagem de um veículo em uma produção de carro, onde temos que alcançar a mistura certa de posicionamento da peça, parâmetros de soldagem e o movimento do robô podendo levar horas para se ajustar.
	A robótica está presente nos dias de hoje em todos os lugares, tendo um grande salto de 10 anos para os dias atuais. A grandes expectativas e um certo temor por parte da maioria dos humanos em ser trocados por máquinas, porém com a implantação de robôs automatizando industriais ainda serão necessários para o trabalho de manutenção e adaptação para ainda ter um produto final com qualidade.
Gráfico 2 – Robôs industrias: instalação anual global e crescimento anual do estoque global estimado -1993-2015
Fonte: (GGN, 2018)
Não sabemos exatamente como vai ser futuramente, o melhor que devemos fazer é focar em estudar como desenvolver e operar, certificando que essas máquinas que foram criadas para auxiliar na realização de tarefas do cotidiano, sejam bem elaboradas e nos atendendo de forma satisfatória, cuidados com risco e acidentes que eventualmente possa ocorrer. (SANTOS V. M., 2003)
AUTOMAÇÃO E ROBÔS
É uma tecnologia que faz uso de engenharia mecânica, elétrica e eletrônicos, processos de produção, para efetuar o controle e execução de sistemas de produção e serviços. Tendo como exemplos linhas de montagem automotiva de sistemas mecânicos articulados denominados como robôs. Existindo três formas de automação industrial: automação fixa, flexível e programável.
Na automação fixa as máquinas são projetadas especificamente para produzir um único produto, assim pode-se produzir em grande escala, desenvolvida e tendo um custo alto da automação destes tipos de máquinas. Encontrado estestipos de automação para fabricação de um único produto como por exemplos a fabricação de lâmpadas, papel, garrafa.
Na Automação flexível o volume de produção é médio e geralmente a máquina pode ter outro tio de programação, criando a oportunidade de desenvolve outros produtos, sendo eles semelhantes. É empregada na indústria automotiva, linha de montagem de um carro, sendo que o modelo deste pode ser variável.
Na automação programável o volume de produção é baixo, mais a variedades de produtos pode ser diferenciada. Tem possibilidade de autoprogramação, se adaptando de acordo com produto desejado, conhecida como máquinas CNC e os robôs industriais. (BRAZ, 2007)
De todos os processos de automação e controle, a robótica está presente na forma programável, onde se adapta a diversos tipos de situação. Sendo produzidos com diferentes tipos de programação, muitos se assemelham a características humanas, denominados de antropomórficas, destinados a substituir a atividades humanas como carregamento e descarregamentos de material, pintura ou jateamento, soldagem de ponto a ponto visto em indústria automotiva.
Figura 2 - Algumas Aplicações Industriais Antropomórficas
Fonte: (SANTOS V. M., 2003)
 
É possível estabelecer diferentes classificações de máquinas, diferenciando o tipo de energia empregada, sendo elétrica, vapor, manual entre outras. Dividindo em máquinas programáveis ou não programáveis, dando autonomia de trabalhar automaticamente ou não.
	Neste pondo, temos condições de definir o que seria um robô como uma máquina automática programável ou maquina automatizada. Podem classificar–se de diversas maneiras os tipos de robôs, através de sua diferente utilidade.
	A primeira classe são os robôs manipuladores, já demostrado anteriormente (Figura 2), são exemplos de robôs manipuladores os braços mecânicos tendo por finalidade deslocar objeto de um ponto a outro ponto do espaço e seguindo sua trajetória dentro de uma área de trabalho.
 	A segunda classe é denominada de robôs exploradores, ou que têm como objetivo principal explorar um ambiente, podendo não ser uma superfície plana, mas também pode ser uma área no espaço ou inclusive um material fixo, e através de sensores determinar as características físicas deste material ou espaço ambiente. Um exemplo é o robô enviado ao Espaço lunar para observar e monitoramento da superfície do planeta terra.
	A terceira classe considerada, é a das máquinas ferramentas, ou máquinas robóticas tendo por objetivo executar uma matéria prima. Exemplos são os robôs de solda MIG/MAG, TIG, SMAW e até MMA, onde eles precisam de programa para seus movimentos de solda para continuar os contornos das peças, a furadeira é outro exemplo, nos quais o programa configura as coordenadas e tamanho do furo a ser realizado, entre outras máquinas automáticas de uso frequente na indústria.
Figura 3 - Classificação de Máquinas
Fonte: (PAZOS, 2000)
Por fim, serão considerados outros tipos de robôs, um exemplo disso é um controlador de temperatura, que tem por finalidade manter a temperatura de um sistema ou ambiente em determinado nível, perante uma informação previamente demostrado ao controlador. Considerado um robô mesmo que não interaja com ambiente externo, observando que necessariamente não precisa o robô ter meios articuladores, apenas processar e executar a informação automaticamente. (SANTOS V. M., 2003)
Definição de Robôs
Com a construção de robôs não foi adotado uma definição própria, tendo vários tipos entre as quais mais importantes e mais utilizadas as associações e definições de robôs.
Segundo a ISO 8373:1994, um robô industrial é definido como um manipulador programável em três ou mais eixos e automatizado, ou seja, controlado automaticamente, reprogramável com multifuncionalidades.
Para a JIRA, um robô é um dispositivo contendo vários graus de liberdade podendo ser controlado.
Conforme o RIA, um robô pode ser definido como um manipulador reprogramável e multifuncional, projetado para mover-se e movimentar materiais, peças, ferramentas e dispositivos, capaz de desempenhar grandes formas de tarefas através de movimentos articulados e programados.
De acordo com a JIRA, podemos classificar os robôs conforme o nível de informação do controlador e seus movimentos.
Robôs manipuladores, mais utilizados na indústria sendo máquinas com vários graus de liberdade podendo ser operados por pessoas.
Robôs de sequência fixa são dispositivos que desempenham sucessivas tarefas de acordo com uma programação predeterminada e automatizada. 
Robôs de sequência variável são dispositivos manipuladores que desempenham tarefas sucessivas que podem ser modificadas facilmente.
Robôs repetitivos são dispositivos que permitem ao operador guiar o robô na execução de uma tarefa fixa.
Robôs de controle numérico são dispositivos cujo operador fornece o programa de movimento, ao invés de ensiná-lo manualmente;
Robôs inteligentes são dispositivos que percebem e interagem com alterações do ambiente. Também podem ser classificados por geração, cronologicamente como já descrito a cima nas CLASSIFICAÇÃO DE ROBÔS. (SANTOS V. M., 2003)
BRAÇO ROBÓTICO
Estrutura
O braço robótico normalmente é composto por partes que são denominadas de braço e pulso. São ligados por Juntas e Elos (joints and links), capaz de se mover em diversos ângulos, através de servo motores acoplados para controlar esses movimentos.
Figura 4 - Juntas e Elos (Joints and Links)
Fonte: (CORKE, 2011)
Elos são blocos alongados e rígidos que são acoplados uns aos outros pelas juntas, eles são normalmente ligados em série e variam sua posição relativa, estas classificações encontra-se em dois grandes modelos as rotacionais ou rotativas e as deslizantes.
Figura 5 - Exemplo de Junta Deslizante, Junta Rotacional e Junta Esférica.
Fonte: (SANTOS V. M., 2003)
Nas deslizantes os elos têm movimento linear, são feitas de vínculos alinhados um á outro, em que um vínculo desliza pelo outro, criando o movimento linear. Já nas rotacionais, a interação permite movimentos de rotação entre juntas que se complementam por articulação, podendo mover-se facilmente em relação a outro vínculo. Tem um terceiro modelo, chamado de junta esférica que possui uma combinação de juntas rotacionais com o mesmo ponto de interligação. (DUMBÁ, 2016)
O Robô Puma 560 (Figura 6) foi o primeiro robô industrial moderno, junto o Braço de Stanford (Figura 7), foram um dos primeiros braços de pesquisa e é incomum na medida em que tem uma articulação prismática (Laboratório de IA da Universidade e Stanford, 1972; cortesia de Oussama Khatib). Ambos projetados pelo primeiro desenvolvedor da robótica de Victor Scheinman e o protótipo pode ser observado no museu Smithsonian de História Americana, na Capital Washington dos EUA.
Figura 6 - O Robô Puma 560
Fonte: (CORKE, 2011)
Dois robôs clássicos que são os precursores de todos os robôs do tipo braço atualmente. Cada robô tem seis juntas e claramente a pose do efetor será uma função complexa do estado de cada junta.
Um manipulador de link serial compreende um conjunto de blocos alongados, chamados de links, em uma cadeia e conectados por juntas. Cada junta tem um grau de liberdade, seja translacional ou articulação prismática, rotacional uma articulação. Movimento da articulação muda o ângulo relativo ou posição de seus links vizinhos. As articulações do robô mais comum são revoltas, mas o braço de Stanford tem uma articulação prismática.
A estrutura da junta de um robô pode ser descrita por uma corda (string) como R, para o Puma e para o Braço de Stanford, onde o caractere JTH representa o tipo de articulação, seja revolucionar (Revolute) ou prismático (Prismatic). Uma maneira sistemática de descrever a geometria de uma cadeia serial de links e articulações foi proposta por Denavit e Hartenberg, em 1955, e é conhecido hoje como notação de DH. (CORKE, 2011)
Figura 7 - Braço de Stanford
Fonte: (CORKE, 2011)
End-effector (Finalizador ou Efetuadores)
Na extremidade do braço éfixado no final do Elo do manipulador que tem a funções adicionais (agarrar ou prender um objeto, ou pode ter uma função específica), denominado como efetuador ou finalizador, geralmente esses dispositivos são projetados para atividade a ser executada, mas existem terminais que são úteis para uma diversidade de tarefas. (NIKU, 2011)
Existe muitas variedades de End-effector adequados para a realização de funções de trabalho, alguns exemplos são garras, ferramentas ou pontas.
Figura 8 - Diferentes Garras
Fonte: (PAZOS, 2000)
As garras são destinadas para pegar e segurar materiais para seu deslocamento dentro de área de trabalho do robô articulador. Esses materiais podendo ser minúsculos e frágeis, como componentes eletrônicos que são moldados em placa de silício para equipamentos eletrônicos, visto em nosso cotidiano. Também grandes e pesados podem ser esses materiais, deslocando carros em uma linha de produção de montadora automotiva. Bastante empregados em diversos movimentos de objetos como caixas de papel, matéria prima, entre outras aplicações. (PAZOS, 2000)
A partir de estudos físicos a mais comum, empregadas na indústria são as garras mecânicas para pegar o material, onde suas extremidades se contraem para segurar o material a ser movimentado, imitando movimento muscular de uma mão. Mas tendo outras utilidades com garras com dedos de movimentação mecânica, garras a vácuo, eletroímãs ou garras ativadas eletromagneticamente, ganchos tipo de guindaste, garras constituídas com material adesivo.
Os dedos acionados mecanicamente o mais comum, contendo dois ou mais dedos que se abrem e fecham mecanicamente, fazem contato com o material a movimentar-se. A energia fornecida aos dedos da garra para que façam a função de abrir e fechar é fornecida por atuadores como já mencionado anteriormente Atuadores e Controladores.
Os atuadores utilizados, podem identificar a garra sendo com dedos mecânicas, pneumáticos ou hidráulicos. Podendo conter diversos tipos de sensores, que auxiliam para abertura dos dedos, dando sensibilidade semelhante de uma mão humana, a força com que eles se fecham sobre um objeto, ou ainda a força que exercem sobre uma determinada área.
As garras a vácuo consistem em formas de sucção, ligadas a uma bomba de vácuo através de uma eletroválvula solenoide. Os objetos a serem manipulados devem ser de superfície plana, limpos e lisos, sendo necessária estas condições para funcionalidade de forma ideal. 
As garras magnéticas são similares em seu formato às garras a vácuo diferenciando que utiliza eletroímãs, manuseando apenas materiais com propriedades ferromagnéticos. 
As garras adesivas usam uma substância adesiva para a operação de agarrar o objeto, muito utilizado para manipular tecidos e outros objetos leves que não podem ser movimentados com outros tipos de garras. Não tendo muita confiabilidade com o tempo perde a aderência, não indicado para trabalhos com materiais pesados, especificamente com ferros e outros tipos de metais. (SANTOS V. M., 2003)
Atuadores e Controladores
Atuadores são dispositivos que transformam um tipo de energia em uma outra diferente. Eles são utilizados em robô para aderir ao projeto a eficiência energética necessária para seu funcionamento, sendo exemplo, no funcionamento de um robô para movimentar uma de suas partes rotacionais, há necessidade de atuadores que forneça energia mecânica para gerar movimento desejado. 
Se o projeto for um sistema térmico, serão necessários atuadores que mensure a temperatura, para atingir a temperatura desejada como resposta do sistema. 
Contendo diversas classificações, os atuadores mais utilizados na fabricação de um robô são hidráulicos, pneumáticos e elétricos. 
Os hidráulicos caracterizados por terem como fonte de energia um fluido pressurizado, deslocando-se por mangueiras próprias para esta finalidade. Esses fluidos são encontrados em forma de óleo ou simplesmente água.
Os pneumáticos têm como fonte de energia geralmente ar comprimido, também pressurizados e encaminhados através de mangueiras próprias. 
Os atuadores elétricos os mais utilizados, geralmente alimentado com energia elétrica para seu funcionamento, sendo 12V ou 24V.
Atuadores utilizados em robótica é um dispositivo que dá movimento, para uma parte mecânica pelo desenvolvimento de forças cartesianas, baseado no estudo da física de conversão de energia, respondendo a comandos manuais ou automáticos, e podem ser motores elétricos e cilindros hidráulicos ou pneumáticos. 
Controle é responsável por gerar as informações que comandarão um ou mais atuadores, com base em uma linguagem de programação ou algoritmo de um sistema de controle. Constituindo um dispositivo que realiza operações matemáticas com o sinal de erro, e tem o objetivo de produzir uma correção que pode ser aplicada ao sistema de realimentação, satisfazendo critérios de desempenho. Estas operações matemáticas são denominadas de ações de controle.
Então, compreende por controlador, um dispositivo que pode ser hidráulico, pneumáticos, eletrônico, mecânico, com o objetivo de controlar um sistema de controle. (KURFESS, 2005)	
Sensores
Os sensores são dispositivos com a finalidade e confiabilidade à percepção de atividades não computacionais, bem como o nível de temperatura ambiente ou de trabalho de um robô. Entre os tipos de sensores utilizados em braços robóticos industriais são os sensores de posição, velocidade, extensão e proximidade.
Sensores de posição tem como principal função monitorar a posição das juntas articuladas. A informação captada é enviada ao sistema de controle, sendo utilizada para a precisão dos movimentos das juntas articuladoras.
Sensores de extensão medem o comprimento entre um ponto a outro ponto de referência, tendo possivelmente essa medição ser realizada por câmeras como descrito VISÃO COMPUTACIONAL.
Sensores de velocidade são utilizados na determinação da velocidade com que o braço articulador se movimenta. Variando a aceleração com um controle PID, durante o movimento auxiliando o funcionamento do manipulador. Com a variação abrutas de velocidade, sem este controle podendo ocasionar defeitos, tanto no objeto manipulado quanto nos movimentos do equipamento. 
Sensores de proximidade tem fundamentos para captar e indicar a presença de algum material dentro de uma área ou distância, sem a precisão de contato físico, captados através de forma capacitiva ou indutiva. (NIKU, 2011)
Graus de Liberdade
Define graus de liberdade como o número total de variações independentes que um equipamento pode executar. Já os graus de movimentos estão associados ao número de junções.
Jacques Denavit e Richard Hartenberg introduziram diversos conceitos da cinemática para manipuladores de elos serial em um artigo de 1955 e seu texto clássico posterior Síntese cinemática de elos, em 1964. No esquema DH cada junta tem apenas um único grau de liberdade sendo de translação ou rotação.
Definição dos parâmetros de ligação padrão Denavit e Hartenberg, na figura (Figura 9) as cores vermelho e azul denotam todas as coisas associadas aos elos j −1 e j, respectivamente. Os números em círculos representam a ordem na qual as transformações elementares são aplicadas. (CORKE, 2011)
Nos estudos da mecânica, a fim de localizar um ponto no espaço usa-se as coordenadas X, Y e Z, no eixo cartesiano. Se considerarmos um dispositivo tridimensional que tenha 3 graus de liberdade dentro do espaço de trabalho do dispositivo, consegue-se movimentar o dispositivo no local desejado. Um exemplo é o guindaste, que pode posicionar qualquer objeto dentro da sua área de trabalho, com comandos dado pelo operador.
Como mostrado acima, para localizar um objeto no espaço cartesiano tridimensional é preciso especificar o local de um ponto sobre ele. Portanto com a localização do objeto, existe várias formas para orientar o objeto em torno do ponto desejado. Para achar o objeto por completo no espaço, temos que além da sua localização, informar sua orientação. 
Sendo assim, necessita-sede seis elementos de informação, para especificar onde se encontra objeto no espaço. Desta forma, precisa-se de seis graus de liberdade para posicionarmos e orientar objeto como desejarmos.
Figura 9 - Parâmetros de Ligação de DH
Fonte: (CORKE, 2011)
Os robôs têm essa necessidade de seis graus de liberdade para livremente posicionar e orientar os objetos dentro de sua área de trabalho. Imitando o braço humano onde temos sete graus de liberdade, contendo três articulações como: ombro, cotovelo e o pulso. Sendo encontrados na indústria robôs com três, quatro, cinco e seis graus de liberdades, acima disso os graus adicionais não são necessários o controle sobre eles. (NIKU, 2011)
CADEIAS CINEMÁTICAS
A cinemática é o ramo da mecânica que estuda o movimento de um corpo ou de um sistema de corpos sem considerar sua massa ou as forças que atuam sobre ela. Um manipulador de ligação serial compreende uma cadeia de ligações e articulações mecânicas. Cada junta pode mover seu link vizinho externo em relação ao seu vizinho interno. Uma extremidade da corrente, a base, é geralmente fixa e a outra extremidade está livre para se mover no espaço e segura a ferramenta ou o end-effector.
Robôs manipuladores são mecanismos em cadeias cinéticas, de forma GDL, tridimensionais, e circuitos em malha aberta. GDL significa que os robôs possuem articulações que movimentam em várias direções livremente dentro de sua área de atuação.
Figura 10 - Mecanismo de Ângulos
Fonte: (CORKE, 2011)
Em um sistema, quando um ângulo variável é definido, o mecanismo fica reconhecido e todas as outros ângulos variáveis são descobertos, através das cinemáticas direta ou inversa que está descrita logo nos próximos capítulos.
Figura 11 - Relação entre as Cinemáticas
Fonte: (NIKU, 2011)
Utilizando matrizes e outras formas matemáticas para representar pontos, vetores, rotações, transformações, localização de objetos e posicionamentos do manipulador robótico, como visto ao estudar mecânica e resistência dos materiais.
(NIKU, 2011)
Trigonometria 
A semelhança de triângulos é possível quando possuem ângulos iguais, tendo a soma de ângulos igual 180° valendo assim as regras de proporcionalidade.
Em um triângulo retângulo onde o ângulo do vértice Q é igual 90° e o ângulo do outro vértice O é ângulo α, define-se que o cateto oposto como comprimento b da aresta PQ. O cateto adjacente é definido como o comprimento a da outra aresta denominada de OQ, e a hipotenusa sendo vetor resultante é o comprimento c da aresta OP. 
Figura 12 - Triângulo Retângulo
O teorema de Pitágoras é a soma dos quadrados do cateto oposto e cateto adjacente, sendo igual ou resultante o quadrado da hipotenusa. 
Equação 1 - Teorema Pitágoras
Em um triângulo de vértices ABC, com ângulo denominados α, β, γ de lados denominados a b e c. Com uma reta A perpendicular BC, denominada H tendo seu comprimento do ponto A é igual ao lado c multiplicado por seno do ângulo β. Desenhando uma reta a partir do vértice C perpendicular ao outro lado, com outro vértice denominado de G, com o vetor CG é igual comprimento a multiplicado seno do ângulo β, ou comprimento b seno do ângulo α. Por fim o vértice B e o vetor AC é igual comprimento a multiplicado seno do ângulo γ, ou comprimento c seno α.
Figura 13 - Lei dos Senos
	Então, definimos matematicamente a lei dos senos com a igualdade das propriedades descritas acima, e que pode ser estabelecida como a relação entre o comprimento dos lados com a constante do seno do ângulo oposto. 
Equação 2 – Relação Lei dos senos
 Diferente da lei dos senos, o cosseno elabora uma reta do vértice A, com o vetor BC em ângulo de 90° perpendicular, denominado como H.
Figura 14 - Lei dos Cossenos
Aplicando o teorema de Pitágoras, tem-se as relações matemáticas sendo que o vetor HC é igual comprimento b multiplicado por cosseno do ângulo γ, e AH é igual ao comprimento a menos o vetor HC.
Definimos a lei dos cossenos como o quadrado dos lados do triangulo que é igual à soma dos quadrados dos demais, subtraindo dos produtos dos lados pelo cosseno dos ângulos entre eles. (BRAZ, 2007)
Equação 3 - Relação Lei dos Cossenos
Cinemática Direta	
A cinemática direta é simplesmente para encontrar a posição, orientação do braço articulado e a garra com referencial ao espaço inicial. O modelo DH é uma forma muito simplificada de modelagem de elos e articulações de um robô, como visto Figura 9, podendo ser utilizada para qualquer configuração de articulação robótica. 
A cinemática direta é frequentemente expressa em forma funcional com a posição do efetor final como uma função das coordenadas da articulação. Usando transformações homogêneas, isso é simplesmente o produto das matrizes de transformação de link individuais.
Descrito de forma funcional na Equação 4, a solução cinemática direta pode ser calculada para qualquer manipulador de link serial, independentemente do número de juntas ou dos tipos de juntas. 
Equação 4 - Forma Funcional Direta
A posição do efetuador tem 3(GDL) de liberdade em translação e outros 3(GDL) em rotação. Portanto, os manipuladores de robôs geralmente têm 6(seis) juntas ou graus de liberdade para permitir que eles atinjam uma pose arbitrária de efeito final. A transformação geral do manipulador é frequentemente escrita como T6 para um robô de seis eixos. Tendo os seguintes parâmetros DH que se usa para criar um vetor de objetos link.
Tabela 1 - Parâmetros de DH
	Link
	Ɵ
	D
	A
	α 
	0-1
	θ1
	0
	0
	90º
	1-2
	θ2
	0
	a2
	0º
	2-3
	θ3
	0
	a3
	0º
A cada articulação é associado uma matriz ligada a base, após associado a articulação 1 e assim continua-se sabendo que a transformação desta matriz não é constante, mais tem uma variação conforme muda a configuração das articulações na sua área de trabalho. (CORKE, 2011)
Equação 5 - Associação de Articulações dos Membros
	Os parâmetros dos membros articulados são conhecidos como ângulo (θ), a excentricidade (d), o comprimento (a) e a torção (α), tendo o movimento de rotação (R) e o movimento de translação (T). 
Com o conceito de DH cada matriz (A) é o produto de quatro transformações básicas, (Equação 6). Onde Rz,θ representa a rotação θ em torno do eixo z, Tz,d e Tx,a é o movimento de translação d ao longo do eixo z e o movimento de translação a ao longo do eixo x, e por fim Rx,α que representa a rotação α em torno do eixo x.
	 
Equação 6 - Representação de DH
	Desenvolvendo conceito anterior podemos obter uma matriz (A) quadrada, de orientação 4x4, como visto Equação 7. Como é uma função da variável da junta, temos a conclusão que três são constantes para determinar posição dos elos do manipulador.
Equação 7 - Matriz de Representação de DH
	A matriz é caracterizada por seis variáveis, três são ângulos de rotação e os outros componentes do vetor deslocamento. Seguindo os passos descritos a seguir consegue-se determinar o algoritmo de Denavit e Hartenberg para cinemática direta de posição:
Localizar e nomear os eixos das juntas, podendo apresentar por R os movimentos de rotação, e T os movimentos de translação.
Estabelecer um sistema de coordenadas para base, posicionando-o em um estado zero sobre o eixo z inicial.
Localizar a origem do objeto, contendo a menor trajetória possível.
Estabelecer x inicial ao longo do produto vetorial z inicial e z final, através da normal comum aos eixos z inicial e final, quando eles forem paralelos.
Estabelecer y inicial de modo a completar um sistema ortogonal.
Estabelecer a posição final do sistema do efetuador.
Criar uma tabela de parâmetros DH, sendo exemplo Tabela 1.
E por fim, formar matrizes de transformações homogêneas, usando os parâmetros DH, visto na Equação 7. 
Observando que o referencial zero é livre, sendo que o eixo z inicial seja igual ao eixo da primeira junta. A utilização dos parâmetros DH não é a única definição para se obter o sistema cartesiano do manipulador, porem a mais utilizada pela sua facilidade.(NIKU, 2011)
Cinemática Inversa
Equação 8 – Forma Funcional Inversa
O próximo passo é definir o caminho que o efetuador irá seguir, considerando o fato de se mover em mesma velocidade, como determinar a posição do efetuador ou end-effector, dadas as coordenadas das juntas e as transformações opcionais de ferramenta e base. Um problema de interesse prático real é o problema inverso: dada a posição desejada do efetuador final, quais são as coordenadas de juntas necessárias? Por exemplo, se conhecermos a pose cartesiana de um objeto, de quais coordenadas comuns o robô precisa para alcançá-lo? Este é o problema da cinemática inversa que é escrito em forma funcional como na Equação 8. (CORKE, 2011)
Aos problemas da cinemática inversa para manipuladores robóticos é a determinação dos ângulos de articulação dada uma configuração final desejada. Para alguns manipuladores robóticos desejados, as configurações podem não haver soluções numéricas e aritméticas únicas, contendo várias formas para soluções. 
Figura 15 - FIGURA ADPATADA Manipulador 3 Eixos
Fonte: (KURFESS, 2005)
Em geral, essa função não é única e, para algumas classes de manipulador, não existe uma solução fechada, necessitando de uma solução numérica de equações não lineares, nem sempre tem a possibilidade de uma resolução analítica, sendo exemplo as relações de Girard.
Equação 9 - Relação de Girard
As equações de Girard são utilizadas para determinar relações de soma e produto das raízes de equações do segundo grau.
Albert Girard nasceu em 1590, um matemático francês que estudou e estabeleceu relações da soma e de produto entre as raízes e os coeficientes das equações quadráticas. Desenvolvendo um método que estabelece a relação de produto e soma até de números negativos.
Considera-se a Equação 9, tendo as variáveis a b e c como números reais, desde que a seja diferente de zero. Para resolver temos que encontrar duas raízes, modo apresentado na Equação 10. A fórmula de Bhaskara é um método desenvolvido para resolver equações do segundo grau.
Equação 10 – Fórmula de Bhaskara
Porém, não é somente para a finalidade de encontrar a soma e o produto das raízes, considera-se que b representa a soma e c o produto. (SMOLE & DINIZ, 2013)
 
Trajetória 
Um dos requisitos principais em robótica é mover o manipulador sem dificuldades da posição A para a posição B. Para gerar estes movimentos, denominados de trajetórias, sendo linhas retas no espaço da articulação e linhas retas espaço cartesiano. A trajetória conjunta das coordenadas, tende de ser feito de maneira suave com velocidade constante. (CORKE, 2011) 
	Determinado uma reta no espaço cartesiano das juntas, e utiliza-se polinômios para determinar a trajetória no tempo. Sendo em um espaço 3D, as juntas geradas as trajetórias resultantes não tendo problemas de Singularidades. Obtendo os valores máximos e mínimos das variáveis das juntas, limitando seus movimentos conforme desejado. De outra forma a trajetória em espaço 2D resultante não é inserida a partir das juntas, devido ao mapeamento não-linear entre o espaço da cinemática direta e o espaço da cinemática inversa.
	A forma mais simples de se determinar a trajetória, é criar uma função linear da posição final em relação ao tempo. Para uma trajetória suave em relação a velocidade, utilizar parábola de posição de início e fim de uma trajetória linear. 
	O método de polinômios de Lagrange descreve um sistema mecânico com conceitos de energia que é definido com trabalho. É função escalar diferenciando as energias cinética da energia potencial, determinado em uma função de conjuntos de coordenadas. Obtém-se através de um sistema as equações polinomiais de movimento para qualquer sistema mecânico. 
	Para entender equações de Euler-Lagrange, temos que saber a segunda lei de Newton “A aceleração adquirida por um corpo é a força resultante que atua sobre ela”.
Equação 11 - 2ª Lei de Newton
	Com a derivada das expressões de energia cinética e potencial, tendo a energia cinética em dois termos, a energia de rotação e translação. A energia potencial é obtida pela concentração da massa em seu centro. Conhecida as derivadas de ambas energias, a determinação das equações Euler-Lagrange do manipulador é a soma de cada um dos seus elos, a partir de uma matriz de seus aspectos na inercia. Determinou-se que qualquer orientação do sistema de coordenadas inicial com relação ao sistema de movimento, pode-se compor estas transformações rotações efetuadas nos eixos cartesianos, sendo que não seja rotações efetuadas ao longo do mesmo eixo, utilizando a tão conhecida regra da mão direita.
Figura 16 - Regra da Mão Direita
	A regra da mão direita é definida com o polegar sendo o eixo x, o indicador o eixo y, e o dedo central o eixo z. Assim determinando os ângulos de rotação e translação do manipulador. (ANGELES, 2007) 
Singularidades
O vetor de coordenadas cartesianas tendo três componentes iniciais representam a posição da rotação da garra com relação a uma referência da inicial do manipulador, representando a orientação do referencial podendo se determinar como o punho.
Descrito como uma matriz, as funções das coordenadas que configuram a posição do manipulador, sendo assim reduzindo ou simplificando. Reduzindo estas matrizes podendo considerar que o sistema perca graus de liberdade, definindo-se singularidade. 
Estas configurações são feitas por várias razões, sendo que determinados movimentos são impossíveis, as velocidades limitadas no manipulador podem corresponder Torques limitados nas juntas.
As singularidades correspondem a pontos na área de trabalho que poderiam ser inatingíveis em pequenas variações dos parâmetros dos elos, como comprimento entre outros, não existindo uma única solução, mais infinitas soluções para o problema da Cinemática Inversa.
Em resumo, singularidade é a configuração do robô, sendo necessário determinar velocidades nas juntas para que sejam constantes em uma área de trabalho, ocasionando a perda de graus de liberdade. (CORKE, 2011)
VISÃO COMPUTACIONAL
A visão computacional tem como objetivo inserir um modelo matemático a partir de imagens geradas por uma ou mais câmeras, em outras palavras é transformar uma cena real para um modelo matemático.
Tendo entrada de imagens e na saída composta de informações de alto nível de abstração. Exemplo o número de pessoas, tipos de objetos ou estrutura 3D.
Figura 17 - Projeção de uma Imagem
Fonte: (CORKE, 2011)
	Os robôs geralmente são sistemas de malha aberta, sem uma realimentação (feedback), sendo um problema, pois ele não reconhece a posição situada. Para solucionar este problema, a posição do end-effector ou ferramenta é constantemente medida por sensores, feixes de laser ou dispositivos como uma câmera, transformando o robô em sistema de malha fechada. (NIKU, 2011) 
Imagens e Vídeos
A imagem pode ser capturada por uma câmera através de um sensor, respondendo a duas tecnologias de sensores CMOS ou CCD.
Basicamente CMOS usa o método “rolling shutter”, que processa a imagem capturando cada linha do sensor enquanto o CCD usa o método “global shutter” e captura a imagem de uma vez só.
Um sensor de imagem faz a captura de pixel, sendo algo organizado em linhas (H) e colunas (V), formando uma matriz de H x V. uma resolução padrão é de 480 linhas de resolução horizontal, contendo novas tecnologias em HD com mais linhas de resolução.
Uma imagem transmitida por esses sensores é definida por alguns conceitos como a resolução, frame, balanço de branco, taxa de atualização, ruído e aspecto.
A resolução define-se pela quantidade de elemento de imagem ou pixel, em relação ao quadro ou frame, para imagens digitais. Para o computador imagem são matrizes de números.
Figura 18 - Imagens Digitais
O Frame é um conjunto composto pela unificação da forma de elementos de imagem ao espectador, definindo seu formato pela matriz H x V formado por pixels na resolução digital. Imagem matriz composta por pixel podeser colorida ou em preta e branca.
No balanço de branco é definido a quantidade da cor branca usada para outras cores, para reproduzir uma imagem mais próxima da real.
Sua taxa de atualização acontece na qual os frames são mostrados por unidade de tempo. Um exemplo é um vídeo ao vivo, tendo 30 frames por segundo.
Ruídos são as interferências por campos eletromagnéticos que sobrepõem a imagem, dando uma distorção em sua reprodução.
Figura 19 – Pixel
Fonte: (ALMEIDA, 2018)
A relação de aspecto é verificada entre a largura e altura da imagem transmitida, sistema padrão é de 4:3 em uma resolução de 720 linhas e 480 colunas interlaçadas em uma taxa de 60 vezes por segundo, resultando em 30 frames por segundo.
Figura 20 - Resoluções de Vídeos
Fonte: (ALMEIDA, 2018)
Todo sinal é determinado um padrão para fabricantes em várias partes do mundo, sendo os mais usados o NTSC, PAL-M e SECAN. Em ambas, a imagem é formada pela varredura em linhas, dependendo do sistema a taxa de varredura.
 Um vídeo é uma secção de imagens em período de tempo, contendo uma quantidade grande de informação que para ser transportada existem métodos de compressão. A análise de conteúdo de vídeo através de um algoritmo de vídeo inteligente, que observa em tempo real cada frame, criando um cenário sobrepondo elementos de detecção como linhas, setas, polígonos, retângulos, círculos, entre outros. 
Com este sistema, através de uma inteligência artificial tenta aprender comportamentos esperados, armazena e utiliza como uma previsão, como exemplo na Inglaterra, para evitar atentados terrorista.
Uma das tarefas para a visão computacional é procurar e identificar objetos. Para essa identificação uma das técnicas utilizada é os detectores de bordas a fim de ver os formatos dos objetos e ambientes presentes na imagem. A forma de detecção de bordas acontece através de identificação de variações abruptas na intensidade dos pixels de uma área da imagem. (ALMEIDA, 2018)
TECNOLOGIAS
Mecatrônica
Esta tecnologia projeta e desenvolve a implementação em equipamentos mecânicos na indústria, uma forma através de sistema digital de automatizar, sendo para facilitar o funcionamento da máquina, adequando ao mundo real. 
Com grandes influencias no desenvolvimento de servo motores, motores e controle de sistemas, conceito definido é dada pela junção da mecânica e da eletrônica, que ambas andam juntas na automatização de qualquer sistema industrial.
Figura 21 - O Sistema Mecatrônico
Fonte: (ROSÁRIO, 2005)
Através de sensores podemos obter informações do mundo físico processando digitalmente, resultando em ações de controle. Esses controles podem por meio de atuadores agir sobre o sistema físico, o que acarreta o conceito de sistema realimentado (feedback). (ROSÁRIO, 2005)
PWM - Pulse Width Modulation
Tendo a necessidade de controlar a tensão empregada aos sistemas eletrônicos, a técnica PWM é empregada em diversas áreas, mais comum em fontes chaveadas, usado para controle de velocidade de motores, controle de servo motores, iluminação entres outras aplicações. Através da largura do pulso de onda quadrada o controle de potência e velocidade.
Considerando um sistema digital, para funcionar corretamente devemos variar a largura do pulso da onda de forma calculada Equação 12. 
Equação 12 - Duty Cycle (Ciclo de Trabalho)
Para controle com PWM utilizado em circuitos eletrônicos é dividido em duas partes. A primeira o sistema de controle gera o sinal determinando a frequência, e a segunda o sistema de potência que aciona a carga. 
Geralmente disponível nos micros controladores, pois já possui uma grande variedade de pinos e instruções para ideal funcionamento. (MEGAWEB, 2016)
Controle PID
O controle PID é uma técnica de calcular a atuação de um determinado valor em relação ao processo das informações desejadas. Este valor que atua sobre o processo é transformado em um sinal utilizado em determinados equipamentos, devendo garantir um controle estável e preciso. PID é a combinação de três ações, sendo elas a Proporcional, Integral e Derivativo.
	P
	CORREÇÃO PROPORCIONAL AO ERRO
	I
	CORREÇÃO PROPORCIONAL AO ERRO x TEMPO
	D
	CORREÇÃO PROPORCIONAL Á TAXA DE VARIAÇÃO DO ERRO
Tabela 2 - Estrutura PID
 No controle proporcional da variável a medida que cresce aumenta até o máximo 100%, provocando a definição proporcional da largura de banda. Conforme tem uma variação na entrada de sinal ele faz a correção de forma não agredir controle do processo. Fornece uma relação linear entre a variável controlada e o equipamento ou processo possa fornecer.
Gráfico 3 - Ação de Controle Proporcional
Fonte: (NOVUS, 2003)
 No controle integral precisa-se de uma resposta de saída do controlador, tendo efeito de eliminar o controle proporcional. Tem a como função excluir o erro, e de forma a integrar o sistema gerar uma instabilidade. Utilizando um controlador proporcional nas alterações de carga automaticamente, com a integração do erro no tempo obtemos esse reajuste.
No controle derivativo tem o efeito de reduzir a velocidade das variações do processo, evitando variações abruptas e atuando quando a variação no erro, com processo estável sua função é dispensada. Então, temos o resultado de um controle de correção antecipada de um erro não ocorrido.
Gráfico 4 - Ação de Controle Integral
Fonte: (NOVUS, 2003)
Juntando as três técnicas determina-se que o controle básico da proporcionalidade, com a eliminação do erro do controle integral, e com a função de reduzir as oscilações do controle derivativo, podemos utilizar e obter um processo mais estável, satisfatórios e com menos erros.
Gráfico 5 - Ação de Controle Derivativo
Fonte: (NOVUS, 2003)
MATERIAS E MÉTODOS
HARDWARE
Sistema Computacional
O Raspberry Pi é um sistema computacional utilizado para processamento das informações, através de periféricos de entrada e saída temos a comunicação das informações lógicas, o cérebro do robô com o mecanismo do manipulador robótico. 
Considerado como um pequeno computador, é uma placa de desenvolvimento de micro controlador, com muitas funcionalidades e portas. Seu processamento similar à de celulares smartphone, contendo slot para cartão de memória SD, entrada de porta USB, porta de conexão Ethernet, conector HDMI, com saídas de áudio analógico e vídeo e diversas outros periféricos que podem te auxiliar para uma automatização de seu sistema. 
Figura 22 - Raspberry Pi 3 Modelo B
Fonte: (ELECTRONICA, 2018)
Seu sistema utiliza o Raspbian OS, uma distribuição do Linux como sistema operacional, contendo vários drives, serviços e aplicações que podem ser utilizadas. Pelo seu pequeno tamanho contém uma memória de armazenamento mais limitada.
Com a terceira inovação, o Raspberry Pi 3 Modelo B é uma placa de tamanho igual cartão de crédito, além de possuir várias aplicações e conexão com outros equipamentos através do físico, também possui conectividade sem fio via Bluetooth e wireless. (COMPONENTS, 2017) 
Arduino é uma placa eletrônica, projetada com um microcontrolador Atmel, com suporte de entrada e saída de dados. O Arduino Mega 2560 é uma placa microcontroladora baseada no  ATmega2560 . Possui 54 pinos de entrada / saída digitais (dos quais 15 podem ser usados ​​como saídas PWM), 16 entradas analógicas, 4 UARTs (portas seriais de hardware), um oscilador de cristal de 16 MHz, uma conexão USB, conector de alimentação, um conector ICSP, e um botão de reset. ele contém tudo o que é necessário para suportar o micro controlador. , utiliza linguagem de programação C++. (STORE.ARDUINO.CC, 2018)
Figura 23 - Arduino Mega 2560
Fonte: (STORE.ARDUINO.CC, 2018)
 Através de um protocolo de comunicação I2C, em barramento, ou seja, com mesmo fios interligados ao dispositivo mestre. Assim sendo possível, a comunicação com outros dispositivos com mesmo protocolo. 
Figura 24 - Protocolo de Comunicação I2C
Fonte: (REIS, 2014)
	Existem muitos dispositivos que usam o protocoloI2C, como o Arduino, Raspberry, memórias externas, diversos sensores. Dispositivos oferecem várias interfaces de conexão, conectá-lo ao Arduino usando I2C, ou serial. Os equipamentos utilizam o conector terra (GND) e o alimentação (Vcc).
Figura 25 - Comunicação Com Outros Dispositivos I2C
Fonte: (REIS, 2014)
Servosmotores
São dispositivos eletromecânicos bastante utilizados em robótica e possuem várias aplicações, são usados principalmente para mover partes de objetos com seu funcionamento básico a partir de um pulso elétrico de 5V em sua entrada, faz com que seu eixo rotacione. 
	Pequenos dispositivos que contem engrenagens, eixo de transmissão, motor corrente continua, potenciômetro, e um amplificador. Os fios dentro do equipamento são as entradas de sinal, determinando parâmetros em ângulos de velocidade e torque.
Figura 26 - Servomotor RDS3135MG alto torque
Fonte: (CASTANEDA, 2012)
Possui um sistema de controle eletrônico acoplado ao seu eixo de saída, conhecido como potenciômetro, que cria ao circuito eletrônico o monitoramento do ângulo do seu eixo na posição desejada. Através das engrenagens contém um limitador atuando no ângulo de giro no eixo, dependendo de cada fabricante geralmente trabalha de 0° até 270°.
O ângulo do eixo do servo motor é enviado através da entrada de sinal em PWM - Pulse Width Modulation, podendo variar de 0V até 5V, em intervalos de tempo de 20ms.
Figura 27 - Dimensões servo motor
Fonte:(SANTOS A. , 2007)
Ao construir um robô, para determinação da compra de um servo motor o torque e a velocidade são parâmetros importantes, descritos na sua especificação pelo fabricante. Exemplo uma junta de articulação de 2cm de comprimento, com um servo de 6kg/cm de torque, conclui-se que pode levantar 3kg de massa na distância de 2cm do eixo de rotação. A velocidade deve ser lenta, para poder ser controlada através do sinal de entrada em milissegundos. (LOO, 2013)
Fontes de Alimentação
As fontes de alimentação são responsáveis por dividir energia elétrica por todos os componentes do circuito eletrônico. Tem a função de transformar a tensão alternada em tensão continua fazendo um processo de retificação e estabilização da tensão e corrente elétrica.
Existindo fontes alimentação lineares e chaveadas, consistem em transformadores de tensão, a retificação com diodos, o filtro por capacitores e um circuito de controle que mantem a tensão da carga constante.
São classificadas e comercializadas as fontes de alimentação pela potência máxima de saída medida em Watts, tendo uma variação na tensão com um circuito regulador aplicado a sua saída de acordo com a necessidade do cliente, sendo a corrente constante neste caso.
Figura 28 - Fonte de Alimentação Chaveada - Output 7,5V
Fonte: (BRAGA, 2013)
As fontes chaveadas contém circuitos de controle mais aprimorados, contendo melhores funcionamento dos capacitores e indutores. Com os circuitos de indutores e capacitores em serie com o enrolamento primário do transformador, é dissipado através de transistores, criando uma onda senoidal que é transferida para enrolamento secundário do transformador, passando por uma retificação e filtro, gerando uma tensão continua e estabilizada.
Podendo trabalhar com altas frequências as fontes chaveadas é mais leve por utilizar componentes eletrônicos de pequeno porte, tendo que ser blindada magneticamente. Apesar de seu alto desenvolvimento, tem um custo inferior do que as fontes de alimentação linear. (BRAGA, 2013)
Articulações de Acrílico e Alumínio para o Braço Robótico
É constituído por articulações de acrílico, visto na Figura 29, contendo a cada articulação associado os Servosmotores, com um End-effector (Finalizador ou Efetuadores), sendo uma garra de alumínio, visto na Figura 30. 
Para manipular os objetos, sendo parecido como uma mão humana, podendo encontrar modelos similar em sites de compras.
Figura 29 - Articulações Braço Robótico
Fonte: (KIT BRAÇO ROBÓTICO, 2017)
Figura 30 - Garra Braço Robótico de Alumínio
Fonte: (GARRA ROBÓTICA , 2015)
Câmera 
A série IMS0 com Sarix tem uma tecnologia de câmera dome fixa para ambiente interno, projetada para conexão de rede com qualidade de imagem e poder de desempenho de alto desempenho. Uma lente bifocal, com zoom oferecendo uma resolução em HD, capacidades avançadas de pouca resolução de luz, com uma ciência consistente das cores e rapidez do poder de processamento. Pode ser configurado os fluxos em uma variedade de taxa de frame, taxa de bits e grupo de imagens.
Figura 31 - Camera IMS0 Series Sarix Mini Indoor Fixed Dome
Fonte: (PELCO, INC. WORLDWIDE HEADQUARTERS, 2010)
Um conector de configuração de vídeo conveniente elimina a necessidade de um laptop para visualização de vídeo durante a função a câmera. A conexão é feita facilmente por endereços IP e híbrido da Pelco, e conectividade de arquitetura aberta para software de terceiros.
Figura 32 – Midspan
Fonte: (AXIS COMMUNICATIONS, 2018)
Uma solução fácil rápida e eficaz para produzir vídeos em rede, sem instalar cabos de energia. Os Midspans são conectados a Fontes de , transformando energia e enviando via cabo de rede, permitindo que os dados e energia sejam transmitidos pelo mesmo cabo ethernet. 
SOFTWARE
Raspbian OS 
Sistema operacional Raspbian OS é uma distribuição do sistema operacional Linux criada para funcionar somente nos Raspberry Pi. É uma extensão derivada do Debian, essa distribuição é considerada o sistema operacional padrão do computador da fundação Raspberry Pi. Completo e com diversos pacotes de softwares de desenvolvimento, contendo um profundo controle sobre o hardware ou placa como normalmente é chamado, além de ferramentas que dão o acesso à ethernet e internet, arquivos escritório compatíveis na forma libreoffice. (GARRETT, 2016)
Linguagem Python 
Linguagem de programação Python desenvolvida em alto nível por uma comunidade aberta, foi iniciada pelo programador neerlandês Guido Van Rossum. É uma linguagem interpretada, imperativa orientada para objetos, sendo funcional dinâmica e forte.
Podendo realizar diversas formas como a construção de sistemas, analise de dados, inteligência artificial, construção de aplicativos, entre diversas outras aplicações.
Figura 33 - Exemplo de Linguagem Python
Fonte: (PYTHON, 2005)
Sua fácil interpretação e aprendizagem é devido a ser uma linguagem desenvolvida em alto nível. Tem um nível abstração elevado, diferente do código de máquina e mais similar a linguagem humana. Sendo uma linguagem script, ou seja, uma linguagem escrita especialmente para execução de tarefa sem precisar compilação. (PYTHON, 2005)
Linguagem C++
C++ desde 1990 é uma linguagem mais popular, é uma linguagem de programação compilada multi-paradigma.
OpenCV 
Sistema de Biblioteca de Visão Computacional de Código Aberto (Open Source Computer Vision Library) desenvolvida pela Intel, é lançado sobre uma licença BSD e é totalmente gratuito para uso comercial e acadêmico.
Constituído como uma biblioteca com várias plataformas de atuação, possui interfaces de comunicação com linguagem de programação como C ++, Python e Java e suporta sistemas operacionais como Windows, Linux, Android entre outros sistemas. 
O OpenCV foi projetado para eficiência de visão computacional e com principal função em tempo real. Escrito em C e C++ para melhor aproveitamento da biblioteca e podendo aproveitar o processamento de vários núcleos. Em conjunto com o OpenCL, pode-se aproveitar a aceleração de hardware da plataforma de computação subjacente heterogênea. (TUTORIAL OPENCV, 2018)
DESENVOLVIMENTO
CONCEITOS
Inicialmente a ideia é que um objeto colocado em uma área conhecida e visualizada pela câmera de vídeo seja identificado e possa ser conhecida sua localização no plano. Em seguida o braço robótico com auxílio do sistema computacional possa pegar esse objeto e leva-lo para outro lugar.
Câmera
Processamento dos dados
Movimenta o Braço
Figura 34 - Fluxo do SistemaFonte: Autores
PARTES MECÂNICA
Braço Robótico
Figura 35 - Foto do Braço Robótico
Fonte: Autores
O braço é constituído por 6 (seis) juntas e 4 (quatro) elos fixados em uma base de acrílico como mostra a figura a baixo:
Figura 36 - Perspectiva do Braço Robótico
Fonte: Autores
Juntas do Braço Robótico
As juntas foram enumeradas de 0 (zero) á 3 (três) a união entre os elos, sendo a 4 (quatro) o pulso e a 5 (cinco) a garra.
Figura 37 - Vista Lateral Identificando as Juntas
Fonte: Autores
Elos do Braço Robótico
Foi considerado o elo 0 (zero) a altura entre a plataforma e a junta 1 (um). 
Figura 38 - Elos do Braço Robótico
Fonte: Autores
Elo 0 (Zero)
Figura 39 - Vista em Perspectiva do Elo 0 (zero)
Fonte: Autores
Figura 40 - Planta do Elo 0 (zero)
Fonte: Autores
Figura 41 - Vista lateral do Elo 0 (zero)
Fonte: Autores
Elo 1 (um)
Figura 42 - Vista em perspectiva do Elo 1 (um)
Fonte: Autores
Figura 43 - Planta do Elo 1 (um)
Fonte: Autores
Figura 44 - Vista lateral do Elo 1 (Um)
Fonte: Autores
Elo 2 (Dois)
Figura 45 - Vista em perspectiva do Elo 2 (Dois)
Fonte: Autores
Figura 46 - Planta do Elo 2 (dois)
Fonte: Autores
Figura 47 - Vista lateral do Elo 2 (dois)
Fonte: Autores
Pulso
Figura 48 - Vista em perspectiva do pulso
Fonte: Autores
Figura 49 - Planta do Pulso
Fonte: Autores
Figura 50 - Vista Lateral do Pulso
Fonte: Autores
Garra
Figura 51 - Vista em perspectiva da garra
Fonte: Autores
Figura 52 - Planta da garra
Fonte: Autores
Figura 53 - Vista Lateral da garra
Fonte: Autores
Servos
Foi utilizado 4 servos modelo SDR 3135 MG e 2 servos MG 966R para ligar os elos, pulso e garra.
Figura 54 - Servos Ligados nos Elos
Fonte: Autores
Base
A base tem 60 cm por 52 cm o eixo da junta 0 está fixado a 23 cm na horizontal e a 14,5 cm na vertical como demostrado na imagem abaixo.
Figura 55 - Planta da Base
Fonte: Autores
HARDWARE E SOFTWARE
Ligações
Figura 56 – Esquema de Ligações dos Hardwares
Fonte: Autores
Raspberry Pi 3 Model B+
O modelo usado é Raspberry Pi 3 Model B+ com processador de 1.4GHz 64-bit quad-core processor, dual-band wireless LAN, Bluetooth 4.2/BLE, faster Ethernet, and Power-over-Ethernet support (with separate PoE HAT)
Figura 57 - Rasberry Pi 3 Model B+
Fonte: (RASPBERRYPI.ORG, 2018)
No computador Raspberry Pi serão processadas as informações de vídeo enviadas pela câmera, os cálculos das coordenadas e ângulos das juntas.
Arduino Mega 2560
Por ter saídas pwm optou-se pelo Arduino Mega 2560 para comandar os servos e movimentar o braço robótico.
Figura 58 - Arduino Mega 2560
Fonte: (STORE.ARDUINO.CC, 2018)
Ligação Raspberry com Arduino Mega 2560
A comunicação entre o Arduino e o Raspberry é feita pelo protocolo I2C que se baseia em mestre e escravo, usando as saídas como demostrado na figura 58 a baixo
Na ligação entre eles para comunicação Raspberry é o mestre e o arduino é o escravo. 
Figura 59 - Ligação Raspberry com Arduino usando I2C
Fonte: Autores
Para ter continuidade nas ligações fez em uma placa de circuito impresso ilhada a conexão do Raspberry com o Arduino ilustrada na figura abaixo:
Figura 60 - Ligação I2C em placa impressa – Vista superior
Fonte: Autores
Figura 61 - Ligação I2C em placa impressa - Vista inferior
Fonte: Autores
No Arduino Mega definido o endereço 0x20 como demostrado no código a baixo usando a biblioteca Wire.h
#include <Wire.h>
#define SLAVE_ADDRESS 0x20
// initialize i2c as slave
Wire.begin(SLAVE_ADDRESS);
//Definimos na configuração inicial
void setup() {
// initialize i2c as slave
Wire.begin(SLAVE_ADDRESS);
// define callbacks for i2c communication
Wire.onReceive(receiveData);
Wire.onRequest(sendData);
Serial.println("Ready!");
}
Definindo as funções receiveData (para receber dados) e SendData (para enviar dados).
No RPI habilitado o protocolo I2C
Verificando se a comunicação está correta, digitando no terminal do Raspberry o comando.
lsLs –l /dev/i2c*
Depois para verificado a porta de comunicação nesse caso ficou #0x20
sudo i2cdetect –y 1
Para mandar informação para o arduino do Raspberry usando o python usa-se o código abaixo.
import smbus
# Para RPI version 1. Use “bus = smbus.SMBUS(0)”
bus = smbus.SMBus(1)
# Este é o endereço que configuramos no Arduino
address = 0x20
 
Para enviar e receber mensagens precisamos definir duas funções
def writeNumber(value):
 bus.write_byte(address, value)
 return -1
def readNumber():
 number = bus.read_byte(address)
 return number
 
Para enviar a mensagem (writeNumber) e ler mensagem(readNumber).
writeNumber(90)
resposta = readNumber
print(resposta)
Lógica no Arduino.
O Arduino tem a função de receber informações do Raspberry e movimentar os servos. No seu código tem 3 (três) matrizes de tamanho 6 (seis), onde são armazenados os respectivos ângulos descrito na figura abaixo
	
	Matrizes
	
	aAng_Origem
	aAng_Atual
	aAng_Destino
	0
	 
	 
	 
	1
	 
	 
	 
	2
	 
	 
	 
	3
	 
	 
	 
	4
	 
	 
	 
	5
	 
	 
	 
Figura 62 – Matrizes de Controle no Arduino
Fonte: Autores
Quando o arduino recebe uma mensagem contendo o servo e ângulo, é atualizado a matriz aAng_Destino, como ele está em um loop infinido, ele vai movimentar o servo em 1º (grau) atualizando a matriz aAng_Atual e aAng_Origem até igualar a matriz aAng_Destino á aAng_Origem.
No arduino o código descrito no APÊNDICE I, 
Ligação dos Servos com o Arduino e a fonte Alimentação.
Esquema de ligação dos servos no Arduino com fonte de alimentação para os servos externas.
A fonte fornece energia para os servos passando antes pelo regulador de tensão para que não haja oscilação no fornecimento de energia.
Os servos têm 3 (três) fios, sendo 1(um) positivo, 1(um) negativo e 1(um) para entrada do pulso.
O Arduino manda um sinal (pwm) para o servo através do fio laranja, dependendo do sinal o eixo do servo vai se movimentar para um determinado ângulo.
Figura 63 - Esquema de Ligação para Alimentação dos Servos
Fonte: Autores
Para garantir a continuidade da alimentação dos servos, criou-se uma placa para liga-los.
Figura 64 - Foto da placa de alimentação dos servos – vista superior
Fonte: Autores
Figura 65 - Foto da placa de alimentação dos servos - vista inferior
Fonte: Autores
Ligação Câmera de Vídeo
Câmera de vídeo foi ligada no Raspberry na entrada de rede no conector RJ45 a alimentação de energia da câmera POE foi feita pelo MidSpan (Power Injection) como mostra a figura abaixo.
Figura 66 - Esquema de ligação da câmera no Raspberry
Fonte: Autores
Configurando a câmera Pelco
O IP fixado através do browser da câmera
Figura 67 - Configuração da Câmera Pelco
Fonte: Pelco
Em Python com a biblioteca OpenCV concta-se a câmera de vídeo, tratando as informações de uma área de interesse, onde se um objeto fosse inserido o braço robótico retira ele da área de interesse vide APÊNDICE 2
Figura 68 - Imagem da Câmera
Fonte: Autores
Definição das Funções e Cálculos
Para auxiliar no desenvolvimento dos cálculos foi desenvolvida uma planilha no Microsoft Excel para conferir se os cálculos estão corretos seguindo as anotações de modelo DH como demostrado a baixo
As medidas estão em centímetros e os ângulos em graus.
Primeiramente as definições dos frames, que são os planos para cada junta.
Figura 69 - Definição dos Planos para cada Junta
Fonte: Autores
Podendo notar que o braço Robótico é um modelo 4R (Quatro rotações) ou 4GL (quatro graus de liberdade)
Primeiramente no cálculo da cinemática Direta usando o modelo DH e cria-se a matriz para cada junta e elo.
Tabela 3 – Dados Modelo de DH para Cinemática Direta
	Junta
	Elo (cm)
	
	α
	0
	10
	55
	35
	1
	10
	45
	45
	2
	6
	60
	30
	3
	19,5
	-45
	45
Como resultado na planilha do Excel obteve-se a tabela abaixo
Tabela 4 – Matriz Modelo

Continue navegando