Turinys:

Helovino baisių akių pasiūlymas: 8 žingsniai
Helovino baisių akių pasiūlymas: 8 žingsniai

Video: Helovino baisių akių pasiūlymas: 8 žingsniai

Video: Helovino baisių akių pasiūlymas: 8 žingsniai
Video: MANE UŽPUOLĖ PIKTAS ŠUO |VLOG #3 2024, Liepa
Anonim
Helovino baisių akių pasiūlymas
Helovino baisių akių pasiūlymas
Helovino baisių akių pasiūlymas
Helovino baisių akių pasiūlymas
Helovino baisių akių pasiūlymas
Helovino baisių akių pasiūlymas
Helovino baisių akių pasiūlymas
Helovino baisių akių pasiūlymas

Bėgant metams, kuriant įvairius projektus, buvo a

visa kolekcija įvairių modulių, kurie tiesiog gulėjo nenaudojami, ir aš norėjau bent kai kuriuos iš jų panaudoti tam, kas būtų smagu ir kūrybinga tuo pačiu metu.

Eidama į „instructables.com“svetainę, kurioje rasite idėjų, aš sutikau keletą projektų, kuriuos, mano manymu, būtų galima sumaišyti ir sukurti kažką šiam „Helovinui“.

Turiu padėkoti Steve'ui Quinnui, netikėtam kūrėjui, kad naudojosi jų idėjomis.

Prekės

NAUDOTI PUNKTAI IR MODULIAI

Naudojami moduliai

1 Atskira „Atmega8“lenta

2 PIR pagrindo valdiklio plokštė, skirta 5 voltų išėjimui

3 LM386 stiprintuvo plokštė

4 Bendras MP3 grotuvo modulis

5 MAX7219 8x8 LED moduliai

6 PIR modulis (bendras)

7 4”4 omų garsiakalbis

Kitos medžiagos

a. Tuščia kartoninė dėžutė

b. Tušti vienkartiniai vandens buteliai

c. Spalvos keitimo LED 5V

d. Laidų asortimentas

e. Klijų pistoletas

f. Lituoklis

g. Įvairūs įrankiai ir pjaustytuvai

h. 12V 1A transformatorius žemyn

Svarbu

1 „Arduion IDE“

2 AVR lustų programavimo lenta

3 Programavimo (įrašymo) programinė įranga

1 žingsnis: skirtingi moduliai

Skirtingi moduliai
Skirtingi moduliai
Skirtingi moduliai
Skirtingi moduliai
Skirtingi moduliai
Skirtingi moduliai

Pirma, mes apsvarstysime, kaip sukurti skirtingus modulius, mes

tikrai galėčiau pagaminti tik vieną PCB visai elektronikai ir kad projektas veiktų puikiai, bet man buvo idėja naudoti skirtingus elementus, kuriuos jau buvau pagaminusi anksčiau įvairiems projektams ir dabar, kai jų poreikis baigėsi, aš tiesiog norėjau pakartotinai naudoti tuos daiktus.

ATmega8 lenta

Aš naudoju ATmega8 lustą be jokio išorinio kristalo. Tiesą sakant, šios plokštės buvo sukurtos paleisti kai kuriuos P10 16x32 LED modulius, ir aš turėjau keletą šio projekto. Lentos ir PCB išdėstymo paveikslėlis yra toks (žr. Paveikslėlius). Yra daugybė straipsnių apie tai, kaip sukurti savo „Arduino“lentą „instrukcijose“. Galite tiesiog naudoti bet kurią seną „Arduino“lentą, kurią galbūt gulėjote.

PIR valdytojų taryba

Ši PIR lenta buvo skirta įjungti ir išjungti kai kurias mažas LED pagrindu sukurtas festivalio dekoracijas, o dabar ji tiesiog gulėjo ir aš nusprendžiau ją naudoti. Grandinės išdėstymas parodytas paveikslėliuose

THE LM 386 stiprintuvo plokštė

Tai stiprintuvo modulis, kuris sustiprina MP3 grotuvo modulio išvestį. išdėstymas ir grandinė yra gana paprasti, o nuotraukos viską pasako. Grandinės išdėstymas ir užpildytos plokštės vaizdas yra savaime suprantami.

MP3 grotuvo modulis

Aš naudoju paveikslėlyje parodytą MP3 grotuvo modulį. Jis yra lengvai prieinamas „Amazon“ir tt, jis yra pigus ir lengvai naudojamas. Geriausia šio modulio dalis yra ta, kad norint pradėti žaisti nereikia jokių papildomų komandų ar ryšio. Kai tik tiekiama tinkama maitinimo plokštė, ji pradeda atlikti savo darbą.

MAX7219 8x8 LED moduliai

Šie 8x8 LED ekrano moduliai yra lengvai prieinami „Amazon“ir tt Pateikiamos mano naudojamų nuotraukų nuotraukos.

PIR modulis

Aš naudoju lengvai prieinamą PIR jutiklio modulį. Tai galima rasti „Amazon“ir pan., Ji yra pigi ir paprasta naudoti. Nuotraukos pateikiamos kaip nuoroda.

2 žingsnis: Surinkimas 1 dalis

Surinkimas 1 dalis
Surinkimas 1 dalis

Koncepcija buvo sujungti visus šiuos modulius ir sukurti Helovino rekvizitą, kuris įsijungtų, kai kas nors kerta priešais atramą. Tam aš prijungiau 12 voltų maitinimo šaltinį prie PIR valdymo plokštės, kuri savo ruožtu 7805 IC pagalba sumažino įtampą iki 5 V DC, o ši 5 V nuolatinė įtampa buvo perduota PIR jutikliui ir toliau prie kitų modulių, ATmega8 plokštę, stiprintuvo modulį ir MP3 grotuvo modulį, kai kas nors atėjo priešais PIR jutiklį. Srauto diagrama viską pasako.

Kaip matome, PIR jutiklis įjungia ATmega8 plokštę, stiprintuvo modulį ir MP3 grotuvo modulį, ATmega8 valdo LED matricą „Akys“, MP3 grotuvas atkuria garso efektus, o stiprintuvo modulis siunčia signalą garsiakalbiui.

„Arduino“kodas yra tiesioginis nukrypimas nuo Steve Quinn nurodymų, išskyrus tai, kad kodas buvo pakeistas laiku. Naudojamas kodas pateiktas žemiau. Taip pat pridedamas INO failas.

Kodas

// D10 = Skaitmeninis O/P CS kaištis

// D11 = Skaitmeninis O/P laikrodžio kaištis

// D12 = Skaitmeninis O/P duomenų kaištis

//

#įtraukti

#įtraukti

const int numDevices = 2; // panaudotų MAX7219 skaičius

const int dataPin = 12;

const int clkPin = 11;

const int csPin = 10;

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

// Įmeskite šį kodą į „Arduino“kūrimo aplinką

#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

#30

#31

#32

#33

#34

#35. nustatykite „RightEye18“

36. nusileisti

37. nusileisti

#38

39. nusileisti

typedef structure {

const unsigned char array1 [8];

}

binaryArrayType;

binaryArrayType binaryArray [40] =

{

{// Kairės akys1, 0

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

}, {// „RightEye1“, 1

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

}, {// Kairės akys2, 2

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

}, {// „RightEye2“, 3

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

}, {// Kairysis akys3, 4

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

}, {// „RightEye3“, 5

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

}, {// Kairysis akys4, 6

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

}, {// „RightEye4“, 7

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

}, {// Kairysis akys5, 8

B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000010, B01111100

}, {// „RightEye5“, 9

B01111100, B10000010, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110

}, {// Kairysis akys6, 10

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

}, {// „RightEye6“, 11

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

}, {// Kairysis akys7, 12

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

}, {// „RightEye7“, 13

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

}, {// Kairės akys8, 14

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

}, {// „RightEye8“, 15

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

}, {// „Kairės akys“9, 16

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

}, {// „RightEye9“, 17

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

}, {// Kairysis akys10, 18

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

}, {// „RightEye10“, 19

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

}, {// Kairysis akys11, 20

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

}, {// „RightEye11“, 21

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

}, {// Kairės akys12, 22

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

}, {// „RightEye12“, 23

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

}, {// Kairės akys13, 24

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

}, {// „RightEye13“, 25

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

}, {// Kairės akys14, 26

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

}, {// „RightEye14“, 27

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

}, {// Kairės akys15, 28

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

}, {// „RightEye15“, 29

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

}, {// Kairės akys16, 30

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

}, {// „RightEye16“, 31

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

}, {// Kairės akys17, 32

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

}, {// „RightEye17“, 33

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

}, {// Kairės akys18, 34

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

}, {// „RightEye18“, 35

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

}, {// Kairės akys19, 36

B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10000111, B01111110

}, {// „RightEye19“, 37

B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10000111, B01111110

}, {// Kairysis akys20, 38

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

}, {// „RightEye20“, 39

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

}

};

typedef structure {

int frameCount; // rodyklės rodyklė į binaryArray, reiškianti animacijos rėmelį

int frameDelay; // Maždaug milisekundžių delsos, kad būtų rodomas šis animuotas kadras

int frameLuminance; // 0… 15, LED matricos intensyvumas tam tikram kadrui

} frameType;

frameType movie =

{

// Mirksi

{LeftEye1, 1000, 1}, {LeftEye2, 5, 1}, {LeftEye3, 10, 1}, {LeftEye4, 10, 1}, {LeftEye17, 100, 1}, {LeftEye4, 10, 1}, {LeftEye3, 10, 1}, {LeftEye2, 5, 1}, // Vėl pilnas

{Kairės akys1, 1500, 2}, // susiraukęs

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

};

tuštumos vėlavimas Millis (int milisekundės)

{

(int i = 0; i <milisekundės; i ++)

delayMikrosekundės (1000);

}

void setup () {

for (int x = 0; x <numDevices; x ++) {

lc.sutdown (x, false); // MAX72XX veikia energijos taupymo režimu paleidžiant

lc.setIntensity (x, 1); // Nustatykite ryškumą į numatytąją vertę

lc.clearDisplay (x); // ir išvalykite ekraną

}

}

void loop () {

lc.setIntensity (0, 3);

lc.setIntensity (1, 3);

nors (tiesa) {

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

{

už (int i = 0; i <8; i ++)

{

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

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

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

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

}

delayMillis (filmas [a].frameDelay);

}

}

}

3 žingsnis: Surinkimas 2 dalis

Surinkimas 2 dalis
Surinkimas 2 dalis

Paleidę „Arduino IDE“, turite nukopijuoti kodą ir surinkti/patvirtinti kodą. Renkant kodą, HEX failas sukuriamas kompiuterio TEMP aplanke. Prieš uždarydami „Arduino IDE“, galite nukopijuoti HEX failą iš „temp“aplanko ir šį failą turime įrašyti į „ATmega8“lustą, kad jis veiktų.

Rinkdamas kodą, pasirinkau plokštę kaip „Arduino NG arba senesnę“, o procesorių - kaip „ATmega8“, o po kompiliavimo nukopijavau HEX failą iš kompiuterio „Temp“aplanko, prieš uždarydamas „Arduino IDE“.

Šis HEX failas buvo sudegintas ant „ATmega8“lusto naudojant išorinį AVR degiklį. Tam naudojau „Extreme Burner_AVR“programinę įrangą ir AVR įrašymo plokštę. Lentos paveikslėlis pridedamas. Galite naudoti bet kokią jums patogią AVR programavimo programinę įrangą.

Išorinio programuotojo naudojimo priežastis buvo ta, kad nenorėjau įrašyti įkrovos įkroviklio į „Atmega8“lustus ir be įkrovos tvarkyklės jie neveiks nei įprastoje „Arduino“plokštėje, nei naudojant „Arduion IDE“. Gana lengva išgauti HEX failus, kai surenkate kodą naudodami „Arduino IDE“, ir tai aš padariau.

PASTABA

LABAI SVARBU pasirinkti tinkamus saugiklių bitų nustatymus naudojant išorinį programuotoją.

Šiuo atveju, kadangi mes nenaudojame išorinio kristalo ir pasikliaujame vidiniu ATmega8 mikroschemos laikrodžiu, svarbu atitinkamai sukonfigūruoti saugiklių bitus. Aš pasirinkau šiuos saugiklių nustatymus.

Lfuse- E4

Hfuse - D9

KĄ TAI REIŠKIA

Tai reiškia, kad nenaudojame išorinio kristalo ar rezonatoriaus

Laikrodis nustatytas į 8 MHz vidinį laikrodį

Kai ATmega8 mikroschema buvo užprogramuota, atėjo laikas surinkti projektą ir jį išbandyti.

4 žingsnis: Prijunkite akis

Akių sujungimas
Akių sujungimas
Akių sujungimas
Akių sujungimas

MAX7219 8x8 LED matrica buvo prijungta taip, kaip nurodyta toliau.

ATmega8 lenta iki MAX7219 Matrica

IO kaištis D10 į CS PIN kodą

IO kaištis D11 TO CLK PIN

IO kaištis D12 TO DIN PIN

Nuo VCC iki VCC

Nuo GND iki GND

Žr. Paveikslėlį

5 žingsnis: PIR jutiklio ir modulio prijungimas

PIR jutiklio ir modulio prijungimas
PIR jutiklio ir modulio prijungimas
PIR jutiklio ir modulio prijungimas
PIR jutiklio ir modulio prijungimas
PIR jutiklio ir modulio prijungimas
PIR jutiklio ir modulio prijungimas
PIR jutiklio ir modulio prijungimas
PIR jutiklio ir modulio prijungimas

Tada PIR jutiklis buvo prijungtas prie PIR valdiklio

Valdyba, jungtys yra tokios

PIR valdiklio plokštė prie PIR jutiklio

VCC į VCC

CTRL į CTRL

GND į GND

Žr. Diagramą

Tai yra dalis, dėl kurios viskas vyksta. PIR jutiklis užfiksuoja karšto kraujo būtybių judesius ir įjungia visų skirtingų grandinių/modulių maitinimą. laikas PIR jutiklyje buvo sureguliuotas pagal reikalavimus ir šiuo atveju jis yra apie 40 - 45 sekundes. Jis siunčia 5 voltų nuolatinę srovę į visas prie jo prijungtas grandines maždaug 40–45 sekundes.

6 žingsnis: MP3 grotuvas ir stiprintuvas

MP3 grotuvas ir stiprintuvas
MP3 grotuvas ir stiprintuvas
MP3 grotuvas ir stiprintuvas
MP3 grotuvas ir stiprintuvas
MP3 grotuvas ir stiprintuvas
MP3 grotuvas ir stiprintuvas

Šalia MP3 grotuvo modulio ir stiprintuvo modulio.

Mano naudojamam MP3 grotuvui nereikia įjungti jokių mygtukų, kai tik jam tiekiama tinkama įtampa, jis automatiškai pradeda groti. Man reikėjo tik vieno takelio, todėl radau SD kortelę su mažiausiu atminties kiekiu (4 GB, nes šiais laikais beveik neįmanoma gauti jokios mažesnės talpos kortelės). Garsai, kuriuos atsisiunčiau iš interneto, iš tikrųjų buvo atsisiųsta nemažai garso efektų ir jie visi buvo surinkti, kad būtų sukurtas vienas MP3 takelis naudojant garso redaktoriaus programinę įrangą. Aš naudoju „Wave Editor“ir galiausiai įkėliau šį vienintelį takelį į SD kortelę. SD kortelė buvo sumontuota MP3 grotuvo modulyje, o išvestis buvo prijungta prie stiprintuvo modulio, kad būtų gautas garsas iš garsiakalbio.

Žr. Paveikslėlį

„LM386“stiprintuvo mikroschemai reikia labai nedaug išorinių komponentų ir skleidžia gana gerą garsą iš mažų garsiakalbių. Grandinę yra gana lengva surinkti iš perforatoriaus, o man prireikė maždaug 15-20 minučių. Vaizdas yra gana savaime suprantamas.

7 žingsnis: galutinis surinkimas

Image
Image
PRIEDAS
PRIEDAS

Prieš montuodamas viską į korpusą, norėjau viską išbandyti ir, jei reikia, išdėstyti modulius ir atlikti galutinius sujungimus. Po to, kai buvau patenkintas dalių darbu. Pataisiau juos šiam tikslui sukurtame kortelių plokštės korpuse.

Pridedu vaizdo įrašą po paskutinio rekvizito surinkimo.

8 žingsnis: DANGTIS

PRIEDAS
PRIEDAS
PRIEDAS
PRIEDAS
PRIEDAS
PRIEDAS

Aptvaras

Dėklas buvo pagamintas iš senos kartoninės dėžutės, nudažytos raudonai. Akių ir PIR jutiklio vieta buvo iškirpta aštriu peiliuku. Ant dėžutės ir akių buvo įklijuotas kaukolės atspaudas ir kt.atitinkamai iškirpti ir kontūras buvo perbraižytas juodu nuolatinio žymeklio rašikliu. Aš padariau plaukus iš išmestų vandens butelių, supjaustiau juos plonomis juostelėmis ir įklijavau su karšto lydalo klijais ant galvos ir šonų. Šonuose pritvirtinau 2 spalvų keitimo šviesos diodus, kurie buvo prijungti prie išvesties iš PIR valdiklio plokštės.

Garsiakalbiui buvo padarytos mažos skylės, o visi elementai buvo pritvirtinti naudojant karšto lydalo klijus dėžutės viduje. Maitinimo laidas buvo išimtas iš dėžutės galo ir viskas.

Tikiuosi, kad jums patiks padaryti šį Helovino rekvizitą vaikams !!

Netrukus pridėsiu šiame projekte naudojamą garso įrašą.

Su Helovinu visiems !!

Rekomenduojamas: