Somo la 98-2: Jinsi ya Kuwasha na Kuzima LED Kwa Kutumia Kitufe cha Kubonyeza na Arduino
Mradi huu unakuonyesha jinsi ya kudhibiti LED kwa kitufe cha kubonyeza kwa kutumia Arduino. Badala ya kuacha LED iwake na kuzima yenyewe, wewe unaamua ni lini iwake: shikilia kitufe chini na LED itawaka, iachie na itazima. Hii ni hatua inayofuata ya asili baada ya sketch ya kupepesa tu, kwa sababu inaanzisha mawazo mawili yanayotokea karibu katika kila mradi wa Arduino utakaouunda — kusoma ingizo la kidijitali, na kutumia ingizo hilo kufanya uamuzi katika msimbo.
Thamani halisi hapa ni kujifunza jinsi microcontroller inavyohisi ulimwengu wa kimwili. Kitufe cha kubonyeza ni kifaa rahisi zaidi cha ingizo la binadamu kilichopo, lakini muundo huo huo — soma ingizo, jaribu sharti, endesha pato — ndivyo ungetumia kusoma switch ya kikomo kwenye printa ya 3D, kutambua mlango unafunguka kwenye mfumo wa usalama, au kuanzisha mota kutoka paneli ya kudhibiti. Ukishaelewa mzunguko huu mmoja, unaweza kubadilisha LED na karibu kitu chochote.
Hapa kuna mambo ya vitendo unayoweza kujenga kwa mbinu hiyo hiyo:
- Kengele ya mlango ya muda mfupi au kitufe cha kupiga kinachowasha taa wakati kinabonyezwa.
- Swichi ya "mtu aliyekufa" ambayo huweka relay (na chochote inachokiendesha) ikiwa na nguvu tu wakati kitufe kinashikiliwa.
- Kitufe cha majaribio cha mwongozo kwa mashine, ambapo LED ya kiashiria inathibitisha kuwa ingizo linapokelewa.
- Kitufe cha kuanzisha kwa dereva wa mota au pampu, na LED ikifanya kazi kama taa ya hali.
- Kipaza sauti rahisi cha mchezo ambapo mchezaji wa kwanza kubonyeza anashinda na LED inatangaza mshindi.
- Kitufe cha urekebishaji au "kujifunza" kwenye mradi wa sensor unaowaka wakati hali inatumika.
Vifaa na Vipengele
Orodha ya sehemu ni ndogo kwa makusudi, ndiyo sababu hii inafanya kuwa mradi mzuri wa kwanza wa ingizo:
- Bodi ya Arduino — Uno, Nano, Mega, au bodi yoyote inayolingana.
- LED moja, ama 5 mm au 3 mm, ya rangi yoyote.
- Kipingamizi kimoja kwa LED, kati ya 200 Ω hadi 1000 Ω.
- Kitufe kimoja cha kubonyeza cha muda mfupi.
- Breadboard na waya za jumper za DuPont.
Ikiwa unajiuliza kwa nini kipingamizi kinahitajika kabisa, maandishi yanapitia hesabu (kwenye video saa 03:49). LED ya kawaida hupunguza takriban 2 V yenyewe na inataka takriban 10 mA ya mkondo. Kwa usambazaji wa 5 V, 3 V iliyobaki inapaswa kupunguzwa na kipingamizi, hivyo sheria ya Ohm inatoa R = 3 V / 0.01 A = 300 Ω. Kitu chochote kutoka 300 Ω hadi takriban 1000 Ω kitafanya kazi — thamani ya juu, LED hafifu zaidi, lakini salama zaidi na yenye ufanisi zaidi. Mkondo si muhimu; unabadilisha tu mwangaza kwa matumizi ya chini ya mkondo.
Mwongozo wa Kuunganisha
Mzunguko ni mzunguko huo wa LED unaotumia kwa sketch ya kupepesa, na kitufe cha kubonyeza kimeongezwa. Anodi ya LED (mguu mrefu) inaunganishwa kupitia kipingamizi hadi pini 3 ya Arduino, na katodi (mguu mfupi, uliowekwa alama na upande tambarare wa ukingo wa plastiki) inakwenda chini. Kitufe cha kubonyeza kinaunganishwa kati ya pini 2 na chini.
Maelezo moja yanayofaa kujua: kitufe cha kubonyeza kina miguu minne, lakini imeunganishwa kwa ndani kwa jozi. Miguu miwili imeunganishwa kabisa kwa kila mmoja, na mingine miwili imeunganishwa kabisa kwa kila mmoja — kubonyeza kitufe huunganisha jozi hizo mbili. Ikiwa una multimeter, tumia hali yake ya mwendelezo (beep) kupata miguu ambayo tayari imeunganishwa wakati kitufe hakijabonyezwa; hiyo miwili ni jozi usiyopaswa kutumia. Chagua mguu mmoja kutoka kila jozi mbili huru (kwenye video saa 07:50).
Jinsi Msimbo Unavyofanya Kazi
Sketch ni fupi, na karibu yote ni usanidi unaoweza kurekebisha. Mistari mitatu ya juu ndiyo utakayogusa kwa kweli:
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 ni pini ya kidijitali ambayo kitufe kimeunganishwa. Badilisha hii ikiwa unahamisha kitufe hadi pini tofauti — kumbuka tu kuhamisha waya halisi ili ilingane.
LEDPin ni pini inayoendesha LED. Pini yoyote ya kidijitali itafanya kazi, lakini kumbuka kwamba pini 0 na 1 zinatumiwa na muunganisho wa serial, hivyo ni bora kuziepuka.
delayLED ni mpangilio wa kuvutia zaidi. Inadhibiti muda ambao LED inabaki imewaka baada ya kuachilia kitufe, kipimo ni millisekunde. Kuiweka 0 inamaanisha LED inazimika mara moja unapoinua kidole chako. Kuiweka 1000 huweka LED imewaka kwa sekunde moja kamili baada ya kuachilia, na 5000 huweka imewaka kwa sekunde tano (kwenye video saa 16:31). Nambari hii moja hubadilisha kabisa jinsi mradi unavyohisi, na ni njia nzuri ya kuona jinsi kigezo kwenye msimbo kinavyotafsiri moja kwa moja kuwa tabia unayoweza kuona.
Mambo mengine mawili kwenye usanidi yanafaa kutambuliwa. Kwanza, pini ya kitufe imesanidiwa na INPUT_PULLUP badala ya INPUT ya kawaida:
pinMode(pushButtonPin, INPUT_PULLUP);//define a pin for push button switch
Hii huwezesha kipinga cha ndani cha pull-up cha Arduino, ambacho hushikilia pini katika kiwango thabiti cha HIGH wakati kitufe hakijabonyezwa. Bila hiyo, pini ya ingizo inayoelea ingechukua kelele za umeme zisizotarajiwa na kutoa usomaji wa nasibu, na ungehitaji kipinga cha nje kurekebisha. Kwa pull-up ya ndani ikiwa imewezeshwa, waya hubaki rahisi: upande mmoja wa kitufe kwa pini, upande mwingine kwa ardhi. Unapobonyeza kitufe, pini inavutwa chini kwa ardhi na kusoma LOW (kwenye video saa 14:08).
Pili, kifuatilia cha serial huanzishwa kwa 9600 baud ili uweze kuona mabadiliko ya hali yanapotokea:
Serial.begin(9600);//initialize the serial monitor
Serial.println("Robojax LED with push button");//print this text on Serial Monitor
Kwenye mzunguko mkuu, mantiki ni if/else rahisi. Msimbo husoma pini ya kitufe na kuilinganisha na LOW. Ikiwa kitufe kimebonyezwa, pini ya LED huenda HIGH, ujumbe "LED ON" huchapishwa, na sketch husubiri delayLED millisekunde. Ikiwa kitufe hakijabonyezwa, pini ya LED huenda LOW na LED huzimika. Kwa sababu loop() hukimbia tena na tena, ukaguzi huu hufanyika maelfu ya mara kwa sekunde, kwa hivyo mwitikio huhisi wa papo hapo.
Onyesho la Moja kwa Moja
Kwa delayLED iliyowekwa 1000, kubonyeza kitufe huwasha LED na inabaki imewaka kwa sekunde moja baada ya kuachilia. Punguza thamani hadi 5000 na LED hudumu kwa sekunde tano — muda mrefu wa kutosha kwamba unaweza kuondoka kutoka kwenye kitufe na bado kuiona imewaka. Iweke 0 na LED hufuata kidole chako hasa: bonyeza, washa; achia, zima (kwenye video saa 17:02).
Mara msimbo ukipakiwa, unaweza kukata Arduino kutoka USB na kuiwezesha kwa betri au adapta ya 5 V. Bodi haihitaji kompyuta kufanya kazi — programu imehifadhiwa kwenye kumbukumbu yake na huanza kiotomatiki kila inapowashwa (kwenye video saa 12:27).
Ikiwa ungependa LED ibaki imewaka baada ya mbonyezo mmoja na kuzimika kwa mbonyezo unaofuata, hiyo ni tabia tofauti inayoitwa kubadilisha, na inashughulikiwa kwenye Somo 98-3: Jinsi ya Kuwasha/Kuzima LED ya Kubadilisha Kwa Kutumia Kitufe cha Kubonyeza na Arduino. Waya ya kitufe cha kubonyeza ni sawa, kwa hivyo unaweza kutumia tena mzunguko huu halisi.
Miradi inayohusiana kutoka kwenye video hii
- Somo 98-1: Jinsi ya Kuwasha na Kuzima LED na Arduino
- Somo 98-3: Jinsi ya Kuwasha/Kuzima LED ya Kubadilisha Kwa Kutumia Kitufe cha Kubonyeza na Arduino
- Somo 98-4: Kufifisha Mwanga wa LED Kwa Kutumia Arduino: Udhibiti wa Mwangaza
- Somo 98-5: Fifisha Mwanga Wakati Kitufe Kinabonyezwa Kwa Kutumia Arduino
- Somo 98-6: Mchezo wa LED wa Seesaw na Arduino
- Somo 98-7: Mwanga wa Kutembea Kwa Kutumia Arduino na LED 5
- Somo 98-8: Mwanga wa Kutembea na Kitufe cha Kubonyeza na LED na Arduino
- Somo 98-9: Kipimo cha Kiwango cha Voltage cha LED Kwa Kutumia Arduino au mwanga wa kutembea na potentiometer
- Somo 98-10: Taa ya Trafiki ya Arduino
Sura
- [00:00] Muhtasari wa miradi 10 kwenye video hii
- [01:00] Utangulizi wa kozi ya hatua kwa hatua ya Arduino
- [02:29] LED ni nini: alama, anode, cathode, na umbo la kimwili
- [03:49] Kuhesabu kipinga cha LED kwa sheria ya Ohm
- [07:32] Kuunganisha LED na kitufe cha kubonyeza kwenye ubao wa mkate
- [08:50] Kuelezea msimbo: pini, usanidi, na mzunguko mkuu
- [12:43] Jinsi kitufe cha kubonyeza kinavyofanya kazi
- [13:22] Kuunganisha kitufe cha kubonyeza kwa pini 2 na ardhi
- [13:43] Ufafanuzi wa msimbo: INPUT_PULLUP na kusoma kitufe
- [16:14] Onyesho: kubadilisha delayLED kutoka 1 s hadi 5 s hadi 0
- [19:52] Matumizi ya vitendo ya kubadilisha kwa kitufe cha kubonyeza
Bilder
This code has not been parsed yet. Please return to the admin panel to parse it.
Tänker att du kanske behöver
-
AmazonSunFounder Arduino Learning Kit on AliExpresss.click.aliexpress.com
-
Amazon
-
Amazon
-
Amazon
Resurser och referenser
-
DokumentationDocumentation for SunFounder 3 in 1 IoT/Smart Car/Learning Kitdocs.sunfounder.com
-
Extern.
-
Extern.
-
Extern.
Filer📁
Arduino-bibliotek (zip)
-
Msimbo wa chanzo wa kit cha kujifunza cha Smart Car cha SunFounder 3-in-1
3in1-kit-main-v2.zip12.80 MB
Användarhandbok
-
Mwongozo wa kusanyiko wa SunFounder 3-in-1 Arduino Smart CarHati hii inaonyesha hatua kwa hatua kusanyiko la SunFounder 3-in-1 Arduino Smart Car
SunFounder_car_assembly_manual.pdf1.20 MB