Obsah:
- Zásoby
- Krok 1: Různé moduly
- Krok 2: Část 1 sestavy
- Krok 3: Montáž Část 2
- Krok 4: Spojení očí
- Krok 5: Připojení senzoru a modulu PIR
- Krok 6: Přehrávač MP3 a zesilovač
- Krok 7: Konečné shromáždění
- Krok 8: ZAPOJENÍ
Video: Propagace Halloween Scary Eyes: 8 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:21
Během let při vytváření různých projektů došlo k
celá sbírka různých modulů, které jen ležely nepoužité a já jsem chtěl použít alespoň některé z nich k něčemu, co by bylo zábavné a kreativní zároveň.
Procházením „webu instructables.com“pro Nápady jsem narazil na několik projektů, o kterých jsem si myslel, že by mohly být smíchány dohromady, aby se vytvořil něco pro tento „Halloween“.
Musím ocenit Steva Quinna, Unexpected Maker, za využití jejich nápadů.
Zásoby
POUŽITÉ POLOŽKY A MODULY
Použité moduly
1 Samostatná deska Atmega8
2 řadič na bázi PIR pro 5voltový výstup
3 deska zesilovače LM386
4 Obecný modul MP3 přehrávače
5 LED modulů MAX7219 8x8
6 PIR modul (obecný)
7 4”4 Ohm reproduktor
Další materiály
A. Prázdná lepenková krabice
b. Prázdné jednorázové lahve s vodou
C. Změna barvy LED 5V
d. Různé dráty
E. Tavná pistole
F. Páječka
G. Ostatní nástroje a frézy
h. 12V 1A krokový transformátor
Důležité
1 Arduion IDE
2 Programovací rada pro čipy AVR
3 Programovací (vypalovací) software
Krok 1: Různé moduly
Nejprve se podíváme na výrobu různých modulů, My
určitě mohl udělat jen jednu desku plošných spojů pro veškerou elektroniku a aby projekt fungoval dobře, ale pro mě byla myšlenka použít různé položky, které jsem již dříve vyrobil pro různé projekty a nyní, když jejich potřeba skončila, jsem jen jsem chtěl ty položky znovu použít.
Deska ATmega8
Používám čip ATmega8 bez externího krystalu. Ve skutečnosti byly tyto desky vyrobeny tak, aby provozovaly některé LED moduly P10 16x32 a pár mi z tohoto projektu zbylo. Obrázek desky a rozvržení desky plošných spojů je následující (viz obrázky). Existuje mnoho článků o výrobě vlastní desky Arduino na téma „instructables“. Můžete jednoduše použít jakoukoli starou desku Arduino, kterou byste mohli mít položenou.
Řídicí deska PIR
Tato deska PIR byla vytvořena tak, aby zapínala a vypínala některé malé festivalové dekorace založené na LED diodách a nyní jen ležela a já se rozhodl ji použít. Rozložení obvodu je zobrazeno na obrázcích
Deska zesilovače LM 386
Toto je modul zesilovače, který zesiluje zvukový výstup z modulu MP3 Player. rozvržení a obvod je poměrně jednoduchý a obrázky mluví za vše. rozvržení obvodu a obrázek dokončené desky jsou samozřejmé.
Modul přehrávače MP3
Použil jsem modul MP3 přehrávače zobrazený na obrázku. Je snadno dostupný na Amazonu atd., Je levný a snadno se používá. Nejlepší na tomto konkrétním modulu je, že ke spuštění přehrávání nevyžaduje žádný další příkaz ani připojení. V okamžiku, kdy je desce dodán příslušný výkon, začne dělat svoji práci.
Moduly LED MAX7219 8x8
Tyto 8x8 LED zobrazovací moduly jsou snadno dostupné na Amazonu atd. Jsou poskytnuty obrázky těch, které jsem použil.
PIR modul
Použil jsem snadno dostupný modul senzoru PIR. Je k dispozici na Amazonu atd., Je levný a snadno se používá. Obrázky jsou poskytovány pro referenci.
Krok 2: Část 1 sestavy
Koncept měl spojit všechny tyto moduly a vytvořit Halloween Prop, který se aktivuje vždy, když někdo přejde před rekvizitu. Za tímto účelem jsem připojil 12voltový napájecí zdroj k řídicí desce PIR, která zase pomocí 7805 IC snížila napětí na 5 V DC a toto 5 V stejnosměrné napětí bylo přeneseno do snímače PIR a dále do ostatních modulů „Deska ATmega8, modul zesilovače a modul MP3 přehrávače, kdykoli někdo přijde před senzor PIR. Vývojový diagram mluví za vše.
Jak vidíme, senzor PIR spouští desku ATmega8, modul zesilovače a modul MP3 přehrávače, ATmega8 ovládá matici LED „Oči“, přehrávač MP3 přehrává zvukové efekty a modul zesilovače odesílá signál reproduktoru.
Kód Arduino je přímým odklonem od instrukce Steva Quinna, kromě toho, že v kódu byl změněn čas. Použitý kód je uveden níže. Připojen je také soubor INO.
Kód
// D10 = Digitální pin O/P CS
// D11 = Digitální pin hodin O/P
// D12 = Digitální datový pin O/P
//
#zahrnout
#zahrnout
const int numDevices = 2; // počet použitých MAX7219
const int dataPin = 12;
const int clkPin = 11;
const int csPin = 10;
LedControl lc = LedControl (dataPin, clkPin, csPin, numDevices);
// Vložte tento kód do vývojového prostředí Arduino
#define LeftEye1 0
#define RightEye1 1
#define LeftEye2 2
#define RightEye2 3
#define LeftEye3 4
#define RightEye3 5
#define LeftEye4 6
#define RightEye4 7
#define LeftEye5 8
#define RightEye5 9
#define LeftEye6 10
#define RightEye6 11
#define LeftEye7 12
#define RightEye7 13
#define LeftEye8 14
#define RightEye8 15
#define LeftEye9 16
#define RightEye9 17
#define LeftEye10 18
#define RightEye10 19
#define LeftEye11 20
#define RightEye11 21
#define LeftEye12 22
#define RightEye12 23
#define LeftEye13 24
#define RightEye13 25
#define LeftEye14 26
#define RightEye14 27
#define LeftEye15 28
#define RightEye15 29
#define LeftEye16 30
#define RightEye16 31
#define LeftEye17 32
#define RightEye17 33
#define LeftEye18 34
#define RightEye18 35
#define LeftEye19 36
#define RightEye19 37
#define LeftEye20 38
#define RightEye20 39
typedef struct {
const unsigned char pole1 [8];
}
binaryArrayType;
binaryArrayType binaryArray [40] =
{
{// LeftEye1, 0
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, {// RightEye1, 1
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, {// LeftEye2, 2
B00000000, B00111100, B01000010, B01011010, B01011010, B01000010, B00111100, B00000000
}, {// RightEye2, 3
B00000000, B00111100, B01000010, B01011010, B01011010, B01000010, B00111100, B00000000
}, {// LeftEye3, 4
B00000000, B00111100, B00100100, B00110100, B00110100, B00100100, B00111100, B00000000
}, {// RightEye3, 5
B00000000, B00111100, B00100100, B00110100, B00110100, B00100100, B00111100, B00000000
}, {// LeftEye4, 6
B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00000000
}, {// RightEye4, 7
B00000000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000
}, {// LeftEye5, 8
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000010, B01111100
}, {// RightEye5, 9
B01111100, B10000010, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, {// LeftEye6, 10
B01111110, B10000001, B10000001, B10011001, B10011001, B10000010, B10000100, B01111000
}, {// RightEye6, 11
B01111000, B10000100, B10000010, B10011001, B10011001, B10000001, B10000001, B01111110
}, {// LeftEye7, 12
B01111110, B11000001, B10000001, B10011001, B10011010, B10000100, B10001000, B01110000
}, {// RightEye7, 13
B01110000, B10001000, B10000100, B10011010, B10011001, B10000001, B11000001, B01111110
}, {// LeftEye8, 14
B00111110, B01000001, B10000001, B10011001, B10011010, B10000100, B01001000, B00110000
}, {// RightEye8, 15
B00110000, B01001000, B10000100, B10011010, B10011001, B10000001, B01000001, B00111110
}, {// LeftEye9, 16
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, {// RightEye9, 17
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, {// LeftEye10, 18
B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110
}, {// RightEye10, 19
B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110
}, {// LeftEye11, 20
B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110
}, {// RightEye11, 21
B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110
}, {// LeftEye12, 22
B01111110, B10000001, B10000001, B10000001, B10000001, B10011001, B10011001, B01111110
}, {// RightEye12, 23
B01111110, B10000001, B10000001, B10000001, B10000001, B10011001, B10011001, B01111110
}, {// LeftEye13, 24
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10011001, B01111110
}, {// RightEye13, 25
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10011001, B01111110
}, {// LeftEye14, 26
B00000000, B00111100, B01000010, B01000010, B01000010, B01011010, B00111100, B00000000
}, {// RightEye14, 27
B00000000, B00111100, B01000010, B01000010, B01000010, B01011010, B00111100, B00000000
}, {// LeftEye15, 28
B00000000, B00111100, B00100100, B00100100, B00100100, B00111100, B00111100, B00000000
}, {// RightEye15, 29
B00000000, B00111100, B00100100, B00100100, B00100100, B00111100, B00111100, B00000000
}, {// LeftEye16, 30
B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00000000
}, {// RightEye16, 31
B00000000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000
}, {// LeftEye17, 32
B00010000, B00010000, B00010000, B00010000, B00010000, B00010000, B00010000, B00000000
}, {// RightEye17, 33
B00000000, B00010000, B00010000, B00010000, B00010000, B00010000, B00010000, B00010000
}, {// LeftEye18, 34
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10001101, B01111110
}, {// RightEye18, 35
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10001101, B01111110
}, {// LeftEye19, 36
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10000111, B01111110
}, {// RightEye19, 37
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10000111, B01111110
}, {// LeftEye20, 38
B01111110, B10000001, B10000001, B10000001, B10000001, B10000011, B10000011, B01111110
}, {// RightEye20, 39
B01111110, B10000001, B10000001, B10000001, B10000001, B10000011, B10000011, B01111110
}
};
typedef struct {
int frameCount; // indexový ukazatel na binaryArray označující rámec animace
int frameDelay; // Přibližné zpoždění v MilliSeconds pro podržení zobrazí tento animovaný snímek
int frameLuminance; // 0… 15, Intenzita led matice pro daný rámec
} frameType;
frameType film =
{
// Mrkni
{LeftEye1, 1000, 1}, {LeftEye2, 5, 1}, {LeftEye3, 10, 1}, {LeftEye4, 10, 1}, {LeftEye17, 100, 1}, {LeftEye4, 10, 1}, {LeftEye3, 10, 1}, {LeftEye2, 5, 1}, // Zase naplno
{LeftEye1, 1500, 2}, // Mračit
{LeftEye5, 5, 3}, {LeftEye6, 5, 4}, {LeftEye7, 5, 5}, {LeftEye8, 1000, 11}, {LeftEye7, 5, 5}, {LeftEye6, 5, 4}, {LeftEye5, 5, 3}
};
void delayMillis (int milisekundy)
{
for (int i = 0; i <milliseconds; i ++)
delayMicroseconds (1000);
}
neplatné nastavení () {
for (int x = 0; x <numDevices; x ++) {
lc.shutdown (x, false); // MAX72XX je při spuštění v úsporném režimu
lc.setIntensity (x, 1); // Nastaví jas na výchozí hodnotu
lc.clearDisplay (x); // a vymažte displej
}
}
prázdná smyčka () {
lc.setIntensity (0, 3);
lc.setIntensity (1, 3);
while (true) {
pro (int a = 0; a <(sizeof (film) / sizeof (frameType)); a ++)
{
pro (int i = 0; i <8; i ++)
{
lc.setRow (0, i, binaryArray [film [a].frameCount].array1 );
lc.setRow (1, i, binaryArray [film [a].frameCount + 1].array1 );
lc.setIntensity (0, film [a].frameLuminance);
lc.setIntensity (1, film [a].frameLuminance);
}
delayMillis (film [a].frameDelay);
}
}
}
Krok 3: Montáž Část 2
Jakmile máte Arduino IDE v provozu, musíte zkopírovat kód a zkompilovat/ověřit kód. Při kompilaci kódu se vytvoří soubor HEX ve složce TEMP počítače. Před zavřením Arduino IDE můžete zkopírovat soubor HEX z dočasné složky a tento soubor potřebujeme vypálit do čipu ATmega8, aby fungoval.
Při kompilaci kódu jsem zvolil desku jako „Arduino NG nebo starší“a procesor jako „ATmega8“a po kompilaci jsem před zavřením Arduino IDE zkopíroval soubor HEX ze složky Temp v počítači.
Tento soubor HEX byl vypálen na čip ATmega8 pomocí externí vypalovačky AVR. K tomu jsem použil software „Extreme Burner_AVR“a AVR Burner Board. V příloze je obrázek desky. Můžete použít jakýkoli programovací software AVR, který vám vyhovuje.
Důvodem použití externího programátoru bylo, že jsem nechtěl vypálit bootloader na čipy Atmega8 a bez bootloaderu by nefungovaly na běžné Arduino Board ani s Arduion IDE. Je velmi snadné extrahovat soubory HEX, jakmile zkompilujete kód pomocí Arduino IDE, a to jsem udělal.
POZNÁMKA
JE VELMI DŮLEŽITÉ zvolit správné nastavení bitů pojistky při použití externího programátoru.
V tomto případě, protože nepoužíváme externí krystal am a spoléháme se na vnitřní hodiny čipu ATmega8, je důležité, abychom podle toho nakonfigurovali pojistkové bity. Vybral jsem následující nastavení pojistek.
Lfuse- E4
Hfuse - D9
CO TO ZNAMENÁ
Znamená to, že nepoužíváme externí krystal ani rezonátor
Hodiny jsou nastaveny na interní hodiny 8 MHz
Jakmile byl čip ATmega8 naprogramován, bylo načase sestavit projekt a vyzkoušet jej.
Krok 4: Spojení očí
Matice LED MAX7219 8x8 byla připojena níže.
Deska ATmega8 TO MAX7219 Matrix
IO Pin D10 TO CS PIN
IO Pin D11 TO CLK PIN
IO pin D12 NA DIN PIN
VCC DO VCC
GND TO GND
Viz obrázek
Krok 5: Připojení senzoru a modulu PIR
Poté byl PIR senzor připojen k PIR ovladači
Deska, připojení jsou následující
PIR řídicí deska k senzoru PIR
VCC až VCC
CTRL na CTRL
GND až GND
Viz diagram
Toto je část, díky které se to všechno děje. Senzor PIR zachytí pohyb jakéhokoli horkokrevného tvora a zapne napájení všech různých obvodů/modulů. čas na PIR senzoru byl upraven podle požadavku a v tomto případě je to asi 40 - 45 sekund. Vysílá 5 voltů DC do všech obvodů, které jsou k němu připojeny, po dobu asi 40 až 45 sekund.
Krok 6: Přehrávač MP3 a zesilovač
DALŠÍ modul přehrávače MP3 a modul zesilovače.
Přehrávač MP3, který jsem použil, nepotřebuje ke spuštění stisknout žádné tlačítko, ve chvíli, kdy je do něj přivedeno správné napětí, se automaticky spustí přehrávání. Potřeboval jsem jen jednu stopu, takže jsem našel SD kartu s nejnižší pamětí, jakou jsem mohl (4 GB, protože v dnešní době je téměř nemožné získat jakoukoli kartu s menší kapacitou). Zvuky, které jsem stáhl z internetu, ve skutečnosti bylo staženo několik zvukových efektů a všechny byly zkompilovány tak, aby vytvořily jedinou skladbu MP3 pomocí softwaru zvukového editoru. Použil jsem „Wave Editor“a nakonec jsem tuto jedinou stopu nahrál na SD kartu. Karta SD byla namontována do modulu MP3 přehrávače a výstup byl připojen k modulu zesilovače, aby byl zvuk reprodukován.
Viz obrázek
Čip zesilovače LM386 vyžaduje velmi málo externích komponent a poskytuje poměrně dobrý zvuk z malých reproduktorů. Obvod je docela snadné sestavit z perfboardu a trvalo mi asi 15-20 minut, než jsem ho sestavil. Obrázek je docela samovysvětlující.
Krok 7: Konečné shromáždění
Před montáží všeho do skříně jsem chtěl vše vyzkoušet a podle potřeby rozmístit moduly a provést konečná připojení. Poté, co jsem byl s fungováním dílů spokojen. Opravil jsem je uvnitř skříně Card Board vytvořené pro tento účel.
Přikládám video po finální montáži rekvizity.
Krok 8: ZAPOJENÍ
Příloha
Skříň byla vyrobena ze staré lepenkové krabice, natřená červeně. Místo pro oči a PIR senzor bylo vyříznuto pomocí ostré čepele. Otisk z lebky byl nalepen na krabici a oči atd.podle toho vystřihnout a obrys byl znovu nakreslen černým perem Permanent Marker. Vlasy jsem vyrobila z odhozených lahví s vodou, nastříhala na tenké proužky a přelepila tavným lepidlem na hlavu a boky. Po stranách jsem upevnil 2 LED měnící barvu a ty byly připojeny k výstupu z desky PIR řadiče.
Pro reproduktor byly vytvořeny malé otvory a všechny položky byly upevněny pomocí tavného lepidla na vnitřní straně krabice. Napájecí kabel byl vytažen ze zadní části krabice a to je vše.
Doufám, že si užijete výrobu této halloweenské rekvizity pro děti !!
Brzy připojím zvukový klip použitý v tomto projektu.
Veselý Halloween všem !!
Doporučuje:
Scary Pennywise: 7 kroků
Scary Pennywise: Krátký popis projektu Pro tento projekt jsme implementovali naše znalosti o programování a výrobě obvodů, které jsme se naučili v předmětu „Akademické využití a specifická terminologie v angličtině“. Cílem projektu bylo navrhnout
Spooky Fading LED Eyes: 5 kroků (s obrázky)
Spooky Fading LED Eyes: Použití mikrokontroléru, jako je Arduino, k vyblednutí LED není vždy nejlepší volbou. Někdy chcete jednoduchý, nízkonapěťový obvod, který lze integrovat přímo do vrtule, když několik týdnů běží z baterie. Po testování
Scary Microbit Light Sensor: 5 kroků
Scary Microbit Light Sensor: Chcete vystrašit své přátele? Tak jste na správném místě. Dnes vám ukážu, jak vytvořit s mikrobitem snímání světla, tvorbu šumu a strašidelný trik! Co potřebujete-reproduktor-mikrobit-aligátorové vodiče-napájecí zdroj-a mikrobitový
Scary Pumpkin Candy Machine na Halloween: 5 kroků
Scary Pumpkin Candy Machine na Halloween: Ahoj všichni! Happy Holloween !! Postavili jsme dýňovou lampu, která bude hrát hudbu a plivat bonbóny, když na ni někdo přijde
Blikající oči Bat Bat Halloween Halloween dekorace: 6 kroků
Blikající oči Bat Sword Halloween Decoration: Robotics class is a great way to learn how to use computer science and technology to create projects. Pomocí svých znalostí z robotiky jsem vytvořil zábavnou a jednoduchou halloweenskou dekoraci, která je skvělá pro vchodové dveře, visící ze stěn a cokoli