O Projeto Árvore de Natal DIY com Arduino é um projeto de natal desenvolvido com o intuito de proporcionar a experiência de fazermos nosso próprio adereço natalino e ainda treinar os nossos conhecimentos em eletrônica e programação.
Normalmente o projeto de piscar LED é um dos nossos primeiros projetos quando iniciamos no mundo da programação, por isto podemos considera-lo extremamente simples e deixa-lo de lado em nossas atividades futuras.
Para a execução da nossa Árvore de Natal DIY com Arduino vamos fazer algo semelhante, porém um pouco mais complexo, uma vez que agruparemos diversos LED pisca para trabalharem em conjunto.
O microcontrolador utilizado como base para desenvolvimento do nosso Projeto Árvore de Natal DIY será o Pro Mini compatível Arduino, um produto de dimensões reduzidas que irá manter a delicadeza do projeto e de custo reduzido, para deixar em conta nosso projeto.
Pro Mini Compatível Arduino
O modelo de microcontrolador selecionado para o projeto é uma versão compatível com o Arduino Pro Mini da famosa empresa internacional, porém com suas particularidades especiais, principalmente quanto à sua estrutura de pinos.
Os pinos do modelo compatível não seguem a ordem do modelo original e através da imagem abaixo podemos observar que existem alguns pinos duplicados, como o caso dos pinos 3 e 4, 8 e 9 e 10 e 11, porém vale ressaltar que por ocuparem o mesmo local é impossível diferenciar um do outro quando dois dispositivos estivem conectados.
Como podemos observar na estrutura física do Microcontrolador, ele não possui nenhum tipo de conexão para cabo USB, apenas pinos para executar a programação através de conversores USB para TTL.
Como Gravar o Código no Pro Mini?
Como já mencionado acima, o Pro Mini Compatível utilizado na Árvore de Natal DIY com Arduino não possui entrada USB para configuração, por isto é necessário a utilização de um Módulo FTDI para tal procedimento.
O módulo FTDI será um interlocutor direto entre o computador e a IDE Arduino e será responsável por realizar a gravação do código no Microcontrolador LGT8F328P, similar ao modelo Atmega328p.
A conexão ente o Pro Mini e o Módulo FTDI deverá assumir o seguinte esquema:
Como configurar a Arduino IDE para gravar no Pro Mini?
A configuração da IDE para poder gravar no Arduino compatível é extremamente simples, atende todas as configurações básicas utilizadas em demais modelos, os únicos fatores que devem ser observados são os seguintes:
Com esta programação na IDE Arduino e os fios conectados de acordo com o esquema acima, tudo estará pronto para carregar o código.
Estrutura MDF da Árvore de Natal DIY
Sabemos a dificuldade estética que encontramos quando desenvolvemos um projeto e este recorte em MDF traz aquele acabamento fundamental ao nosso projeto, como podemos ver abaixo:
A estrutura da Árvore com os devidos componentes ficará montada de acordo com a imagem acima, porém caso queira dar um upgrade na sua árvore, recomendo utilizar cola branca e passar glitter, para dar um efeito especial ao seu projeto.
Para este passo, coloquei a nossa peça de MDF em cima de uma folha, cobri a sua superfície de cola (cuidando para não entrar cola nos furos do LED) e despejei glitter por cima, fiz este processo primeiro com o verde, esperei secar e repedi após com a estrela e o glitter amarelo.
Este paço acima é opcional para a montagem da nossa Árvore de Natal DIY com Arduino, mas dá um toque muito especial. Após isto, daremos continuidade com a instalação dos componentes em nossa estrutura.
O próximo passo é a colocação dos LED e como os seus terminais são relativamente grandes para o projeto, o recomendado além de torcer os mesmos para ficarem rentes ao MDF é cortá-los em um tamanho proporcional, assim como vemos na imagem abaixo:
Acima, os LED já estão com seus terminais torcidos e cortados, lembre-se de preferencialmente manter o padrão de tamanho, um terminal mais comprido para representar o positivo e outro menor para representar o positivo.
Na imagem acima já iniciamos o processo de interligação dos pinos negativos, processo fundamental para diminuirmos a complexidade da ligação e diminuirmos de 10 conexões na protoboard para apenas 1, ao final este será o resultado:
Com todos estes paços prontos, basta incluir a protoboard com o Arduino Pro Mini e realizar a instalação dos jumpers, com todas as conexões prontas o resultado ficará semelhante ao que segue.
Do modo demonstrado acima talvez seja mais difícil de observar os detalhes de ligação da Árvore de Natal DIY com Arduino, porém não se preocupe que abaixo iremos demonstrar melhor o esquema de ligação da mesma.
Produtos Utilizados no Projeto Árvore de Natal DIY com Arduino
1 Estrutura Árvore de Natal MDF
1 Microcontrolador Pro Mini Compatível Arduino;
1 Fonte de Alimentação Chaveada 5VDC 1A;
1 Adaptador Fêmea com Bornes para plug P4;
14 Jumpers Premium para Protoboard Macho-Macho 20cm.
Esquema de Ligação do Projeto Árvore de Natal DIY
O esquema de ligação parece ser complexo, porém é relativamente simplificado, vale lembrar que os pinos negativos estão todos interligados para que possam utilizar apenas um pino GND do Arduino para funcionar.
Os LED do esquema de ligação estão posicionados de forma que obedeçam a sua nomeação no código, ou seja, verm1 até verm4 e verde1 até verde5.
Para melhorar a visão da instalação e da ordem dos LED de acordo com o código, segue imagem ilustrativa do número de cada LED com sua respectiva cor:
A vista frontal apresenta os LED da Árvore de Natal DIY do modo que observaremos os efeitos, enquanto que a vista traseira apresenta os pontos de referencia para soldagem dos LED de acordo com o código.
Código de Funcionamento Árvore de Natal DIY
O código de funcionamento é extremamente simples, não possui bibliotecas e pode ser facilmente compreendido por todos que tenham conhecimento básico em programação, se torna extenso pelo controle individual dos LED, porém não possui segredos, veja:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 |
int estrela = A0; int verm1 = 2; int verm2 = 6; int verm3 = 8; int verm4 = 10; int verde1 = 3; int verde2 = 7; int verde3 = 5; int verde4 = 13; int verde5 = 12; void setup() { pinMode(estrela, OUTPUT); pinMode(verm1, OUTPUT); pinMode(verm2, OUTPUT); pinMode(verm3, OUTPUT); pinMode(verm4, OUTPUT); pinMode(verde1, OUTPUT); pinMode(verde2, OUTPUT); pinMode(verde3, OUTPUT); pinMode(verde4, OUTPUT); pinMode(verde5, OUTPUT); } void loop() { ciclo1(); ciclo2(); ciclo2(); ciclo2(); ciclo2(); pisca(); pisca(); pisca(); } void ciclo1() { digitalWrite(estrela, HIGH); delay(100); digitalWrite(verm1, HIGH); delay(100); digitalWrite(verm2, HIGH); delay(100); digitalWrite(verm3, HIGH); delay(100); digitalWrite(verm4, HIGH); delay(100); digitalWrite(verde1, HIGH); delay(100); digitalWrite(verde2, HIGH); delay(100); digitalWrite(verde3, HIGH); delay(100); digitalWrite(verde4, HIGH); delay(100); digitalWrite(verde5, HIGH); delay(100); digitalWrite(verm4, LOW); delay(100); digitalWrite(verm3, LOW); delay(100); digitalWrite(verm2, LOW); delay(100); digitalWrite(verm1, LOW); delay(100); digitalWrite(verde5, LOW); delay(100); digitalWrite(verde4, LOW); delay(100); digitalWrite(verde3, LOW); delay(100); digitalWrite(verde2, LOW); delay(100); digitalWrite(verde1, LOW); delay(100); } void ciclo2() { digitalWrite(verm1, HIGH); digitalWrite(verm2, HIGH); digitalWrite(verm3, HIGH); digitalWrite(verm4, HIGH); delay(100); digitalWrite(verm1, LOW); digitalWrite(verm2, LOW); digitalWrite(verm3, LOW); digitalWrite(verm4, LOW); delay(100); digitalWrite(verde1, HIGH); digitalWrite(verde2, HIGH); digitalWrite(verde3, HIGH); digitalWrite(verde4, HIGH); digitalWrite(verde5, HIGH); delay(100); digitalWrite(verde1, LOW); digitalWrite(verde2, LOW); digitalWrite(verde3, LOW); digitalWrite(verde4, LOW); digitalWrite(verde5, LOW); } void pisca() { digitalWrite(verm1, HIGH); digitalWrite(verm2, HIGH); digitalWrite(verm3, HIGH); digitalWrite(verm4, HIGH); digitalWrite(verde1, HIGH); digitalWrite(verde2, HIGH); digitalWrite(verde3, HIGH); digitalWrite(verde4, HIGH); digitalWrite(verde5, HIGH); delay(500); digitalWrite(verm1, LOW); digitalWrite(verm2, LOW); digitalWrite(verm3, LOW); digitalWrite(verm4, LOW); digitalWrite(verde1, LOW); digitalWrite(verde2, LOW); digitalWrite(verde3, LOW); digitalWrite(verde4, LOW); digitalWrite(verde5, LOW); delay(500); } |
Estando o código de acordo com o esquema de ligação, o seu projeto estará pronto e você poderá aproveitar os três efeitos programados através do código. Um dos ciclos ascende LED por LED e ao final os desliga de forma ordenada também, enquanto que o ciclo dois ascende todas as vermelhas e depois todas as verdes de forma continuada.
Conclusão
O Projeto Árvore de Natal com Arduino é um projeto simples e com um resultado incrível que pode ser amplamente melhorado através da inclusão de novos padrões de funcionamento para os LED.
Você gostou deste projeto e das dicas que foram dadas? Não se esqueça de deixar o seu comentário, compartilhar sua experiência e me ajudar a trazer conteúdos cada vez melhores.
Que projeto legal