Índice:
- Etapa 1: Metas
- Etapa 2: Ingredientes
- Etapa 3: o USBasp
- Etapa 4: suporte do Arduino para o ATtiny
- Etapa 5: teste, teste: controle o seu circuito
- Etapa 6: carregar o esboço
- Etapa 7: da placa de ensaio ao circuito soldado
- Etapa 8: Olhos assustadores !!!! Oooooooo !!
Vídeo: Crânio SpookyEyes: 8 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:36
Aqui está uma modificação simples que fiz em uma caveira de plástico de Halloween. Perfurei as órbitas dos olhos e adicionei alguns LEDs vermelhos. Os LEDs são conectados a um microcontrolador para efeitos especiais (fade in / out, piscar, esse tipo de coisa). Existem alguns recursos adicionais deste design:
- Alimentado por bateria
-
Otimizado para longa vida (calculo 200 horas ou mais em um conjunto de 3 pilhas AA alcalinas.
- Liga ao anoitecer.
- Funciona por N horas (configurável pelo programador) e, em seguida, desliga.
- Fica fora durante o dia.
- Usa um chip microcontrolador ATtiny84.
Se você é um entusiasta do Arduino e tudo com que já trabalhou foram os chips que vêm pré-instalados em uma placa Arduino, então este pode ser um bom projeto para expandir um pouco seus horizontes. Existe uma gama tão ampla de chips ATmega de vários tamanhos que ficar bloqueado para os 2 ou 3 dispositivos fornecidos pelas ofertas usuais do Arduino é bastante limitante. Por um lado, este projeto seria feito de forma muito diferente se eu tivesse que usar o Uno Rev. 3. Essa placa custa $ 22; Estou fazendo o trabalho aqui por apenas $ 1,50! Além disso, como é muito mais lento (embora rápido o suficiente para acender LEDs), ele usa menos energia. Isso significa que é mais adequado para um projeto alimentado por bateria.
Etapa 1: Metas
Aqui estão eles:
- Crie olhos vermelhos assustadores nas órbitas de um crânio de Halloween de plástico barato e monótono.
- Para alimentá-lo por baterias.
- Para que funcione por cerca de 2 semanas com as referidas baterias.
-
Para ter uma data de validade. Eu moro em uma área onde as coisas legais deixadas de lado tendem a ir embora. (Assustador, certo? Quer dizer, uma caveira de Halloween simplesmente levanta e vai embora. Eu nunca a vi, mas sei que acontece e a ideia me enche de pavor.) Portanto:
- Não quero que algum idiota aproveite os frutos do meu trabalho. Se eles pegarem meu crânio, logo se tornará inútil para eles! MWAH-hah-hah-HAH-HAH-HAH-HAAAHHHH !!!
- Este crânio acenderá apenas por X dias antes de entregar o fantasma, por assim dizer.
- Partes mínimas (ver ponto número 2, acima).
- Ganhar conhecimento em outros microcontroladores AVR, além do ATmega328p no Arduino Uno e outros.
- Para aprender como usar o dispositivo USBASP. Veja https://www.fischl.de/usbasp/. Como diz Thomas, "USBasp é um programador de circuito interno USB para controladores Atmel AVR … O programador usa um driver USB apenas de firmware, nenhum controlador USB especial é necessário."
Como você deve saber, o Arduino Uno, o Leonardo e outras placas baseadas em AVR vêm com um monte de componentes adicionais, como um chip FT232RL USB para serial, um regulador de energia, um oscilador de cristal, vários conectores e luzes, cabeçalhos para fiação, etc. E depois que o chip é programado na interface USB, o IC adicional é apenas um dreno de energia. Além disso, se você estiver fornecendo energia a partir de baterias, o regulador de tensão é, na melhor das hipóteses, inútil e, na pior, um consumo maior de energia. Se você deseja controlar apenas alguns LEDs, quase tudo, exceto o processador, é supérfluo durante a maior parte da vida do seu projeto.
Além disso, a maioria, senão todos os chips AVR, vêm com um oscilador de clock embutido. Não é tão rápido ou preciso quanto o cristal, mas para um caso de uso simples, o que isso importa?
Ao usar um processador da linha apropriadamente chamada "ATtiny", você obtém um pequeno processador incrivelmente capaz que consome pouca energia, fornece todas as saídas de que você precisa, tem velocidade mais do que suficiente, é muito barato e mantém sua contagem de peças baixa, para arrancar.
A desvantagem é que você precisa trazer seu próprio dispositivo de programação. Felizmente, existe um por aí chamado "USBASP". Pense nisso como o chip USB para serial integrado do Arduino, mas separado e removível. Você pode usá-lo para todos os seus projetos. Melhor ainda, elimina a necessidade de um bootloader. Você consegue essa memória de volta, se precisar.
E não tenha medo - o USBASP é realmente fácil de usar. Muitos pioneiros antes de você o utilizaram, por isso é bastante familiar e bem suportado para a tarefa. Neste tutorial iremos usá-lo e, como um projeto simples para começar a trabalhar no mundo dos processadores ATtiny, pode ser um bom momento para você se familiarizar.
8. Objetivo final: Espero que gostem deste Instructable!
Etapa 2: Ingredientes
- 3 pilhas AA (Walgreens)
- Suporte de bateria para 3 baterias AA (eBay)
- Clipe de bateria de 9 V (eBay)
- Breadboard para teste (eBay)
- Placa PC (placa de ensaio soldável)
- Conectores fêmea de 0,1 "(0,254 mm) (para seu ATtiny84a. Se você estiver confiante, basta soldar o ATtiny à placa de PC). (EBay)
- 2 LEDs vermelhos de 5 mm (eBay)
- Capacitor eletrolítico de 100 uF (eBay)
- Capacitor de cerâmica 0,1 uF (eBay)
- Resistor de 2,2 megohm (eBay)
- resistor sensível à luz (eBay)
- 2 resistores de 82 ohms (eBay)
- Chip microcontrolador ATtiny84a (eBay)
- Fio de conexão sólido calibre 24 (eBay)
- ferro de solda (Amazon ou Radio Shack)
- solda (Amazon ou Radio Shack. Sem chumbo é melhor.)
- Cola
- crânio de Halloween de plástico, não muito pequeno, oco (Walmart, Dollar Store etc.)
- programador usbasp (eBay)
Dicas e truques para comprar produtos eletrônicos para quem está nos EUA:
Para qualquer um dos seus princípios básicos (resistores, transistores, capacitores, LEDs, etc.), vá para o eBay. Seus projetos eletrônicos geralmente terão tamanhos padrão (como é o caso aqui); este é um ótimo momento para estocar. Pesquise e encontre pacotes com 20, 40, 100 peças neles. Compre aqueles; geralmente você pode encontrá-los por menos de 10 dólares e frete grátis. Isso é muito mais barato do que Mouser / Digi-Key / Newark. Lá, você obterá preços razoáveis nas peças, mas eles pagam 9 dólares pelo frete; esses preços baixos evaporam com pressa! Você certamente pode encontrar as peças especializadas e a seleção é ótima nas lojas especializadas, mas você está prejudicado com esse frete. Por outro lado, encontrei um pacote de 5 ATtiny84a por US $ 7,50 no eBay, com frete grátis. 5 MCUs por menos do que o preço de envio 1 da Mouser! Yowser! E o eBay tem todos os pacotes de variedade de componentes de que você pode precisar, e você sabe que, se precisar de um resistor, precisará de uma dúzia!
Etapa 3: o USBasp
Antes de começarmos, vamos falar um pouco sobre o USBasp. Eles são fáceis de encontrar no eBay, então compre um. Não se preocupe, vou esperar …
Você entendeu? Boa! Você comprou da China? Não admira que tenha demorado tanto.:-) Ok, bem, era mais barato dessa forma, tenho certeza. Frete grátis também.
Se você é um aficionado por Linux como eu, o USBasp funciona imediatamente. Para o Windows 10, é um pouco mais complicado. Então, vamos analisar:
O site USBasp em https://www.fischl.de/usbasp/ nos indica a ferramenta de instalação do driver "Zadig" em
- Baixe. Baixei a versão 2.4.
- O Windows 10 perguntará se você deseja fazer alterações em seu dispositivo. sim. Sim, você precisa.
- Decida se você deseja que o Zadig verifique as atualizações do aplicativo. Eu disse sim.
- Agora eu segui as instruções de https://rayshobby.net/dead-simple-driver-installa…. Isso é,
- Conecte o dispositivo USBasp. Provavelmente você verá um LED vermelho aceso nele.
- No Zadig, na caixa à direita da grande seta verde, clique nas pequenas setas para cima ou para baixo até ver libusbK (v3.0.7.0). Isso é para o Windows 10.
- Clique no grande botão Instalar driver.
- Esperar. Em alguns segundos, você verá a mensagem "O driver foi instalado com sucesso." caixa de diálogo. Fecha-o.
Seu dispositivo USBasp está pronto!
Etapa 4: suporte do Arduino para o ATtiny
O IDE do Arduino não oferece suporte à série ATtiny de chips prontos para uso. Você precisa adicioná-lo ao IDE usando o gerenciador de placas. Consulte
Supondo que você já tenha baixado o software Arduino, vou recriar as etapas a partir da URL acima. Simplesmente
- Abra o software Arduino (estou usando 1.8.7 no momento desta escrita).
- Abra o menu: Arquivo -> Preferências. Encontre a caixa "URLs de gerenciador de placas adicionais" na parte inferior.
- Copie e cole o seguinte:
raw.githubusercontent.com/damellis/attiny/…
- Isso é
- Clique OK
- Abra o menu: Ferramentas -> Placa: "" -> Gerenciador de placas (no topo da lista)
- Vá até o final. Você deve encontrar "attiny by David A. Mellis".
- Clique no botão Instalar.
- Vá até o final da lista. Você deve ver "INSTALADO" agora.
- Abra o menu: Ferramentas -> Tabuleiro: ""
- Você deve ver o ATtiny na parte inferior da lista. Clique em "ATtiny24 / 44/84".
- Abra o menu: Ferramentas -> Processador: "". Escolha o ATtiny84.
- No menu Ferramentas, você deve ver uma entrada Relógio. O padrão é bom. É assim que os processadores ATtiny são enviados, com clock interno de 1 MHz.
- No menu Ferramentas, escolha a Porta. Você quer "COM1".
Etapa 5: teste, teste: controle o seu circuito
Se você não está familiarizado com placas de ensaio … bem, compre uma. Esta é a única maneira de testar seus circuitos e certificar-se de que eles fazem o que você deseja. Eu recomendo mesmo se você estiver construindo um circuito conhecido como este, que foi testado e funciona. Você se familiarizará com o arranjo das coisas para que, se e quando algo não funcionar corretamente, você terá mais facilidade para solucionar o problema.
Em anexo está um possível layout de placa de ensaio e um esquema desse pequeno circuito também. Conecte seu circuito conforme mostrado.
Ao inserir os LEDs e o capacitor eletrolítico, lembre-se que a direção conta: você precisa colocar o lado negativo em direção ao negativo da bateria, e o lado positivo em direção ao lado mais positivo das coisas. No caso dos LEDs, eles estarão acesos quando o pino do ATTiny84a ficar positivo (ou "ALTO"). Portanto, o lado positivo dos LEDs deve se conectar ao pino apropriado no ATTiny84a.
Existem muitos sites que discutem a polaridade do LED; um desses tutoriais pode ser encontrado aqui: https://learn.sparkfun.com/tutorials/polarity/diod…. Em última análise, a melhor maneira que encontrei para testar a polaridade é conectar um resistor de 120 ohm no negativo da bateria, conectar um pino de um LED na outra extremidade desse resistor e, em seguida, conectar a outra extremidade do LED ao positivo da bateria (também conhecido como VCC). Se o LED acender, você sabe qual pino é qual.
Para o capacitor de 100 microfarad, este é um capacitor do tipo eletrolítico. Basicamente, isso significa que sua orientação também é importante. O pino negativo deve ser etiquetado. Pelo processo de eliminação, você pode descobrir qual é o pino positivo:-). Conecte-o corretamente.
Os resistores, a fotocélula e o pequeno capacitor circular de cerâmica não têm polaridade. Conecte-os na direção que desejar. Certifique-se de conectar o pequeno capacitor de cerâmica bem próximo aos pinos VCC e GND do ATTiny84a. Seu trabalho é suavizar quaisquer picos rápidos no consumo de energia do microcontrolador ATtiny. Ele é preenchido com uma pequena carga da fonte de alimentação (baterias), que está disponível muito rapidamente caso o microcontrolador precise dela em um microssegundo. Ele evita que a tensão de alimentação para o chip caia muito devido aos consumos de corrente rápida e transitória.
O capacitor eletrolítico de 100 microfarad faz a mesma coisa, mas em intervalos maiores. Por ser um enrolamento de folhas finas de metal, ele contém alguma resistência interna e, portanto, sua carga não está tão disponível. Pode ser rápido, é verdade, mas não na taxa fornecida pelo capacitor de disco de cerâmica.
Ambos os capacitores reagem mais rapidamente ao consumo de corrente de energia transiente do que as baterias, e é por isso que eles estão incluídos. Acontece que meus circuitos se comportaram de maneira estranha se estiverem faltando. Pode ser muito misterioso, então eles são importantes.
Atualizar
Não mostrado aqui, mas necessário, é um resistor de 10K ohm do pino 4 ao Vcc. Você faria bem em instalar um. No entanto, não o fiz e o circuito funcionou bem. Sem ele, porém, você corre o risco de reinicializações espúrias em seu chip.
Etapa 6: carregar o esboço
Agora é hora de carregar o esboço. Vamos fazer essas lanternas!
Você encontrará o código-fonte do esboço em
- Pegue-o e carregue-o no software Arduino.
- NOTA: há uma seção no código que se parece com isto:
// --- DEBUG DEBUG DEBUG DEBUG D - vvvv - UG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG // --- DEBUG DEBUG DEBUG DEBUG D - vvvv - UG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG #undef DEBUG / / --- DEBUG DEBUG DEBUG DEBUG D - vvvv - UG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG // --- DEBUG DEBUG DEBUG DEBUG D - vvvv - UG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG // --- DEBUG DEBUG DEBUG DEBUG D - vvvv - UG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG
Eu recomendo mudar o
#undef DEBUG
para
#define DEBUG
como os tempos de loop são reduzidos significativamente. Você deve alterá-lo de volta e reenviar quando estiver pronto para exibir o SpookyEyes de verdade.
- Vá em frente e faça isso agora. O restante desta página assume que você o fez.
- Certifique-se de ter seguido as etapas na Etapa 4: suporte do Arduino para o ATtiny
-
Agora conecte o lado do Arduino do usbasp à sua placa. Você deseja conectá-lo da seguinte maneira:
- GND para o negativo da bateria
- MOSI para o pino 7 do ATtiny
- MISO para pino 0 do ATtiny
- SCK para o pino 9 do ATtiny
- RST para pino 4 do ATtiny
- Conecte a outra extremidade do USBasp à porta USB do seu PC
- Conecte a bateria ou outra fonte de alimentação de 5 V ao seu circuito.
- Faça upload do esboço usando o IDE Arduino (Sketch-> Upload). Os LEDs piscarão porque alguns dos pinos que são usados para o circuito também são usados para o USBasp.
Como funciona o Sketch
Certifique-se de que está em uma sala um tanto iluminada ou direcione a luz de uma lanterna para o pequeno resistor sensível à luz. Ligue o circuito e observe os LEDs de olho. Este é o modo "luz do dia". Agora que o esboço está sendo executado, você deve ver o seguinte. Observe que as áreas no código que são descritas aqui são marcadas com "BooKmarks", não números de linha, portanto, você pode acompanhar. Eles têm a forma: # BK.descriptive_string ("Pound B K Period", em seguida, algum tipo de string descritiva). Por exemplo, o primeiro marcador é denominado "# BK. Hello" e pode ser encontrado no código onde os LEDs acendem por um segundo e depois apagam por um segundo:
- Ambos os LEDS acenderão por um segundo e apagarão por um segundo. # BK. Hello
- Ambos piscam lentamente 3 vezes. Isso indica que o ATtiny está definido para a velocidade de 1 MHz. # BK.check_time * Consulte a NOTA A abaixo.
- Faça uma pausa de um segundo.
- Em seguida, eles piscam rapidamente duas vezes.
- Faça uma pausa de um segundo.
- Agora você está no loop () # BK.loop. Lembre-se de que uma hora é apenas 10 segundos agora.
A "trava" está desligada. E ainda não se passou um HOUR_millis (== 1 hora, no modo normal) de tempo. Então, pulamos tudo até chegarmos a # BK.indicate_duration. Até agora, estamos na hora zero, então piscamos os olhos 0 vezes.
- Isso continua até atingirmos HOUR_millis segundos (10 segundos, no modo DEBUG).
- Em seguida, pisque rapidamente três vezes. # BK.time_management
- Adicione outra "hora" incrementando a variável latch_time_off
-
Em seguida, vá até # BK.indicate_duration. Lá, mostramos o número de "horas" que estamos correndo. Este número é armazenado na EEPROM, portanto está disponível mesmo se a alimentação for removida do chip.
- Nossa primeira hora na luz foi concluída. Então, nós piscaremos uma vez, brevemente.
- Em seguida, faça uma pausa de 2 segundos.
-
Voltar ao loop ():
- A cada iteração no loop agora, verificamos se o tempo HOURS_milli passou. Para as primeiras várias iterações (em DEBUG), isso não aconteceu. Portanto, não piscaremos 3 vezes.
- Pulamos para # BK.indicate_duration e piscamos rapidamente uma contagem do número de horas que estivemos na luz, que novamente é armazenado na localização 0 da EEPROM.
- Isso continua por muito tempo.
-
Observe que, uma vez que o número na localização EEPROM 0 é grande o suficiente, o loop simplesmente se torna:
- Flash 3 vezes em um ritmo razoável,
- Mostra rapidamente o número de HOURS_millis que vimos,
- Espere 2 segundos,
- repetir.
Agora coloque o dedo em cima do resistor sensível à luz. Ou apenas apague as luzes. O loop agora se torna:
- Nosso latch_time_off já passou de uma hora e está escuro, então em # BK.check_the_light, descobrimos que realmente está escuro.
- Nós abrimos a trava. Isso inicia a coisa assustadora a cada loop. Veja AQUI ESTÃO AS COISAS ASSUSTADORAS. O código deve ser bastante descritivo.
- Assim que a trava estiver presa por tempo suficiente, nós a desligaremos. Consulte # BK.turn_spookiness_off.
- Agora voltamos para # BK.time_management, conforme "piscar rapidamente três vezes", acima.
Run For Real
Não se esqueça de alterar o esboço para #undef DEBUG.
NOTA A
* NOTA A: O código está incluído para defini-lo para 8 MHz. Veja o CLKPR = 0x00; código comentado. Se você deseja fazer isso (e não há razão para fazer isso para este circuito), certifique-se de alterar o IDE do Arduino, no item de menu Ferramentas-> Relógio.
Etapa 7: da placa de ensaio ao circuito soldado
Agora é hora de fazer o circuito de Produção! Obtenha um pequeno perfboard soldável; Eu gosto do Catálogo Radio Shack #: 2760159, visto aqui: https://www.radioshack.com/collections/prototyping…. Existem muitos orifícios para transferir os componentes da placa de PC para a perfboard.
Não se esqueça de incluir pequenos soquetes para inserir os fios USBasp (para programação)! Você precisará de 5 deles.
Prepare o crânio
Oriente seu crânio em como ele ficará no chão. Você precisará fazer um orifício para o fotorresistor, de forma que ele realmente receba luz:-). … Passo importante! Além disso, usando sua ferramenta de corte favorita, corte a parte inferior do crânio para abrir espaço para a placa de circuito e as baterias. Corte em 3 lados apenas para fazer uma porta.
Faça o orifício para que o fotorresistor seja um ajuste de pressão. Obviamente, você pode testar o tamanho da parte externa do crânio para acertar. Sempre comece pequeno com suas brocas e não fure muito rápido para não criar muito brilho ao redor do buraco que você precisará raspar com uma faca.
Faça furos nos olhos para os LEDs. Dimensione-os com cuidado, para que os LEDs sejam um ajuste à pressão. Coloquei meus LEDs por dentro e, como não havia muito espaço para trabalhar lá dentro, apenas pinguei um pouco de cola quente derretida na parte de trás dos LEDs como uma garantia extra para segurá-los.
Também tomei o cuidado de revestir um dos fios de cada LED em um tubo termorretrátil.
Coloque o circuito em
Como o crânio fica ali, não tive muito cuidado ao montar a placa de circuito. Certifiquei-me de que a bateria ia para o fundo e de que não haveria curto-circuitos. Uma vez conectado, inserido e ligado, fechei a ipt e coloquei uma gota de cola quente derretida na aba inferior.
Certifique-se de fazer os fios dos LEDs e do fotorresistor longos para poder puxar a placa de circuito para reprogramação.
Etapa 8: Olhos assustadores !!!! Oooooooo !!
Ok, agora é isso. Seu Spooky Eyes ligará ao anoitecer, será exibido para os truques ou tratadores por 4 horas e, em seguida, desligará para economizar as baterias. Ele ficará desligado até a próxima noite. Ele fará isso por TOTAL_RUN_HOURS horas, portanto, prepare esse valor no esboço com cuidado. Como tenho um padrão de 4 horas de MAX_RUNTIME, 40 horas para TOTAL_RUN_HOURS significa que será executado por 10 dias.
Se alguém decidir que é delicioso demais para você, e o levar para casa, SpookyEyes terminará sua corrida e ficará em silêncio, e assombrará para sempre suas almas. Basta dizer que os ladrões fariam bem em evitar roubar seu crânio de SpookyEyes!
Guarde seus SpookyEyes durante a temporada. No próximo ano, basta carregar o esboço novamente e SpookyEyes ganha vida! Isso é assustador? Ooooooo !!!!
Aprimoramentos
Eu provavelmente deveria ter feito o ATtiny dormir durante o dia. Desligado, ele consome muito pouca corrente.
Eu deveria ter colocado um resistor de 10K ohm no pino 4. Isso evita que o circuito seja reiniciado misteriosamente. Não tive problemas, entretanto. Mas deve ser feito para ser correto.
Alimentado por bateria
Eu amo o ATtiny84. É um ótimo chip para um circuito de baixa potência. Claro, ele não tem os recursos Serial.print () do Arduino ATmega328p e seus semelhantes, mas você pode fazer as luzes piscarem de certas maneiras para informar o que está acontecendo dentro do seu circuito, para depuração. Não é difícil trabalhar com ele.
Espero que você tenha achado este Instructable … Instructable!
Recomendado:
Surpresa do crânio !: 5 etapas
Skull Surprise !: Skull Surprise é uma maneira perfeita e diabólica de assustar qualquer pessoa. Os olhos vermelhos brilhantes e a voz aterrorizante farão você fugir de onde quer que esteja … 3,2,1 …. hahahaha
Crânio com olhos gradientes: 4 etapas
Skull With Gradient Eyes .: Enquanto limpávamos o quintal, encontramos o crânio de um pequeno roedor. Estávamos perto do Halloween e aí veio a ideia. Se você não tem nenhuma caveira no armário, pode substituí-la por uma velha cabeça de boneca ou qualquer coisa que você queira iluminar
Crânio Arduino com boca em movimento: 4 etapas
Crânio Arduino com boca móvel: suprimentos necessários * Módulo Arduino (eu tenho um Arduino Mega 2560, mas qualquer módulo com PWM funcionará) * Broca * Broca (s) * Clipe de papel * Servo * & tipo b usb
Alto-falante do crânio: 6 etapas (com imagens)
Alto-falante de caveira: Tivemos que fazer alto-falantes para uma classe DT, então decidi fazer um amplificador de alto-falante / guitarra que se parecesse com uma caveira e tivesse o tema metal. Então, aqui está o processo para torná-lo:
Lâmpada de crânio desajustada: 6 etapas
Misfits Skull Lamp: Isso pode ter sido feito antes, mas aqui está minha versão. Um método muito simples de transferir seu design favorito para uma lâmpada. Eu escolhi o logotipo do crânio da banda The Misfits. Se você não estiver familiarizado com eles, verifique http://en.wikipedia.org/wiki/Misf