Baixe o app para aproveitar ainda mais
Prévia do material em texto
DESENVOLVIMENTO E AUTOMOÇÃO PARA PROTOTIPAGEM SUMARIO 1 INTRODUÇÃO ...................................................................................................................................2 2 OBJETIVO ........................................................................................................................ 4 3 INTERDISCIPLINARIDADE............................................................................................ 5 3.1 Arduino ............................................................................................................. 6 3.2 Interdisciplinaridade no projeto .................................................................. 8 3.3 Conhecimento de lógica de programação ................................................. 8 3.4 Linguagem C...............................................................................................8 3.5 Noções básicas de eletrônica..................................................................9 3.6 Interdisciplinaridade na execução...........................................................9 4 LIXO TÓXICO.........................................................................................................10 5 CONCEITOS GERAIS DO ARDUINO.....................................................................11 5.1 Principais usos.........................................................................................12 5.2 Variantes do Arduino ..............................................................................12 6 BENEFÍCIOS EM RELAÇÃO AS OUTRAS TECNOLOGIAS.................................13 7 DESCRIÇÃO DOS COMPONENTES DO VEÍCULO AUTÔNOMO.......................15 8 PROJETO ESTRUTURAS DAS LIGAÇÕES.........................................................18 8.1 Sensores...................................................................................................18 8.2 Motores.....................................................................................................19 9 MONTATEM............................................................................................................21 10 MELHORIAS PROPOSTAS OU IMPLEMENTADAS ..........................................25 11 RELATORIO COM A LINHAS DE CODIGOS.......................................................26 12 BIBLIOGRAFIA.....................................................................................................31 2 1 INTRODUÇÃO O ensino da ciência fica cada vez mais atraente e curioso de se estudar e praticar quando acompanhado da pratica experimental. Nesse caso a robótica tem um grande potencial de mostrar o mundo cientifico. Esse trabalho mostra um carro robô que segue uma linha preta numa superfície branca, o carro é micro controlado e usa sensores para detectar mudanças de cor na superfície. Estudamos elétrica básica, motores d.C., ponte h, sensores infravermelhos, e a plataforma Arduino. A plataforma Arduino foi desenvolvida em 2005. desde então várias pessoas que usam o Arduino para várias atividades só faz crescer. O Arduino é composto de uma placa eletrônica(hardware) e um software (IDE) que junto dos sensores e atuadores pode se construir diversos sistemas. O Arduino tem hardware e software open-Soure tornando-o muito mais acessível. Este trabalho surgiu da necessidade de tornar as aulas de ciências mais atrativas, de tornar o aluno agente de sua própria aprendizagem. Nele o professor é um guia da aprendizagem, um motivador e não um explicador ou um mero explanador. Neste trabalho o próprio professor foi aprendiz tornando o trabalho motivante, instigante tornando alunado e mestre um amálgama pedagógico. O carrinho seguidor de linha é composto primordialmente do quarteto: motores d.C., ponte h, sensores infravermelhos e o Arduino no controle e processamento de tudo. Isso é dito para que fique claro que para construir o carro de forma pedagógica o aluno tem que estudar ou ter estudado cada uma dessas partes. E é isto que acontece no Invest. Centro Educacional. Na grade de Arduino o aluno irá estudar o motor d.C. na teoria e na prática. As avaliações práticas são realizadas em grupo sendo verificado se o sistema foi construído de forma satisfatória e se ficou em pleno funcionamento, anotando os percalços que porventura as equipes tenham sofrido. As provas teóricas são realizadas individualmente assim como outras disciplinas da grade curricular, porém deve-se destacar que são cobradas nas provas teóricas os procedimentos e conhecimentos usados na prática experimental. A introdução de sensores e uso de Arduino em aplicações como no Robô Carrinho Seguidor de Linha visa preencher 3 essas lacunas. Finalmente os resultados mostraram que houve tanto aprendizagem como também foram prazerosas, motivadoras as ações realizadas neste trabalho educacional. Recomenda-se que ao final do processo realize-se uma competição com os carrinhos seguidor de visando o aprimoramento do carrinho. 4 2 OBJETIVO O objetivo deste trabalho, é o desenvolvimento de um veículo autônomo, capaz de seguir uma linha branca o mais rápido possível, sem sair do trajeto traçado, podendo fazer curvas e voltar para o trajeto sozinho caso ele saia. Assim também, tem como o objetivo o aprendizado de automação, aperfeiçoando nosso conhecimento, para que possamos usar no futuro profissionalmente ou para projetos pessoais. 5 3 INTERDISCIPLINARIDADE A definição de interdisciplinaridade é o uso de duas ou mais disciplinas em um determinado trabalho, seria a interação de diversas ciências e áreas de estudo envolvidas e amalgamadas para a realização de uma determinada tarefa, usando diversos conhecimentos dessas disciplinas para que se atinja um objetivo pré- estabelecido, conhecimentos esses que são essenciais para a finalização deste trabalho, usando várias áreas de estudo em que o indivíduo (ou grupo de pessoas) passa por cada disciplina coletando fragmentos para que se possa junta-los e sintetizá-los. A interdisciplinaridade promove a integração das matérias usadas e também amplifica o número de perspectivas sobre um mesmo assunto. Essas áreas de estudo sempre acabam vindo dispersas e desconexas causando confusão e dificultando muito o aprendizado dos alunos e não estimulando a curiosidade dos mesmos. Essa separação dá forma a um abismo intransponível que dissocia as pessoas do conhecimento humano e diminui a inteligência daqueles que tentam compreender um “todo” e acabam de forma frustrada se especializando em algo bastante específico. O que realmente diferencia o uso das técnicas baseadas na interdisciplinaridade é a possibilidade de expandir ainda mais o tema central tratado, fazendo com que as peculiaridades de cada disciplina se acumulem e deem uma união entre as diversas áreas. Com o uso correto e consciente a interdisciplinaridade, principalmente nos trabalhos, faz com que seja possível ultrapassar as barreiras que determinam a divisão entre as várias disciplinas existentes, pois visivelmente elas existem e limitam a compreensão da realidade daqueles que as estudam, passando a impressão de que uma determinada área se limita às suas próprias fronteiras, não se relacionando de nenhuma forma com as demais e não integrando o vasto mundo do conhecimento humano. A interdisciplinaridade dá ao aluno uma visão mais abrangente e ao mesmo tempo unitária do conhecimento técnico-científico do século XXI, pois apresenta e estimula um olhar crítico e racional privilegiado, fazendo as conexões necessárias de maneira simples entre as disciplinas para que ele tenha a oportunidade de traçar uma trilha lógica e contínua entre as que a ele são expostas. 6 Na interdisciplinaridade deve-se adaptar as diversas ciências e áreas de estudo aos requisitos e particularidades da tarefa que se buscaexecutar, fazendo com que essas áreas se harmonizem com a proposta quando estiverem juntas. Obviamente os envolvidos (ou o envolvido) no trabalho devem ter a mínima noção de cada área usada para que se possa fazê-lo. Também é necessário um grande esforço e inteligência na hora de aprender e usar essas disciplinas. Neste trabalho específico nós temos o objetivo de desenvolver um carrinho coletor de lixo tóxico autônomo, este deve passar por uma estreita e perigosa área dentro do que seria um suposto local que se encontra contaminado. Com o carrinho devemos retirar o lixo dessa área que apresenta riscos à vida animal e humana, por isso devemos guiá-lo de longe e retirar o lixo do local, já que nesta proposta nenhum humano estaria habilitado a realizar este serviço. Este carrinho deve se manter em uma linha limite para que tudo ocorra nos conformes especificados previamente pelo professor, linha essa que tem de 2 a 6 metros de comprimento e pode variar em sua largura, dificultando a vida do coletor. As várias áreas envolvidas neste trabalho serão de responsabilidade de cada integrante do grupo, esses as executando à sua maneira, cada um fazendo a sua especialidade em relação ao objetivo do trabalho. Para realizar o presente trabalho usamos todos os nossos conhecimentos adquiridos no curso de ciência da computação, abarcando tudo que foi visto no primeiro semestre e no início do segundo. Aqui utilizaremos nossos vários conhecimentos dentre os quais: conhecimento básico de hardware de computadores e alguns outros dispositivos, conhecimento básico de programação em C++, montagem e manuseio dos anteriores. 3.1 Arduino Arduino é um dispositivo com algumas ferramentas de funcionamento parecido com a de um minicomputador que pode ser programado de forma prática por aqueles entusiastas que o utilizam, possuindo entradas e saídas específicas que podem ser utilizadas do modo mais apropriado e adequado àqueles que o compraram. 7 Com isso criaram uma placa que possui um microcontrolador Atmel, circuitos específicos e fácil conexão com computadores via cabo USB (o que facilita a programação do mesmo e a interação) então permitindo a programação em um ambiente de desenvolvimento integrado à gosto do usuário, nele se utiliza a linguagem C e C++ para que a placa faça aquilo que o usuário deseja. As placas Arduino têm um funcionamento peculiar que o torna capaz de interpretar as suas entradas e controlar as saídas com a finalidade de criar sistemas automáticos de criação do usuário. Essa elasticidade do Arduino o torna um dispositivo muito versátil que pode ser usado para inúmeros projetos pequenos e até mesmo prototipação de uma ideia concebida por algum desenvolvedor independente que se vê atraído pela plataforma. O Arduino passou a servir como o principal dispositivo de introdução a robótica e eletrônica. O Arduino possui em “si próprio” uma grande e boa plataforma de código aberto (open Soure) que é bastante maleável e de fácil uso por aqueles que se aventuram em sua programação, sendo utilizado por programadores amadores ou qualquer pessoa que queira testar alguma coisa em um dispositivo simples e de baixo custo, esse que é geralmente destinado a neófitos da informática e eletrônica. Também faz com que os alunos tenham acesso a uma vasta comunidade de usuários da placa em questão facilitando a interação e o aprendizado. Para a realização do trabalho com a placa Arduino faz-se necessário as noções de linguagem programação e aplicação delas a partir da linguagem C e além disso também é ideal que se estude e aplique os requisitos propostos no manual. O uso do Arduino neste caso é primordial pois atende as necessidades do projeto em questão. Ele se adequa a finalidade do trabalho pois o objetivo é a simulação de um trabalho de retirada de lixo, tendo grande importância ecológica, testando os conhecimentos de programação e uso de dispositivos eletrônicos do aluno. Portanto um dispositivo de baixo custo e de livre acesso como é o caso do Arduino se torna o ideal, a plataforma open Soure permite que o grupo teste as diversas funcionalidades da placa de forma prática, dando liberdade não só para a personalização do modelo proposto mas também para que os alunos pesquisem e aprendam mais na comunidade abarcada por ele. 8 3.2 Interdisciplinaridade no projeto A interdisciplinaridade do trabalho é grande pois envolve as várias matérias estudadas no curso até então. Exige-se então dos alunos do curso envolvidos no projeto o conhecimento dessas disciplinas, pois sem elas o trabalho seria possível, mas extremamente dificultoso, isso caso partíssemos do zero e sem as bases necessárias para a realização do mesmo. 3.3 Conhecimento de lógica de programação No curso logo fomos apresentados à lógica de programação para que pudéssemos ter as bases da programação real em uma linguagem de programação específica, e com isso devemos aplicar o que foi exposto até aqui. Nós adquirimos as noções básicas do comportamento de uma linguagem de programação só que de maneira mais compacta e simples, indo da teoria à prática, com isso produzindo os primeiros algoritmos e operações numa linguagem mais compreensível e digerível para novatos. A Lógica de programação seria o uso da lógica na hora de se escrever um software, utilizando um algoritmo específico que funciona como uma receita e como sequência de passos lógicos para que se execute algo previamente elaborado e pensado. Essa receita deve ser feita com o objetivo de passar instruções claras ao computador para que ele as execute da maneira pensada pelo programador. A lógica de programação apresenta de maneira mais abrangente aquilo que o sujeito pode extrair das principais linguagens de programação, entre elas se pode ver o Java, C, C++, Python, PHP, Ruby e etc. Sem essa base o aluno fica impossibilitado de fazer os códigos em C, linguagem essa que é utilizada no projeto do Arduino. 3.4 Linguagem C Obviamente para concretizar o trabalho é necessário a programação e para realizá-la dispõe-se de uma linguagem específica, no caso o Arduino exige bases de C e C++ para a orientação a objeto. A linguagem C combina com o conceito do Arduino, esse que é um dispositivo simples e de baixo custo e intuitivo, completa-se esse conceito com uma linguagem apropriada que não exige tanto esforço e conhecimento para que se faça algumas funções simples, funções essas que estão intimamente ligadas a proposta do dispositivo, sendo simples de fácil 9 aquisição e servindo como um aparelho para pequenos projetos ou ideias em fase de teste. Para que se possa programar no Arduino é necessário o uso da linguagem C. Esta linguagem é bastante simples e adaptável se comportando muito bem quando colocada em diferentes situações pelo usuário. A linguagem C foi baseada em linguagens mais antigas como B e Algol, posteriormente acabou dando origem a uma variante que foi chamada de C++. A linguagem C possui características de linguagens de baixo e alto nível e também é uma linguagem case sensitive (Letras maiúsculas e minúsculas são levadas em consideração) sendo extremamente popular e possuindo vários ambientes de desenvolvimento integrado. O conhecimento da linguagem C é crucial para a realização do projeto no Arduino, pois sem ela não é possível percorrer o trajeto desejado que atenda às exigências do instrutor. 3.5 Noções básicas de eletrônica A eletrônica pode parecer complexa e extremamente hostil quando saímos da teoria e nos relacionamos com projetos concretos. Para que se consiga fazer algo no Arduino é necessário o mínimo conhecimento de eletrônica. O Arduino tem um microcontrolador programável na sua placa, microcontrolador esse que tem sua memória, conseguindo oferecer pinos de entrada e saída. O Arduino pode receber dados que podem ser pulsos, tensões e outrossinais elétricos. Os geradores desses sinais podem ser vários dispositivos adquiridos à parte e usados pelo usuário em um determinado projeto. 3.6 Interdisciplinaridade na execução Para a realização deste projeto se exige dos envolvidos o conhecimento de várias áreas do mundo da informática, passando do conhecimento da lógica de programação até a linguagem concreta e depois aplicando os conhecimentos básicos de eletrônica e seus circuitos, isso para que seja possível colocar em prática um projeto que transcende as barreiras de estudo de uma área ou disciplina específica. Fez-se necessário a combinação de várias áreas isoladas ou pouco conectadas entre si para a realização do projeto, pois geralmente as pessoas focam em uma disciplina 10 conveniente e acabam não pondo em prática todo o potencial que pode atingir no estudo científico geral. 4 LIXO TÓXICO Durante os anos, a tecnologia vem avançando e se aprimorando cada vez mais. Atualmente, estamos constantemente realizando o uso de diversos aparelhos eletrônicos no nosso dia a dia, o que de fato facilita a nossa vida, nos ajudando a exercer desde as tarefas mais simples até as mais complexas. Porém, mesmo que o objetivo seja proporcionar uma melhor qualidade de vida, pode acabar sendo extremamente prejudicial – para nós e para o meio ambiente. Os aparelhos eletrônicos que estamos acostumados a usar possuem em sua composição substâncias altamente toxicas (tanto para a nossa saúde quanto para a natureza), e ao serem descartados inadequadamente se tornam um grande perigo: os chamados lixos tóxicos. São considerados lixos tóxicos todos os resíduos feitos com o uso de elementos químicos nocivos, sendo gerados por empresas, hospitais, laboratórios, indústrias, institutos de pesquisa, entre outros, como pilhas, remédios, lâmpadas e eletrônicos em geral. Quando descartados de forma errada e irresponsável, esses resíduos podem levar a contaminação do solo e da água, acabando por chegar aos animais e aos seres humanos, causando sérios problemas de saúde. Os danos que esses objetos podem causar à nossa saúde são variados, porém os mais comuns são doenças como o câncer e a intoxicação, que por sua vez pode levar à morte. É muito comum as pessoas não possuírem o hábito de separar o lixo na hora de realizar o descarte. Por conta disso, muitas vezes acabam tratando o lixo tóxico como qualquer outro tipo de lixo. Isso faz com que esses resíduos sejam jogados em locais que são próprios para o lixo comum, ao invés de serem tratados separadamente, acarretando os problemas citados anteriormente. 11 Sendo assim, para que esses resíduos possam ser descartados e reciclados da maneira correta (buscando a diminuição do impacto ambiental e dos riscos à nossa saúde), é necessário que tenhamos um cuidado adequado com a forma em que os dispensamos. A primeira etapa deste processo é realizar a separação do lixo, deixando os resíduos tóxicos longe do lixo comum, para que depois possa ser encaminhado para as unidades de tratamento adequadas. De acordo com uma lei presente na Constituição Federal de 1988, toda empresa que seja responsável pela construção e pela comercialização de produtos que possam, futuramente, serem considerados lixos tóxicos, tem a obrigação de se disponibilizar para realizar o recolhimento desses resíduos. Essa tarefa é realizada pelas empresas por meio de diversas formas, como por exemplo: • Possuir uma linha de atendimento, onde o cliente pode entrar em contato com a empresa para solicitar o serviço e um funcionário é enviado para realizar o recolhimento do material; • Oferecer desconto na compra de um novo aparelho ao trocar com o antigo; • Possuir um balcão de atendimento onde o cliente pode ir diretamente e realizar o descarte do item Entre outros. Após esse recolhimento, o lixo segue para estações de tratamento especiais (próprias para este tipo de resíduos), onde receberão uma forma de descarte adequada, podendo ser armazenados até que o material toxico desapareça por completo ou levado até um sistema de incineração especial, que os incineram de forma que o gás liberado por eles não polua o ar. 5 CONCEITOS GERAIS DO ARDUINO O Arduino foi criado em 2005 na Itália , foi feito para ser uma placa de hardware mais barata e simples que a maioria das placas pois na época e até hoje são caras, 12 além de na maioria dos casos serem focadas em tarefas especificas o que faz o seu preço alto ainda pior, o Arduino no entanto é bem mais flexível podendo ser usado para uma variedade de tarefas. • Software: O software do Arduino é escrito em Java e é feito para ser simples e fácil de usar, pode ser programado em C ou até C++ por isso ele seu software é extremamente flexível e é um dos motivos pelo Arduino ser muito usado por estudantes e iniciantes no estudo da programação, os dois comandos mais usados na programação do Arduino são o “setup” que tem como função começar o programa e o loop que tem como função repetir uma série de comandos . • Hardware: O hardware do Arduino consiste principalmente de um controlador pequeno Atmel AVR de 8 bits, mas também é possível usar os outros componentes presentes no Arduino para usar outros circuitos que podem complementar o hardware do Arduino. Outros eletrônicos presentes no Arduino são: reguladores lineares, que são um eletrônico pequeno e preto que tem como função regular a tensão presente no Arduino, deixando a tensão de siada constante; oscilador de cristal, é um componente eletrônico bem pequeno que com a vibração de um cristal pode medir o tempo precisamente. 5.1 Principais usos Como dito anteriormente, o Arduino é muito flexível ,portanto seus usos são diversos como por exemplo: a luva Tacid criada por Steve Hoefer que usa sensores que com a programação do Arduino fazem com que a pressão na mão do usuário aumente de acordo com a distância de qualquer objeto, o seu intuito é ser usada para pessoas com deficiências visuais ; outro exemplo são as jaquetas com seta para ciclista criadas por Leah Buechley que no caso usam a versão lily pad do Arduino para ajudar na segurança dos ciclistas. 5.2 Variantes do Arduino • Arduino Mega: O Arduino Mega é uma versão mais poderosa do Arduino normal(uno) ele possui mais que 3 vezes a quantidade de portas digitais e 2 13 vezes e meia a quantidade de portas analógicas, resumindo, é feito para projetos mais complicados. • Arduino Mega ADK: O Arduino Mega ADK é uma versão um pouco mais forte que a Mega tendo 1 porta analógica a mais e 4 chips dedicados a comunicação serial. • Arduino Due: O Arduino Due é uma versão parecida com o Mega tendo uma quantidade de portas um pouco menor mais possuindo uma capacidade de processamento bem melhor que a do Uno e Mega, incluindo uma memória ROM dedicada. • Arduino Nano: O Arduino Nano como o nome indica é bem pequeno tendo menos de 4,5 centímetros de comprimento e menos de dois de largura, sua maior fraqueza também é sua maior vantagem pois apesar de seu tamanho limitar sua quantidade de portas e seu poder de processamento o fato de ele ser tão pequeno faz ele perfeito para projetos que são bem compactos e não necessitam de muito poder de processamento ou portas. • Arduino Leonardo: O Arduino Leonardo é bem parecido com o Uno possuindo uma quantidade um pouco maior de portas digitais e analógicas, a maior diferença que ele possui é o seu conector usb micro que para ser ligado a um computador. • Arduino Pro Mini: O Arduino Pro Mini é similar ao Nano em tamanho, entretanto possui poder de processamento e quantidades de portas maior que o Nano. • Arduino Esplora: O Arduino Esplora tem um formato de pílula e se parece com um controle de videogame com um joystick de um lado e quatro botões de forma de losango do outro, sua principal função é não demandar conhecimentode eletrônica do usuário, pois os componentes necessários para seu uso já estão na placa, portanto ele é usado com um foco maior no lado da programação. 6 BENEFÍCIOS EM RELAÇÃO AS OUTRAS TECNOLOGIAS A velocidade de mudança nos deixa muitas vezes perdidos. A tecnologia avança mais rápido do que conseguimos acompanhar A grande vantagem é que você tem a sua disposição uma plataforma de hardware já modelada, e reconfigurável via firmware dispensando em muitos casos 14 os conhecimentos em eletrônica digital e arquitetura de microcontroladora em relação ao controlador da placa. Bastando apenas estudos sobre algoritmos para fazer uma aplicação. Os benefícios de ter um Arduino se baseiam não apenas no fato de ser uma tecnologia ampla, mas como ter diversidades para poder criar um, tudo depende da criatividade e do esforço do criador O custo baixo do Arduino acaba sendo um grande benefício para pessoas experientes ou até mesmo pessoas que não possuem muito conhecimento sobre o assunto, ou muitos recursos financeiros para bancar algo melhor, com isso, pessoas com menos conhecimento conseguem até mesmo iniciar um projeto e ir aprendendo aos poucos Além da utilização simples e o custo baixo como foi mencionado. O Arduino acaba permitindo que o criador possa o construir para trabalhos escolares, ou para si próprios, desde um carrinho de controle remoto até um robô de batalha para competições. Comparado com outras tecnologias semelhantes, o Arduino tem essa capacidade de atrair todos os tipos de público, até mesmo pessoas que não entendam, o valor ficando acessível para todos acaba sendo um benefício e um ótimo desafio. A placa Arduino pode ter sensores acoplados, que a partir das informações coletadas armazena dados que vão até um Aplicativo instalado em um computador. Além disso, o Arduino aceita botões, chaves, e outros dispositivos. O hardware possui também "saídas", permitindo que interaja com providências como ligar e desligar outros equipamentos. Ao utilizar o Arduino, os alunos que cursam robótica ou até mesmo pessoas que não cursam nada da área desenvolvem habilidades relacionadas a lógica, programação, elétrica, eletrônica, trabalho em equipe, ou um trabalho individual organizado, internet das coisas e automação, de forma completamente natural e livre. Você não precisa de nenhum componente adicional para começar a programar um Arduino. Basta apenas um computador, uma placa e a IDE para efetuar uma programação e enviar o programa para a placa. 15 Outro ponto essa tecnologia, foi a proposta de criar uma plataforma de código aberto, disponível para o público no qual ajudou em muito no seu desenvolvimento. Os sensores podem atuar em vários tipos de função como por exemplo: 1. temperatura e umidade (termostatos, detectores de fumaça). 2. Pulsação, velocidade e movimento. 3. Aplicativos para sensores de carro, Geladeira e muitos outros. 7 DESCRIÇÃO DOS COMPONENTES DO VEÍCULO AUTÔNOMO ARDUINO: É uma plataforma de prototipagem eletrônica, criada por Massimo Banzi e David Cuartielles em 2005 na Itália. O Arduino é de uso livre, permitem-se adaptações ou modificações na placa e no software de seu controlador, trazendo ao desenvolvedor uma grande quantidade de possíveis controladores para serem criados. Por essa ferramenta ser tão útil na criação de novos equipamentos automatizados, foi então definida a plataforma Arduino como base para a solução de hardware. A linguagem utilizada para a programação do Arduino é uma DSL, a qual pode ser considerada uma adaptação das linguagens de programação C e C++. Existem para a plataforma Arduino, os Shields. Eles são placas que podem ser acopladas ao Arduino estendendo as suas capacidades. Existem diferentes Shields, cada um com uma função específica, por exemplo, controladores de motores, placas solares, etc. FIGURA 1 – PLACA ARDUINO UNO Neste trabalho, o grupo resolveu usar junto com o Arduino, o controlado de motor Módulo L298N, o qual permite fornecer energia para os motores que controlam as duas rodas do carrinho, e também, alimentando a placa Arduino controlando a movimentação do carrinho. 16 FIGURA 2 – MÓDULO L298N Junto com o Módulo controlador de motor, dois sensores óptico reflexivo, que serve pra receber os sinais infravermelhos devolvidos após bater em algum objeto e retornar ao sensor. Serve para ser colocado em diversos locais, como locais de detecção de passagem de objetos e pessoas. Neste projeto será usado em um carro autônomo, que seguira uma faixa branca no chão. FIGURA 3 SENSOR ÓPTICO REFLEXIVO Pra finalizar os componentes usados na construção do robô seguidor de linha, temos também uma Mini Protoboard 170 Pontos, este protoboard é ideal para o projeto, com seu tamanho reduzido, possuindo 170 pontos, perfeito para projetos pequenos. FIGURA 4 MINI PROTOBOARD 170 PONTOS 17 Para a fonte de alimentação usamos um Power Bank de 10000mAh: FIGURA 5 POWER BANK Para finalizar o kit de construção do robô seguidor de linha, usaremos cabos Jumpers MACHO x MACHO, FEMEA x MACHO, FEMEA x FEMEA, dois motores DC 9 volts, 3 rodas, duas para os motores e uma para ser acoplada no chassi, para que o carro seguidor de linha, conseguir virar. FIGURA 6 CABOS JUMPERS Os jumpers servirão para fazer toda ligação entre o Arduino e o modulo controlador de motor, inclusive caso queira fazer algumas adaptações, como por exemplo, um interruptor. FIGURA 7 MOTORES 18 Os motores que vão ser usado para movimentar o carrinho, será controlado pelo Modulo L298N, regulando suas velocidades FIGURA 8 CHASSI COMPLETO 8 PROJETO ESTRUTURAS DAS LIGAÇÕES 8.1 Sensores Na ligação do Arduino, usamos os cabos jumpers descritos no tema (DESCRIÇÃO DOS COMPONENTES DO VEÍCULO AUTÔNOMO), começaremos com a ligação do sensor de refletância. Figura 9 LIGAÇÃO SENSORES 19 Para a lição dos sensores, usamos o seguinte esquema, com uma protoboard de 70 pontos, ligamos um jumper na entrada 5v do Arduino, conectando na protoboard, assim conseguindo alimentar os dois sensores por essa única entrada de energia. Fizemos a mesma coisa para o negativo de ambos, para a programação, ambos os sensores foram ligados em portas analógicas, sensor direito na entrada A0 e o esquerdo na entrada A1. 8.2 Motores Para a ligação dos motores do carrinho seguidor de linha, utilizamos o Driver controlador de motor L298N, nele ligamos os fios soldados nos motores, na parte indicada como Motor A e motor B, assim, ligando seus controladores ao Arduino. FIGURA 10 DRIVE L298N Agora finalizaremos a parte dos motores, conectando 4 pinos do Arduino aos pinos de entrada do driver L298N. Conectaremos o pino 7 do Arduino na entrada IN1, o pino 6 na IN2, pino 5 na IN3 e pino 4 na IN4. A imagem a abaixo mostra o esquema de ligações a serem realizadas: FIGURA 11 LIGAÇÃO MOTOR ARDUINO 20 Após ligarmos os motores e os sensores, finalizamos as ligações com a alimentação do Arduino e do driver controlador de motor, para isso usamos o Power Bank, com duas entradas USB, uma para o Arduino e a outra para os motores, com o driver controlador de motores ligado a uma fonte externa sem ser no próprio Arduino, os motores podem funcionar com força total, deixando assim o veículo mais rápido. FIGURA 12 ALIMENTAÇÃO ARDUINO A imagem abaixo representa a ligação completa do Arduino e do driver controlador de motor, ambos usando portas usb separadas, porem só o driver controlador de motor, tem um interruptor. Figura 13 ALIMENTAÇÃO ARDUINO E DRIVER DE MOTOR 21 9 MONTAGEM Para a montagem do carrinho seguidor de linha, o grupo decidiu deixar na parte superior do chassi, o maior espaço possível, deixando o visual mais limpo, e menos apertado. Então para começar a montagem, nós fizemos primeiroum modelo de como ficaria os componentes nele, conseguimos encaixar tudo na parte superior do chassi, porém, não achamos o visual limpo. FIGURA 14 EXEMPLO DE DESIGN Começamos a montagem encaixando os dois motores na parte inferior do chassi, e ligando seus fios, optamos por usar fita isolante preta ao invés de soldar eles, para a fixar os motores, foram usados 4 parafusos, dois para cada. 22 FIGURA 15 MOTOR FIXADO E SUA RODA Após fixarmos os motores e todas as rodas, colocamos nossa fonte de energia do lado direito do chassi, diferente do proposto como design primário, optamos por colocá-lo deitado na vertical, colado com dupla face, deixando assim mais espaço para outros componentes na parte de cima do chassi. FIGURA 16 POWER BANK Com mais espaço no chassi, colocamos a placa Arduino e a protoboard na parte de cima ao lado do Power Bank, o controlador de motor colocamos na parte 23 inferior do chassi, como a pista é plana, tiramos isso como vantagem para deixarmos os componentes mais espaçados no chassi. FIGURA 17 ARDUINO E PROTOBOARD FIGURA 18 MODULO CONTROLADOR DE MOTOR 24 Para finalizar a montagem completa, colocamos os dois sensores na parte frontal do chassi, com um bom espaçamento, apenas 2cm acima do chão, para ter melhor performance na leitura de dados. FIGURA 19 SENSORES REFLETIVOS 25 10 MELHORIAS PROPOSTAS OU IMPLEMENTADAS Ao longo do trabalho e montagem do carrinho, tivemos algumas poucas mudanças desde o design e a programação do mesmo. De começo, com a parte do design, mudados a posição do Power Bank, que estava deitado na parte traseira do chassi, e colocamos ele do lado direito “em pé”. FIGURA 20 ANTES POWER BANK FIGURA 21 DEPOIS POWER BANK Em seguida, a mudança do drive controlador de motor, que estava ao lado do Arduino, foi colocado na parte de baixo do chassi. FIGURA 22 ANTES DRIVER FIGURA 23 DEPOIS DRIVER 26 Após essas mudanças de design, mudamos também a parte do código onde definíamos as variáveis e as portas utilizadas pelo Arduino. FIGURA 24 CODIGO ANTES FIGURA 25 CODIGO DEPOIS Mudança mais significativa nesta parte, foi na parte de FW onde tínhamos um tempo de 50 milésimos de segundos para ambos os motores ficarem ativados para o carrinho andar para frente, após a mudança colocamos 100 milésimos de segundos, deixando o carrinho muito mais rápido. 11 RELATORIO COM A LINHAS DE CODIGOS Nesta primeira parte de código, definimos todas as variáveis que vamos usar, e definimos as portas do Arduino que estão sendo utilizadas. #define RightMotorForward 4 #define RightMotorBackward 5 #define LeftMotorForward 6 #define LeftMotorBackward 7 #define sensorL A1 #define sensorR A0 #define FW 100 27 #define TR 70 #define PAUSE 50 #define FRENTE 150 Aqui definimos os pinos de entrada e saída de dados. void setup(){ pinMode(RightMotorForward, OUTPUT); pinMode(LeftMotorForward, OUTPUT); pinMode(LeftMotorBackward, OUTPUT); pinMode(RightMotorBackward, OUTPUT); pinMode(sensorL,INPUT); pinMode(sensorR,INPUT); Serial.begin(9600); } No loop, definimos os comandos que serão executados sem parar, como o próprio nome diz “Loop”, esses comandos serão executados até que o Arduino seja desligado, ou até que você defina um modelo de parada para esse loop. No loop, é onde estão os comandos para o carrinho ir para frente ou para trás, virar a esquerdar ou para a direita, e tudo isso é controlado pela leitura dos sensores (analogRead(sensorL); analogRead(sensorR);)), quando o sensor tiver um devido valor, ele executara tal sequência de comandos. void loop(){ int left = analogRead(sensorL); int right = analogRead(sensorR); Serial.print("Leitura de luminosidade sensor L: "); 28 Serial.println(left); Serial.print("Leitura de luminosidade sensor R: "); Serial.println(right); if (left < 400 && right < 400){ moveForward(); } else if (left > 400 && right > 400){ backward(); } else if (left > 400){ turnRight(); } else if (right > 400){ turnLeft(); } delay(PAUSE); } Nesta parte do código, é onde está definido as funções dos motores, que fazem ir para frente ou para trás, virar a esquerda ou direita, desvantagem, não tem controle de velocidade do motor, eles funcionam 100% a todo momento, dependendo dos sensores, um jeito de “Controlar” a velocidade dos motores, foi colocando um delay para cada execução de tal função, assim, ajudando o carrinho a se controlar em cima da linha. void backward(){ motorbackward(); Serial.println("Marcha Ré"); 29 delay(FW); moveStop(); } void moveForward(){ motorLForward(); motorRForward(); Serial.println("Ir para frente"); delay(FRENTE); moveStop(); } void turnRight(){ Serial.println("Vira à direita"); motorLForward(); delay(TR); moveStop(); } void turnLeft(){ Serial.println("Vira à esquerda"); motorRForward(); delay(TR); moveStop(); } void moveStop(){ digitalWrite(RightMotorForward, LOW); digitalWrite(LeftMotorForward, LOW); digitalWrite(RightMotorBackward, LOW); 30 digitalWrite(LeftMotorBackward, LOW); } void motorRForward(){ digitalWrite(RightMotorForward, HIGH); digitalWrite(RightMotorBackward, LOW); } void motorRBackward(){ digitalWrite(RightMotorForward, LOW); digitalWrite(RightMotorBackward, HIGH); } void motorLForward(){ digitalWrite(LeftMotorForward, HIGH); digitalWrite(LeftMotorBackward, LOW); } void motorLBackward(){ digitalWrite(LeftMotorForward, LOW); digitalWrite(LeftMotorBackward, HIGH); } void motorbackward() { digitalWrite(LeftMotorBackward, HIGH); digitalWrite(RightMotorBackward, HIGH); digitalWrite(RightMotorForward, LOW); digitalWrite(LeftMotorForward, LOW); } 31 12 BIBLIOGRAFIA Criando um robô seguidor de linha com Arduino passo a passo. Disponível em: <https://luistavares.com/2018/09/criando-um-robo-seguidor-de-linha-com-arduino- passo-a-passo/> Acesso em: 01 de novembro de 2019 CULTURA MIX. Lixo Tóxico: O Que é e Como Evitar? Disponível em: <https://meioambiente.culturamix.com/lixo/lixo-toxico-o-que-e-e-como-evitar>. Acesso em: 30 de outubro de 2019. FAZ FÁCIL. Reciclagem de materiais – Resíduo inorgânico. Lixo tóxico! Disponível em: <https://www.fazfacil.com.br/artesanato/reciclagem-materiais-rejeito/>. Acesso em: 16 de outubro de 2019. FRAGMAQ. Voltar Entenda como fazer o descarte de lixo altamente tóxico de maneira segura. Disponível em: <https://www.fragmaq.com.br/blog/entenda-como-fazer-o- descarte-de-lixo-altamente-toxico-de-maneira-segura/>. Acesso em: 16 de outubro de 2019. FRAGMAQ. https://www.fragmaq.com.br/blog/os-perigos-do-lixo-quimico-e-do-lixo- toxico/. Disponível em: <https://www.fragmaq.com.br/blog/os-perigos-do-lixo-quimico- e-do-lixo-toxico/>. Acesso em: 16 de outubro de 2019. MANZANO, MARIA CAROLINA RODELLA. Resíduos Tóxicos. Disponível em: <https://www.infoescola.com/ecologia/residuos-toxicos/>. Acesso em: 30 de outubro de 2019. PORTABILIS TECNOLOGIA, O QUE É INTERDISCIPLINARIDADE E POR QUE ADOTAR ESSA METODOLOGIA? Disponível em: <ps://blog.portabilis.com.br/o-que- e-interdisciplinaridade-e-por-que-adotar-essa-metodologia/ >, Acesso em: 01 de outubro de 2019 RENATA FERREIRA DA SILVA, Importância da interdisciplinaridade no processo de aprendizagem Disponível em: <https://www.portaleducacao.com.br/conteudo/artigos/idiomas/importancia-da- interdisciplinaridade-no-processo-de-aprendizagem/49573> Acesso em: 01 de outubro de 2019 https://luistavares.com/2018/09/criando-um-robo-seguidor-de-linha-com-arduino-passo-a-passo/https://luistavares.com/2018/09/criando-um-robo-seguidor-de-linha-com-arduino-passo-a-passo/ https://www.portaleducacao.com.br/conteudo/artigos/idiomas/importancia-da-interdisciplinaridade-no-processo-de-aprendizagem/49573 https://www.portaleducacao.com.br/conteudo/artigos/idiomas/importancia-da-interdisciplinaridade-no-processo-de-aprendizagem/49573 32 ELAINE TELES 22, 2016 ARDUINO: O QUE É? PRA QUE SERVE? QUAIS AS POSSIBILIDADES? Disponível em: <https://medium.com/nossa-coletividad/arduino- o-que-é-pra-que-serve-quais-as-possibilidades-efbd59d33491> Acesso em: 14 de outubro de 2019 ATHOS ELETRONICS ARDUINO – O QUE É, TIPOS E APLICAÇÕES Disponível em: <https://www.google.com.br/amp/s/athoselectronics.com/o-que-e-arduino/amp/> Acesso em: 18 de outubro de 2019 ADILSON THOMSEN, O que é o Arduino Disponível em: <https://www.filipeflop.com/blog/o-que-e-arduino/>: Acesso em 18 de novembro de 2019. WIKIPÉDIA, ARDUINO Disponível em:< https://en.wikipedia.org/wiki/Arduino> Acesso em: 24 de outubro de 2019. MANOEL LEMOS ARDUINO : CONHEÇA ESTA PLATAFORMA DE HARDWARE LIVRE E SUAS APLICAÇÕES Disponível em: https://blog.fazedores.com/arduino- conheca-esta-plataforma-de-hardware-livre-e-suas-aplicacoes/> Acesso em: 14 de novembro de 2019 NICK ELLIS, LUVA HÁPTICA AJUDA CEGOS A "ENXERGAR" OS OBSTÁCULOS NO CAMINHO, Disponível em: <https://www.techtudo.com.br/artigos/noticia/2011/08/luva-haptica-ajuda-cegos- enxergar-os-obstaculos-no-caminho.html> Acesso em: 28 de outubro de 2019 BRUNO FONSECA, ARDUINO E SUAS MÚLTIPLAS APLICAÇÕES, Disponível em: https://www.redbull.com/br-pt/arduino-e-suas-multiplas-aplicacoes> Acesso em: 10 de novembro de 2019 https://medium.com/nossa-coletividad/arduino-o-que-%C3%A9-pra-que-serve-quais-as-possibilidades-efbd59d33491?source=post_page-----efbd59d33491---------------------- https://medium.com/nossa-coletividad/arduino-o-que-é-pra-que-serve-quais-as-possibilidades-efbd59d33491 https://medium.com/nossa-coletividad/arduino-o-que-é-pra-que-serve-quais-as-possibilidades-efbd59d33491 https://www.google.com.br/amp/s/athoselectronics.com/o-que-e-arduino/amp/ https://www.filipeflop.com/blog/o-que-e-arduino/ https://en.wikipedia.org/wiki/Arduino https://blog.fazedores.com/arduino-conheca-esta-plataforma-de-hardware-livre-e-suas-aplicacoes/ https://blog.fazedores.com/arduino-conheca-esta-plataforma-de-hardware-livre-e-suas-aplicacoes/ https://www.techtudo.com.br/artigos/noticia/2011/08/luva-haptica-ajuda-cegos-enxergar-os-obstaculos-no-caminho.html https://www.techtudo.com.br/artigos/noticia/2011/08/luva-haptica-ajuda-cegos-enxergar-os-obstaculos-no-caminho.html https://www.redbull.com/br-pt/arduino-e-suas-multiplas-aplicacoes
Compartilhar