Nome 1º autor, e-mail, instituição

Transcrição

Nome 1º autor, e-mail, instituição
Engenharia Mecatrônica
TCC/2015
DESENVOLVIMENTO DE UM KIT DIDÁTICO DE ROBÓTICA MÓVEL
UTILIZANDO A PLATAFORMA ARDUINO
Aluno: Hugo Rafael Palma Vieira de Almeida
Orientador: PhD. Kelen C. Teixeira Vivaldini
Centro Universitário de Araraquara (UNIARA) 2015.
Área: Robótica
Subárea: Programação de microcontroladores e controle de servomotores
Resumo: Este projeto teve como objetivo o desenvolvimento de um kit que permite construir
um robô móvel, além de permitir a sua personalização e que possa ser utilizados no contexto
educacional no qual a ênfase está em sua utilização como instrumento didático de ensino. A
importância na utilização da robótica no ensino decorre da possibilidade de que ela, além de
ser um elemento atrativo, proporciona a popularização da tecnologia aos estudantes. Serão
abordados os principais conceitos sobre a robótica, por meio de uma apresentação didática
voltada para estudantes no tema e que possa ser utilizado por qualquer usuário iniciante na
área de robótica. Estes conceitos relacionados a Robótica Inteligente envolvem a introdução
sobre os conhecimentos teóricos e a prática com o uso de dispositivos eletrônicos e mecânicos
(do tipo de sensores e motores), e de dispositivos computacionais programáveis (do tipo de
microcontroladores, como por exemplo o Arduino). A partir deste kit poderá ser
desenvolvida a adaptação para diversos níveis de aprendizado. Iniciando com o
funcionamento básico dos sensores (infravermelho, seguidor de linhas e sonar) e atuadores
(motores), até a aplicação do robô (Robô Explorador, etc). Desta forma, para
desenvolvimento do trabalho as seguintes etapas foram realizadas: estrutura mecânica,
hardware, funcionamento dos sensores e atuadores, e desenvolvimento de práticas de
programação e montagem de nível básico, intermédio e avançado. Como resultado do estudo,
pretende-se que estes kit possa ser utilizado para melhorar o conhecimento na área de
eletrônica, hardware e software.
Palavras-chave: Kit Didático. Robótica educacional. Robô de seis patas. Arduino.
ALMEIDA, H.R.P.V. Desenvolvimento de um kit didático de robótica móvel utilizando a plataforma
arduino. Trabalho de Conclusão de Curso, Centro Universitário de Araraquara, 2015.
1. INTRODUÇÃO
No atual modelo de convivência social, a tecnologia deve estar sempre acessível e deve
permitir às pessoas novas experiências, novas descobertas e novas formas de aprender. No
entanto, a fim de que a população e, em particular, estudantes possam usufruir das
ferramentas tecnológicas existentes, é necessário que o processo educativo inclua práticas
tecnológicas em seu contexto educacional. Na busca por ambientes de aprendizagem mais
ricos e inovadores, a robótica educacional se destaca por mostrar, na prática, conceitos
teóricos e por desenvolver competências como raciocínio lógico, investigação e resolução de
problemas (Miranda, 2010).
A robótica educacional incentiva a criação e exploração de ambientes interativos para o
processo de ensino e aprendizagem no estudo das diversas disciplinas, unindo a robótica e a
educação, através da multidisciplinaridade da robótica, que é capaz de envolver temáticas
relacionada a ela, como mecânica, eletrônica e computação, entre outras áreas não
relacionadas tais como matemática, ciências, línguas, ciências sociais (Fernandes, 2013).
Desta forma, a robótica educacional ensina o aluno através da investigação, estimulando a
criatividade, no desenvolvimento de um método científico, através do erro construtivo,
estímulo da lógica, aprimoramento da motricidade, ente outros (Zili, 2004).
Umas das metodologias adequadas para o desenvolvimento de aulas de robótica educacional
em sala de aula é através de oficinas de robótica, nas quais os alunos seguem um conjunto de
passos: análise do desafio, montagem do protótipo robótico e programação do robô. O desafio
proposto pode envolver assuntos relacionados a grade curricular, desde as disciplinas básicas
de Introdução as Técnicas de Programação e Circuitos Eletrônicos, até as disciplinas
avançadas de Sistemas Embarcados e Microprocessados e Robótica. E como resultado desta
aplicação, obtemos o retorno positivo do aluno que valida os conhecimentos obtidos na
prática.
Importante ressaltar que algumas limitações restringem a inserção de robótica educacional,
pois o acesso aos kits de robótica no Brasil é dificultado devido à relação entre recursos e
custos, pois os kits importados são, em sua maioria, mais caros, enquanto que os nacionais
apresentam limitações de hardware e software (Miranda, 2010; Fernandes, 2013).
2. PROJETO DO KIT DIDÁTICO
O kit proposto neste trabalho teve como finalidade o desenvolvimento do raciocínio lógico
e o desenvolvimento acadêmico sobre a área de robótica. Este kit tem uma configuração
inicial de uso, mas é possível a alteração e inclusão de diversos componentes a fim de
possibilitar uma experiência de aprendizado rica e didática.
Na configuração inicial será disponibilizado um modelo mecânico baseado na configuração
de patas (Figura 1) para sua movimentação, e um sensor sonar capaz de medir a distância de
objetos para que o mesmo possa desviar de obstáculos.
A configuração de patas foi inspirada no modelo Crawler Kit For Boe Bot (PARALLAX,
2004) e escolhido devido à facilidade de montagem, o custo baixo e o efeito visual que este
proporciona, visando estimular o interesse de estudantes de diversas faixas etárias na área de
robótica.
2
ALMEIDA, H.R.P.V. Desenvolvimento de um kit didático de robótica móvel utilizando a plataforma
arduino. Trabalho de Conclusão de Curso, Centro Universitário de Araraquara, 2015.
Figura 1 - Estrutura Mecânica
Fonte: Próprio Autor
A Figura 1 demonstra em modelagem 3D toda a estrutura montada e a disposição corretas das
patas para conseguir um movimento uniforme que faça com que o robô seja capaz de se
movimentar.
Figura 2 - Exemplo de robôs possíveis com o kit didático
Fonte: Adaptado de Boe Bot por Parallax
O desenvolvimento do kit foi dividido em quatro etapas. Na primeira etapa apresenta-se a
estrutura mecânica e são explicadas as escolhas realizadas para definição das peças e de qual
forma utilizá-las. Na segunda etapa apresenta-se o hardware utilizado, bem como as possíveis
substituições para outro tipo de microcontrolador ou microprocessador utilizado. Na terceira
etapa, os atuadores e sensores escolhidos para a configuração inicial e exemplos de diversas
modificações que podem ser realizadas são apresentadas. E na quarta etapa são apresentados
os resultados obtidos no desenvolvimento do kit proposto e exemplificada a lógica de
programação adotada.
3
ALMEIDA, H.R.P.V. Desenvolvimento de um kit didático de robótica móvel utilizando a plataforma
arduino. Trabalho de Conclusão de Curso, Centro Universitário de Araraquara, 2015.
2.1. Estrutura Mecânica
Para a montagem é necessário verificar a escolha do tipo de robô a ser montado. Como
se pode observar, o Chassi (Fig. 3A) pode ser adaptado para a utilização de robô com patas ou
com rodas. Os demais desenhos do kit exemplifica o uso do chassi para a montagem de um
robô com patas (Fig. 3 B à E).
Figura 3 - Estrutura Mecânica : (a) Chassi, (b) Lateral robô com patas, (c) Pata 4 furos, (d) Pata de
ligação e (e) Pata do meio - Fonte: Próprio autor
A estrutura mecânica do robô proposto para o kit didático é baseada no movimento de uma
aranha, utilizam-se seis patas para chegar ao movimento desejado.
A grande diferença desta estrutura está no fato de somente as patas do meio serem atuadas,
utilizando apenas um motor de cada lado do robô, dois motores no projeto todo, para
conseguir um movimento completo de “rastejar” (do inglês craw).
Os
desenhos
técnicos
em
CAD
estão
disponíveis
para
download
[http://www.thingiverse.com/thing:1122043]. As peças da estrutura podem ser
confeccionadas em uma impressora 3D ou em metal, ambos os materiais são facilmente
encontrados no mercado e por preços acessíveis.
Caso queira utilizar o robô com rodas simplesmente remova a lateral e as patas deixando
somente o servomotor que é instalado diretamente no chassi (Figura 3) e instale as rodas nos
respectivos servos de cada lado do chassi. Também será necessário um acoplamento esférico
na parte frontal para o equilíbrio, conforme mostrado na Figura 2 (Robô com rodas).
4
ALMEIDA, H.R.P.V. Desenvolvimento de um kit didático de robótica móvel utilizando a plataforma
arduino. Trabalho de Conclusão de Curso, Centro Universitário de Araraquara, 2015.
Figura 4 - Posição do servo contínuo
Fonte: Próprio Autor
2.2.
Hardware
Para este kit didático optamos por utilizar a plataforma Arduino UNO (Atmega328p,
Tab. 1), pois a finalidade do kit didático é estimular o interesse a área de robótica de
desenvolver o raciocínio lógico necessário. O Arduino é uma das plataformas mais simples e
com maior documentação disponível dentre todos os microcontroladores e plataformas
disponíveis no mercado (Arduino, 2013). É possível a substituição por qualquer outra
plataforma do mercado e por qualquer outro microcontrolador que possua as mesmas
especificações, porém o código e o diagrama elétrico disponíveis nesse kit não irão funcionar
e terão que ser adaptados.
Microcontrolador
Tensão de operação
Tensão de Alimentação
Lim. da tensão de alimentação
Entradas/Saídas Digitais
Entrada/Saída Digitais PWM
Entradas analógicas
Corrente contínua por pino
Corrente contínua pino 3.3v
Memória flash
ATmega328P
5V
7-12V
6-20V
14 (da qual 6 são saídas PWM)
6
6
20 mA
50 mA
32 KB (ATmega328P)
SRAM
EEPROM
Freq. De Clock
Largura
Altura
Peso
2 KB (ATmega328P)
1 KB (ATmega328P)
16 MHz
68.6 mm
53.4 mm
25 g
Tabela 1 - Especificações Arduino Uno. Fonte: Atmel
Para substituir o hardware utilizado será necessário observar os requisitos mínimos
necessários para o projeto apresentado na Tab. 1. As especificações em negrito precisam ser
iguais ou superiores, exceto a tensão de operação (Operating Voltage) que precisa ser
exatamente 5V.
5
ALMEIDA, H.R.P.V. Desenvolvimento de um kit didático de robótica móvel utilizando a plataforma
arduino. Trabalho de Conclusão de Curso, Centro Universitário de Araraquara, 2015.
Para o projeto apresentado com patas e sensor ultrassônico de distância utilizam-se somente
três saídas PWM, uma saída digital e uma entrada digital.
2.2.1 Arduino
“É uma plataforma de prototipagem eletrônica de hardware livre e de placa única,
projetada com um microcontrolador Atmel AVR com suporte de entrada/saída embutido, uma
linguagem de programação padrão baseada na estrutura C/C++” (ARDUINO, 2015).
A placa de desenvolvimento Arduino é o hardware do nosso projeto, o Arduino permite que
códigos de computador na linguagem C++ se transformem em comandos no mundo da
eletrônica. Ela interpreta os sinais dos sensores e decide a ação executada baseada na
programação que é inserida.
Figura 5 - Placa arduino UNO
Fonte: Arduino.cc
2.3 Atuadores e Sensores
A programação disponível neste kit didático é para a construção de um robô que desvia de
obstáculos, medindo a distância em várias direções e decidindo qual é a melhor rota a ser
tomada. Para isso foi utilizado:



Um sensor de distância ultrassônico modelo HC - SR04
Dois motores do tipo servo de rotação continua modelo SM - S4303R
Um motor micro servo modelo SG 90
6
ALMEIDA, H.R.P.V. Desenvolvimento de um kit didático de robótica móvel utilizando a plataforma
arduino. Trabalho de Conclusão de Curso, Centro Universitário de Araraquara, 2015.
2.3.1 HC - SR04
Figura 6 - Sensor ultrassônico genérico HC
Este sensor funciona emitindo uma onda ultrassônica de um lado e medindo quanto tempo a
onda demora a retornar no outro, o tempo de resposta nos dará a distância da barreira.
2.3.2 SM - S4303R
O servo de rotação contínua diferente de um servo comum não permite controle do
ângulo do movimento, ele é modificado para que seja possível ajustar apenas a velocidade da
rotação. Neste projeto será utilizado para movimentar as patas do robô, recebendo apenas o
comando para girar para um lado ou para o outro.
Figura 7 - Servo de rotação contínua S4303R
Fonte: Pololu
2.3.3 SG90
O servo SG90 é um servo clássico com seu giro restrito a 180°, ele nos permite
controlar quantos graus exatamente você deseja executar em um giro, escolhendo valor de 0
(posição inicial) até 180 (posição final).
Figura 8 - Servo SG90
Neste projeto será responsável por controlar a direção do sensor ultrassônico.
7
ALMEIDA, H.R.P.V. Desenvolvimento de um kit didático de robótica móvel utilizando a plataforma
arduino. Trabalho de Conclusão de Curso, Centro Universitário de Araraquara, 2015.
2.4 Software
O programa foi desenvolvido utilizando a Arduino Software IDE (Integrated
Development Environment), plataforma de código aberto do arduino que facilita programar e
enviar o código à placa. A plataforma escrita em Java é compatível com os sistemas
operacionais Windows, Mac OSX e Linux.
O código foi escrito na linguagem arduino que é baseada na estrutura C/C++ e tem a
finalidade de fazer com que o robô se movimente livremente em um ambiente sem que atinja
nenhum obstáculo, após a programação na IDE o código é então transferido a placa via porta
USB.
3. MONTAGEM
3.1 Diagrama Montagem Arduino
Figura 9 - Esquema de montagem
Fonte: Próprio Autor
8
ALMEIDA, H.R.P.V. Desenvolvimento de um kit didático de robótica móvel utilizando a plataforma
arduino. Trabalho de Conclusão de Curso, Centro Universitário de Araraquara, 2015.
Para alimentar o robô utiliza-se duas baterias 9v em paralelo e alimente o Arduino com o cabo
para baterias 9v que acompanha a placa.
Pino Arduino
PWM 9
PWM 3
Fio correspondente
Pulso do servo direito
Pulso do servo esquerdo
PWM 6
Digital 4
Digital 5
Pulso do servo do sensor
Trigger HC-SR04
Echo HC-SR04
Objetivo
Saída para controlar o motor do lado direito
Saída para controlar o motor do lado esquerdo
Saída para controlar o motor que movimenta o
sensor sonar
Envia sinal ao sensor sonar
Recebe o sinal do sensor sonar
Tabela 2 - Pinos utilizados no arduino
Fonte: Próprio autor
Obs.: O sensor ultrassônico HC - SR04 possui nomenclatura em cada um de seus pinos,
facilitando identifica-los.
3.2 Mecânica
1. Conforme a Figura 3 os servos contínuos (S4303R) foram fixados diretamente no
chassi de forma que o eixo de rotação esteja mais próximo da parte da frente do robô
(Frente do robô conforme Figura 10).
2. A lateral foi alinhada e fixada com parafusos e porcas 2mm, para fixação da lateral foi
utilizado somente os furos em azul conforme Figura 10.
3. As patas foram colocadas conforme ilustrado na Figura 1, para a fixação foi utilizado
parafusos 2mm, arruelas e buchas de metal lisa rosqueada.
4. Os processosde fixação das laterais e das pastas são idênticos para os dois lados do
robô.
Figura 10 - Alinhamento lateral
Fonte: Próprio Autor
9
ALMEIDA, H.R.P.V. Desenvolvimento de um kit didático de robótica móvel utilizando a plataforma
arduino. Trabalho de Conclusão de Curso, Centro Universitário de Araraquara, 2015.
4. RESULTADOS
4.1 Movimentação
Utilizando o mecanismo de barras obteve-se sucesso para a movimentação das seis patas
somente com dois motores. O motor aciona somente a pata do meio que transfere o
movimento as outras patas de acordo com o clico da rotação em que o mesmo se encontra.
Figura 11 - Movimento das patas
Fonte: Próprio autor
Para movimentar o robô em todas as direções segue-se a seguinte lógica:
Movimento para frente: motores direito e esquerdo giram para frente.
Movimento para trás: motores direito e esquerdo para trás.
Movimento para esquerda: motor esquerdo gira para frente e direito gira para trás.
Movimento para direita: motor direito gira para frente e esquerdo gira para trás.
4.2 Desvio de Obstáculos
A partir do desenvolvimento da programação para a movimentação das patas,
adiconamos a inteligência para que o robô fosse capaz de executar um percurso com objetos à
sua frente sem colidir escolhendo a melhor rota para desvio. Para isso, como detalhado
anteriormente foi utilizado um sensor sonar e acoplado a ele um moto para efetuar a
movimentação do mesmo a fim de verifica qual dos lados o robô poderia se movimentar.
Figura 12 - Protótipo
10
ALMEIDA, H.R.P.V. Desenvolvimento de um kit didático de robótica móvel utilizando a plataforma
arduino. Trabalho de Conclusão de Curso, Centro Universitário de Araraquara, 2015.
Fonte: Próprio Autor
E
Figura 13 - Sequência de imagens do percurso executado pelo robô
Fonte: Próprio Autor
Quadros:
1. Robô se movimenta em direção aos obstáculos.
2. Perante há um objeto logo à sua frente o robô para.
3. O servo (SG90) que controla o sensor sonar gira pra direita e mede a distância do
objeto.
4. Servo gira pra esquerda e mede a distância, durante a medição o robô percebe um
caminho livre.
5. Ele segue o caminho.
6. Continua a rota sem colidir.
4.3 Lógica de programação
A Figura 14 exibe um fluxograma que foi a base do código escrito para dar vida ao robô, o
código completo está disponível no link [http://www.thingiverse.com/thing:1122043] junto
com os arquivos CAD e desenhos técnicos necessários, também é possível tirar dúvidas pelo
site caso queira construir o kit didático.
11
ALMEIDA, H.R.P.V. Desenvolvimento de um kit didático de robótica móvel utilizando a plataforma
arduino. Trabalho de Conclusão de Curso, Centro Universitário de Araraquara, 2015.
Figura 14 - Fluxograma da lógica de programação
Fonte: Próprio autor
12
ALMEIDA, H.R.P.V. Desenvolvimento de um kit didático de robótica móvel utilizando a plataforma
arduino. Trabalho de Conclusão de Curso, Centro Universitário de Araraquara, 2015.
5. CONCLUSÃO
Conseguiu-se construir e programar um robô acessível por menos de R$ 300,00 que pode
ser utilizado como plataforma didática em universidades e cursos profissionalizantes de forma
a fixar o aprendizado teórico sobre robótica ou até mesmo em escolas de ensino-médio para o
desenvolvimento do racíocinio lógico do aluno.
A proposta foi bem sucedida, o robô foi capaz de executar um percurso com objetos à sua
frente sem colidir escolhendo a melhor rota para desvio.
As possibilidades de alterações são infinitas, como por exemplo, é possível substituir as patas
por rodas utilizando o mesmo servo motor proposto para obter um movimento mais ágil e
preciso (Figura 2). Também é possível incluir diversos outros sensores como: sensor de cor,
sensor de temperatura, sensor de humidade, sensor infravermelho. Ou até mesmo construir
garras mecânicas e acoplar ao kit para movimentação de peças, o desenho do chassi do kit
possui diversos furos e lugares onde é possível a inclusão de novas partes mecânicas.
6. REFERÊNCIAS
Arduino, what is it? Disponível em: < https://www.arduino.cc/>. Acesso em: 12 de agosto.
2015.
Crawler
Kit
for
the
Boe-Bot™
Robot
(#30055).
Disponível
em:
<https://www.parallax.com/sites/default/files/downloads/30055-Boe-Bot-CrawlerDocumentation-v2.0.pdf>. Acesso em: 12 de agosto. 2015.
FERNANDES, C. (2013). S-EDUC: Um simulador de ambiente de robótica educacional em
plataforma virtual. Dissertação de mestrado. Universidade Federal do Rio Grande do Norte UFRN, Natal - RN.
MIRANDA, L. C., Fábio F. Sampaio & José Antonio S. Borges (2010), ‘Robofácil:
Especificação e implementação de um kit de robótica para a realidade educacional
brasileira’, Revista Brasileira de Informática na Educação 18(3).
ZILI, S. (2004). A robótica educacional no ensino fundamental? Perspectivas e práticas.
Dissertação de mestrado. Universidade Federal de Santa Catarina – UFSC, Florianópolis –
SC.
13

Documentos relacionados

EduBOT: Protótipo de uma plataforma robótica

EduBOT: Protótipo de uma plataforma robótica O Arduino Duemilanove, representado na (Figura 03), faz parte do conceito de hardware e software livre para uso e contribuição de toda sociedade. O conceito Arduino surgiu na Itália em 2005 com o o...

Leia mais