Giftduino - A caixa de presente perfeita do Arduino
Componentes e suprimentos
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Aplicativos e serviços online
| ||||
|
Sobre este projeto
A eletrônica
Para este projeto, usamos dois componentes relativamente novos no circuito.io:
o sensor de efeito Hall e o LCD gráfico Nokia.
O sensor de efeito Hall reage a um campo magnético. Para ativá-lo, é necessário alterar o campo magnético ao seu redor. Como você provavelmente já deve ter adivinhado, usamos um ímã . O íman é colocado na tampa da caixa para oferta.
Cada vez que a tampa é aberta, o sensor de efeito hall é ativado e dá um sinal para a tela e o alto-falante piezoeléctrico tocarem a sua vez. Aqui está uma boa explicação sobre os sensores de efeito Hall e como eles funcionam.
Primeira etapa - Colete os componentes
Neste link circuito mágico nós pré-selecionamos os componentes que usamos no projeto. Depois de clicar em gerar , você verá todas as peças de que precisa, incluindo periféricos, como resistores, capacitores, etc.
Note que com o circuito.io você cria muitas combinações diferentes para este projeto com os componentes que você tem disponíveis.
Aqui estão apenas algumas outras combinações que pensamos para este projeto:
- Substitua o alto-falante piezo com um LED
- Substitua o sensor de efeito hall com um telêmetro ultrassônico
- Substitua o adaptador de parede com um 9V bateria
- Substitua a tela Nokia com um LCD 16x2
Segunda etapa - fiação
Se você clicou em Gerar no link mágico acima e rolar para baixo na resposta, você chegará ao esquema de fiação. Siga o guia passo a passo que mostrará exatamente como montar seus eletrônicos. Pode parecer complicado, mas se você seguir o guia passo a passo, é muito simples!
Terceira etapa - Código
Se você rolar para baixo mais uma vez na resposta do circuito.io, chegará ao código seção. Nesta seção, você terá que fazer download o código do circuito.io e extraia para o seu computador.
Depois disso, você precisará abrir o código com Arduino IDE e carregue-o em seu Arduino .
o código do circuito.io é um exemplo de código. Ele integra todos os componentes e suas bibliotecas. Este código ajudará você a testar se sua fiação está correta.
Assim que terminar esta parte, você pode copiar e colar o código no final deste tutorial no firmware.ino aba no código que você obteve do circuito.io.
Dentro do código, você verá comentários que explicam cada parte e função dele, para que possa fazer alterações nos valores, por exemplo, você pode alterar a melodia que toca quando a caixa é aberta ou a arte em pixels que aparece . Não se esqueça de fazer upload do novo código para o Arduino quando terminar.
Você está indo bem! Agora vamos passar a fazer a caixa de presente
Fazendo a caixa
A caixa que fizemos é uma combinação de peças impressas em 3D e papelão de PVC, mas você pode realmente enlouquecer aqui e usar materiais diferentes para dar uma aparência totalmente diferente.
Por exemplo, você pode usar madeira e vidro, pode aumentar ou diminuir a caixa, decorar, dar voltas, fazer na cor que quiser. Depende realmente de você.
Se você quiser fazer uma caixa como a nossa, você tem os arquivos .STL bem aqui para download .
Montagem - juntando tudo
Depois de ter todas as peças prontas, é hora de colocar tudo junto.
- Coloque o Arduino com o escudo dentro da caixa.
- Cole o ímã na tampa da caixa.
- Passe um fio de aço flexível para conectar a tampa e o corpo da caixa
Parabéns! Você construiu para si a caixa de presente perfeita.
Deixe-nos saber se você fez um clicando em "Eu fiz isso" ou envie-nos fotos e vídeos do seu projeto na nossa página do facebook.
Código
- Código Giftduino
Código Giftduino Arduino
copie e cole este código diretamente na aba de firmware no código que você baixou de circuito.io#include "Arduino.h" #include "HallA1302.h" #include "AnalogReader.h" #include "Adafruit_GFX.h" #include "Adafruit_PCD8544.h" #include "TimerFreeTone.h" #include "Speaker.h" #define HALLA_PIN_VOUT A3 # define NOKIALCD_PIN_DC 4 # define NOKIALCD_PIN_CS 2 # define NOKIALCD_PIN_RST 3 # define o contraste de PIEZOSPEA // LCD_SIG 5 diment_PIN_RST 3 # define o contraste PIEZOSPEA // 5 Diment. em pixels) #define LCD_CONTRAST 70 # define LCD_SIZE_COL 84 # define LCD_SIZE_ROW 48unsigned int piezoSpeakerHoorayLength =6; // quantidade de notas em melodyunsigned int piezoSpeakerHoorayMelody [] ={NOTE_C4, NOTE_E4, NOTE_G4, NOTE_C5, NOTE_G4, NOTE_C5}; // lista de notas. O comprimento da lista deve corresponder a HoorayLength! Unsigned int piezoSpeakerHoorayNoteDurations [] ={8, 8, 8, 4, 8, 4}; // anote as durações; 4 =semínima, 8 =colcheia, etc. O comprimento da lista deve corresponder a HoorayLength! HallA1302 hallA (HALLA_PIN_VOUT); Adafruit_PCD8544 nokiaLcd (NOKIALCD_PIN_DC, NOKIALCD_PIN_CS, NOKIALCD_PIN_RST); Alto-falante piezoSpeaker / PIEZIN); circuito para trabalhar. Ele é executado primeiro sempre que o circuito é alimentado por eletricidade. * / void setup () {// Setup Serial que é útil para depuração // Use o Serial Monitor para visualizar as mensagens impressas Serial.begin (9600); Serial.println ("iniciar"); // Calibrar sensor //hallA.calibrate (); // Inicializa a instância Nokia nokiaLcd.begin (LCD_SIZE_COL, LCD_SIZE_ROW); nokiaLcd.setContrast (LCD_CONTRAST); // Ajustar contraste do display} / * Este código é a lógica principal do seu circuito. Ele define a interação entre os componentes selecionados. Após a configuração, ele é executado continuamente, em um loop eterno. * / void loop () {// Obter medição do sensor hall. Dependendo da polaridade do pólo magnético, o sensor retornará valores positivos ou negativos. int hallAVal =hallA.read (); Serial.println (hallAVal); // Verifique se a caixa foi aberta if (abs (hallAVal - 512) <50) {delay (500); // espere 0,5 seg nokiaLcd.clearDisplay (); // Apaga e limpa o buffer de exibição nokiaLcd.setRotation (2); nokiaLcd.setTextColor (BLACK); // Defina a cor do texto como preto, o fundo é branco por padrão nokiaLcd.setTextSize (2); // definir o tamanho do texto nokiaLcd.setTextSize (1); // definir o tamanho do texto nokiaLcd.print ("Surpresa!"); nokiaLcd.setTextSize (2); // define o tamanho do texto nokiaLcd.drawCircle (37, 15, 3, BLACK); nokiaLcd.drawCircle (41, 15, 3, PRETO); nokiaLcd.drawRect (25, 22, 30, 20, PRETO); nokiaLcd.drawRect (22, 18, 36, 5, PRETO); nokiaLcd.drawRect (37, 22, 5, 20, PRETO); nokiaLcd.display (); // exibir na tela // O alto-falante tocará a música Hooray piezoSpeaker.playMelody (piezoSpeakerHoorayLength, piezoSpeakerHoorayMelody, piezoSpeakerHoorayNoteDurations); atraso (10000); // aguarde 10 segundos}}
Peças personalizadas e gabinetes
Quadro
Superior
Porta USB
Processo de manufatura
- O que é o efeito de pele?
- Controle de um efeito com sensores reais
- Capturando as gotas de água com Arduino
- Arduino + ESP Weather Box
- Como medir a massa da Terra usando o Arduino
- Usando o sensor de pulso vestível MAX30100 com Arduino
- Crie o aplicativo Fridgeye com uma tela Nextion
- A Bomba de Calor Perfeita Água Quente
- A melhor escolha:Torno CNC Box Way
- Entendendo o Sensor de Efeito Hall