Spisu treści:

Halloweenowe przerażające oczy: 8 kroków
Halloweenowe przerażające oczy: 8 kroków

Wideo: Halloweenowe przerażające oczy: 8 kroków

Wideo: Halloweenowe przerażające oczy: 8 kroków
Wideo: BUU! STRASZNY HALLOWEEN CORAZ BLIŻEJ! Prosta charakteryzacja i metamorfozy dla każdego od 123 GO! 2024, Lipiec
Anonim
Halloweenowe straszne oczy rekwizyt
Halloweenowe straszne oczy rekwizyt
Halloweenowe straszne oczy rekwizyt
Halloweenowe straszne oczy rekwizyt
Halloweenowe straszne oczy rekwizyt
Halloweenowe straszne oczy rekwizyt
Halloweenowe straszne oczy rekwizyt
Halloweenowe straszne oczy rekwizyt

Z biegiem lat, przy tworzeniu różnych projektów, nie było

cała kolekcja różnych modułów, które po prostu leżały nieużywane i chciałem wykorzystać przynajmniej niektóre z nich do czegoś, co byłoby jednocześnie zabawne i kreatywne.

Przeglądając „stronę instructables.com” dla pomysłów, natknąłem się na kilka projektów, które, jak sądziłem, można pomieszać, aby zrobić coś na to „Halloween”.

Muszę przyznać, że Steve Quinn, Nieoczekiwany Twórca wykorzystał ich pomysły.

Kieszonkowe dzieci

WYKORZYSTYWANE ELEMENTY I MODUŁY

Używane moduły

1 samodzielna tablica Atmega8

2 płytki kontrolera oparte na PIR dla wyjścia 5 V

3 płyta wzmacniacza LM386

4 ogólny moduł odtwarzacza MP3

5 MAX7219 8x8 modułów LED

6 Moduł PIR (ogólny)

7 4” 4 omowy głośnik

Inne materiały

a. Puste pudełko kartonowe

b. Puste butelki na wodę jednorazowego użytku

C. Zmiana koloru diody LED 5V

D. Różne przewody

mi. Pistolet na klej

F. Lutownica

g. Różne narzędzia i frezy

h. Transformator obniżający napięcie 12V 1A

Ważny

1 IDE Arduiona

2 płytka programująca dla chipów AVR

3 Oprogramowanie do programowania (wypalania)

Krok 1: Różne moduły

Różne moduły
Różne moduły
Różne moduły
Różne moduły
Różne moduły
Różne moduły

Najpierw przyjrzymy się tworzeniu różnych modułów, We

z pewnością mógłbym zrobić tylko jedną płytkę drukowaną dla całej elektroniki i sprawić, by projekt działał dobrze, ale dla mnie pomysł polegał na użyciu różnych elementów, które wcześniej wykonałem w różnych projektach, a teraz, gdy ich potrzeba się skończyła, ja po prostu chciałem ponownie użyć tych przedmiotów.

Płyta ATmega8

Używam układu ATmega8 bez zewnętrznego kryształu. Właściwie te płytki zostały stworzone do obsługi niektórych modułów LED P10 16x32 i kilka zostało z tego projektu. Obraz płytki i układ PCB jest następujący (patrz zdjęcia). Istnieje niezliczona ilość artykułów na temat tworzenia własnej płytki Arduino na temat „instrukcji”. Możesz po prostu użyć dowolnej starej płytki Arduino, którą możesz leżeć.

Płytka kontrolera PIR

Ta tablica PIR została stworzona do włączania i wyłączania niektórych małych dekoracji festiwalowych opartych na diodach LED, a teraz po prostu leżała i postanowiłem ją wykorzystać. Układ obwodu pokazano na zdjęciach

Płyta wzmacniacza LM 386

Jest to moduł wzmacniacza, który wzmacnia wyjście dźwięku z modułu odtwarzacza MP3. układ i obwód są dość proste, a zdjęcia mówią wszystko. Układ obwodu i zdjęcie wypełnionej tablicy są oczywiste.

Moduł odtwarzacza MP3

Użyłem modułu odtwarzacza MP3 pokazanego na zdjęciu. Jest łatwo dostępny na Amazon itp., Jest tani i łatwy w użyciu. Najlepsze w tym konkretnym module jest to, że nie wymaga on żadnego dodatkowego polecenia ani połączenia, aby rozpocząć grę. W momencie dostarczenia odpowiedniej mocy do płyty, zaczyna ona wykonywać swoją pracę.

MAX7219 8x8 modułów LED

Te moduły wyświetlacza LED 8x8 są łatwo dostępne na Amazon itp. Dostarczono zdjęcia tych, których użyłem.

Moduł PIR

Użyłem łatwo dostępnego modułu czujnika PIR. Jest dostępny na Amazon itp., Jest tani i łatwy w użyciu. Zdjęcia są podane w celach informacyjnych.

Krok 2: Montaż Część 1

Montaż Część 1
Montaż Część 1

Koncepcja polegała na połączeniu wszystkich tych modułów i stworzeniu rekwizytu halloweenowego, który będzie aktywowany, gdy ktoś przejdzie przed rekwizytem. W tym celu podłączyłem zasilacz 12 V do płytki sterującej PIR, która z kolei obniżyła napięcie do 5 V DC za pomocą układu scalonego 7805 i to napięcie 5 V DC zostało przekazane do czujnika PIR i dalej do innych modułów, płytkę ATmega8, moduł wzmacniacza i moduł odtwarzacza MP3, gdy ktoś stanął przed czujnikiem PIR. Wykres przepływu mówi wszystko.

Jak widać czujnik PIR wyzwala płytkę ATmega8, moduł wzmacniacza i moduł odtwarzacza MP3, ATmega8 steruje matrycą LED „Oczy”, odtwarzacz MP3 odtwarza efekty dźwiękowe, a moduł wzmacniacza wysyła sygnał do głośnika.

Kod Arduino jest bezpośrednim odejściem od instrukcji Steve'a Quinna, z wyjątkiem tego, że czas został zmieniony w kodzie. Zastosowany kod podano poniżej. Załączony jest również plik INO.

Kod

// D10 = Cyfrowe złącze CS O/P

// D11 = Pin zegara cyfrowego wyjścia/wyjścia

// D12 = Cyfrowe pin danych O/P

//

#włączać

#włączać

const int numDevices = 2; // liczba użytych MAX7219

const int dataPin = 12;

const int clkPin = 11;

const int csPin = 10;

LedControl lc = LedControl (dataPin, clkPin, csPin, numDevices);

// Upuść ten kod do środowiska programistycznego Arduino

#define Lewe Oko1 0

#define Prawe Oko1 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

struktura typedef {

const unsigned char array1[8];

}

binarnyTypArray;

binaryArrayType binaryArray[40] =

{

{ // Lewe oko1, 0

B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110

}, { // Prawe oko1, 1

B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110

}, { // Lewe oko2, 2

B00000000, B00111100, B01000010, B01011010, B01011010, B01000010, B00111100, B00000000

}, { // Prawe oko2, 3

B00000000, B00111100, B01000010, B01011010, B01011010, B01000010, B00111100, B00000000

}, { // Lewe oko3, 4

B00000000, B00111100, B00100100, B00110100, B00110100, B00100100, B00111100, B00000000

}, { // Prawe oko3, 5

B00000000, B00111100, B00100100, B00110100, B00110100, B00100100, B00111100, B00000000

}, { // Lewe oko4, 6

B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00000000

}, { // Prawe oko4, 7

B00000000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000

}, { // Lewe oko5, 8

B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B1000010, B011111100

}, { // Prawe oko5, 9

B011111100, B1000010, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110

}, { // Lewe oko6, 10

B01111110, B10000001, B10000001, B10011001, B10011001, B1000010, B10000100, B01111000

}, { // Prawe oko6, 11

B01111000, B10000100, B1000010, B10011001, B10011001, B10000001, B10000001, B01111110

}, { // Lewe oko7, 12

B01111110, B11000001, B10000001, B10011001, B10011010, B10000100, B10001000, B01110000

}, { // Prawe oko7, 13

B01110000, B10001000, B10000100, B10011010, B10011001, B10000001, B11000001, B01111110

}, { // Lewe oko8, 14

B00111110, B01000001, B10000001, B10011001, B10011010, B10000100, B01001000, B00110000

}, { // Prawe oko8, 15

B00110000, B01001000, B10000100, B10011010, B10011001, B10000001, B01000001, B00111110

}, { // Lewe oko9, 16

B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110

}, { // Prawe oko9, 17

B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110

}, { // Lewe oko10, 18

B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110

}, { // Prawe oko10, 19

B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110

}, { // Lewe oko11, 20

B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110

}, { // Prawe oko11, 21

B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110

}, { // Lewe oko12, 22

B01111110, B10000001, B10000001, B10000001, B10000001, B10011001, B10011001, B01111110

}, { // Prawe oko12, 23

B01111110, B10000001, B10000001, B10000001, B10000001, B10011001, B10011001, B01111110

}, { // Lewe oko13, 24

B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10011001, B01111110

}, { // Prawe oko13, 25

B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10011001, B01111110

}, { // Lewe Oko14, 26

B00000000, B00111100, B01000010, B01000010, B01000010, B01011010, B00111100, B00000000

}, { // Prawe oko14, 27

B00000000, B00111100, B01000010, B01000010, B01000010, B01011010, B00111100, B00000000

}, { // Lewe oko15, 28

B00000000, B00111100, B00100100, B00100100, B00100100, B00111100, B00111100, B00000000

}, { // Prawe oko15, 29

B00000000, B00111100, B00100100, B00100100, B00100100, B00111100, B00111100, B00000000

}, { // Lewe oko16, 30

B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00000000

}, { // Prawe oko16, 31

B00000000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000

}, { // Lewe oko17, 32

B00010000, B00010000, B00010000, B00010000, B00010000, B00010000, B00010000, B00000000

}, { // Prawe oko17, 33

B00000000, B00010000, B00010000, B00010000, B00010000, B00010000, B00010000, B00010000

}, { // Lewe oko18, 34

B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10001101, B01111110

}, { // Prawe oko18, 35

B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10001101, B01111110

}, { // Lewe oko19, 36

B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B100000111, B01111110

}, { // Prawe oko19, 37

B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B100000111, B01111110

}, { // Lewe oko20, 38

B01111110, B10000001, B10000001, B10000001, B10000001, B10000011, B10000011, B01111110

}, { // Prawe oko20, 39

B01111110, B10000001, B10000001, B10000001, B10000001, B10000011, B10000011, B01111110

}

};

struktura typedef {

int liczba ramek; // wskaźnik indeksu do binaryArray oznaczający klatkę animacji

int frameOpóźnienie; // Przybliżone opóźnienie w milisekundach, aby zatrzymać wyświetlanie tej animowanej klatki

int frameLuminancja; // 0 … 15, Intensywność matrycy led dla danej klatki

} typ ramki;

frameType film =

{

// Mrugnięcie

{LeftEye1, 1000, 1}, {LeftEye2, 5, 1}, {LeftEye3, 10, 1}, {LeftEye4, 10, 1}, {LeftEye17, 100, 1}, {LeftEye4, 10, 1}, {LeftEye3, 10, 1}, {LeftEye2, 5, 1}, // Znowu pełna szerokość

{Lewe Oko1, 1500, 2}, // Marszczyć brwi

{LeftEye5, 5, 3}, {LeftEye6, 5, 4}, {LeftEye7, 5, 5}, {LeftEye8, 1000, 11}, {LeftEye7, 5, 5}, {LeftEye6, 5, 4}, {LeftEye5, 5, 3}

};

void delayMillis (int milisekund)

{

for (int i = 0; i < milisekund; i++)

opóźnienieMikrosekund (1000);

}

pusta konfiguracja () {

for (int x = 0; x < liczbaUrządzeń; x++) {

lc.shutdown(x, fałsz); // MAX72XX jest w trybie oszczędzania energii podczas uruchamiania

lc.setIntensity(x, 1); // Ustaw jasność na wartość domyślną

lc.wyczyśćWyświetlacz(x); // i wyczyść wyświetlacz

}

}

pusta pętla () {

lc.setIntensity(0, 3);

lc.setIntensity(1, 3);

podczas (prawda) {

for (int a = 0; a < (sizeof(film) / sizeof(frameType)); a++)

{

dla (int i = 0; i < 8; i++)

{

lc.setRow(0, i, binaryArray[film[a].frameCount].array1);

lc.setRow(1, i, binaryArray[movie[a].frameCount + 1].array1);

lc.setIntensity(0, film[a].frameLuminance);

lc.setIntensity(1, film[a].frameLuminance);

}

delayMillis(film[a].frameDelay);

}

}

}

Krok 3: Montaż Część 2

Część montażowa 2
Część montażowa 2

Po uruchomieniu Arduino IDE należy skopiować kod i skompilować / zweryfikować kod. Podczas kompilacji kodu plik HEX jest tworzony w folderze TEMP komputera. Przed zamknięciem Arduino IDE możesz skopiować plik HEX z folderu temp i ten plik musimy wypalić w układzie ATmega8, aby działał.

Podczas kompilacji kodu wybrałem płytkę jako „Arduino NG lub starszy”, a procesor jako „ATmega8” i po kompilacji skopiowałem plik HEX z folderu Temp komputera, przed zamknięciem Arduino IDE.

Ten plik HEX został wypalony na chipie ATmega8 za pomocą zewnętrznego palnika AVR. Do tego celu użyłem oprogramowania „Extreme Burner_AVR” i płyty AVR Burner Board. W załączeniu zdjęcie tablicy. Możesz użyć dowolnego oprogramowania do programowania AVR, z którym czujesz się komfortowo.

Powodem użycia zewnętrznego programatora było to, że nie chciałem wypalić bootloadera na układy Atmega8 i bez bootloadera nie działałyby na zwykłej płycie Arduino lub z Arduion IDE. Wyodrębnienie plików HEX jest dość łatwe po skompilowaniu kodu z Arduino IDE i to właśnie zrobiłem.

NOTATKA

BARDZO WAŻNE jest, aby podczas korzystania z zewnętrznego programatora wybrać prawidłowe ustawienia bezpiecznika.

W tym przypadku, ponieważ nie używamy zewnętrznego kryształu i polegamy na wewnętrznym zegarze układu ATmega8, ważne jest, aby odpowiednio skonfigurować bity bezpiecznika. Wybrałem następujące ustawienia bezpieczników.

Lbezpiecznik- E4

Bezpiecznik - D9

CO TO ZNACZY

Oznacza to, że nie używamy zewnętrznego kryształu ani rezonatora

Zegar jest ustawiony na wewnętrzny zegar 8mHz

Po zaprogramowaniu układu ATmega8 nadszedł czas na złożenie projektu i przetestowanie go.

Krok 4: Łączenie Oczu

Łącząc oczy
Łącząc oczy
Łącząc oczy
Łącząc oczy

Matryca MAX7219 8x8 LED została podłączona jak poniżej.

Tablica ATmega8 do macierzy MAX7219

Pin IO D10 NA PIN CS

IO Pin D11 DO CLK PIN

IO Pin D12 DO DIN PIN

VCC DO VCC

GND DO GND

Patrz zdjęcie

Krok 5: Podłączanie czujnika i modułu PIR

Podłączanie czujnika i modułu PIR
Podłączanie czujnika i modułu PIR
Podłączanie czujnika i modułu PIR
Podłączanie czujnika i modułu PIR
Podłączanie czujnika i modułu PIR
Podłączanie czujnika i modułu PIR
Podłączanie czujnika i modułu PIR
Podłączanie czujnika i modułu PIR

Następnie czujnik PIR został podłączony do kontrolera PIR

Płyta, połączenia są następujące

Płytka kontrolera PIR do czujnika PIR

VCC do VCC

CTRL do CTRL

GND do GND

Patrz schemat

To jest ta część, która sprawia, że to wszystko się dzieje. Czujnik PIR wychwytuje ruch każdego gorącokrwistego stworzenia i włącza zasilanie wszystkich różnych obwodów/modułów. czas na czujniku PIR został dostosowany zgodnie z wymaganiami i w tym przypadku wynosi około 40 - 45 sekund. Wysyła napięcie 5 woltów prądu stałego do wszystkich podłączonych do niego obwodów przez okres około 40-45 sekund.

Krok 6: Odtwarzacz MP3 i wzmacniacz

Odtwarzacz MP3 i wzmacniacz
Odtwarzacz MP3 i wzmacniacz
Odtwarzacz MP3 i wzmacniacz
Odtwarzacz MP3 i wzmacniacz
Odtwarzacz MP3 i wzmacniacz
Odtwarzacz MP3 i wzmacniacz

KOLEJNY moduł odtwarzacza MP3 i moduł wzmacniacza.

Użyty przeze mnie odtwarzacz MP3 nie wymaga wciskania żadnego przycisku, aby się włączyć, w momencie podania odpowiedniego napięcia automatycznie rozpoczyna odtwarzanie. Potrzebowałem tylko jednego utworu, więc znalazłem kartę SD z najmniejszą pamięcią, jaką mogłem (4 GB, ponieważ w dzisiejszych czasach prawie niemożliwe jest uzyskanie jakiejkolwiek karty o mniejszej pojemności). Dźwięki, które pobrałem z Internetu, w rzeczywistości było wiele efektów dźwiękowych, które zostały pobrane i wszystkie zostały skompilowane w jeden utwór MP3 za pomocą oprogramowania do edycji dźwięku. Użyłem „Wave Editor” i w końcu załadowałem ten jedyny utwór na kartę SD. Karta SD została zamontowana w module odtwarzacza MP3, a wyjście zostało podłączone do modułu wzmacniacza, aby uzyskać dźwięk z głośnika.

Patrz zdjęcie

Układ wzmacniacza LM386 wymaga bardzo niewielu komponentów zewnętrznych i zapewnia dość dobry dźwięk z małych głośników. Układ jest dość łatwy do złożenia z płyty perforowanej, a złożenie tego zajęło mi około 15-20 minut. Obraz jest dość oczywisty.

Krok 7: Ostateczny montaż

Image
Image
OBUDOWA
OBUDOWA

Zanim wszystko zmieściłem w obudowie, chciałem wszystko przetestować i rozłożyć moduły zgodnie z wymaganiami i wykonać ostateczne połączenia. Po tym, jak byłem zadowolony z działania części. Umocowałem je w obudowie kartonowej wykonanej w tym celu.

Załączam filmik po ostatecznym montażu podpory.

Krok 8: OBUDOWA

OBUDOWA
OBUDOWA
OBUDOWA
OBUDOWA
OBUDOWA
OBUDOWA

Załącznik

Obudowa została wykonana ze starego kartonowego pudełka pomalowanego na czerwono. Miejsce na oczy i czujnik PIR wycięto ostrym ostrzem. Na pudełku i oczach wklejono odcisk czaszki itp.odpowiednio wycięto, a kontur ponownie narysowano czarnym pisakiem Permanent Marker. Włosy wykonałam z wyrzuconych butelek po wodzie, pocięłam je na cienkie paski i przykleiłam klejem Hot Melt na głowę i boki. Naprawiłem 2 diody LED zmieniające kolor po bokach i zostały one podłączone do wyjścia z płyty kontrolera PIR.

Wykonano małe otwory na głośnik, a wszystkie elementy zostały zamocowane za pomocą kleju Hot Melt Glue po wewnętrznej stronie pudełka. Kabel zasilający został wyjęty z tyłu pudełka i to wszystko.

Mam nadzieję, że spodoba ci się tworzenie tego rekwizytu na Halloween dla dzieci !!

Wkrótce dołączę klip audio użyty w tym projekcie.

Wesołego Halloween dla wszystkich !!

Zalecana: