Raadi Koodka

Casharka 98-7: Iftiin Socod ah oo la Isticmaalayo Arduino iyo 5 LED

Casharka 98-7: Iftiin Socod ah oo la Isticmaalayo Arduino iyo 5 LED

Iftiin socod ah (oo sidoo kale loo yaqaan "chasing" ama "Knight Rider" iftiin) waa mid ka mid ah mashaariicda Arduino ee bilowga ah ee caadiga ah — sabab wanaagsanna waa leh. Waxay ku baraysaa sida loo xakameeyo wax soo saar badan oo isku xigxiga, sida loo qorsheeyo dhacdooyinka waqtiga, iyo sida looga fikiro iska caabiyeyaasha xaddidaya hadda, iyadoo dhammaantood soo saaraysa wax muuqaal ahaan lagu qanco. Mashruucan waxaad ku xidhi doontaa shan LED Arduino waxaadna barnaamij ka dhigi doontaa mid kastaa si uu u iftiimo markiisa, abuurista male-awaal ah in hal iftiin "socdo" safka dhexdiisa.

5 leds on breadboard with resistor shown connected to Arduino UNO
5 leds on breadboard with resistor shown connected to Arduino UNO

Markaad fahanto qaabka, waxaad dib ugu isticmaali kartaa tiro la yaab leh oo dhismayaal dhabta ah:

  • Iftiin qurxin: xad socod ah oo shelf, jir xogta sawirka, ama moodel.
  • Tilmaameyaasha jihada: saameyn calaamad leexasho isku xigxiga ah oo gaadiid bandhig ama baaskiil koronto.
  • Bandhig horumar ama xaalad: saf LED ah oo horumara marka geeddi-socodku dhammaado.
  • Ciyaar iyo bandhig dhibcaha: "bartilmaameed socda" ama tilmaame heer.
  • Qalab waxbarasho: bandhigga ugu cad ee suurtogalka ah ee wax soo saarka dhijitaalka ah iyo waqtiga.

Isku xirka shanta LED ee la mid ah ayaa dib loogu isticmaalaa dhowr mashaariic oo kale oo ku jira koorsadan, marka qalabka aad halkan dhisto wuxuu noqonayaa madal dib loo isticmaali karo.

Sida Iftiinka Socodku U Shaqeeyo

Mabda'a ayaa si sax ah u la mid ah shidista hal LED — waxaa si fudud loo celceliyaa shan jeer (fiidiyowga 30:47). LED kastaa waxa uu ku xiran yahay pin Arduino u gaar ah isaga oo u maraya iska caabiye xaddidaya hadda oo u gaar ah, iska caabiyeyaasha oo dhanna waxay wadaagaan khad dhulka ah oo guud. Sawirka ayaa markaa pin mid HIGH ka dhiga, sug, LOW ka dhiga, sug, oo u gudba pinka xiga. Sababtoo ah hal LED oo keliya ayaa had iyo jeer shidan, isha ayaa u akhrida isku xigxiga sida dhaqdhaqaaq.

Laba qiime oo waqtiga ah ayaa ah kuwa saameynta u yeela dabeecaddeeda. Waqtiga shidan ayaa xakameeya inta ay LED kastaa iftiimayso, waqtiga damisan ayaa xakameeya farqiga u dhexeeya ka hor inta aan LEDka xiga iftiimin. Waqti shidan oo gaaban oo leh waqti damisan oo dheer ayaa soo saara hal dhibic oo si degdeg ah u socota; waqti shidan oo dheer oo leh waqti damisan oo gaaban ayaa soo saara saf si siman oo joogto ah u socda (fiidiyowga 35:00).

Qalabka iyo Qaybaha

  • 1 × Arduino board (Uno, Nano, ama la mid ah)
  • 5 × LED (mid kasta oo midab; midabada qasidda waxay ka dhigtaa saameynta mid fudud in la akhriyo)
  • 5 × iska caabiye — 300 Ω ilaa 1 kΩ si wanaagsan ayay u shaqeeyaan
  • 1 × breadboard
  • Fiilooyin jumper
  • Fiilada USB ama baytari xirmo koronto

Haddii aad rabto inaad hadhow ku darto nooc badhan riix ah, waxaad sidoo kale u baahan doontaa hal badhan riix ah oo daqiiqad ah iyo laba fiilooyin jumper oo dheeraad ah.

Doorashada Qiimaha Iska Caabiyaha

LED waxa uu leeyahay danab hore oo qiyaastii 2 V ah wuxuuna rabaa qiyaastii 10 mA iftiin buuxa (fiidiyowga 03:49). Iyadoo la isticmaalayo sahay 5 V, iska caabiyaha waa inuu hoos u dhigaa 3 V ee hadhay. Isagoo adeegsanaya sharciga Ohm, R = V / I = 3 V / 0.01 A = 300 Ω. Ficil ahaan wax kasta oo ka bilaabma 300 Ω ilaa qiyaastii 1 kΩ ayaa shaqeyn doona — inta ay iska caabbintu sarreyso, LEDku wuu sii daciif noqonayaa, laakiin wareegga wuu ka badbaadsan yahay oo waxtar badan yahay (fiidiyowga 05:33).

Schematic for Arduino walking light LEDs with push button
Schematic for Arduino walking light LEDs with push button

Hagaha Isku Xirka

wiring of 5 LED on Arduino
wiring of 5 LED on Arduino

Geli shanta LED breadboard-ka iyadoo anodes-kooda (lugta dheer) ay wajahayaan isla jihada. Ku xidh cathode kasta (lugta gaaban, dhinaca fidsan) iska caabiye u gaar ah, oo ku biir dhammaadka fog ee shanta iska caabiye khad dhulka ah oo guud. Kadib u socodsii jumper anode kasta ilaa pin Arduino.

Dhismahan LED-yada waxaa loo qoondeeyay pins 3, 4, 5, 6 iyo 7 (fiidiyowga 31:29). Lambarada pin-ka waxaa lagu qeexay xagga sare ee sawirka, markaa haddii aad doorbidayso habayn kale waxaad u baahan tahay oo keliya inaad beddesho shanta sadar.

Sharaxaadda Koodka

Sawirka si ula kac ah waa mid fudud si bilowga uu u raaco sadar kasta. Kaliya block-ka ugu sarreeya ayaa u baahan in la tafatiro habayntaada.

const int LED1 = 3;
const int LED2 = 4;
const int LED3 = 5;
const int LED4 = 6;
const int LED5 = 7;
int offTime = 30;  // the time each LED waits in the OFF state
int onTime = 100;  // the time each LED is ON

Qeexitaannada Pin-ka. Shanta sadar ee const int waxay LED kasta ku xiraan pin Arduino jireed. Sababtoo ah waxaa lagu dhawaaqay const, qiimayaasha lama beddeli karo hadhow barnaamijka dhexdiisa — kani waa caado badbaado ah oo ka hortagta dib-u-qoonayn shil ah. Haddii aad LED-yadaada ku xidho pins kale, halkan ka beddel lambarada oo wax kale ha beddelin.

onTime iyo offTime. Labadan tiro oo dhan waa doorsoomayaasha "dabeecadda" ee keliya ee mashruuca, waana kuwa aad rabi doonto inaad tijaabiso:

  • onTime — muddada (milliseconds) uu LED kastaa uu iftiimayo. Qiimaha weyni waxay ka dhigaan tallaabo kasta mid gaabis ah oo si ula kac ah u socota.
  • offTime — hakashada ka dib marka LED damo ka hor inta aan midka xiga iftiimin. Qiimaha yari waxay ka dhigaan iftiinka mid si degdeg ah u socda.

Isku day onTime = 200 iyo offTime = 200 si aad u hesho daba-gelis siman oo xawaare dhexdhexaad ah, ama onTime = 30 iyo offTime = 30 si aad u hesho saameyn aad u degdeg ah oo u eg mid aan la arki karin (fiidiyowga 36:06).

Shaqada setup() waxay socotaa hal mar oo kaliya waxayna dejisaa shanta pin oo dhan habka OUTPUT. Shaqada loop() markaas waxay ku celcelisaa isla qaabka afar-tallaabo ee LED kasta: pin-ka kor u qaad HIGH, sug onTime, hoos u qaad LOW, sug offTime. Marka LED-ka shanaad dhammaado, loop-ku wuxuu ka bilaabmaa kii ugu horreeyay, isagoo soo saaraya socod aan dhammaad lahayn.

Mashruuc Toos ah iyo Bandhig

Qiimaha caadiga ah LED-yadu waxay ku socdaan safka si tartiib tartiib ah. Markaad soo geliso sketch-ka oo onTime iyo offTime loo dejiyay 200 ms waxay soo saartaa socod joogto ah oo siman; labadaba hoos u dhig 30 ms waxay ka dhigtaa iftiinka inuu si degdeg ah ugu dulmaro safka oo ay adag tahay in la raaco (fiidiyowga 36:21).

Laba tijaabo oo faa'iido leh oo la isku dayo marka uu shaqeeyo:

  • Ka dhig waqtiga iftiinka ka gaaban waqtiga daminta si aad u abuurto dhibic safar ah oo cad.
  • Ka dhig waqtiga iftiinka ka dheer waqtiga daminta si aad u abuurto iftiin jilicsan oo is-dulsa.

Isla shanta LED ee fiilooyinka la isticmaalay ayaa dib loogu isticmaali doonaa mashruuca xiga, halkaas oo badhanka riixaya uu iftiinka hal tallaabo u horumariyo. Dhismahaas waxaa lagu daboolay Casharka 98-8: Iftiin Socda oo leh Badhan Riix iyo LED-yo Arduino.

Haddii aad rabto inaad safka ka kaxayso gelin analoog ah halkii badhan, eeg Casharka 98-9: Cabbiraadda Heerka Voltage LED ee la Isticmaalayo Arduino ama iftiin socda oo leh potentiometer.

Si Aad Uga Siiso Horumar

Marka socodka aasaasiga ahi shaqeeyo, tallaabada xigta ee dabiiciga ahi waa in iftiinku dib iyo hore u boodboodo halkii uu ka boodi lahaa LED-ka ugu dambeeya una gudbi lahaa kii ugu horreeyay. Taasi waa layli koodh puur ah — qalab dheeraad ah ma jiro — waana hab wanaagsan oo lagu tababarto loop-yada iyo arrays-ka. Waxa kale oo aad ku dari kartaa mashruucan nooca badhanka riixaya si aad u dhisto bandhig gacan ku horumarsan.

Mashruucyo la xiriira oo ka socda fiidiyowgan

Cutubyada

  • [00:00] Guudmar tobanka mashruuc ee LED
  • [01:22] Hordhaca koorsada tallaabo-tallaabo ee Arduino
  • [02:29] Waxa LED yahay iyo sida loo aqoonsado biinayaasha
  • [03:49] Xisaabinta resistor-ka xaddidaya qulqulka
  • [30:47] Hordhaca mashruuca iftiinka socda
  • [31:06] Jaantuska fiilooyinka shanta LED
  • [32:52] Sharaxaadda koodhka iftiinka socda
  • [34:39] Bandhig iyo beddelka qiimaha waqtiga
  • [36:41] Iftiinka ku horumarinta badhan riix (cashar gaar ah)
  • [42:25] Bar-ka voltage LED oo leh potentiometer (cashar gaar ah)
  • [49:25] Iftiinka tareenka Arduino (cashar gaar ah)

Sawirro

wiring of 5 LED on Arduino
wiring of 5 LED on Arduino
Schematic for Arduino walking light LEDs
Schematic for Arduino walking light LEDs
Schematic for Arduino walking light LEDs with push button
Schematic for Arduino walking light LEDs with push button
5 LED oo ku yaal sabuuradda rootiga oo leh iska caabin oo lagu xidhay Arduino UNO
5 LED oo ku yaal sabuuradda rootiga oo leh iska caabin oo lagu xidhay Arduino UNO
939-Lessson 98-LED-7: Arduino code walking LED light
Luqadda: C++
This code has not been parsed yet. Please return to the admin panel to parse it.

Faylasha📁

Arduino Libraries (zip)

Buugga Isticmaalaha