Bincika Lambar

Kashi na 98-2: Yadda ake Kunna da Kashe LED ta amfani da Maɓallin Turawa da Arduino

Kashi na 98-2: Yadda ake Kunna da Kashe LED ta amfani da Maɓallin Turawa da Arduino

Wannan aikin yana nuna maka yadda ake sarrafa LED da maɓallin turawa ta amfani da Arduino. Maimakon barin LED ya yi ƙyalli da kansa, kai ne ka ke yanke shawarar lokacin da zai haskaka: riƙe maɓallin ƙasa sai LED ya kunna, saki sai ya kashe. Wannan shi ne mataki na gaba na halitta bayan sketch na ƙyalli kawai, domin yana gabatar da ra'ayoyi biyu da suke bayyana a kusan kowane aikin Arduino da za ka taɓa ginawa — karanta shigarwar dijital, da amfani da wannan shigarwar don yanke shawara a cikin code.

all projects of lesson 98, breadbaors and components
all projects of lesson 98, breadbaors and components

Babbar ƙimar gaske a nan ita ce koyon yadda microcontroller ke jin duniyar zahiri. Maɓallin turawa shi ne na'urar shigarwar ɗan adam mafi sauƙi da ake da ita, amma irin wannan tsarin — karanta shigarwa, gwada sharadi, tafiyar da fitarwa — shi ne ainihin yadda za ka karanta maɓallin iyaka a kan firinta na 3D, gano buɗewar ƙofa a tsarin tsaro, ko fara mota daga panel ɗin sarrafawa. Da zarar ka fahimci wannan da'ira ɗaya, za ka iya musanya LED da kusan kowane abu.

Ga wasu abubuwa masu amfani da za ka iya ginawa da wannan dabarar:

  • Maɓallin ƙararrawar ƙofa na ɗan lokaci ko maɓallin kira wanda ke kunna fitila yayin da ake dannawa.
  • Maɓallin "mutuwar mutum" wanda ke ci gaba da ba da wuta ga relay (da duk abin da yake sarrafawa) kawai yayin da ake riƙe maɓallin.
  • Maɓallin gwaji na hannu don inji, inda LED mai nuni ke tabbatar da cewa ana karɓar shigarwar.
  • Maɓallin farawa don direban mota ko famfo, tare da LED yana aiki a matsayin hasken matsayi.
  • Ƙararrawar wasa mai sauƙi inda ɗan wasa na farko da ya danna ya yi nasara kuma LED ɗin ya sanar da mai nasara.
  • Maɓallin daidaitawa ko "koyo" a kan aikin firikwensin da ke haskakawa yayin da yanayin ke aiki.

Kayan Aiki da Abubuwan Haɗi

Jerin sassan da gangan ƙanane ne, shi ya sa wannan ya zama babban aikin farko na shigarwa:

  • Kwamfutar Arduino — Uno, Nano, Mega, ko kowace kwamfuta mai dacewa.
  • LED ɗaya, ko dai 5 mm ko 3 mm, a kowane launi.
  • Resistor ɗaya don LED ɗin, ko'ina daga 200 Ω zuwa 1000 Ω.
  • Maɓallin turawa na ɗan lokaci ɗaya.
  • Breadboard da wasu wayoyi na DuPont.
LED-5mm-amber
LED-5mm-amber

Idan kana mamakin dalilin da ake buƙatar resistor kwata-kwata, rubutun yana bin diddigin lissafin (a cikin bidiyo a 03:49). LED na yau da kullum yana sauke kusan 2 V a kansa kuma yana son kusan 10 mA na wutar lantarki. Da wutar 5 V, sauran 3 V dole ne resistor ya sauke su, don haka dokar Ohm tana ba da R = 3 V / 0.01 A = 300 Ω. Duk wani abu daga 300 Ω zuwa kusan 1000 Ω zai yi aiki — mafi girman ƙimar, mafi duhun LED ɗin, amma mafi aminci da inganci. Wutar lantarki ba ta da mahimmanci; kawai kana musanya haske da ƙarancin amfani da wuta.

Jagorar Waya

Arduino schematic for LED with a push button switch
Arduino schematic for LED with a push button switch
Arduino wiring for LED with a push button switch
Arduino wiring for LED with a push button switch

Da'irar ita ce da'irar LED ɗaya da za ka yi amfani da ita don sketch na ƙyalli, tare da ƙara maɓallin turawa. Anode na LED (ƙafar da ta fi tsayi) tana haɗuwa ta hanyar resistor zuwa pin 3 na Arduino, kuma cathode (ƙafar da ta fi guntu, wadda gefen lebur na gefen robobi ke nuna) tana zuwa ƙasa. Maɓallin turawa yana haɗuwa tsakanin pin 2 da ƙasa.

Wani bayani da ya kamata a sani: maɓallin turawa yana da ƙafafu huɗu, amma an haɗa su biyu-biyu a ciki. Biyu daga cikin ƙafafun suna da alaƙa ta dindindin da juna, sauran biyun kuma suna da alaƙa ta dindindin da juna — danna maɓallin yana haɗa ƙungiyoyin biyu. Idan kana da multimeter, yi amfani da yanayin ci gaba (beep) don gano waɗanne ƙafafu aka riga an haɗa su lokacin da ba a danna maɓallin ba; waɗannan biyun su ne ƙungiyar da bai kamata ka yi amfani da ita ba. Zaɓi ƙafa ɗaya daga kowace ƙungiya mai zaman kanta ta biyu (a cikin bidiyo a 07:50).

330_ohm_resistor
330_ohm_resistor

Yadda Code ɗin Ke Aiki

Sketch ɗin gajere ne, kuma kusan duk sa tsarin daidaitawa ne da za ka iya daidaitawa. Layukan uku a saman su ne waɗanda za ka taɓa:

const int pushButtonPin = 2;//define a pin number for push button
const int LEDPin = 3;//define a pin that is connected to LED
const int delayLED = 0;//how long the LED should stay ON

pushButtonPin shi ne pin na dijital da aka haɗa maɓallin da shi. Canza wannan idan ka matsa maɓallin zuwa wani pin daban — kawai ka tuna matsa wayar zahiri don dacewa.

LEDPin shi ne pin da ke tafiyar da LED ɗin. Duk wani pin na dijital zai yi, amma ka tuna cewa pins 0 da 1 ana amfani da su ta hanyar serial, don haka ya fi kyau a guje su.

delayLED ita ce saitin mafi ban sha'awa. Yana sarrafa tsawon lokacin da LED ɗin zai kasance a kunne bayan ka saki maɓallin, ana auna shi da millise seconds. Saitta zuwa 0 yana nufin LED ɗin yana kashewa nan take da ka ɗaga yatsanka. Saitta zuwa 1000 yana riƙe LED ɗin a kunne na cikakken daƙiƙa ɗaya bayan saki, kuma 5000 yana riƙe shi a kunne na daƙiƙa biyar (a bidiyo a 16:31). Wannan lamba ɗaya tana canza yadda aikin yake ji gaba ɗaya, kuma hanya ce mai kyau don ganin yadda wani canji a cikin code yake juya kai tsaye zuwa halin da za ka iya gani.

Abubuwa biyu wasu a cikin saitin sun cancanci lura. Na farko, an saita fil ɗin maɓallin da INPUT_PULLUP maimakon INPUT kawai:

pinMode(pushButtonPin, INPUT_PULLUP);//define a pin for push button switch

Wannan yana kunna resistor ɗin pull-up na ciki na Arduino, wanda ke riƙe fil ɗin a matakin HIGH mai tsayawa lokacin da ba a danna maɓallin ba. Ba tare da shi ba, fil ɗin shigarwa mai yawo zai ɗauki hayaniyar lantarki ta ɓace kuma ya ba da karatu na bazuwar, kuma za ka buƙaci resistor na waje don gyara shi. Tare da pull-up na ciki da aka kunna, wayoyi suna kasancewa mai sauƙi: gefe ɗaya na maɓallin zuwa fil ɗin, ɗayan gefen zuwa ƙasa. Lokacin da ka danna maɓallin, an ja fil ɗin ƙasa zuwa ƙasa kuma yana karanta LOW (a bidiyo a 14:08).

Na biyu, an fara serial monitor a 9600 baud domin ka iya kallon canje-canjen yanayi yayin da suke faruwa:

Serial.begin(9600);//initialize the serial monitor
Serial.println("Robojax LED with push button");//print this text on Serial Monitor

A cikin babban loop, dabarar ita ce if/else mai sauƙi. Code ɗin yana karanta fil ɗin maɓallin kuma yana kwatanta shi da LOW. Idan an danna maɓallin, fil ɗin LED yana zuwa HIGH, ana buga saƙon "LED ON", kuma sketch ɗin yana jira delayLED millise seconds. Idan ba a danna maɓallin ba, fil ɗin LED yana zuwa LOW kuma LED ɗin yana kashewa. Saboda loop() yana gudana akai-akai, wannan binciken yana faruwa dubbai a cikin daƙiƙa, don haka amsa tana jin kamar nan take.

Nuni Kai Tsaye

Tare da delayLED an saita zuwa 1000, danna maɓallin yana kunna LED ɗin kuma yana kasancewa a kunne na daƙiƙa ɗaya bayan ka saki shi. Rage darajar zuwa 5000 kuma LED ɗin yana jinkiri na daƙiƙa biyar — tsawon da zai isa ka yi nesa da maɓallin kuma har yanzu ka gan shi a kunne. Saitta zuwa 0 kuma LED ɗin yana bin yatsanka daidai: danna, kunne; saki, kashe (a bidiyo a 17:02).

Da zarar an loda code ɗin, za ka iya cire Arduino daga USB kuma ka ba shi wuta daga baturi ko adaftar 5 V. Allon ba ya buƙatar kwamfuta don gudana — ana adana shirin a cikin ƙwaƙwalwarsa kuma yana farawa kai tsaye duk lokacin da aka kunna wuta (a bidiyo a 12:27).

Idan ka fi son LED ɗin ya kasance a kunne bayan dannawa ɗaya kuma ya kashe a dannawa na gaba, wannan wani hali ne daban da ake kira toggling, kuma an rufe shi a Daraso na 98-3: Yadda ake Kunna/Kashe Toggle LED Ta Amfani da Maɓallin Turawa tare da Arduino. Wayoyin maɓallin turawa iri ɗaya ne, don haka za ka iya sake amfani da wannan da'irar daidai.

Ayyukan da suka danganci wannan bidiyo

Babi

  • [00:00] Bayanin ayyuka 10 a cikin wannan bidiyo
  • [01:00] Gabatarwa ga kwas ɗin Arduino mataki-mataki
  • [02:29] Menene LED: alama, anode, cathode, da siffar jiki
  • [03:49] Lissafin resistor ɗin LED da dokar Ohm
  • [07:32] Haɗa LED da maɓallin turawa a kan breadboard
  • [08:50] Bayanin code ɗin: filaye, saitin, da babban loop
  • [12:43] Yadda maɓallin turawa yake aiki
  • [13:22] Haɗa maɓallin turawa zuwa fil 2 da ƙasa
  • [13:43] Tafiyar code: INPUT_PULLUP da karanta maɓallin
  • [16:14] Nuni: canza delayLED daga 1 s zuwa 5 s zuwa 0
  • [19:52] Amfanin aiki na toggle na maɓallin turawa

Hotuna

2 pin tactile push button switch
2 pin tactile push button switch
Arduino wiring for LED  with resistor
Arduino wiring for LED with resistor
Arduino schematic for LED
Arduino schematic for LED
Arduino wiring for LED with a push button switch
Arduino wiring for LED with a push button switch
Arduino schematic for LED with a push button switch
Arduino schematic for LED with a push button switch
LED-5mm-green
LED-5mm-green
330_ohm_resistor
330_ohm_resistor
dukkan ayyukan darasi na 98, breadboards da kayan aiki
dukkan ayyukan darasi na 98, breadboards da kayan aiki
dukkan ayyukan darasi na 98, breadboards da kayan aiki
dukkan ayyukan darasi na 98, breadboards da kayan aiki
LED-5mm-amber
LED-5mm-amber
934-Lessson 98-LED-2: Arduino code push button to turn LED ON and OFF
Harshe: C++
This code has not been parsed yet. Please return to the admin panel to parse it.

Fayiloli📁

Littattafan Arduino (zip)

Jagoran Mai Amfani