Përmbajtje:

Qarku LED me dy butona me buton: 5 hapa
Qarku LED me dy butona me buton: 5 hapa

Video: Qarku LED me dy butona me buton: 5 hapa

Video: Qarku LED me dy butona me buton: 5 hapa
Video: Книга - Моя первая схема ArduMikron 2024, Nëntor
Anonim
Qarku LED me dy butona me buton
Qarku LED me dy butona me buton

Unë do të përpiqem maksimalisht të tingëlloj si një dorë e vjetër në programim dhe punë me arduino, por, të them të vërtetën, në realitet unë u njoha me këto gjëra vetëm disa ditë më parë, prandaj gëzimi im i jashtëzakonshëm në krijimin dhe programimin me sukses të mi projektin e vet kaq shpejt.

Ky projekt në të vërtetë filloi nga guximi i një shoku inxhinier të prindërve të mi, për të cilin isha praktikant për disa ditë. Unë i dua sfidat, ka diçka në sfidimin që më emocionon dhe më jep një ndjenjë dërrmuese të kënaqësisë kur kam sukses, dhe shpresoj që ta bëni edhe ju.

Në këtë udhëzues, të parin tim: D, unë do t'ju tregoj se si të lidhni qarkun për atë që e quajta projekti im Mark One, një qark ku dy butona kontrolli kontrollojnë shkëlqimin e LED (njëri do të rrisë shkëlqimin dhe i dyti do ta zvogëlojë atë) si dhe mënyrën e programimit dhe projektimit të rezultateve tuaja në mjetin e monitorimit serik. Unë do t'ju tregoj saktësisht atë që ju nevojitet, si dhe një udhëzues hap pas hapi se si ta ndërtoni atë. Projekti im përfshin elemente si të butonit shtytës ashtu edhe të mësimit të zbehur në faqen e internetit me udhëzime dhe komentohet shumë për lehtësinë time, si dhe tuajin. Nëse nuk jeni njohur ende me gjuhën e programimit, ju lutemi merrni kohë, ia vlen.

Shijoni!

Hapi 1: Materialet + Mjetet:

Materialet + Mjetet
Materialet + Mjetet

Materiale:

1. Një bord Arduino (kam përdorur një Mega 2560)

2. Një dërrasë buke (me të paktën 60 rreshta)

3. Një LED (çdo ngjyrë, kam përdorur të kuqe)

4. Dy butona standardë

5. Pesë tela blu (për të treguar rrymën negative)

6. Tre tela të kuq (për të treguar rrymën pozitive)

7. Një tel portokalli, jeshil dhe të verdhë (telat e kontrollit PWM për të bërë dallimin midis 3 përbërësve kryesorë)

8. Katër tela të bardhë (për të lidhur qarkun)

9. Tre rezistenca 10K ohm (Kafe, E Zezë, Portokalli, Ari)

Mjetet:

1. Një laptop

2. Aplikacioni Arduino IDE (i shkarkueshëm nga dyqani Microsoft Play

OSE

2. Arduino krijon uebfaqe online (nëse kjo është ajo që ju preferoni)

3. Duart e shkathëta

4. Google (uebfaqja me udhëzime më ndihmoi shumë)

5. Ngarkesa durimi; D

Hapi 2: Vendosni qarkun tuaj analog:

Vendosni qarkun tuaj analog
Vendosni qarkun tuaj analog

Dallimi midis sistemeve analoge dhe dixhitale është se sistemet analoge kodojnë për gjendje të ndryshme, siç janë ndriçimi i ndryshëm i një LED, ndërsa dixhitali kodon vetëm për dy gjendje (ose ON ose OFF).

Ky qark është një analog, sepse qëllimi ishte që drita të ndryshonte shkëlqimin, jo vetëm të ndizet ose fiket.

Për ta vendosur atë:

1. Merrni një tel blu (për negativ) dhe lidheni atë (në Arduino) në njërën nga portet GND (tokësore) në portat e energjisë dhe lidheni atë kudo në bordin e bukës në rreshtat pranë tokës blu negative.

2. Merrni një tel të kuq (pozitiv) dhe lidheni atë (në Arduino) në portën 5V në portat e energjisë dhe lidheni atë me një rresht në pjatën buke ngjitur me vijën e kuqe pozitive të tokës [Njihuni me mënyrën se si faqosja është vendosur dhe cilat rreshta janë të lidhura etj. Instruksionet dhe uebfaqja Arduino kanë mësime shumë të mira për të bërë pikërisht atë]

3. Në anën e kundërt të tabelës së bukës përdorni një tel blu dhe një të kuq për të lidhur linjat e tokës.

4. Pastaj përdorni katër telat e bardhë për të lidhur rreshtat e tokës si pozitive ashtu edhe negative në të dyja anët e rreshtit 30 të mesit (ato duhet të kapërcejnë një hendek të vogël)

Hapi 3: Vendosni butonat e shtypjes:

Vendosni butonat e shtytjes
Vendosni butonat e shtytjes

1. Tani merrni butonat tuaj dhe lidhini ato në mënyrë që të kalojë hendekun e mesëm të pjatës së bukës në çdo moment (më pëlqen t'i nxjerr gjërat pak jashtë, në mënyrë që t'i ndryshoj dhe rregulloj më lehtë gjërat.

2. Merrni dy tela të kuq dhe lidhni këmbën e djathtë të butonave shtytës përballë jush me vijën pozitive të tokës.

3. Merrni dy tela blu dhe lidhni vijën blu blu të tokës me rreshtat qendror disa rreshta të mbetur nga këmbët e majta të butonave, duke lënë hapësirë për rezistorët.

4. Tani lidhni rezistencat 10K (Kafe, E Zezë, Portokalli, Ari) me njërën këmbë në të njëjtin rresht qendror si tela blu negative dhe këmbën tjetër në të njëjtin rresht me këmbën e majtë të butonit

[E gjithë kjo është akoma e lidhur në njërën anë të ndarjes në mes të pjatës, përveç butonave që qëndrojnë në mes të ndarjes dhe telave të bardhë, të kuq dhe blu për konfigurimin analog)

5. Tani merrni tela të verdhë dhe të gjelbër dhe lidhni këmbën e majtë në anën e kundërt të ndarjes qendrore me kunjat 9 dhe 11 [NB: Analogja funksionon vetëm në kunjat 3, 5, 6, 9, 10 dhe 11]. Këto tela janë për komunikim me Arduino.

Hapi 4: Vendosni LED:

Vendosni LED
Vendosni LED

1. Merrni LED (ngjyra e zgjedhjes suaj) dhe vendoseni në anën e ndarjes ku janë shumica e lidhjeve tuaja.

2. Merrni një tel blu dhe lidhni vijën negative të tokës blu me të njëjtën rresht si këmba e shkurtër (anoda) e LED [Qarku do të funksionojë vetëm nëse vija blu negative është e lidhur me këmbën e djathtë të LED i.o.w. anoda.

3. Merrni një rezistencë tjetër 10K Ohm dhe lidhni rreshtin në të cilin është lidhur katoda (këmba e gjatë pozitive e LED) me një rresht aty pranë në të njëjtën anë të ndarjes qendrore.

4. Tani merrni tela portokalli dhe lidhni rezistencën me pin 3 në Arduino

Qarku juaj tani është i plotë, gjithçka që mbetet tani është të programoni gjithçka

Hapi 5: Programimi i qarkut:

Unë jam pak i ri për të gjitha këto, kështu që ju lutem më falni që kopjova vetëm kodin dhe nuk krijova një video…

Këtu është kodi për qarkun:

// Projekti im i parë im (Altus Lourens): // Krijuar midis 29 dhe 30 qershor, 2018

// NB për veten time: AnalogWrite punon vetëm në 3, 5, 6, 9, 10 dhe 11

// NB: Analogja ka të bëjë me gjendje të ndryshme, Digital funksionon vetëm për (HIGH) ose off (LOW)

// LED do të dalë

// butonat shtytës do të jenë hyrje

// pushButton1 do të rrisë shkëlqimin me një zbehje të shumës me çdo shtypje

// pushButton2 do të zvogëlojë shkëlqimin me një zbehje të shumës me çdo shtypje

// konstantet nuk do të ndryshojnë, vendosni numrat e pin PWM

const int ledPin = 3; // numri i kunjit LED PWM

const int fadeAmount = 50; // ndryshoni shkëlqimin me çdo shtypje të butonit

const int buttonPin1 = 11;

const int buttonPin2 = 9; // numri i kunjit të butonit me buton

// ndryshore që do të ndryshojë:

int shkëlqim = 5; // ndriçimi fillestar i LED -ve

butoni int Shteti1 = 0; // specifikoni butonin që fillon si LOW

butoni int Shteti2 = 0; // specifikoni butonin që fillon si LOW

void setup () {

// vendosni kodin tuaj të konfigurimit këtu, për të ekzekutuar një herë:

// inicializoni pinin LED si dalje:

pinMode (ledPin, OUTPUT);

// inicializoni butonat si hyrje:

pinMode (butoniPin1, INPUT);

pinMode (butoniPin2, HYRJE);

Serial.filloj (9600); // shpejtësia e komunikimit në qark

}

// buttonPin1 do të rrisë shkëlqimin e LED

// buttonPin2 do të zvogëlojë shkëlqimin e LED

lak void () {

// vendosni kodin tuaj kryesor këtu, për të ekzekutuar në mënyrë të përsëritur:

// vendosni shkëlqimin e pinit 9:

analogWrite (ledPin, shkëlqimi); // shkëlqimi = 5, LED është ndezur

shkëlqim = kufizim (shkëlqim, 0, 255); // kufizoni shkëlqimin midis 0 dhe 255

// lexoni gjendjen e vlerës së butonit:

buttonState1 = digitalRead (butoniPin1);

buttonState2 = digitalRead (butoniPin2);

// kontrolloni nëse butonat janë shtypur:

// nëse është -> buttonState = HIGH:

// butoni 1:

nëse (buttonState1 == LART) {

shkëlqim = shkëlqim + fadeAmount; // rrit shkëlqimin:

analogWrite (ledPin, shkëlqim + zbehjeSasia);

}

tjetër { / ndriçimi qëndron në të njëjtin nivel dhe LED është akoma i fikur:

analogWrite (ledPin, shkëlqimi);

}

// butoni 2:

nëse (buttonState2 == LART) {

shkëlqim = shkëlqim - fadeAmount; // zvogëloni shkëlqimin:

analogWrite (ledPin, shkëlqimi - fadeAmount);

}

tjeter {

// shkëlqimi qëndron në të njëjtin nivel, asnjë ndryshim nuk ndodh:

analogWrite (ledPin, shkëlqimi);

}

Serial.print ("shkëlqimi");

Serial.println (shkëlqimi); }

Tani mund të rregulloni shpejtësinë e komunikimit dhe të luani pak me të derisa të gjeni një shpejtësi që funksionon në mënyrë perfekte për mjetin e monitorimit serik [9600 Baud është vetëm një shpejtësi standarde]

Recommended: