1 Sumário Introdução ................................................................... 5 O Robô Serelepe ............................................................. 7 Robôs ........................................................................... 8 O que são robôs? ............................................................ 8 Comportamento de Robôs .............................................. 8 Veículo de Braitenberg .................................................... 9 Montagem ................................................................. 12 Lista de Materiais .......................................................... 12 Exemplo de Montagem ................................................. 16 Ferramentas Necessárias ............................................... 16 Passo-a-Passo................................................................ 17 Diagrama Elétrico ...................................................... 19 Instalação e Primeiro Teste ........................................ 20 Download e instalação do Arduino IDE, plug-in Digispark e driver Digispark ............................................................. 20 Instalando a biblioteca Serelepe .................................... 21 2 Primeiro Teste ............................................................... 21 Carregando o programa .......................................................... 21 Cuidados antes de ligar o robô ............................................... 22 Ligando o robô ........................................................................ 22 FAQ ............................................................................... 23 Cursos clubeMAKER.................................................... 24 Alguns de nossos cursos ................................................ 24 3 Robô Serelepe 4 Introdução Parabéns! Você acabou de receber o makerBOX #1: o Robô Serelepe! Se está lendo isso é porque deu tudo certo . Seja bemvindo à comunidade clubeMAKER! Você é, sem dúvida, um MAKER de sucesso. Esta é a nossa primeira caixa makerBOX e ela foi criada com muito esforço, dedicação e carinho. Deu trabalho, mas valeu muito a pena! Você apostou no clubeMAKER, no All Electronics, na D2G Tecnologia e na Usina Info, e por isso agradecemos pela confiança e desejamos que seu aprendizado e diversão sejam máximos! “Você faz, você é um MAKER” - e o makerBOX foi feito para você. O Robô Serelepe é um pequeno robô muito extrovertido. Ele tem comportamentos! Como assim? A lógica é simples e os resultados são fantásticos, vamos lá... A base do projeto é uma plataforma circular que é a própria PCB (placa de circuito impresso – aquela placa verde) do circuito do robô. Todos os componentes são soldados nela, além de fornecer suporte mecânico estrutural. O Serelepe recebe estímulos externos através de quatro sensores de luz LDR (Light Dependent Resistor – os “olhinhos” do robô), que são resistores com resistência 5 dependente da luz. Com esses sensores ele pode ver e sentir o ambiente ao seu redor! Não é só isso, para se movimentar e reagir aos incentivos luminosos ele possui dois motores com rodinhas, com comportamento configurável. Quem controla tudo isso é um microprocessador DIGISPARK, compatível com Arduino. Nós vamos aprender juntos que, com algoritmos muito simples e diretos, poderemos criar comportamentos complexos! Exatamente isso: os comportamentos mais bonitos dos pequenos animais, como os insetos, são extremamente simples. Com o makerBOX #1, o Robô Serelepe, vamos testar e apreciar isso na prática! 6 O Robô Serelepe O robô serelepe contempla os seguintes componentes principais e funções: Quatro sensores de luminosidade: os olhos do robô! Dois motores para locomoção. Processador (cérebro) de 8 bits capaz de 16 milhões de instruções por segundo! Nossa! Expansão de portas digitais com registrador de deslocamento. Multiplexação de sinais analógicos por chaveamento de diodos. Modulação da velocidade dos motores e do brilho dos LEDs através de MBAM (Mirrored Bit Angle Modulation). Biblioteca de configuração simples em plataforma Arduino. Placa de circuito personalizada. 7 Robôs O que são robôs? “Um robô (ou robot) é um dispositivo, ou grupo de dispositivos, eletromecânicos ou biomecânicos capazes de realizar trabalhos de maneira autônoma, pré-programada, ou através de controle humano. Os robôs são comumente utilizados na realização de tarefas em locais inóspitos como vulcões, tubulações, fundo do mar, superfície de outros planetas, ou na realização de tarefas repetitivas, sujas ou perigosas para os seres humanos” (FORESTI, 2006). Comportamento de Robôs Diversos algoritmos foram criados ao longo do tempo para controlar robôs conforme as necessidades do mercado e da sociedade. Nas áreas industriais os robôs são caracterizados por comportamentos extremamente repetitivos e bem definidos, sem espaço para erros – máquinas essas que constroem os nossos carros, as nossas televisões e os nossos celulares. Já no mercado de entretenimento, existe um maior espaço para o desenvolvimento de algoritmos de comportamento dinâmico. Neste caso, utiliza-se o comportamento dinâmico para definir ações que imitam os humanos ou os animais. 8 Uma classe de robôs que apresentam comportamentos animais complexos e interessantes são os Veículos de Braitenberg, discutidos a seguir. Veículo de Braitenberg Os veículos de Braitenberg são agentes que podem se movimentar autonomamente por aí, baseando-se nos estímulos em seus sensores. Eles possuem sensores simples ou primitivos (luz, som, distância) e atuadores (motores) que podem fazê-los se mover. A ação dos atuadores é dada devido a informação recebida pelos sensores. A conexão entre eles é feita de forma simples, como nos seguintes exemplos: Figura 1 – Exemplo de comportamentos com ligações simples. 9 A. O sensor de luz da direita é diretamente conectado ao motor direito: Nessa configuração o veículo tenderá a se virar contra a luz, já que mais luz no sensor fará com que ele ative seu motor direito com maior intensidade, fazendo-o virar para a esquerda. B. O sensor de luz da esquerda é diretamente conectado ao motor direito: Nessa configuração o veículo tenderá a se virar para a luz, já que mais luz no sensor fará com que ele ative seu motor direito com maior intensidade, fazendo-o virar para a esquerda. Ficou claro que com conexões simples – algoritmos simples – é possível criar comportamentos filosoficamente muito complexos. E o mais legal de tudo: o Robô Serelepe é um Veículo de Braitenberg! A configuração das conexões entre os sensores e motores é feita por software. Imagina o que não é possível fazer com quatro sensores e dois motores? Quantas diferentes formas de conexão podemos criar? Quantos comportamentos? Nós pensamos em alguns comportamentos que você poderá testar no seu Robô Serelepe: 10 Medo: ele fica com medo da luz! Você aponta uma fonte de luz (lanterna, por exemplo) e ele foge. Timidez: ele fica com vergonha, mas não foge. Você aponta a luz e ele vira de costas, sem fugir. Amor: seu robozinho é apaixonado pela luz. Você aponta uma fonte de luz e ele sai correndo atrás da luz, sempre tentando chegar mais próximo possível. Curiosidade: seu robozinho fica curioso. Você aponta uma fonte de luz nas costas dele e ele vira de frente. Ele quer olhar a luz, mas não vai correr na direção dela. Indecisão: misto de timidez e curiosidade. O robô quer olhar para a luz, mas a timidez atrapalha... O que será que acontece? Estes são só alguns comportamentos que pensamos. Que tal fazer alguns experimentos e compartilhar conosco lá no fórum do clubeMAKER? (www.clubemaker.com.br/forum). 11 Montagem Aqui temos um passo-a-passo básico para a montagem do Robô Serelepe. Se você precisa de instruções mais detalhadas, acesse agora mesmo o nosso tutorial completo de montagem do makerBOX #1 no endereço: www.clubemaker.com.br/makerbox Lista de Materiais Componente(s) Tipo 2 Capacitor Eletrolítico 2 Capacitor Poliéster 1 Capacitor Poliéster 10 Diodo Valor 100uF 16v 100nF 63v 1nF 63v 12 Imagem Componente(s) Tipo Valor Placa Circuito Personalizada Impresso 1 Circuito Integrado Lógica 74HC595 1 LED 3mm Verde 1 LED 3mm Amarelo 1 4 LDR (Sensor de Luz) 5mm 4 Resistor 1/4W 10k 2 Resistor 1/4W 330 1 Resistor 1/4W 330k 2 Resistor 1/4W 2k2 2 Transistor Bipolar 2n2222 13 Imagem Componente(s) Tipo Valor 1 Borne AK500/2 1 Jumper 1 Soquete Para C.I. 16 Pinos 1 Interruptor Alavanca MTS-102 2 Motor 1 Digispark Micro USB 2 Feltro Adesivo DC130 Redondo 14 Imagem Componente(s) 1 Clip Baterial 1 Bateria 2 Roda Aeromodelo 1 Cabo Micro USB Tipo Valor 9V Espuma D1:20mm D2:30mm D3:2,1mm h:7 mm 15 Imagem Exemplo de Montagem Figura 2 - Foto do robô montado vista superior Ferramentas Necessárias Todas as ferramentas do kit de sobrevivência: https://www.usinainfo.com.br/kit-de-ferramentas/kitbasico-de-sobrevivencia-clubemaker-4358.html 16 Passo-a-Passo 1. Soldar todos os resistores. a. Cores específicadas na lista de materiais. 2. Soldar todos os diodos. a. Atenção com a polaridade! 3. Colar os motores. a. Colocar cola quente na parte não ventilada do motor. b. Colar alinhando os terminais com a placa. 4. Soldar os motores. 5. Soldar soquete do CI 74HC595 (Circuito Integrado) a. Atenção a marcação de orientação, alinhar com o desenho na placa. 6. Soldar as barras de pinos de 3 e 6 terminais do DIGISPARK. 7. Soldar a barra de pinos de 2 terminais com o jumper. 8. Soldar capacitores nas suas devidas posições. 9. Soldar transistores nas suas devidas posições. 10. Soldar os LEDs. 11. Soldar os LDRs. a. Mantenha os LDRs um pouco distantes da placa. 17 b. Aponte os LDRs um pouco para cima e um pouco para o lado de fora, conforme a Figura 3. Figura 3 – Exemplo de montagem do olho do robô, apontando para fora. 12. Soldar conector da bateria. 13. Soldar o DIGISPARK nas barras de pinos. 14. Conectar clipe da bateria. a. Atenção a polaridade. 15. Colar rodinhas. a. Colocar cola quente no buraco do eixo da rodinha. b. Encaixar a rodinha no eixo do motor. 16. Soldar o interruptor de alavanca na placa. 17. Conectar bateria ao clip de bateria. 18. Colar bateria. a. Colocar cola-quente na lateral menos larga. b. Colar no centro do robô, entre os motores. 19. Colar os feltros no lado inferior da placa. a. Um feltro na frente e outro atrás, conforme indicações no verso na placa. 20. Encaixar o CI 74HC595 no seu soquete. a. Alinhar pinos. b. Alinhar o chanfro com o chanfro do soquete. 21. Reforçar o interruptor com cola-quente. a. Adicionar cola-quente entre o vão da placa e o corpo do interruptor. 18 Diagrama Elétrico Figura 4 19 Instalação e Primeiro Teste Download e instalação do Arduino IDE, plug-in Digispark e driver Digispark Baixar o Arduino do site www.arduino.cc Clique em “Download” e selecione seu sistema operacional (Windows, MAC ou Linux) o No momento da escrita desse manual a versão era a 1.6.9 Instalar o Arduino. Abrir o Arduino. Clicar em Arquivo/Preferências. No campo "URLs Adicionais de Gerenciadores de Placas:" adicione: https://raw.githubusercontent.com/digistump/arduinoboards-index/master/package_digistump_index.json Clique em OK. Clique em Ferramentas/Placa/Gerenciador de Placas... Na busca digite "digispark". Selecione o item "Digistump AVR Boards" e clique em instalar. Aguarde o término da instalação Fazer o download dos drivers no link: www.clubemaker.com.br/uploads/makerBOX/tools/Digisp arkDriver.rar Descompactar o driver do seu sistema operacional Instalar driver “install.exe” o 20 Instalando a biblioteca Serelepe Baixar arquivo: http://www.clubemaker.com.br/uploads/makerBOX/2016 05/makerBOX-Serelepe.rar Abra o arquivo Arduino Lib/Serelepe.rar Extraia a pasta "Serelepe" para o diretório "libraries" no Sketchbook do Arduino. O local do sketchbook pode ser verificado no próprio software do Arduino: clique em Arquivo/Preferências e observe o campo "Local do Sketchbook". Reiniciar software Arduino Primeiro Teste Carregando o programa Na pasta teste do material baixado do clubeMAKER, abra o arquivo "teste.ino" na pasta “Exemplos/teste”. o Este é o programa a ser executado pelo robô. No software do Arduino clique em Ferramentas/Placa e selecione a opção “Digispark (Default – 16.5mhz)” Mantenha o cabo USB do Robo Serelepe desconectado. Clique no botão "carregar" do Arduino. O código será compilado. Aguarde. Quando aparecer a mensagem "Plug in device now..." conecte o cabo USB do Robô Serelepe. Atenção: mantenha a chave do robô na posição desligado. o Basta notar se os LEDs estão acesos. Aguarde o carregamento do código, até aparecer a mensagem "Micronucleus done. Thank you!" Remova o cabo USB 21 Cuidados antes de ligar o robô Serelepe não foi projetado para terrenos arenosos, portanto deve ser testado em terreno plano, sem tapetes ou quaisquer obstruções que impeçam seu movimento. Serelepe não contém as seguintes funções: Nadar - O robô não é a prova d’água. Voar - Mesas não são indicadas para teste Ligando o robô Escolha um local apropriado para testar o Serelepe. Ligue o Robô. Aponte alguma fonte de luz (Exemplo: Lanterna do celular) ao Serelepe. Esse teste contém o comportamento "amor" por padrão, o que significa que o robô irá seguir a luz. Agora divirta-se e faça mais testes com outros comportamentos! 22 FAQ Liguei o Serelepe e ele saiu correndo. O que fazer? No momento do carregamento do código e na inicialização do robô seus motores poderão ser acionados aleatoriamente. Isso acontece porque o robô ainda não possui personalidade, ele é apenas um animalzinho arredio. Serelepe não se move. O que fazer? Nos primeiros instantes em que você der vida ao Serelepe ele se adaptará a luz do ambiente, tomando-a como padrão. Ele não terá sentimentos em relação ao seu ambiente natural, para desencadear emoções nele são necessárias informações de luz diferentes da que ele está acostumado. Teste ligar ele em um lugar mais escuro. Como testar o comportamento Indecisão? O programa não suporta acentuação, comportamentos foram configurados como: logo, os MEDO, TIMIDEZ, AMOR, CURIOSIDADE e INDECISAO. Para eventuais dúvidas, consulte nosso fórum! www.clubemaker.com.br/forum O próximo makerBOX chega em julho! Fique ligado e não deixe de convidar seus amigos a participar desse clube! 23 Cursos clubeMAKER Não deixe de conferir nossos cursos no link: http://www.clubemaker.com.br/cursos Alguns de nossos cursos - Programação para IOS - Simulação de circuitos no ISIS Proteus - Arduino Express - Arduino – Colocando a mão na massa - Inteligência Artificial 24