Përmbajtje:

Halloween Scary Eyes Prop: 8 hapa
Halloween Scary Eyes Prop: 8 hapa

Video: Halloween Scary Eyes Prop: 8 hapa

Video: Halloween Scary Eyes Prop: 8 hapa
Video: НОЧЬ В СТРАШНОМ ДОМЕ С ДЕМОНОМ / НЕ СТОИЛО СЮДА ПРИХОДИТЬ 2024, Korrik
Anonim
Halloween Scary Eyes Prop
Halloween Scary Eyes Prop
Halloween Scary Eyes Prop
Halloween Scary Eyes Prop
Halloween Scary Eyes Prop
Halloween Scary Eyes Prop
Halloween Scary Eyes Prop
Halloween Scary Eyes Prop

Me kalimin e viteve, në bërjen e projekteve të ndryshme, kishte një

koleksion i tërë i moduleve të ndryshme që ishin vetëm të papërdorura dhe doja të përdorja të paktën disa prej tyre për diçka që do të ishte argëtuese dhe krijuese në të njëjtën kohë.

Duke kaluar në "Faqen e instruksioneve.com" për Ide, unë gjeta disa projekte të cilat mendova se mund të përziheshin së bashku për të bërë diçka për këtë "Halloween".

Më duhet t'i falënderoj Steve Quinn, Krijues i papritur për përdorimin e ideve të tyre.

Furnizimet

SENDET DHE MODULAT E PRDORUR

Modulet e Përdorura

1 Qëndroni vetëm Bordi Atmega8

2 Borde kontrolluese të bazuara në PIR për dalje 5 volt

3 Bordi i Amplifikatorit LM386

4 Modul i Përgjithshëm i MP3 Player

5 Module LED MAX7219 8x8

6 modul PIR (i përgjithshëm)

7 Folës 4”4 Ohm

Materiale të tjera

a Kuti e zbrazët prej kartoni

b Bosh shishe uji me përdorim të vetëm

c LED për ndryshimin e ngjyrës 5V

d Tela të ndryshme

e Armë ngjitëse

f Makine per ngjitjen e metalit

g Mjete dhe prerës të ndryshëm

h Transformator 12V 1A hap poshtë

E rëndësishme

1 Arduion IDE

2 Bordi i Programimit për Çipat AVR

3 Programim (Djegie) Softuer

Hapi 1: Modulet e ndryshme

Modulet e Ndryshme
Modulet e Ndryshme
Modulet e Ndryshme
Modulet e Ndryshme
Modulet e Ndryshme
Modulet e Ndryshme

Së pari, ne do të shikojmë në krijimin e moduleve të ndryshme, Ne

me siguri mund të bëjë vetëm një PCB për të gjitha pajisjet elektronike dhe projekti të funksionojë mirë, por, për mua, ideja ishte të përdorja artikuj të ndryshëm që kisha bërë më parë për projekte të ndryshme dhe tani që nevoja për to kishte mbaruar, unë thjesht doja t'i ripërdorja ato artikuj.

Bordi ATmega8

Unë jam duke përdorur çipin ATmega8 pa ndonjë kristal të jashtëm. Në fakt, këto tabela janë bërë për të drejtuar disa module LED P10 16x32 dhe unë kisha disa të mbetura nga ky projekt. Fotografia e tabelës dhe paraqitja e PCB -së është si më poshtë (Shih Figurat). Ka artikuj të panumërt për të bërë bordin tuaj Arduino në "udhëzime". Ju thjesht mund të përdorni çdo bord të vjetër Arduino që mund të keni të shtrirë përreth.

Bordi i Kontrollit PIR

Ky Bord PIR u krijua për të ndezur dhe fikur disa dekorime të vogla të festivalit të bazuar në LED dhe tani ishte vetëm i shtrirë përreth dhe unë vendosa ta vija në përdorim. Paraqitja e qarkut tregohet në fotografi

Bordi i Amplifikatorit LM 386

Ky është moduli i amplifikatorit që amplifikon daljen e zërit nga Moduli i MP3 Player. paraqitja dhe qarku është mjaft e thjeshtë dhe fotografitë i thonë të gjitha. paraqitja e qarkut dhe fotografia e tabelës së kompletuar është vetë shpjeguese.

Moduli i MP3 Player

Unë kam përdorur modulin MP3 Player të treguar në figurë. Itsshtë e disponueshme në Amazon, etj., Cheapshtë e lirë dhe e lehtë për t'u përdorur. Pjesa më e mirë në lidhje me këtë modul të veçantë është se nuk kërkon ndonjë komandë ose lidhje shtesë për të filluar të luajë. Në momentin që furnizohet me energji të përshtatshme bordit, ai fillon të bëjë punën e tij.

MAX7219 8x8 Module LED

Këto module të ekranit LED 8x8 janë të disponueshme në Amazon, fotografitë e atyre që kam përdorur janë dhënë.

Moduli PIR

Unë kam përdorur modulin e sensorit PIR të disponueshëm. Availableshtë në dispozicion në Amazon etj., Cheapshtë i lirë dhe i lehtë për t’u përdorur. Fotografitë janë dhënë për referencë.

Hapi 2: Kuvendi Pjesa 1

Kuvendi Pjesa 1
Kuvendi Pjesa 1

Koncepti ishte që të kombinonte të gjitha këto module dhe të bënte një Mbështetës për Halloween që do të aktivizohej sa herë që dikush kalon para mbajtëses. Për këtë, unë lidha furnizimin me energji 12volt në Bordin e Kontrollit PIR, i cili nga ana e tij e uli tensionin në 5V DC me ndihmën e IC 7805 dhe ky Tension 5V DC iu kalua sensorit PIR dhe më tej moduleve të tjera, Bordi ATmega8, Moduli i Amplifikatorit dhe Moduli i MP3 Player sa herë që dikush dilte para Sensorit PIR. Grafiku i rrjedhës i thotë të gjitha.

Siç mund ta shohim, Sensori PIR aktivizon Bordin ATmega8, Modulin Amplifikator dhe Modulin MP3 Player, ATmega8 kontrollon Matricën LED "Sytë", MP3 Player luan me efektet e zërit dhe moduli i Amplifikatorit i dërgon sinjal altoparlantit Me

Kodi Arduino është një ngritje e drejtpërdrejtë nga udhëzimet e Steve Quinn, përveç se koha është ndryshuar në kod. Kodi i përdorur është dhënë më poshtë. Skedari INO është i bashkangjitur gjithashtu.

Kodi

// D10 = Kodi dixhital O/P CS

// D11 = Kunja Ora Dixhitale O/P

// D12 = Kodi dixhital i të dhënave O/P

//

#përfshi

#përfshi

const int numDevices = 2; // numri i MAX7219 të përdorura

const int dataPin = 12;

const int clkPin = 11;

const int csPin = 10;

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

// Hidheni këtë kod në mjedisin e zhvillimit Arduino

#përcaktoni Sytë e Majtë1 0

#përcaktoni Sytë e Drejtë1 1

#përcaktoni Sytë e Majtë2 2

#përcakto Sytë e Drejtë2 3

#përcaktoni Sytë e Majtë3 4

#përcaktoni Sytë e Drejtë3 5

#përcaktoni Sytë e Majtë4 6

#përcaktoni Sytë e Djathtë4 7

#përcaktoni Sytë e Majtë5 8

#përcaktoni Sytë e Drejtë5 9

#përcaktoni Sytë e Majtë6 10

#përcaktoni Sytë e Djathtë6 11

#përcaktoni Sytë e Majtë7 12

#përcaktoni Sytë e Djathtë7 13

#përcaktoni Sytë e Majtë8 14

#përcakto Sytë e Drejtë8 15

#përcaktoni Sytë e Majtë9 16

#përcakto Sytë e Drejtë9 17

#përcaktoni Sytë e Majtë10 18

#përcakto Sytë e Drejtë10 19

#përcaktoni Sytë e Majtë11 20

#përcakto Sytë e Drejtë11 21

#përcaktoni Sytë e Majtë12 22

#përcakto Sytë e Djathtë12 23

#përcaktoni Sytë e Majtë13 24

#përcakto Sytë e Drejtë13 25

#përcaktoni Sytë e Majtë14 26

#përcakto Sytë e Drejtë14 27

#përcaktoni Sytë e Majtë15 28

#përcakto Sytë e Drejtë15 29

#përcaktoni Sytë e Majtë16 30

#përcakto Sytë e Drejtë16 31

#përcaktoni Syrin e Majtë17 32

#përcakto Sytë e Drejtë17 33

#përcaktoni Sytë e Majtë18 34

#përcakto Sytë e Drejtë18 35

#përcaktoni Sytë e Majtë19 36

#përcakto Sytë e Drejtë19 37

#përcaktoni Sytë e Majtë20 38

#përcakto Sytë e Drejtë20 39

typedef struct {

const array char pa shenjë1 [8];

}

binaryArrayType;

binaryArrayType binaryArray [40] =

{

{// LeftEye1, 0

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

}, {// Syri i djathtë 1, 1

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

}, {// LeftEye2, 2

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

}, {// Syri i djathtë2, 3

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

}, {// LeftEye3, 4

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

}, {// Syri i djathtë3, 5

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

}, {// LeftEye4, 6

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

}, {// Syri i djathtë4, 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

}, {// Syri i djathtë 6, 11

B01111000, B10000100, B10000010, B10011001, B10011001, B10000001, B10000001, B01111110

}, {// LeftEye7, 12

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

}, {// Syri i djathtë 7, 13

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

}, {// LeftEye8, 14

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

}, {// Syri i djathtë8, 15

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

}, {// LeftEye9, 16

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

}, {// Syri i djathtë 9, 17

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

}, {// LeftEye10, 18

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

}, {// Syri i djathtë10, 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

}, {// Syri i djathtë 12, 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

}, {// Syri i djathtë 14, 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

}, {// Syri i djathtë 17, 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; // treguesi i indeksit në kornizën e animacionit binaryArray që nënkupton

int frameVonesa; // Vonesa e përafërt në MilliSeconda për të mbajtur ekranin e këtij kuadri të animuar

int frameLuminance; // 0… 15, Intensiteti i matricës led për një kornizë të caktuar

} frameType;

film frameType =

{

// Blink

{LeftEye1, 1000, 1}, {LeftEye2, 5, 1}, {LeftEye3, 10, 1}, {LeftEye4, 10, 1}, {LeftEye17, 100, 1}, {LeftEye4, 10, 1}, {LeftEye3, 10, 1}, {LeftEye2, 5, 1}, // E plotë përsëri

{LeftEye1, 1500, 2}, // Vetull i vrenjtur

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

};

vonesë e zbrazët Millis (int milisekonda)

{

për (int i = 0; i <milisekonda; i ++)

vonesa Mikrosekonda (1000);

}

void setup () {

për (int x = 0; x <numDevices; x ++) {

lc. mbyllje (x, false); // MAX72XX është në modalitetin e kursimit të energjisë gjatë fillimit

lc. intensiteti (x, 1); // Vendosni shkëlqimin në vlerën e paracaktuar

lc. ClearDisplay (x); // dhe pastroni ekranin

}

}

lak void () {

lc. intensiteti (0, 3);

lc. intensiteti i fillimit (1, 3);

ndërsa (e vërtetë) {

për (int a = 0; a <(sizeof (film) / sizeof (frameType)); a ++)

{

për (int i = 0; i <8; i ++)

{

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

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

lc.setIntensiteti (0, filmi [a].frameLuminance);

lc.setIntensiteti (1, filmi [a].frameLuminance);

}

delayMillis (filmi [a].frameDelay);

}

}

}

Hapi 3: Pjesa e Kuvendit 2

Asambleja Pjesa 2
Asambleja Pjesa 2

Pasi të keni funksionuar Arduino IDE, duhet të kopjoni kodin dhe të përpiloni/verifikoni kodin. Kur përpiloni kodin, skedari HEX krijohet në dosjen TEMP të kompjuterit. Para mbylljes së Arduino IDE, mund të kopjoni skedarin HEX nga dosja temp dhe ky skedar është ajo që na duhet për ta djegur në çipin ATmega8 për ta bërë atë të funksionojë.

Gjatë përpilimit të kodit, unë kam zgjedhur tabelën si "Arduino NG ose më e vjetër" dhe procesorin si "ATmega8" dhe pas përpilimit, kopjova skedarin HEX nga Dosja Temp e kompjuterit, para se të mbyllja Arduino IDE.

Ky skedar HEX u dogj në çipin ATmega8 me një djegës të jashtëm AVR. Kam përdorur softuerin "Extreme Burner_AVR" dhe një bord AVR Burner për këtë qëllim. Fotografia e tabelës është bashkangjitur. Ju mund të përdorni çdo program programimi AVR me të cilin jeni të kënaqur.

Arsyeja e përdorimit të një programuesi të jashtëm ishte se nuk doja të digjja ngarkuesin në çipat Atmega8 dhe pa ngarkuesin e ngarkimit, ata nuk do të punonin në Bordin e rregullt Arduino ose me Arduion IDE. Quiteshtë mjaft e lehtë të nxjerrësh skedarët HEX pasi të përpilosh kodin me Arduino IDE dhe kjo është ajo që bëra.

SHËNIM

ISSHT SHUM E RNDSISHME të zgjidhni cilësimet e sakta të bitit të siguresës gjatë përdorimit të një programuesi të jashtëm.

Në këtë rast, meqenëse ne nuk po përdorim kristalin am të jashtëm dhe mbështetemi në orën e brendshme të çipit ATmega8, është e rëndësishme që të konfigurojmë pjesët e siguresave në përputhje me rrethanat. Unë kam zgjedhur cilësimet e mëposhtme të siguresave.

Lfuse- E4

Hfuse - D9

ÇFAR ME DO TAN KUPTOJ

Do të thotë që ne nuk po përdorim kristal ose rezonator të jashtëm

Ora është vendosur në orën e brendshme 8mHz

Pasi u programua çipi ATmega8, ishte koha për të mbledhur projektin dhe për ta testuar atë.

Hapi 4: Lidhja e syve

Lidhja e Sytë
Lidhja e Sytë
Lidhja e Sytë
Lidhja e Sytë

Matrica LED MAX7219 8x8 ishte e lidhur si më poshtë.

Bordi ATmega8 në MAX7219 Matricën

IO Pin D10 P CSR CS PIN

IO Pin D11 P CLR KLIKIMIN PIN

IO Pin D12 P DR DIN PIN

KQV N V KQV

GND në GND

Referojuni Figurës

Hapi 5: Lidhja e sensorit & modulit PIR

Lidhja e sensorit & modulit PIR
Lidhja e sensorit & modulit PIR
Lidhja e sensorit & modulit PIR
Lidhja e sensorit & modulit PIR
Lidhja e sensorit & modulit PIR
Lidhja e sensorit & modulit PIR
Lidhja e sensorit & modulit PIR
Lidhja e sensorit & modulit PIR

Më tej Sensori PIR u lidh me Kontrolluesin PIR

Bordi, lidhjet janë si më poshtë

Bordi i kontrolluesit PIR në sensorin PIR

KQV në KQV

CTRL në CTRL

GND në GND

Referojuni Diagramit

Kjo është pjesa që i bën të gjitha të ndodhin. Sensori PIR merr lëvizjen e çdo krijese me gjak të nxehtë dhe ndez furnizimin me energji në të gjitha qarqet/modulet e ndryshme. koha në sensorin PIR është rregulluar sipas kërkesës dhe në këtë rast është rreth 40 - 45 sekonda. Ai dërgon 5 volt DC në të gjitha qarqet e lidhura me të për një periudhë prej rreth 40 -45 sekonda.

Hapi 6: MP3 Player dhe Amplifikatori

MP3 Player dhe amplifikatori
MP3 Player dhe amplifikatori
MP3 Player dhe amplifikatori
MP3 Player dhe amplifikatori
MP3 Player dhe amplifikatori
MP3 Player dhe amplifikatori

PARAS modulit të MP3 Player dhe modulit të amplifikatorit.

MP3 Player që kam përdorur nuk ka nevojë për asnjë buton që të shtypet për t'u ndezur, në momentin që i furnizohet tensioni i duhur, ai automatikisht fillon të luajë. Më duhej vetëm një këngë, kështu që gjeta kartën SD me kujtesën më të ulët që mund të kisha (4 GB sepse është pothuajse e pamundur të marrësh ndonjë kartë me kapacitet më të vogël këto ditë). Tingujt që shkarkova nga interneti, në fakt kishte një numër efektesh zanore që u shkarkuan dhe të gjithë u përpiluan për të bërë një këngë të vetme MP3 duke përdorur programin e redaktuesit të tingullit. Përdora "Wave Editor" dhe më në fund e ngarkova këtë pjesë të vetme në Kartën SD. Karta SD ishte montuar në Modulin e MP3 Player dhe dalja ishte e lidhur me Modulin e Amplifikatorit për të marrë tingullin nga altoparlanti.

Referojuni Figurës

Çipi LM386 Amplifikator kërkon shumë pak përbërës të jashtëm dhe jep zë mjaft të mirë nga altoparlantët e vegjël. Qarku është mjaft i lehtë për tu montuar në një tabelë dhe më është dashur rreth 15-20 minuta për të montuar këtë. Fotografia është mjaft vetë -shpjeguese.

Hapi 7: Asambleja Përfundimtare

Image
Image
P ENRFSHIRJA
P ENRFSHIRJA

Para se të vendosja gjithçka në rrethim, doja të testoja gjithçka dhe të përcaktoja modulet siç kërkohej dhe të bëja lidhjet përfundimtare. Pasi u kënaqa me punën e pjesëve. I rregullova ato brenda Shtojcës së Kartës së Kartës të bërë për këtë qëllim.

Po bashkëngjit një video pas montimit përfundimtar të pajisjes.

Hapi 8: P ENRFSHIRJA

P ENRFSHIRJA
P ENRFSHIRJA
P ENRFSHIRJA
P ENRFSHIRJA
P ENRFSHIRJA
P ENRFSHIRJA

Rrethimi

Shtojca ishte bërë nga një kuti kartoni e vjetër, e lyer me të kuqe. Vendi për sytë dhe sensorin PIR ishte prerë duke përdorur një teh të mprehtë. Një print nga kafka ishte ngjitur në kuti dhe sytë etj.prerë në përputhje me rrethanat dhe skica u ri-vizatua me një stilolaps të zi të shënues të përhershëm. I bëra flokët nga shishet e ujit të hedhur, i preva në shirita të hollë dhe i ngjita me Ngjitësin e Shkrirjes së nxehtë në kokë dhe anët. Unë fiksova 2 LED që ndryshojnë ngjyrën në anët dhe këto u lidhën me daljen nga bordi i kontrolluesit PIR.

U bënë vrima të vogla për altoparlantin dhe të gjithë sendet u fiksuan me ndihmën e Ngjitësit të shkrirë të nxehtë në pjesën e brendshme të kutisë. Kablloja e rrymës u hoq nga pjesa e pasme e kutisë dhe kjo është e gjitha.

Shpresoj që të kënaqeni duke e bërë këtë Prop Halloween për fëmijët !!

Së shpejti do t'i bashkëngjis Audio Clip -in e përdorur në këtë projekt.

Gëzuar Halloween për të gjithë !!

Recommended: