• Nenhum resultado encontrado

Desenvolvimento dos sistemas de localização e locomoção de um robô móvel educacional

N/A
N/A
Protected

Academic year: 2022

Share "Desenvolvimento dos sistemas de localização e locomoção de um robô móvel educacional"

Copied!
58
0
0

Texto

(1)

INSTITUTO FEDERAL DO ESPÍRITO SANTO ENGENHARIA DE CONTROLE E AUTOMAÇÃO

MATEUS FALCÃO

DESENVOLVIMENTO DOS SISTEMAS DE LOCALIZAÇÃO E LOCOMOÇÃO DE UM ROBÔ MÓVEL EDUCACIONAL

Linhares - ES 2022

(2)

MATEUS FALCÃO

Trabalho de Conclusão de Curso apresentado à Co- ordenadoria do Curso de Engenharia de Controle e Automação do Instituto Federal do Espírito Santo - campusLinhares, como requisito parcial para a obten- ção do título de Bacharel em Engenharia de Controle e Automação.

Orientador: Prof. Dr. Lucas Vago Santana

Linhares - ES 2022

(3)

(Biblioteca do Campus Linhares)

CDD: 629.892 Bibliotecário/a: Andreia da Costa Silva CRB6-ES nº 583

F178dd Falcão, Mateus.

Desenvolvimento dos sistemas de localização e locomoção de um robô móvel educacional / Mateus Falcão. - 2022.

58 f. : il. ; 22,9 MB.

Orientador: Lucas Vago Santana

TCC (Graduação) Instituto Federal do Espírito Santo, Campus Linhares, Engenharia de Controle e Automação, 2022.

1. Robótica. 2. Automação e controle. 3. Prevenção de incêndio. 4.

Locomoção. I. Santana, Lucas Vago . II.Título III. Instituto Federal do Espírito Santo.

(4)
(5)

AGRADECIMENTOS

Em primeiro lugar, a Deus, por ter permitido que eu tivesse saúde e determinação para a realização deste trabalho.

Aos meus pais, Maria Isabel Turi Falcão e Roque Carminati Falcão, por estarem sempre comigo, acreditando no meu potencial, me apoiando e me motivando nos momentos difíceis e comemorando junto os momentos alegres.

Ao meu irmão Wesley Falcão, pela paciência, dedicação e conselhos ao longo deste meu percurso.

Ao meu amigo, Vinicius de Moura Siqueira, pelo companheirismo durante essa jornada, pelas noites em claro dedicadas aos nossos projetos, estando sempre disposto a ajudar.

Aos amigos que me acompanham desde o ensino médio, aos amigos que me acompanharam nas idas e vindas diárias aocampus, pelos bons momentos vividos.

Em especial, ao professor Lucas Vago Santana, por me orientar de forma alegre e contagiante em vários projetos durante a graduação e o ensino médio, contribuindo fortemente para a minha formação acadêmica e social.

(6)

“Quanto mais você trabalha, mais sortudo você fica.”

(Mike Adenuga)

(7)

RESUMO

Na robótica móvel a navegação de um robô pelo seu ambiente de trabalho se dá pelo trabalho conjunto dos chamados sistemas de localização e de controle da locomoção. Localização é um termo associado à capacidade do robô em determinar sua posição espacial, enquanto locomoção se associa à maneira pela qual seu corpo se movimenta no espaço. Dentre os arranjos existentes para locomoção sobre superfícies planas, os mecanismos de tração à rodas estão entre os mais difundidos e eficientes, podendo ser vistos em aplicações que vão desde os carros autônomos até aspiradores de pó robotizados para uso doméstico.

Este trabalho visa apresentar o desenvolvimento de um sistema dedicado a realizar a localização e outro para o controle da locomoção de um robô móvel á rodas com propósito educacional. A estratégia de controle da locomoção é baseada em uma arquitetura de camadas, na qual em um nível hierárquico superior (alto nível), implementa-se um comportamento cinemático de controle denominado ponto-a-ponto (goal-to-goal), enquanto em um nível hierárquico inferior (baixo nível), controladores PID são utilizados no controle da velocidade dos motores elétricos do veículo. A realimentação de dados de localização é viabilizada por odometria, integrando-se sinais coletados deencodersnas rodas do veículo para estimar o seu posicionamento espacial. Os sistemas foram implementados sobre um protótipo de robô educacional que demonstrou, através de resultados experimentais, uma resposta satisfatória aos testes sob os quais foi submetido.

Palavras-chave: Locomoção. Odometria. Robótica. Controle.

(8)

ABSTRACT

In mobile robotics the navigation of a robot through its workspace is accomplished by the joint work of the so-called localization and locomotion control systems. Localization is mainly associated with the robot’s ability to determine its spatial position, while locomotion deals with how its body moves in space. Among the existing arrangements for it’s movements on flat surfaces, wheel-driven mechanisms are among the most widespread and efficient, beign seen in applications ranging from autonomous cars to robotic vacuum cleaners for domestic use. This work aims to present the development of one dedicated system to perform localization and another to control the locomotion of a wheeled mobile robot for educational purposes.

The control strategy developed with locomotive purposes is based on a layered architecture, which at a higher hierarchy level implements a kinematic control behavior called goal-to-goal, while using PID controllers to control the speed that the motors are going to perform. The feedback for it’s localization is provided by odometry, from integrating signals collected from encoders on the vehicle’s wheels to estimate its spatial positioning. These components had been implemented in an educational robot prototype that demonstrated, through experimental results, a satisfactory response to the tests under that it was issued.

Keywords: Locomotion. odometry. robotics. Control.

(9)

LISTA DE ILUSTRAÇÕES

Figura 1 – Professor Seymourt Papert com sua criação. . . 19

Figura 2 – Pato mecânico de Jacques de Vaucanson. . . 20

Figura 3 – “O Escrivão” construído pelos irmãos Droz. . . 20

Figura 4 – Imagem da patente do primeiro manipulador industrial. . . 21

Figura 5 – Unimate na linha de produção da General Motors. . . 21

Figura 6 – Classificação de robôs segundo ambiente de operação. . . 22

Figura 7 – Classificação de robôs segundo sua aplicação. . . 22

Figura 8 – Ciclo de repetição das funções primitivas de um robô. . . 23

Figura 9 – Exemplos de robôs móveis. . . 23

Figura 10 – Exemplos de robôs móveis da Boston Dynamics. . . 24

Figura 11 – Classificação segundo anatomia. . . 25

Figura 12 – Exemplos de robôs móveis de rodas. . . 25

Figura 13 – Exemplo de robô móvel de esteira. . . 26

Figura 14 – Exemplo de robôs móveis com pernas. . . 26

Figura 15 – Quadrúpede-humanoide transformer. . . 26

Figura 16 – Princípio de funcionamento da tração diferencial . . . 28

Figura 17 – Exemplos de configuraçõe (poses) do robô móvel. . . 29

Figura 18 – Sinais de controle do uniciclo. . . 29

Figura 19 – Esquema e variáveis da estratégia de controle de posiçãogoal-to-goal. . . 30

Figura 20 – Esquema de variáveis e parâmetros do uniciclo. . . 31

Figura 21 – Representação esquemática de uma roda. . . 31

Figura 22 – Esquema para modelagem da velocidade linearudo uniciclo. . . 32

Figura 23 – Esquema para modelagem da velocidade angular ωdo uniciclo. . . 32

Figura 24 – Placa de desenvolvimento para ESP32.. . . 34

Figura 25 – Módulo eletrônico com ponte H L298N. . . 34

Figura 26 – Esquema de funcionamento da ponte H. . . 35

Figura 27 – Modulação PWM. . . 35

Figura 28 – Resultado do experimento de sintonia do PID 1. . . 36

Figura 29 – Resultado do experimento de sintonia do PID 2. . . 36

Figura 30 – Variando degraus de entrada do experimento de sintonia do PID 2. . . 37

Figura 31 – Resultado do experimento de sintonia do PID 3. . . 37

Figura 32 – Variando degraus de entrada do experimento de sintonia do PID 3. . . 38

Figura 33 – Arquitetura de implementação dos sistemas de localização e de controle do robô. . . . 39

Figura 34 – Motor de corrente contínua com caixa de redução e encoder acoplados.. . . 39

Figura 35 – Estados dos canais doencoders.. . . 40

Figura 36 – Interface webdesenvolvida para telemetria e comando do robô. . . 41

Figura 37 – Modelo 3D do robô. . . 41

Figura 38 – Cortando peças da estrutura mecânica do robô em MDF. . . 42

Figura 39 – Protótipo da placa de circuito eletrônico . . . 42

Figura 40 – Protótipo de robô educacional. . . 43

Figura 41 – Deslocamento com 25% deumax.. . . 44

Figura 42 – Deslocamento com 50% deumax. . . 45

Figura 43 – Deslocamento com 75% deumax. . . 46

(10)

Figura 44 – Deslocamento com 100% deumax. . . 47

Figura 45 – Deslocamento com distância maior. . . 48

Figura 46 – Cotação de kit de robótica VEX IQ. . . 55

Figura 47 – Cotação de kit de robótica Lego Spike Prime. . . 56

Figura 48 – Cotação de kit de robótica ELETROGATE.. . . 56

Figura 49 – Cotação de kit de robótica ROBOCORE. . . 57

(11)

LISTA DE TABELAS

Tabela 1 – Erro entre odometria e posição real. . . 48

(12)

LISTA DE ABREVIATURAS E SIGLAS

ABP Aprendizagem Baseada em Problemas . . . 16

AGV Automated Guided Vehicle (veículo autoguiado) . . . 27

CR Centro de rotação . . . 32

CNC Controle Numérico Computadorizado . . . 42

IA Inteligência Artificial. . . 18

IoT Internet of Things . . . 15

IP Internet Protocol (protocolo de rede). . . 40

JSON JavaScript Object Notation . . . 40

MIT Massachusetts Institute of Technology . . . 15

MDF Medium Density Fiberboard (placa de fibra de média densidade). . . 42

PID Proporcional, Integral e Derivativo . . . 16

PPR Pulsos por revolução . . . 39

PWM Pulse Width Modulation (Modulação por largura de pulso) . . . 34

RPAS Remotely Piloted Aircraft Systems. . . 24

STEM Science, Technology, Engineering and Math (Ciências, Tecnologia, Engenharia e Matemática) 15 TIC Tecnologia da Informação e Comunicação . . . 15

(13)

LISTA DE SÍMBOLOS

π Letra grega pi - Constante matemática

ϕ Letra grega phi - Angulo de rotação do nariz do robô ρ Letra grega rho - Região de parada do robô

ω Letra grega minúscula ômega - Velocidade angular

(14)

SUMÁRIO

1 INTRODUÇÃO . . . . 15

1.1 Objetivos . . . 16

1.1.1 Objetivo geral . . . 16

1.1.2 Objetivos específicos . . . 16

1.2 Justificativa . . . 16

2 REFERENCIAL TEÓRICO . . . . 18

2.1 Robótica educacional ou robótica pedagógica . . . 18

2.2 Robótica . . . 18

2.2.1 Classificação dos robôs. . . 21

2.3 Robótica Móvel. . . 22

2.3.1 Classificação dos robôs móveis. . . 24

2.3.1.1 Segundo o ambiente de navegação e anatomia . . . 24

2.3.1.2 Segundo o tipo de controle . . . 26

2.3.1.3 Segundo sua aplicação . . . 26

3 MATERIAIS E MÉTODOS . . . . 28

3.1 Princípio de funcionamento da tração diferencial . . . 28

3.2 Configuração de um robô móvel de tração diferencial. . . 28

3.3 O modelo simplificado do uniciclo . . . 29

3.4 A estratégia de controle de posição (goal-to-goal) . . . 29

3.5 O modelo completo da tração diferencial . . . 30

3.6 Controle dos motores . . . 33

3.6.1 Microcontrolador . . . 33

3.6.2 Interface de potência. . . 34

3.6.3 Sintonia do controlador PID . . . 35

3.6.3.1 Experimento de Sintonia do PID 1 . . . 35

3.6.3.2 Experimento de Sintonia do PID 2 . . . 36

3.6.3.3 Experimento de Sintonia do PID 3 . . . 37

3.7 O sistema de controle da locomoção . . . 38

3.8 O sistema de localização por odometria. . . 39

3.9 Comunicação . . . 40

3.10 O protótipo de robô educacional . . . 41

4 RESULTADOS EXPERIMENTAIS . . . . 44

4.1 Sequência de experimentos 1 . . . 44

4.2 Sequência de experimentos 2 . . . 47

5 CONCLUSÕES E TRABALHOS FUTUROS . . . . 50

REFERÊNCIAS . . . . 51

(15)

ANEXOS 54

ANEXO A – COTAÇÃO DE CONJUNTOS EDUCACIONAIS DE ROBÓTICA . . 55 A.1 Conjuntos educacionais de maior custo de aquisição . . . 55 A.2 Conjuntos educacionais de menor custo de aquisição . . . 56

(16)

15

1 INTRODUÇÃO

Nos dias atuais, o avanço da tecnologia vem ocorrendo em curtos intervalos de tempo. A inserção de novas tecnologias no mercado provoca mudanças nas relações de trabalho e reações entre as pessoas envolvidas. Segundo Cunningham, Farquharson e Hull(1991), que estudou receios humanos quanto ao uso de novas tecnologias no início dos anos 1990, tais reações são em sua maioria injustificadas e podem ser mitigadas com maior esclarecimento e treinamento sobre as tecnologias.

Com a chegada da 4° revolução industrial, o agro 4.0, Internet of Things (IoT), 5G e outras Tecnologia da Informação e Comunicação (TIC), presencia-se cada vez mais avanços tecnológicos sobre várias áreas do conhecimento e, por isso, muitas profissões sofrerão modificações a partir delas (CARDOSO, 2016).

Uma das áreas que se destaca neste contexto evolutivo é a robótica. Os robôs são utilizados nas mais diversas aplicações que vão desde atividades industriais, como as ações realizadas por manipuladores em linhas de produção em série, até atividades domésticas cotidianas, como a limpeza do piso de uma casa realizada por robôs móveis (SIEGWART; NOURBAKHSH; SCARAMUZZA,2011). Portanto, deter conhecimentos sobre robótica se torna uma habilidade útil no mercado de trabalho do futuro.

Com a facilidade de acesso a materiais, as pesquisas direcionadas à robótica cresceram muito nos últimos tempos. Uma das frentes que mais se beneficiou dessas facilidades foi justamente aquela preocupada com a disseminação desse conhecimento, denominada de robótica educacional ou robótica pedagógica (KHANLARI,2013).

A robótica educacional representa um conjunto de atividades, programas pedagógicos e recursos educacionais que permitem a implementação de modelos educacionais como o Science, Technology, Engineering and Math(Ciências, Tecnologia, Engenharia e Matemática) (STEM) (DANIELA; LYTRAS, 2019). Iniciada nos anos 1960 pelos estudos do professor Seymour Papert noMassachusetts Institute of Technology (MIT), as primeiras pesquisas desse ramo deram fruto à linguagem de programação LOGO (RESNICK,1993).

Desde então, a robótica pedagógica vem sendo utilizada como recurso para promover habilidades do pensamento computacional, conforme definição de Wing (2006), entre crianças e adolescentes e estimulá-los no uso da criatividade para solução de problemas (AZEVÊDO; FRANCISCO; NUNES,2017).

Para possibilitar o ensino desta tecnologia, a literatura recomenda o uso de experiências práticas.

Chatzopoulos et al.(2019) explica que uma plataforma educacional adequada para o ensino da robótica deveria ser:

• Barata, para permitir o menor número de estudante por equipamento;

• Facilmente programada, dando acesso simples aos componentes do robô;

• Comunicação sem fio entre o robô e o ambiente de programação, para permitir fácil implementação e testes das funções de movimentos do robô;

• Robusta, podendo ser facilmente construído e mantido;

Diante dessas exigências, torna-se um desafio para os educadores escolher qual plataforma adotar para o ensino da robótica em suas escolas. Por um lado, soluções comerciais como o Lego Spike Prime

(17)

Capítulo 1. Introdução 16

(LEGO,2021) e o VEX IQ (VEX,2019), possuem boa qualidade, mas são de tecnologia proprietária e custo de aquisição elevado (ver AnexoA). Por outro lado, soluções como oskits educacionais deROBOCORE (2022) eELETROGATE(2022), são baseadas em tecnologias abertas, de menor custo de aquisição (ver AnexoA), mas que, todavia, exigem maior esforço em seu entendimento e operação. Algo que nem sempre traz a melhor experiência ao usuário leigo.

Este cenário evidencia o seguinte problema tecnológico em aberto: Como criar um robô educa- cional equipado com as características desejáveis para uma boa experiência do usuário, cujo custo de fabricação/aquisição não o torne inviável como plataforma de ensino de robótica?

Neste trabalho, apresenta-se um recorte de uma pesquisa, descrevendo partes de uma solução que está sendo desenvolvida no Ifescampus Linhares para este problema.

1.1 Objetivos

1.1.1 Objetivo geral

Desenvolver os sistemas de localização e de controle da locomoção de um protótipo de robô móvel educacional.

1.1.2 Objetivos específicos

• Projetar e fabricar a estrutura eletrônica do sistema embarcado no robô educacional, em termos de processamento de dados, comunicação digital, sensoriamento e atuação;

• Implementar uma estratégia de comunicação sem fio entre o sistema embarcado no robô e um computador para fins de telemetria das variáveis de estado do protótipo;

• Projetar e implementar um sistema de localização por odometria para o robô;

• Projetar e implementar um sistema de controle da locomoção do robô, baseado na estratégia cinemática ponto-a-ponto (goal-to-goal) e controladores Proporcional, Integral e Derivativo (PID) para os motores do robô;

• Testar e validar os sistemas.

1.2 Justificativa

Desde 2020 o Ifes de Linhares gerencia um projeto de extensão intitulado “Aprendendo robótica na escola: uma abordagem usando a metodologia Aprendizagem Baseada em Problemas (ABP)”, cujo objetivo é realizar a iniciação tecnológica, isto é, apresentar pela primeira vez aos estudantes temas como robótica e programação. Tal projeto funciona em parceria com a Secretaria de Estado da Educação do Espírito Santo e até outubro de 2022 soma 178 atendimentos a estudantes matriculados no ensino fundamental e médio de 4 escolas da rede pública de ensino.

Neste projeto, o principal produto entregue à comunidade é um curso de introdução à robótica, no qual os estudantes são desafiados a encontrar soluções de problemas presentes nas olimpíadas científicas dessa área. Os experimentos do curso são conduzidos através da plataforma de robótica educacional da LEGO Mindstorm EV3 (LEGO,2021).

No entanto, os robôs EV3 pertencem ao Ifes de Linhares e são emprestados às escolas parceiras para realização do curso, pois as mesmas não possuem disponibilidade de recursos financeiros suficientes

(18)

Capítulo 1. Introdução 17

para aquisição deste tipo material para uso próprio. Isso limita o acesso que os beneficiados têm ao material experimental e restringe a autonomia nos estudos.

Diante desta situação, resolveu-se aproveitar a infraestrutura do laboratório IFMaker do Ifes campusLinhares e criar um protótipo de robô educacional útil no atendimento de projetos e parceiros nas circunstâncias mencionadas. Nasceu daí outro projeto intitulado "IFMaker-Bot: o robô educacional do IFMaker", cujo foco é desenvolver um robô educacional que incorpore as características desejáveis para um equipamento de estudos e entregá-lo com um melhor custo-benefício que os modelos disponíveis no mercado. Deste projeto que se originam os resultados apresentados neste trabalho de conclusão de curso.

(19)

18

2 REFERENCIAL TEÓRICO

2.1 Robótica educacional ou robótica pedagógica

A robótica é uma área de estudos abrangente que engloba conhecimentos de diferentes níveis, desde o ensino fundamental até pós-graduações. Por natureza, é uma ciência multidisciplinar que envolve várias áreas do conhecimento, tais como: mecânica, física, eletrônica, computação, Inteligência Artificial (IA), biologia e entre outras (SILVA,2009).

A junção entre robótica e educação possui alta aprovação. Quando se utiliza um olhar pedagógico para um robô, percebe-se nele uma série de itens que exploram a aplicação prática de conceitos abstratos, muitas vezes vistos apenas de forma teórica em sala. Essa capacidade da robótica tende a despertar a imaginação do estudante que passa a ter condições de realizar experiências e resolver desafios práticos sobre conteúdos abstratos, como os explicados pela matemática (LOPEZ-CAUDANA et al.,2020).

O ato em que o professor utiliza meios tecnológicos para ensinar ao aluno sobre montagem, controle e programação de robôs também faz parte da robótica pedagógica (LOMONACO; DIETZSCH, 1994). Em seu livro,Children, Computers, and Powerful Ideas,Papert(1980) menciona que nos anos 1980 os computadores estavam iniciando sua jornada aos lares das pessoas e pouco se falava em como utilizá-lo como uma ferramenta de ensino e, por isso, liderou à época a equipe que desenvolveu a linguagem LOGO, considerada a primeira linguagem de programação projetada para crianças (SOLOMON et al.,2020).

A linguagem LOGO ficou conhecida pelo símbolo de uma pequena tartaruga virtual na tela, utilizada como objeto de interação com usuário que a comandava na realização de desenhos geométricos e movimentos por meio de códigos de computador (MARTIN, 1988).

Um fato curioso é que inicialmente a tartaruga da LOGO era na verdade um robô real, físico, como se observa na Figura1. No entanto, o alto custo associado à construção de dispositivos robóticos na época motivou que o mascote da linguagem se tornasse uma instância virtual dentro dos computadores, mais fácil de reproduzir e utilizar por mais usuários (RUANO; SACRISTAN; SAURA, 2017).

Desde então, a robótica educacional vem sendo valorizada como ferramenta de ensino pelos educadores. De acordo comMorán(2015), "a melhor forma de aprender é combinando equilibradamente atividades, desafios e informação contextualizada". O processo de ensino-aprendizagem deve envolver na construção do conhecimento uma metodologia que forneça um ensino motivador. Tais afirmações se relacionam diretamente com a robótica educacional, pois ao alinhar conhecimentos teóricos e práticos, instigar alunos a buscar soluções para problemas e desafios, desenvolver projetos elaborados, ela se mostra útil na implementação de práticas pedagógicas baseadas em metodologias ativas, cuja premissa é colocar o aluno como protagonista de sua aprendizagem.

Por fim, destaca-se que sua utilização da robótica educacional com crianças é muito importante pois, de acordo comSilva e Oliveira(2019), ao criar um ambiente de aprendizagem agradável, ela pode, sobretudo, despertar no estudante o interesse acadêmico ou profissional pelo assunto.

2.2 Robótica

O termo robô pode significar coisas diferentes sob circunstâncias diferentes. Muitas pessoas, influenciadas em seu passado pelos contos dos livros e filmes de ficção científica, podem carregar consigo

(20)

Capítulo 2. Referencial Teórico 19

Figura 1 – Professor Seymourt Papert com sua criação.

Fonte: Ruano, Sacristan e Saura(2017)

definições distintas sobre o que seria um robô e suas capacidades (CORKE,2017).

O desejo de construir máquinas que realizem as mesmas tarefas que os seres humanos e animais vem de várias gerações atrás. No Egito eram construídos homens mecânicos em formas de estátuas com articulações. Na Grécia antiga há relatos de estátuas munidas de tubos falantes, e a partir do século IV A.C., marionetes acionadas por sistemas de polias e pesos (PIERI,2002).

No século XVI, bonecos mecânicos acionados por sistemas de cordas, chamados autômatos, imitavam algumas atividades humanas, chamando a atenção para a possibilidade de descrever seres e comportamentos da natureza. Em 1589, Bernadino Baldi publicou um texto contendo reflexões sobre o potencial dosautômatos e da natureza (TEIXEIRA,2011).

No século XVIII começaram a ser construídosautômatos, dentre eles, o pato mecânico de Jacques de Vaucanson (Figura2) criado em 1750. Os irmãos Droz, na Suíça, também ficaram conhecidos pelas suas construções, dentre elas, o escrivão (Figura3), o desenhista e a tocadora, criadas em 1733 (TEIXEIRA, 2011).

No entanto, foi o dramaturgo Karel Čapek quem introduziu a palavra tchecarobota, que significa trabalho escravo e monótomo, pela primeira vez em 1921 através de seu conto de ficçãoRossum’s Universal Robots, estabelecendo na literatura de ficção científica o uso da palavra robô (CORKE,2017).

Em 1939, Issac Asimov, popularizou o termo robô no livro Eu Robô (I Robot), definindo nesta obra as 3 leis da robótica (PIERI, 2002):

• Um robô jamais deve causar dano a um ser humano nem, através de omissão, permitir que isto aconteça;

• Um robô deve sempre obedecer o ser humano, a menos que isso entre em conflito com a primeira lei;

• Um robô deve proteger-se de danos, a menos que isto entre em conflito com a primeira ou a segunda

(21)

Capítulo 2. Referencial Teórico 20

Figura 2 – Pato mecânico de Jacques de Vaucanson.

Fonte:Sack(2018)

Figura 3 – “O Escrivão” construído pelos irmãos Droz.

Fonte: Adams(2012)

lei.

No final do século XVIII, a revolução industrial trouxe a adoção do modelo mecanicista de Taylor e Fayol, que proporcionaram mudanças no formato de produção a levar máquinas para a indústria, marcando o início da produção em larga escala (PIERI,2002).

Porém, foi apenas a partir de 1954 que os robôs passaram a integrar o meio industrial. É dessa época que se tem registro daquela que é considerada a primeira patente de um robô industrial da história, requisitada por George C. Devol nos Estados Unidos (Figura4). No documento (DEVOL,1954) o inventor descreve um braço mecânico munido com uma garra, montado sobre um sistema de trilhos que permitia um deslocamento controlado via codificação de padrões magnéticos.

Em 1956, George C. Devol juntamente com Joseph Engelberger fundaram aUnimation (Universal Automation), uma empresa de robôs industriais que em 1961 lançou o Unimate, o primeiro modelo de manipulador robótico industrial controlado via comando numérico computadorizado, cujas primeiras unidades foram destinadas às linhas de fundição da General Motors (CORKE,2017).

Diante de tantas demarcações históricas, ainda resta a seguinte dúvida: Mas afinal, o que é um robô?

(22)

Capítulo 2. Referencial Teórico 21

Figura 4 – Imagem da patente do primeiro manipulador industrial.

Fonte:Corke(2017)

Figura 5 – Unimate na linha de produção da General Motors.

Fonte:Corke(2017)

ParaCorke(2017), trata-se de "uma máquina capaz desentirseu ambiente e usar tal informação para planejar suas ações e alcançar um objetivo". Uma definição genérica que cabe muito bem aos dispositivos modernos que poderiam ser considerados robôs.

2.2.1 Classificação dos robôs

Os robôs podem ser classificados de várias formas, a começar pelo mecanismo de locomoção sobre o qual operam. A divisão mais comum é conforme ilustração da Figura6, entre robôs de plataforma fixa ou móvel (BEN-ARI; MONDADA, 2018).

Os robôs fixos são, normalmente, manipuladores de aplicação industrial que trabalham em ambientes bem definidos, realizando tarefas específicas como soldagem, pintura, corte ou transporte de peças em geral. Com a evolução dos sensores e interação humano-robô, os manipuladores vêm sendo cada vez mais utilizados em ambientes menos controlados e colaborativos como, por exemplo, no apoio a cirurgias de precisão (BEN-ARI; MONDADA,2018).

Os robôs móveis se movem e executam tarefas em ambientes desconhecidos e por isso precisam lidar com situações não previstas. Em seu ambiente de trabalho, um robô móvel pode enfrentar obstáculos fixos ou móveis e deve interagir com eles de forma segura. Exemplos desse tipo de robô são os aspiradores de pó robóticos (BEN-ARI; MONDADA, 2018).

(23)

Capítulo 2. Referencial Teórico 22

Figura 6 – Classificação de robôs segundo ambiente de operação.

Fonte: Adaptado deBen-Ari e Mondada(2018)

Os robôs também podem ser classificados quanto ao seu tipo de aplicação (Figura7) como: de manufatura, de serviço ou de campo (CORKE,2017).

(a) Robôs de manufatura.

Fonte:Dynamics(2022b) Fonte:ABB (2022)

(b) Robôs de serviços.

Fonte:bearrobotics(2022) Fonte:Philco(2022)

(c) Robôs de campo.

Fonte:NASA(2022) Fonte:XAG(2022)

Figura 7 – Classificação de robôs segundo sua aplicação.

2.3 Robótica Móvel

Em conformidade com a definição dada por Corke (2017) sobre o que é um robô, Siegwart, Nourbakhsh e Scaramuzza (2011) afirmam em seu livro que todo robô móvel se trata de um dispositivo que interage com seu ambiente de trabalho a partir de três funções primitivas:

• Percepção (Sense);

(24)

Capítulo 2. Referencial Teórico 23

• Planejamento (Plan);

• Ação (Act).

Este tipo de entendimento é facilmente verificado a partir de um robô seguidor de linha, que representa uma classe de robôs móveis amplamente utilizada. Neles, a função primitiva da percepção (Sense) é observada no uso de sensores ópticos ou magnéticos, em busca da linha no piso, usada como referência de posicionamento para o corpo do robô no espaço. De posse desses dados, a função primitiva de planejamento (Plan) poderia ser atribuída a um algoritmo implementado em microcontrolador para o cálculo dos sinais e ações necessárias para realizar o seguimento do caminho. Por fim, os resultados do planejamento seriam utilizados na execução da função primitiva da ação (Act), representada pelo circuito eletrônico de acionamento dos motores que movimentam o robô, fazendo-o cumprir o planejamento. Desse modo, compreende-se que a interação do dispositivo robótico com seu ambiente se dá através de ciclos permanentes de implementação dessas funções primitivas, conforme ilustra a Figura8.

Figura 8 – Ciclo de repetição das funções primitivas de um robô.

Fonte:PIERI(2002)

Os robôs móveis começaram a surgir nos anos 1940, encapsulando comportamentos reativos como o robô Elsie da Figura 9a, que reagia ao ambiente buscando nele uma fonte de luz. No final dos anos 1960, o robô Shakey da Figura 9b, surge como primeiro equipamento de uso geral, já embarcando tecnologias de localização e planejamento de caminho até um destino (CORKE,2017).

(a) Robô Elsie.

(b) Robô Shakey.

Figura 9 – Exemplos de robôs móveis.

Fonte:Corke(2017)

(25)

Capítulo 2. Referencial Teórico 24

Com o avanço na tecnologia, principalmente nas áreas de sensores, processamentos de imagens e IA, as tecnologias embarcadas nos robôs móveis se tornaram alvo de intensa pesquisa em busca de soluções mais robustas para a interação dos robôs com ambientes dinâmicos (PIERI, 2002).

Atualmente, plataformas robóticas no estado da arte, como aquelas desenvolvidas pela empresa especializada Boston Dynamics, entregam capacidades impressionantes. Robôs como o Spot (Figura10a) e o Atlas (Figura 10b) são equipados com sistemas de navegação e controle, capazes de lhes fazer andar, correr, pular, dançar, abrir portas, subir escadas, entre outras habilidades muito avançadas e interessantes (GUIZZO,2019).

(a) Robô Spot.

(b) Robô Atlas

Figura 10 – Exemplos de robôs móveis da Boston Dynamics.

Fonte: Adaptado deGuizzo(2019)

2.3.1 Classificação dos robôs móveis

A literatura apresenta muitas possibilidades de classificação para os robôs que se locomovem sobre uma base móvel, podendo-se citar classificações relacionadas ao ambiente de navegação, anatomia e ao tipo de controle (PIERI,2002), ou também conforme sua aplicação (CORKE,2017).

2.3.1.1 Segundo o ambiente de navegação e anatomia

Quando são classificados por seu ambiente de navegação, os robôs móveis podem ser divididos em três grupos: aéreos, aquáticos e terrestres, conforme ilustração da Figura 11.

Os robôs aéreos são aqueles que se locomovem pelo ar, a partir de propulsores ou múltiplos rotores.

Como exemplo mais comum dessa categoria, pode-se citar as Remotely Piloted Aircraft Systems (RPAS), muitas vezes chamadas de dronesúteis em diversos tipos de aplicações, tais como: segurança, agricultura, construção civil, entretenimento, outras.

(26)

Capítulo 2. Referencial Teórico 25

Figura 11 – Classificação segundo anatomia.

Fonte:PIERI(2002)

Os robôs aquáticos são aqueles que se locomovem pela água, através de propulsores e reservatórios de ar. Suas aplicações são em sua maioria de natureza exploratório em expedições e vistorias aquáticas.

Exemplos seriam submarinos ou barcos teleoperados.

Por fim, os robôs terrestres são aqueles que se locomovem por terra. São muito populares e construídos a partir de anatomias distintas. Por este motivo, podem ser sub-categorizados como:

• Robôs com rodas: São os de arquitetura construtiva mais corriqueira (Figura12). Muito eficientes em termos de consumo energético, porém frágeis em terrenos escorregadios ou irregulares.

(a) Robô educacional de rodas. (b) Robô de rodas de brinquedo.

Figura 12 – Exemplos de robôs móveis de rodas.

Fonte:AMAZON(2022).

• Robôs de esteiras: Normalmente são utilizados em terrenos irregulares, como solos arenosos e com pedras. Uma das principais desvantagens desse tipo de robô é a dissipação de energia causada pelo próprio giro das esteiras (Figura13).

• Robôs com pernas: Este tipo de anatomia de locomoção é útil para terrenos acidentados, com subidas ingrimes ou em ambientes com dificuldades específicas, como escadas. A principal dificuldade deste tipo de dispositivo está relacionada ao desenvolvimento de controladores e atuadores que lhe atribuam tais capacidades de maneira robusta (Figura14).

Um fator importante a ser considerado é que essas categorias não são exclusivas ente si. Vale destacar que recentes avanços no estado da arte da mobilidade robótica resultaram em plataformas adaptáveis, como é o caso do trabalho de Vollenweider et al.(2022), realizado peloRobotic System Labdo Instituto Federal de Tecnologia de Zurique na Suiça (ETH).

(27)

Capítulo 2. Referencial Teórico 26

Figura 13 – Exemplo de robô móvel de esteira.

Fonte:ROBOCORE(2022)

Figura 14 – Exemplo de robôs móveis com pernas.

Fonte: Dynamics(2022a)

(a) (b) (c)

Figura 15 – Quadrúpede-humanoide transformer.

Fonte:Vollenweider et al. (2022).

2.3.1.2 Segundo o tipo de controle

Quando os robôs são classificados de acordo com o tipo de controle, eles podem ser separados em três classes (PIERI,2002):

• Teleoperados: O operador controla a movimentação de todos os atuadores do robô.

• Semi-autônomos: O operador passa um comando de alto nível para o robô e ele realiza a movimentação dos seus atuadores sozinho.

• Autônomos: O robô consegue interagir com o ambiente, colhendo informações e toma suas próprias decisões de interação com o ambiente.

2.3.1.3 Segundo sua aplicação

Quando os robôs são classificados de acordo com suas aplicações (Figura 7), eles podem ser categorizados como (CORKE,2017):

(28)

Capítulo 2. Referencial Teórico 27

• Robôs manufatura: Todos aqueles utilizados em linhas de produção de bens de consumo. O ambiente em que estão dispostos pode ou não ser estruturado para realização da tarefa, desse modo, o robô pode ter previamente conhecimento exato de onde está ou precisa utilizar sensores para interagir com o ambiente. Em geral, robôs manipuladores são classificados como robôs de manufatura nas industriais, mas plataformas móveis também podem ser classificadas dessa forma. Este é ocaso dos Automated Guided Vehicle(veículo autoguiado) (AGV) utilizados para transporte de carga de forma autônoma em ambiente industrial.

• Robôs de serviços: São robôs utilizados para serviços em geral. Estes robôs possuem autonomia para ler dados de sensores e interagir com o ambiente tendo, por exemplo, que desviar de uma pessoa ou objeto e seu caminho. Estes robôs recebem comandos de alto nível e podem ser utilizados em tarefas do cotidiano, como limpeza de pisos, dutos, sistemas de vigilância, transporte de materiais leves, entre outras tarefas.

• Robôs de campo: São utilizados em ambientes não estruturados, poucos conhecidos ou perigosos. São empregados em missões de exploração (espacial, de cavernas, de vulcões, minas) e locais radioativos, com risco de acidente, entre outras aplicações.

Novamente, cabe destacar que as classificações dadas pela literatura não são exclusivas entre si, podendo um determinado tipo de robô vir a ser categorizado por uma ou mais delas.

(29)

28

3 MATERIAIS E MÉTODOS

Neste capítulo, apresentam-se as técnicas empregadas no desenvolvimento dos sistemas de localização e de controle da locomoção embarcados no protótipo de robô educacional do IFMaker. Em virtude da popularidade e da facilidade construtiva, o projeto focou na prototipação de um robô móvel terrestre, baseado nos princípios de locomoção da tração diferencial à rodas, com controle semi-autônomo.

3.1 Princípio de funcionamento da tração diferencial

Os robôs móveis de tração diferencial apresentam duas rodas independentes responsáveis por gerar movimento ao seu corpo. A combinação dos movimentos das rodas é responsável por criar o deslocamento final do robô.

Considerando queωl eωr são, respectivamente, as velocidades angulares desenvolvidas pelas rodas da esquerda e da direita em radianos por segundo [rad/s], pode-se utilizá-las para explicar os efeitos que sua variação têm sobre os movimentos do robô.

A Figura16amostra a condição em que ambas rodas giram com a mesma velocidade angular, dessa forma, o movimento resultante esperado para o robô é seguir em linha reta para frente. Na Figura 16ba roda da direita possui uma velocidade maior que a roda da esquerda, fazendo com que o robô curve para a esquerda. A Figura16cmostra a condição que a roda da esquerda possui a velocidade maior que a roda da direita, fazendo com que o robô curve para a direita.

(a) Movimento para frente. (b) Movimento para esquerda. (c) Movimento para direita.

Figura 16 – Princípio de funcionamento da tração diferencial Fonte:Santana(2019)

3.2 Configuração de um robô móvel de tração diferencial

A configuração ou pose espacial de um robô móvel de tração diferencial pode ser representada pelo vetor de estadosq=h

x y ϕiT

e significa as posições cartesianasxey e orientações de narizϕ que ele pode assumir em seu espaço de trabalho. Todas em relação a um referencial global, conforme ilustração da Figura17.

(30)

Capítulo 3. Materiais e métodos 29

Figura 17 – Exemplos de configuraçõe (poses) do robô móvel.

Fonte:Santana(2019)

3.3 O modelo simplificado do uniciclo

Compreender a variação da pose espacial de um robô em função das velocidades de suas rodas não é intuitivo. Como alternativa a este entendimento,Corke(2017) menciona que a literatura comumente apresenta uma simplificação matemática para este tipo de veículo denominada uniciclo.

A compreensão do uniciclo consiste em visualizar os movimentos do corpo do robô controlados por dois sinais de velocidade, um linearuem [m/s] e outro angular ωem [rad/s], aplicados ao corpo do veículo conforme Figura18.

Figura 18 – Sinais de controle do uniciclo.

Fonte:Santana(2019)

Dessa forma, ao projetar essas velocidades sobre o referencial global, obtém-se um modelo cinemático conforme Eq. (3.1):









˙

x=ucosϕ

˙

y=usinϕ ϕ˙=ω

(3.1)

3.4 A estratégia de controle de posição (goal-to-goal)

Esta técnica consiste em mover o robô de um ponto a outro no espaço, estabelecendo-se uma velocidade linear constante u >0m/se variando a velocidade angular ω para guiar o veículo até seu destino.

A Figura19traz o esquema utilizado para implementação dessa estratégia. Nela, (xr, yr) repre- sentam as coordenadas atuais do robô, obtidas do sistema de localização do veículo, enquanto (xg, yg) determinam as coordenada do ponto de destino, o qual se deseja alcançar.

Assim, ao aplicar essa estratégia o robô deve ser movimentar com velocidade linear constante upara frente, enquanto sua orientação de nariz deve variar para direcioná-lo até o destino através da

(31)

Capítulo 3. Materiais e métodos 30

Figura 19 – Esquema e variáveis da estratégia de controle de posiçãogoal-to-goal. Fonte:Santana(2019)

velocidade angularω. Para isso, utiliza-se um controlador proporcional no formato da Eq. (3.2), ondeKp representa um ganho e eum sinal de erro angular.

ω=Kp e (3.2)

Este controlador toma o erro angular como e = ϕdϕ, garantindo-se e ∈ [-π,+π], onde ϕd

representa uma orientação desejada eϕrepresenta a orientação atual do robô. A cada iteração doloop de controle, uma nova referência angularϕd é calculada como:

ϕd=tg−1

ygyr

xgxr

(3.3) Após o robô adentrar a região de raiol, nas proximidades do alvo (ver Figura19), as velocidades ueω são zeradas. Para isso, a cada iteração doloopde controle, calcula-se a distânciaρconforme Eq.

(3.4). Caso o testeρ < l seja verdadeiro, então se procede a parada do veículo fazendou= 0m/seω = 0 rad/s.

ρ= q

(xgxr)2+ (ygyr)2 (3.4)

Importante ressaltar que essa estratégia não garante a convergência ao ponto desejado, nem a orientação final do robô. Porém, mediante ajuste adequado dos parâmetros de controle, a estratégia se mostra como uma forma viável e intuitiva de realizar um controle de posição.

3.5 O modelo completo da tração diferencial

Embora a adoção do modelo uniciclo da Eq. (3.1) seja intuitiva, um robô de tração diferencial se move na verdade através de seus motores e rodas. Portanto, torna-se necessário conectar os sinaisueω àqueles diretamente relacionados aos motores elétricos do veículo.

(32)

Capítulo 3. Materiais e métodos 31

Figura 20 – Esquema de variáveis e parâmetros do uniciclo.

Fonte:Santana(2019)

Para compreender a relação entres os sinais, serão utilizado alguns parâmetros e variáveis, conforme esquema da Figura20, na qual:

L- Distância entre as rodas [m]

R- Raio da roda [m]

ωl - Velocidade angular da roda esquerda [rad/s]

ωr - Velocidade angular da roda direita [rad/s]

u- Velocidade linear do robô [m/s]

ω - Velocidade angular do robô [rad/s]

Para analisar o movimento das rodas, pode-se aplicar modelos mecânicos do movimento circular uniforme. A Figura21representa o movimento de uma das rodas do robô.

Figura 21 – Representação esquemática de uma roda.

Fonte:Santana(2019)

Considerando que não há deslizamento, pode-se calcular o módulo da velocidade tangencial (linear) da roda de acordo com a Eq. (3.5). Em que vr é a velocidade linear da roda [m/s], Cr é o comprimento da roda [m], T é o período de revolução da roda [s] e ωr é a velocidade angular da roda [rad/s].

vr=Cr

T = 2πR

T =ωrR (3.5)

Para determinar a velocidade linearu, pode-se considerar o robô se deslocando para frente (Figura 22). Os módulos das velocidades tangenciais serão:

• Esquerda:vl=ωlR e;

(33)

Capítulo 3. Materiais e métodos 32

• Direita:vr=ωrR.

Figura 22 – Esquema para modelagem da velocidade linearudo uniciclo.

Fonte:Santana(2019)

Nesta situação, o módulo da velocidade linear instantânea do ponto central do robô é dado pela média aritmética das velocidades das rodas:

u= vl+vr

2 (3.6)

u= ωlR+ωrR

2 ⇒u=R

2(ωl+ωr) (3.7)

Para determinar a velocidade angularω, considerevr> vl e ambas positivas. Nessa condição, o robô assumirá uma velocidade ue outra velocidadeω, percorrendo uma trajetória circularτ com raioA (Figura23). O Centro de rotação (CR) da trajetória é dado conforme a Figura23.

Figura 23 – Esquema para modelagem da velocidade angularω do uniciclo.

Fonte:Santana(2019)

Nessas circunstâncias, pode-se estabelecer uma relação das velocidades tangenciais das rodasvr e vlcom a velocidade angularω do robô por meio das Eqs. (3.8) e (3.9), respectivamente.

vr=ω

AL 2

(3.8)

vl=ω

A+L 2

(3.9)

(34)

Capítulo 3. Materiais e métodos 33

Fazendo a subtração da Eq. (3.9) da Eq (3.8), obtém-se:

vrvl=ωLω= (vrvl)

L (3.10)

Substituindovl porωlRevrporωrR, tem-se:

ω=(ωrRωlR)

Lω=R

Lrωl) (3.11)

Com as Eqs. (3.7) e (3.11), define-se o seguinte sistema de equações:

u= R2l+ωr) ω=RLrωl)

(3.12)

Manipulando o sistema da Eq. (3.12) é possível obter a relação entre as velocidades do uniciclo (ueω), com as velocidades angulares de cada roda (ωreωl) como:

ωr=2u+ωL2R ωl=2u−ωL2R

(3.13)

Conectando os sistemas das Eqs. (3.1) e (3.12) obtém-se:









˙

x= R2l+ωr) cosϕ

˙

y= R2l+ωr) sinϕ ϕ˙= RLrωl)

(3.14)

A Eq. (3.14) representa o modelo completo da tração diferencial, que demonstra como os estados da configuração do robô variam em função das velocidades de suas rodas.

3.6 Controle dos motores

A estratégia de controle da posiçãogoal-to-goal gera como resultado uma referência de velocidade angular para cada roda, conforme saída do sistema de equações da Eq. (3.13). Dessa forma, torna-se necessário desenvolver um controlador de velocidade para os motores do robô.

Para isso a estratégia adotada foi aplicar um controlador PID para cada um dos motores, realimentado-o através dos sinais de encoders presentes nas rodas.

A saída do controladorPIDé um sinal de tensão, que tem seu valor médio alterado através de interfaces eletrônicas e modulação por largura de pulso gerada por um microcontrolador.

3.6.1 Microcontrolador

Utilizou-se para a implementação dos sistemas um módulo de desenvolvimento para ESP32, em virtude de seu custo, ampla quantidade de interfaces de entrada e saída e possibilidades de conectividade sem fio.

(35)

Capítulo 3. Materiais e métodos 34

Figura 24 – Placa de desenvolvimento para ESP32.

Fonte: Autor.

3.6.2 Interface de potência

As interfaces de saída do microcontrolador possuem limitações elétricas em termos de tensão e corrente, não sendo úteis no acionamento direto de motores elétricos. Para contornar essa situação, utilizou-se uma interface de potência do tipo ponte H. O módulo eletrônico utilizado é baseado no circuito de modelo L298N (Figura25).

Figura 25 – Módulo eletrônico com ponte H L298N.

Fonte: Autor.

A ponte H é composta por 4 chaves eletrônicas que são responsáveis por realizar o controle da velocidade e sentido de rotação do motor.

Para realizar o controle, deve-se definir quais chaves serão fechadas e quais ficarão abertas. Para o motor rodar em sentido horário, as chaves S1 e S4 devem ficar fechadas e as chaves S2 e S3 devem estar abertas. Para inverter o sentido de rotação do motor, basta inverter o estado das chaves.

Para se controlar a velocidade do motor é necessário variar a tensão de entrada em seus terminais, obedecendo cálculos oriundos do controladorPID.

Para isso, utiliza-se a técnica de Pulse Width Modulation (Modulação por largura de pulso) (PWM) que modifica a tensão média aplicada nos terminais do motor. Na Figura 27 é possível observar essa modulação modificando o tempo ativo (em nível alto) de um sinal tensão, alterando o seu valor e, consequentemente, a média resultante no intervalo para 10%, 50% e 90% do valor máximo, respectivamente.

(36)

Capítulo 3. Materiais e métodos 35

Figura 26 – Esquema de funcionamento da ponte H.

Fonte: Adaptado deSantana(2019).

Figura 27 – Modulação PWM.

Fonte:Silveira(2016)

3.6.3 Sintonia do controlador PID

Após a implementação dos controladores PID no microcontrolador, foram realizados testes experimentais para sintonia dos ganhos. O procedimento consistiu em aplicar degraus variando as referências de controle e, experimentalmente, modificar os ganhos até obtenção de resultados considerados satisfatórios. Considera-se satisfatória uma resposta que siga a referência apresentando baixo sobressinal (menor que 10%).

Para suavizar os sinais de velocidade angular estimados digitalmente, aplicou-se um filtro de Kalman. É possível notar a diferença entre os sinais nas imagens, onde os dados em verde são filtrados e os em laranja não.

3.6.3.1 Experimento de Sintonia do PID 1

Para começar ajustar o controlador, foram definidos como parâmetros os ganhos e uma referência (setpoint) como:SP = 10rad/s,Kp= 10,Ki= 10,Kd= 10.

(37)

Capítulo 3. Materiais e métodos 36

Figura 28 – Resultado do experimento de sintonia do PID 1.

Fonte: Autor.

Ao se observar a Figura28, nota-se que a velocidade do motor não atinge a referência estabelecida, apresentando um erro em regime permanente. Considera-se que os ganhos foram estabelecidos em valores baixos.

3.6.3.2 Experimento de Sintonia do PID 2

Neste segundo experimento, os ganhos foram aumentados paraKp= 50,Ki= 20, na tentativa de diminuir o erro estacionário.

Figura 29 – Resultado do experimento de sintonia do PID 2.

Fonte: Autor.

No resultado do experimento, ilustrado pela Figura29, percebe-se que o motor alcança a referência em cerca de 15 segundos. Para verificar a resposta desta sintonia, novos degraus foram aplicados, conforme ilustra Figura30. Ao se analisar estes resultados, percebe-se que esse ajuste não possibilita que o controle atinja determinadas velocidades.

(38)

Capítulo 3. Materiais e métodos 37

Figura 30 – Variando degraus de entrada do experimento de sintonia do PID 2.

Fonte: Autor.

3.6.3.3 Experimento de Sintonia do PID 3

Na tentativa de eliminar os erros estacionários que aparecem, o ganhoKi foi aumentado para 100 unidades, o ganhoKp foi definido como 10 eKd foi anulado.

Figura 31 – Resultado do experimento de sintonia do PID 3.

Fonte: Autor.

No resultado deste terceiro experimento, ilustrado na Figura 31, percebe-se uma melhora na resposta em relação às sintonias anteriores, as velocidades dos motores conseguiram acompanhar a referência, alcançando-a com menor tempo de estabelecimento. Com esses ganhos o controlador mostrou uma resposta considerada satisfatória para um setpoint inferior à 23rads/s.

(39)

Capítulo 3. Materiais e métodos 38

Figura 32 – Variando degraus de entrada do experimento de sintonia do PID 3.

Fonte: Autor.

Para ampliar o teste, na Figura32, expõe-se o resultado obtido com esta sintonia para uma variação nas referências de velocidade. Pelo resultado observado, concluiu-se que este arranjo atenderia satisfatoriamente às condições requeridas pelo sistema de controle de locomoção do robô.

Ainda na Figura32é possível observar dois detalhes. O primeiro é a saturação da velocidade entre 30 e 45 segundos, onde os motores não conseguem acompanhar a velocidade de referência, isso ocorre devido à limitação física dos motores, já sendo aplicado a tensão máxima em seus terminais. Outro ponto a ser observado ocorre, aproximadamente, entre 45 e 53 segundos, onde a velocidade dos motores demora para acompanhar a velocidade de referência, isso ocorre devido à ação integral, que no degrau de referência anterior (25 rad/s) não conseguiu atingir a velocidade desejada devido a limitação física e continuou se acumulando, atrasando a resposta quando a referência voltou a ser de 20 rad/s. Para melhorar tal resposta é necessário a implementação de uma estratégia de anti-windup.

3.7 O sistema de controle da locomoção

O diagrama de blocos da Figura33representa a arquitetura de controle que foi implementada neste trabalho. O sistema de controle da locomoção consiste da junção dos blocos:

Controle de Movimento Cinemático:visa gerar referências de velocidade para as rodas do veículo. Baseia-se na estratégia goal-to-goal, nas equações do uniciclo e na realimentação provida pelo sistema de localização viaencoders;

ControladorPIDde Velocidades:visa gerar sinais de controle para as interfaces de acionamento dos motores elétricos. Realimenta-se dos sinais dosencoders.

Gerador PWM: visa converter sinais de controle resultantes do PID para sinais de tensão modulados viaPWM, bem como aplicá-los nos circuitos que energizam os motores.

Desse modo, a conexão entre os sinais se dá primeiramente determinando as velocidadesueω, conforme Seção 3.4. Depois, aplicando a Eq. (3.13), determina-seωreωl que por sua vez são passadas como referência para os controladoresPIDdos motores e geram oPWMpara alterar a tensão dos motores..

(40)

Capítulo 3. Materiais e métodos 39

Figura 33 – Arquitetura de implementação dos sistemas de localização e de controle do robô.

Fonte: Adaptado deMalu e Majumdar(2014).

3.8 O sistema de localização por odometria

Odometria representa a capacidade de estimar informações sobre a configuração espacial de um robô utilizando medições de sensores instalados em suas rodas (SIEGWART; NOURBAKHSH;

SCARAMUZZA,2011).

Neste trabalho, utilizam-se leituras deencoders de quadratura. Para a construção do protótipo, foi escolhido um motor de corrente contínua com caixa de redução eencoder de quadratura acoplados, conforme ilustra a Figura39. Oencoder utilizado possui uma resolução de 375 Pulsos por revolução (PPR)

Figura 34 – Motor de corrente contínua com caixa de redução e encoder acoplados.

Fonte: Autor.

Osencodersde quadratura permitem analisar em dois canais (A e B) como está o comportamento dos pulsos, permitindo estabelecer a velocidade e o sentido de rotação.

Os pulsos gerados peloencoder são lidos pelo microcontrolador e convertidos para velocidade angular (rads/seg) de acordo com a Eq. (3.15).

ωn= 2π×Qn

N (3.15)

OndeQn representa uma quantidade de pulsos por segundo.N a resolução do encoder emPPR.

E o subscritonidentifica o motor da esquerda (l) ou da direita (r).

(41)

Capítulo 3. Materiais e métodos 40

Figura 35 – Estados dos canais doencoders. Fonte:BARBOSA(2021)

Aplicando os valores obtidos da Eq. (3.15) na Eq. (3.14), obtém-se a taxa de variação do vetor de estados =h

˙ x y˙ ϕ˙

iT

. Dessa forma, para encontrar a configuração q=h

x y ϕ iT

, basta realizar a integração:

q= Z

˙

qdt (3.16)

A Eq. (3.16) resulta emq, que representa a pose espacial do robô em um instantetde tempo.

Cabe destacar que este processo de integração é implementado de forma numérica e, portanto, é susceptível ao acúmulo de erros paramétricos e de aproximação.

3.9 Comunicação

Para monitorar variáveis e enviar comandos ao robô, foi criado um mecanismo de comunicação sem fio, via Wi-Fi. Na estrutura, o robô se conecta a uma rede junto de um computador e ambos se comunicam através dewebsockets(UBL; KITAMURA, 2012). Para transmissão de dados, criou-se uma página web conforme ilustração da Figura 36, pela qual é possível enviar parâmetros para o robô e monitorar o estados de suas variáveis, permitindo realizar testes de movimento.

Na página web de interface é necessário inserir o endereço Internet Protocol (protocolo de rede) (IP) do robô e clicar no botão conectar. Se a conexão for bem sucedida, automaticamente é aberta uma conexão viawebsockete iniciada a troca de informações com o robô. Os dados são enviados e recebidos por JavaScript Object Notation (JSON). Na aplicaçãowebé possível enviar comandos e parâmetros de controle para o robô, conforme:

CMD: Responsável por definir qual o tipo de ação que o robô irá executar. Neste trabalho só será utilizado o comando para estratégiagoal-to-goal.

Par. 1: Define em qual velocidade o robô irá executar os movimentos lineares (0..100%).

Par. 2: Define a distância que o robô irá se deslocar no eixo X.

Par. 3: Define a distância que o robô irá se deslocar no eixo Y.

(42)

Capítulo 3. Materiais e métodos 41

Figura 36 – Interfaceweb desenvolvida para telemetria e comando do robô.

Fonte: Autor.

3.10 O protótipo de robô educacional

O desenvolvimento do protótipo vem sendo trabalhado diferentes frentes relacionadas à estrutura mecânica, eletrônica e desoftware.

Inicialmente, foi criado um modelo 3D para o robô (Figura37), utilizado para visualização e planejamento de suas partes e funções.

Figura 37 – Modelo 3D do robô.

Fonte: Cortesia de João Paulo Ribeiro Camillo.

Paralelamente, projetos envolvendo circuitos eletrônicos e osoftwaredo dispositivo foram execu- tados.

(43)

Capítulo 3. Materiais e métodos 42

A estrutura mecânica do robô foi fabricada a partir de uma máquina Controle Numérico Com- putadorizado (CNC) àlaser usando chapas de Medium Density Fiberboard (placa de fibra de média densidade) (MDF) (Figura38).

Figura 38 – Cortando peças da estrutura mecânica do robô em MDF.

Fonte: Autor.

Os circuitos eletrônicos projetados em computador e fabricados por uma fresaCNCpara circuito impresso.

(a) Modelo em computador do projeto da placa eletrô-

nica. (b) Fabricação da placa eletrônica.

Figura 39 – Protótipo da placa de circuito eletrônico Fonte: Autor.

Quando unificadas, as partes ilustradas resultam no protótipo de robô educacional da Figura40, o qual foi utilizado na realização dos experimentos relatados neste trabalho.

(44)

Capítulo 3. Materiais e métodos 43

(a) Estrutura do protótipo montada.

(b) Versão preliminar dos detalhes internos.

Figura 40 – Protótipo de robô educacional.

Fonte: Autor.

(45)

44

4 RESULTADOS EXPERIMENTAIS

Neste Capítulo, apresentam-se os resultados de alguns experimentos realizados para validar os sistemas desenvolvidos.

4.1 Sequência de experimentos 1

Nesta primeira parte, são realizados 4 experimentos nos quais o robô sairá do ponto inicial de coordenadas (xr, yr) = (0,0)cme deverá se deslocar até o destino de coordenadas (xg, yg) = (175,117).

A cada rodada, a velocidade linear de deslocamento será modificada para 25%, 50%, 75% e 100%, do valor máximo, estabelecido em código como umax= 60cm/s.

(a) Deslocamento medido por odometria nos eixosxey.

(b) Velocidades desenvolvidas por cada roda.

(c) Posição inicial. (d) Posição final.

Figura 41 – Deslocamento com 25% deumax . Fonte: Autor.

(46)

Capítulo 4. Resultados experimentais 45

(a) Deslocamento.

(b) Velocidades.

(c) Posição inicial. (d) Posição final.

Figura 42 – Deslocamento com 50% deumax. Fonte: Autor.

(47)

Capítulo 4. Resultados experimentais 46

(a) Deslocamento.

(b) Velocidades.

(c) Posição inicial. (d) Posição final.

Figura 43 – Deslocamento com 75% deumax. Fonte: Autor.

(48)

Capítulo 4. Resultados experimentais 47

(a) Deslocamento.

(b) Velocidades.

(c) Posição inicial. (d) Posição final.

Figura 44 – Deslocamento com 100% deumax. Fonte: Autor.

Como pode ser visto nas fotografias do experimento presentes nas Figuras41, 42,43e44, o robô não chega nas coordenadas desejadas, mesmo quando os dados de odometria indicam que ele o faz. Isso ocorre devido aos erros que são inerentes aos sistemas de odometria causados, principalmente, por efeitos numéricos da integração, imprecisões paramétricas do modelo e erros nas leituras dosencoders.

Na Tabela1 é possível analisar melhor os erros de posição real, alcançada pelo robô em relação àquela desejada. Nota-se um aumento proporcional entre os erros e a velocidade linear de deslocamento.

Os maiores valores identificados foram de 19,3 cm no eixoxe 6,8 cm no eixoy, quando se utiliza 100% da velocidade frontal, que correspondem a 11% e 6% de erro em relação à posição real desejada.

4.2 Sequência de experimentos 2

Um segundo experimento realizado para validar o controle. Nele, o robô foi programado para sair do ponto inicial de coordenadas (xr, yr) = (0,0) cm e se deslocar até o destino de coordenadas (xg, yg) = (468,117), com 30% da velocidade limite.

(49)

Capítulo 4. Resultados experimentais 48

Tabela 1 – Erro entre odometria e posição real.

Velocidade Erro X Erro Y

25% 9,6 cm 5 cm

50% 11 cm 2 cm

75% 15,4 cm 3 cm

100% 19,3 cm 6,8 cm

(a) Deslocamento.

(b) Velocidades.

(c) Posição inicial. (d) Posição final.

Figura 45 – Deslocamento com distância maior.

Fonte: Autor.

Com a realização deste experimento, que exige maior deslocamento do robô, nota-se uma piora já esperada na resposta do sistema de localização por odometria. Foi possível mensurar um erro de aproximadamente 29 cm no eixoxe 24 cm no eixoy, provocados pelos mesmos motivos mencionados anteriormente.

Independentemente disso, em todos os experimentos apresentados, percebe-se a capacidade dos sistemas de localização e de controle da locomoção em atuar levando o robô até seu destino. Erros ocorrem em virtude de efeitos reais como imperfeição das rodas, falhas paramétricas e acúmulo de erros da integração numérica. Porém, mesmo assim, considera-se que as respostas visualizadas foram satisfatórias, atendendo aos requisitos do projeto de robô educacional. Vale destacar que este tipo de controle de

(50)

Capítulo 4. Resultados experimentais 49

movimento não está presente em nenhuma das plataformas educacionais de baixo custo disponíveis no mercado.

(51)

50

5 CONCLUSÕES E TRABALHOS FUTUROS

Neste trabalho, desenvolveu-se a construção dos sistemas de localização e controle da locomoção de um robô móvel de propósito educacional. A implementação desses sistemas garantiu ao equipamento a capacidade de realizar movimentos mais precisos em seu espaço de trabalho. Além disso, para possibilitar a realização de experimentos com os sistemas, apresentou-se o desenvolvimento de outras características do protótipo relacionadas a estrutura mecânica, eletrônica e de comunicação.

Após os controladores serem implementados e ajustados, percebeu-se resultados experimentais considerados satisfatórios.

Podemos concluir observando os gráficos da Figura44b, que quando o robô está com sua velocidade em 100%, os motores possuem uma resposta sem muitas oscilações, e quando sua velocidade é menor as oscilações dos motores aumentam. Outro ponto a se destacar é o erro final na posição do robô, há dois fatores que influenciam para o aumento deste erro, a alta velocidade e grandes distâncias. Conforme foi apresentado nas Figuras 41,42,43e44o erro da posição final aumentou proporcionalmente à velocidade e na Figura45o erro final foi maior ao percorrer uma grande distância, mesmo o robô estando em baixa velocidade.

Desse modo, pode-se concluir que o controlador de locomoção e posição do robô móvel tem um desempenho aceitável para a aplicação em um robô móvel educacional.

Com a validação do controlador de locomoção, os próximos trabalhos serão o desenvolvimentos de novas funções no robô, tais como: adição de sensores de cor e distância para maior interação com o ambiente, instalação dedisplay para exibição de textos, desenvolvimento de uma interfacewebpara que seja possível programar o robô por meio de linguagem de blocos e remotamente.

Referências

Documentos relacionados

A tutela da vida digna está consagrada no artigo 1º, inciso III, da Constituição Federal, segundo o qual o Estado brasileiro tem como um de seus fundamentos

c.4) Não ocorrerá o cancelamento do contrato de seguro cujo prêmio tenha sido pago a vista, mediante financiamento obtido junto a instituições financeiras, no

Local de realização da avaliação: Centro de Aperfeiçoamento dos Profissionais da Educação - EAPE , endereço : SGAS 907 - Brasília/DF. Estamos à disposição

Verificada a efetividade da proposta, a Comissão de Licitações declarou vencedor o licitante Francisco Souza Lima Helm, sendo o total do item 14 licitado o valor de

➔ O movimento Open Source não é sustentável, uma vez que as pessoas vão parar de desenvolver software livre assim que virem outros fazendo 'um monte de' dinheiro de sobre

Ainda segundo Gil (2002), como a revisão bibliográfica esclarece os pressupostos teóricos que dão fundamentação à pesquisa e às contribuições oferecidas por

– Em cada directoria todos os ficheiros devem ter identificadores distintos (directorias distintas podem conter ficheiros com mesmo identificador) – A cada utilizador é atribuído

Caso o candidato não tenha qualquer título acadêmico ou tempo de serviço válido para o cargo em que se inscreveu, terá atribuída nota (zero) nesta etapa. Para fins de avaliação