Orodha ya maudhui:
- Hatua ya 1: Pata vitu vyako
- Hatua ya 2: Kata Jopo la Mbele na Nyuma
- Hatua ya 3: Maliza Jopo la Nyuma
- Hatua ya 4: Tengeneza Jopo la LED
- Hatua ya 5: Tengeneza Mwongozo wa Nuru
- Hatua ya 6: Tengeneza Sura ya Kitufe
- Hatua ya 7: Solder PCB kuu
- Hatua ya 8: Kusanya Saa
- Hatua ya 9: Pakia Nambari na Ulinganishe Sura ya Nuru
- Hatua ya 10: Utangulizi wa Haraka wa Mfumo wa Binary
- Hatua ya 11: Kutumia Saa ya Kengele ya Binary
- Hatua ya 12: Kuelewa Kanuni (hiari)
- Hatua ya 13: Maneno ya Mwisho
Video: Saa ya Alarmino ya Kengele ya Arduino: Hatua 13 (na Picha)
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:54
Uhandisi wa basement Fuata Zaidi na mwandishi:
Kuhusu: Hi, naitwa Jan na mimi ni mbuni, ninapenda kujenga na kuunda vitu na pia ninauwezo mzuri wa kutengeneza vitu. Kwa kuwa naweza kufikiria nimekuwa nikipenda kuunda vitu vipya na hiyo ndio ninayoendelea kufanya mpaka… Zaidi Kuhusu Uhandisi wa Basement »
Halo, leo ningependa kukuonyesha jinsi ya kujenga moja ya miradi yangu ya hivi karibuni, saa yangu ya kengele ya binary.
Kuna tani ya saa tofauti za Kibinadamu kwenye wavuti, lakini hii inaweza kuwa ya kwanza kabisa, iliyotengenezwa kwa ukanda wa LED zenye rangi zinazoweza kushughulikiwa, ambayo pia ina kazi ya kengele na vifungo vya kugusa, kuweka vitu kama wakati na rangi.
Tafadhali usiruhusu muonekano wake mgumu ukutishe. Kwa maelezo kidogo, kusoma binary sio ngumu kama inavyoonekana. Na ikiwa uko tayari kujifunza kitu kipya, ningependa kukusaidia kufanya hivyo baadaye.
Wacha nikuambie kidogo juu ya hadithi iliyo nyuma ya mradi huu:
Awali nilipanga kujenga saa "ya kawaida", ambayo hutumia LED kama mikono, lakini sikuwa na LED za kutosha.
Sooo, unafanya nini unapotaka kuonyesha wakati na LED chache iwezekanavyo?
Unaenda kwa kibinadamu, na ndio haswa nilifanya hapa.
Saa hii ni toleo la tatu la aina hiyo. Niliunda mfano rahisi sana mara tu baada ya wazo la mradi kunigonga na kulipeleka kwa Faire ya Muumba huko Hannover, kuona watu wanafikiria nini juu yake. Wakati nilikuwa huko, nilipokea maoni mengi mazuri na ya kupendeza na maoni ya uboreshaji.
Matokeo ya maoni hayo yote na masaa ya kufikiria, kuchekesha na kupanga programu, ni saa hii ya kuvutia inayoonekana ya kupendeza, ambayo ina sifa nyingi zaidi kuliko toleo la 1.0 na leo tutapitia kila hatua ya mchakato wa ujenzi, ili uweze jenga mwenyewe kwa urahisi.
Kuna pia Video ya kina juu ya Youtube, ikiwa hautaki kusoma kila kitu.
Hatua ya 1: Pata vitu vyako
Hapa kuna orodha ndogo ya vifaa na zana zote, ambazo utahitaji kujenga saa yako ya kibinadamu.
Umeme:
- 18 za kupendeza za Ws2811 za LED (k.v Neopixels) kwenye ukanda na LED za 60 kwa kila m (ebay)
- Arduino Nano (na processor ya ATMega328) (ebay)
- Moduli ya 1307 RTC (ebay)
- 4X vifungo vya kugusa vyema (ebay)
- bs18b20 sensa ya joto ya dijiti (ebay)
- LDR (ebay)
- Laptop / spika ya smartphone au buzzer ya piezo
- 2222A NPN transistor (au kitu kama hicho)
- vichwa vya kiume
- Vichwa vya kike vya angled (ebay)
- 1kOhm kupinga
- 4, 7kOhm kupinga
- Kontena la 10kOhm
- Waya
- 7x5cm prototyping PCB mashimo 24x18 (ebay)
- waya wa fedha (waya ya vito) (ebay)
- Adapter ya usb ya 90 ° mini (ebay)
Vifaa vingine
- Kufunga kwa vinyl
- 4X 45mm m4 visu za kichwa (ebay)
- Wasushi wa chuma 32X m4
- 4X m4 nati ya kufuli
- 28X m4 karanga
- 4X 10mm m3 shaba ya PCB ya mshtuko (ebay)
- 8X 8mm m3 screw (ebay)
- karatasi ya aluminium
- Karatasi ya 2 mm ya akriliki ya maziwa
- Karatasi ya 2mm ya akriliki wazi
- Karatasi ya 3 mm ya MDF
- mkanda wa pande mbili
Zana
- kebo ndogo ya USB
- kompyuta inayoendesha Arduino IDE
- 3, 5 mm kuchimba kidogo
- 4, 5 mm kuchimba kidogo
- kuchimba nguvu
- kisu cha kukata
- kukabiliana na saw
- ion ya kutengeneza
- mkasi wa kukata chuma
- faili
- karatasi ya mchanga
Violezo (sasa vina vipimo)
- Sura ya Bure ya Ofisi
Kanuni
- Michoro
- Maktaba ya vifungo
- Maktaba ya muda
- Maktaba ya Jukebox
- RTClib iliyobadilishwa
- Maktaba ya Adafruit Neopixel
- Maktaba ya Udhibiti wa Joto-Arduino
Hatua ya 2: Kata Jopo la Mbele na Nyuma
Kipande cha kwanza tutakachotengeneza ni jopo la mbele la akriliki. Tunaweka alama mahali tunapotaka kupunguzwa kwetu kwenda, wakati tunakumbuka, kwamba tunataka uvumilivu kidogo kwa mchanga. Kisha sisi hukata tu akriliki na kisu chetu cha kukata. Baada ya kufanya hivyo kwa mara 10 hadi 20 tuna groove. Kisha tunaweza kuweka shamba hilo pembezoni mwa meza na kuinama akriliki hadi itakapovunjika.
Baada ya jopo la mbele kukatwa kwa saizi tunakata jopo la nyuma kutoka kwa kipande cha MDF. Tunaweza kutumia msumeno wetu wa kukabiliana na hii lakini kisu cha kukata pia hufanya kazi. Tunalazimika tu kubana MDF kwenye kipande cha kuni na kuifuta kwa kisu chetu cha kukata hadi blade ipite na tuna vipande viwili vya kibinafsi.
Sasa tunapanga sandwich paneli mbili pamoja na mchanga kila upande ili upangilie vizuri.
Baada ya hii kumaliza, tunakata templeti ya kwanza na kuiweka kwenye paneli mbili kwa kutumia mkanda na kuanza kuchimba mashimo yaliyowekwa alama.
Kwanza tunachimba shimo la 4, 5 mm katika kila pembe nne. Kwa kuwa akriliki ni brittle sana na hatutaki ivunjike, tutaanza na kuchimba kidogo na tufanye kazi hadi tutakapofikia kipenyo cha shimo kinachotakiwa. Kisha tunatumia templeti ili kupaka pembe kwenye sura inayofaa.
Hatua ya 3: Maliza Jopo la Nyuma
Kwa sasa, tunaweza kuweka jopo la mbele kando na kushikamana na templeti ya pili kwenye jopo la nyuma, ambapo tunahitaji kutumia 3, 5mm kuchimba visima kuchimba mashimo kwa kusimama kwa pcb 4, na vile vile mashimo 4 ambayo yanaashiria kando kwa dirisha la nyuma kidogo.
Tunatumia msumeno wetu wa kukata kukata dirisha nje na kulainisha kingo, na faili. Hutaki pia kusahau kuchimba shimo kwa kebo ndogo ya USB (nilisikia ya mtengenezaji mmoja ambaye hajazingatia sana, ambayo huwa anafanya vitu kama hivi: D).
Kama tumemaliza kukata jopo la nyuma tunaweza kuendelea kuifunga kwa kufunika vinyl. Sisi tu kata vipande viwili kwa saizi sahihi na tumia ya kwanza kwa upande mmoja. Kisha tunakata rims mbali na kufungua dirisha. Kikausha nywele inaweza kusaidia kufanya mashimo yote yaonekane tena, kwa hivyo tunaweza pia kuyakata. Baada ya kufanya kitu kimoja kwa upande mwingine tunatumia templeti yetu inayofuata na mbinu yetu ya kufuta na kuvunja kutengeneza kidirisha kidogo cha akriliki kwa jopo letu la nyuma.
Hatua ya 4: Tengeneza Jopo la LED
Sasa tunakuja kuonyesha ya mradi huu, kwa maana halisi. Jopo la LED.
Tunatumia mkasi wetu wa kukata chuma kukata kipande cha 12, 2cm na 8cm kutoka kwa karatasi ya chuma. Kuwa mwangalifu wakati unafanya hivyo, kwani mkasi huunda kingo kali sana. Tutakwenda kulainisha wale walio na faili yetu na sandpaper. Kisha tunaongeza templeti yetu inayofuata kuchimba mashimo ya visu na waya.
Wakati wa kuandaa LED halisi.
Kwanza, tulikata vipande vitatu vya 6 ya LED kila moja. Vipande vingine vya LED huja na safu nyembamba sana ya wambiso au hakuna wambiso kabisa, kwa hivyo tutashika vipande vyetu kwenye kipande cha mkanda wa pande mbili na kuikata kwa ukubwa na kisu. Hii itaifanya ishikamane na bamba la chuma na, ingawa hii sio suluhisho la kitaalam, itaingiza pedi za shaba kutoka kwa uso wa chuma chini.
Kabla ya kushikamana na vipande kwenye jopo, tunaisafisha na pombe. Wakati tunaunganisha LED, lazima tuhakikishe kwamba tunaweka chini mahali pazuri na pia katika mwelekeo sahihi. Mishale midogo kwenye ukanda wa LED inaonyesha mwelekeo, ambayo data husafiri kupitia ukanda.
Kama unavyoona kwenye picha ya tano, laini yetu ya data hutoka kona ya juu kushoto ya jopo, hupitia ukanda wa kwanza hadi upande wa kulia, kuliko kurudi mwanzo wa ukanda ufuatao kushoto na kadhalika.. Kwa hivyo mishale yetu yote inapaswa kuelekeza upande wa kulia.
Wacha tuwasha moto ion yetu ya kuweka na kuweka bati kwenye pedi za shaba, na vile vile kwenye waya wetu. Mistari ya data imeunganishwa kama nilivyoelezea tu, wakati tunaunganisha tu pedi za kuongeza na za kupunguza za sambamba.
Baada ya vipande kuunganishwa, tunatumia kisu chetu kuinua kwa uangalifu ncha za kila ukanda wakati tunashikilia LED chini, kwa hivyo bado zinaelekea juu. Kisha tunaweka gundi ya moto chini ili kuingiza viungo vyetu vya kutengeneza.
Baada ya hii kufanywa na, tunaongeza pini chache za kichwa kwenye waya zinazoenda kwenye PCB. Waya hizo zinapaswa kuwa juu ya urefu wa 16cm. Ili kuwa na hakika zaidi, kwamba jopo la chuma halifupishi chochote, tunatumia Multimeter kupima upinzani kati ya pini zote. Ikiwa inaonyesha chochote juu ya 1kOhm, kila kitu ni sawa.
Sasa tunaweza kushikamana na Arduino, kukimbia strandtest na kufurahiya rangi.
Hatua ya 5: Tengeneza Mwongozo wa Nuru
Ikiwa tutaweka jopo letu lililoongozwa nyuma ya akriliki ya maziwa, inaweza kuwa ngumu sana kutofautisha LED ya mtu binafsi. Hii ingefanya saa yetu kuwa ngumu hata kusoma, kuliko ilivyo tayari.
Ili kutatua suala hili, tutajifanya kuwa mwongozo mdogo. Kwa hili tulikata kipande kingine cha MDF, ambacho kina saizi sawa na jopo la mbele. Kisha tunaongeza templeti nyingine tena na kuchimba mashimo kumi na nane 3, 5mm kwa LED, na vile vile mashimo manne 4, 5 mm ya visu ndani yake. Tunaweza baadaye kuibana kwenye jopo la mbele na tumia sandpaper kuanisha hizi mbili.
Kama unavyoona kwenye picha ya mwisho, taa inaonekana imezingatia zaidi sasa.
Hatua ya 6: Tengeneza Sura ya Kitufe
Sehemu ya mwisho iliyofungwa, ambayo tutafanya, ni fremu ya vitufe.
Sisi, sisi tena, tunakata kipande cha MDF kwa saizi sahihi na kuongeza templeti kwake, kisha tunachimba mashimo yote muhimu na tumia msumeno wetu wa kukabiliana, kukata sehemu ya kati.
Sura yetu inapaswa kushikilia vifungo 4 vya kugusa, sensa ya taa na spika yetu ndogo mahali. Kabla ya kuziunganisha kwenye fremu, tunakata vipande kadhaa vya kifuniko kutoka kwa MDF. Kisha tunapachika-gundi vifaa vyetu kwenye vifuniko na kuongeza waya kwao.
Vipande vya nguvu vya kitufe cha kugusa vimeunganishwa sambamba, wakati kila laini ya pato hupata waya ya kibinafsi. Huu pia ni wakati mzuri wa kujaribu ikiwa wote wanafanya kazi. Kama sensor nyepesi inahitaji Volts 5 kwa upande mmoja, tunaweza kuiunganisha kwa vitufe vya kengele VCC pedi na kuuzia waya kwa mguu mwingine.
Baada ya paneli kutayarishwa, tunakata pande za fremu, ili kuwapa nafasi wao na waya zao.
Kisha tunaondoa vumbi la kuni kutoka kwa vipande vyote na safi ya utupu na kuifunika kwenye kitambaa cha vinyl.
Tunatumia kisu cha usahihi kuondoa vipande vya vinyl, moja kwa moja juu ya maeneo nyeti ya moduli zetu za kugusa. Kwa mkanda wa pande mbili, tunaweza zaidi ya kushikamana na vifungo vyetu kwenye MDF. Nilitengeneza vifungo vyangu kutoka kwa povu ya mpira, ambayo inawapa muundo mzuri, laini, lakini unaweza kutumia nyenzo yoyote isiyo ya metali unayotaka.
Kwenye fremu tunatumia kisu chetu kutoa bure kidogo ya MDF tena, ambayo inatupa uso wa kupendeza kwa gundi ya moto. Basi tunaweza hatimaye gundi vifaa kwa pande za sura yetu.
Hatua ya 7: Solder PCB kuu
Wacha tuondoke kwa sura ilivyo sasa na tuende kwenye PCB. Unaweza kuona mpangilio wa PCB kwenye picha ya kwanza.
Tunaanza kwa kuweka vifaa na wasifu wa chini kabisa kwenye bodi ya mzunguko. Vipengele vidogo zaidi ni madaraja ya waya, ambayo nilikumbuka kuchelewa kidogo, kwa hivyo nilianza na vipinga. Sisi hutengeneza sehemu zetu mahali na kuendelea na seti ya juu zaidi ya vifaa.
Ifuatayo tuna pini zetu za kichwa cha kike. Ili kuokoa nafasi na kuweza kuziba vifaa vyetu vya elektroniki kutoka upande tunaoweka wale walio kwenye pembe ya digrii 90.
Transistors haifai kabisa nafasi ya shimo 2, 54mm ya PCB yetu, kwa hivyo tunatumia koleo zetu kuinamisha miguu yao kwa umbo, iliyoonyeshwa kwenye picha ya pili. Kwanza tuliunganisha mguu wao mahali na kugeuza PCB kuzunguka. Kisha tunarudia tena kiungo cha kuuza na kutumia kidole chetu au koleo kuweka vizuri sehemu hiyo. Sasa tunaweza kuuza miguu mingine miwili mahali.
Baada ya vifaa vyote vidogo tuliunganisha Arduino yetu na moduli yetu ya saa halisi. Moduli ya RTC pia hailingani na nafasi ya shimo vizuri, kwa hivyo tutaweka upande tu, ambayo ina pedi saba za kuuza na pini za kichwa. Zaidi ya hayo tunaweka mkanda chini yake, kuzuia mizunguko yoyote fupi.
Kwa kuwa vifaa vyetu vyote vimeuzwa mahali pake, sasa ni wakati wa kufanya unganisho upande wa pili wa bodi. Kwa hili tutachukua waya yetu isiyo na maboksi. Jozi ya koleo inaweza kutumika, kunyoosha. Kisha tunakata waya vipande vidogo na kuiunganisha kwa PCB.
Ili kufanya unganisho tunawaka moto wa pamoja na ingiza waya. Kisha tunaweka ion ya soldering juu yake, hadi ifikie joto sahihi na solder inaifunga na tunapata pamoja, ambayo inaonekana kama ile ya kwenye picha. Ikiwa hatutawasha waya, tunaweza kuishia na ubaridi baridi, ambao ungeonekana sawa na mfano mwingine na haufanyi vizuri sana. Tunaweza kutumia cutter yetu ya waya, kushinikiza waya chini wakati wa kutengeneza na kuhakikisha kuwa iko juu ya PCB. Kwenye njia ndefu za unganisho, tunaiuza kwa pedi moja kila mashimo 5 hadi 6 hadi tufike kona au sehemu inayofuata.
Kwenye kona tulikata waya juu ya nusu ya kwanza ya pedi ya kutengenezea na kuuza mwisho wake. Kisha tunachukua waya mpya na kuendelea kutoka hapo kwa pembe ya kulia.
Kufanya miunganisho hiyo ya waya tupu ni ngumu sana na inachukua ustadi, kwa hivyo ikiwa unafanya hii kwa mara ya kwanza, kwa kweli sio wazo mbaya kuifanya kwenye PCB chakavu, kabla ya kujaribu kuifanya kwa kweli.
Baada ya kumaliza kumaliza, tunaangalia muunganisho tena na hakikisha kuwa hatukuzalisha mizunguko fupi. Kisha tunaweza kuweka PCB ndani ya fremu ya kitufe na kuitumia kama kumbukumbu ya urefu muhimu wa waya. Kisha tunakata waya hizo kwa urefu wa kulia na kuongeza pini za kichwa cha kiume kwao.
Viunganisho vyote vya 5V na ardhi ya vifungo vya kugusa huja pamoja kuwa kiunganishi cha 2pin, waya 4 za pato hupata kontakt 4pin na laini ya sensa ya mwanga na vile vile waya mbili za spika zimeunganishwa kwenye kontakt ya pini tatu. Usisahau kuweka alama upande mmoja wa kila tundu na kontakt na mkali, au mkanda, ili usiwaunganishe kwa njia isiyofaa.
Hatua ya 8: Kusanya Saa
Baada ya hayo nilirudi kwenye jopo la mbele na nikatumia stika kwa uangalifu, iliyotengenezwa na karatasi ya uwazi ya printa ya laser, kama mguso wa mwisho.
Ingawa niliitumia kwa uangalifu sana, sikuweza kupata matokeo ya bure, ambayo kwa bahati mbaya inaonekana wazi wakati wa ukaguzi wa karibu. Jalada pia halishiki kwenye pembe vizuri, kwa hivyo siwezi kupendekeza suluhisho hili.
Labda inaweza kufanywa na stika bora, au, ikiwa wewe ni mzuri kwa kuchora, unaweza kuongeza nambari na mkali.
Sasa tuna vifaa vyote na tunaweza kukusanya saa yetu.
Tunaanza kwa kuweka mwongozo wa taa na jopo la mbele pamoja. Baada ya bolts zote 4 kuingia, tunalinganisha paneli mbili na kisha kuziimarisha. Karanga kadhaa baadaye huja paneli nyepesi, ambapo lazima tuangalie mwelekeo. Cable inapaswa kuwa juu.
Kipande cha tatu, ni fremu ya vitufe. Kumbuka kwamba, unapoangalia kutoka upande wa mbele, spika inapaswa kuwa upande wa kulia wa saa. Vuta kebo ya jopo lako lililoongozwa katikati ya fremu, kabla ya kuirekebisha.
Sasa tunaweka msaidizi wa mkutano wa mbele na kuendelea na jopo la nyuma. Katika picha, unaweza pia kuona ubinafsi wangu mzuri uliotengenezwa na adapta ndogo ya USB ya digrii 90. Nilikuunganisha adapta inayofaa, kwa hivyo italazimika kushughulika na aina hii ya fujo. Unaweza kuziba tu adapta yako na utumie kebo kupitia shimo kwenye jopo la nyuma.
Tunachukua screws zetu za M3 na spacers zetu za PCB, kurekebisha kidirisha kidogo. Ni muhimu kukaza vizuri visu, kwani hatutaki kuharibu akriliki yetu. Kisha tunachukua PCB yetu, ingiza adapta yetu na kuikunja kwenye spacers. Sehemu ya sehemu inapaswa kutazama dirisha, wakati bandari ya USB ya Arduino inakabiliwa chini ya saa.
Kisha tunaziunganisha viunganisho vyote kutoka kwa mkutano wa mbele, wakati tunazingatia polarity katika akili na kwa uangalifu waya zote kwa saa. Tunaweza kisha kuifunga na jopo la nyuma na kaza karanga 4 zilizobaki za kufuli.
Mwishowe, unataka kuwa na washer kila upande wa kila jopo, wakati mwongozo wa taa umewekwa moja kwa moja nyuma ya jopo la mbele. Tunayo nati moja kati ya mwongozo wa taa na jopo lililoongozwa na mbili zaidi, ikitenganisha kutoka kwa fremu ya vitufe. Unaweza pia kuona hiyo kwenye picha ya mwisho.
Kama nilitumia bolts fupi na urefu wa 40mm, nina karanga 3 tu zinazoweka paneli ya nyuma na sura mbali. Ukiwa na bolts 45 mm za kulia, ungeongeza karanga nyingine hapa, na washer moja au mbili za ziada. Mwisho wa mkutano tuna karanga yetu ya kufuli, ili kila kitu kikae mahali pake.
Hatua ya 9: Pakia Nambari na Ulinganishe Sura ya Nuru
Wakati wa kupakia nambari yetu.
Kwanza tunapakua faili zote muhimu na kuzifungua. Kisha tunafungua folda yetu ya maktaba ya Arduino na kuacha maktaba zote mpya ndani yake.
Sasa tunafungua mchoro wa upimaji wa sensa nyepesi, ambayo itatupatia maadili mkali na meusi kwa kazi ya kupunguka kwa saa moja kwa moja. Tunapakia, kufungua mfuatiliaji wa serial na kufuata maagizo kwenye skrini.
Baada ya hapo kufanywa tunafungua nambari halisi ya saa za binary na kubadilisha maadili mawili na yale tuliyoyapima tu.
Tunafunga madirisha mengine yote, tunapakia nambari kwenye saa yetu na tumemaliza.
Wakati wa kucheza karibu na kifaa chetu kipya.
Hatua ya 10: Utangulizi wa Haraka wa Mfumo wa Binary
Kabla ya kuendelea ningependa kujibu swali moja ambalo labda tayari limepitia akili yako, "Unasomaje saa hii ulimwenguni?"
Kweli, kwa hili ningependa kukupa utangulizi mfupi wa mfumo wa binary.
Sote tunafahamiana na Mfumo wa desimali, ambapo kila tarakimu inaweza kuwa na majimbo 10 tofauti, kuanzia 0 hadi 9. Kwa binary kila tarakimu inaweza kuwa na majimbo mawili, ama 1 au 0 ndiyo sababu unaweza kutumia kitu rahisi kama ilivyosababisha onyesha nambari ya binary.
Ili kuonyesha nambari ambazo ni grater kuliko 9 katika desimali, tunaongeza nambari zaidi. Kila tarakimu huja na kipinduaji fulani. Nambari ya kwanza kutoka kulia inakuja na kipenyo cha 1 inayofuata ni 10 na inayofuata ni 100. Kwa kila nambari mpya kipya ni kubwa mara kumi kuliko ile ya nambari hapo awali. Kwa hivyo tunajua kwamba nambari mbili iliweka nambari moja kushoto, inawakilisha nambari 20. Wakati tarakimu mbili kushoto, inawakilisha 200.
Katika mfumo wa binary kila tarakimu pia huja na kiongezaji. Walakini, kama kila tarakimu inaweza kuwa na majimbo mawili tofauti, kila kipya ni kipya mara mbili kubwa kuliko ile ya awali. Ah na kwa njia, nambari za binary zinaitwa Bits. Kwa hivyo wacha tuangalie mfano wetu wa kwanza, ikiwa tunaweka 1 katika nafasi ya chini kabisa ni 1 rahisi, lakini ikiwa tutaiweka kwenye nafasi ya juu inayofuata, ambapo kipeo chetu ni 2, inawakilisha nambari 2 kwa binary.
Vipi kuhusu mfano mgumu kidogo chini ya picha. Biti ya tatu na ya kwanza imewashwa. Ili kupata nambari ya decimal ambayo inawakilishwa hapa, tunaongeza tu maadili ya bits mbili. Kwa hivyo 4 * 1 + 1 * 1 au 4 + 1 inatupa nambari 5.
Biti 8 hujulikana kama ka, kwa hivyo wacha tuone ni nambari gani tunayopata ikiwa tunajaza Byte nzima na hizo.1 + 2 + 4 + 8 + 16 + 32 + 64 + 128 hiyo ni 255 ambayo ni thamani ya juu zaidi ambayo byte moja inaweza kuwa nayo.
Kwa njia, wakati katika mfumo wa desimali nambari iliyo na kiongezaji cha hali ya juu kila wakati inakuja kwanza, una njia mbili za kuandika nambari chini kwa binary. Njia hizo mbili huitwa baiti isiyo ya maana kwanza (LSB) na ka muhimu zaidi kwanza (MSB). Ikiwa unataka kusoma nambari ya binary, lazima ujue ni ipi kati ya fomati mbili zinazotumika. Kwa kuwa iko karibu na mfumo wa desimali, saa yetu ya binary hutumia lahaja ya MSB.
Hebu turudi kwenye mfano wetu halisi wa ulimwengu. Kama ilivyoonyeshwa kwenye picha ya sita, saa yetu ina bits 4 kuonyesha saa. Kuliko tuna bits 6 kwa dakika na pia bits 6 kwa pili. Zaidi zaidi tuna moja ya asubuhi / jioni.
Sawa, niambie ni saa ngapi kwenye picha ya 6, kuliko kuruka hadi ya mwisho.. ….
katika sehemu ya saa tuna 2 + 1 ambayo ni 3 na pm kidogo iko juu hivyo ni jioni. Ifuatayo dakika 32 + 8, hiyo ni 40. Kwa sekunde tuna 8 + 4 + 2 ambayo ni 14. Kwa hivyo ni 3:40:14 jioni au 15:40:14.
Hongera, umejifunza kusoma saa ya binary. Kwa kweli inachukua kuizoea na mwanzoni itabidi uongeze nambari pamoja, kila wakati unataka kujua ni saa ngapi, lakini sawa na saa ya analog bila kupiga simu, unazoea mifumo ya LED juu wakati.
Na hiyo ni sehemu ya mradi huu ni nini, kuchukua kitu kisichojulikana kama mfumo wa binary kwenye ulimwengu wa kweli na kuijua vizuri.
Hatua ya 11: Kutumia Saa ya Kengele ya Binary
Sasa mwishowe tunataka kucheza karibu na saa, kwa hivyo wacha tuangalie kwa haraka udhibiti.
Programu inaweza kutofautisha kati ya bomba moja ya bomba, bomba mara mbili na bomba refu. Kwa hivyo kila kifungo kinaweza kutumika kwa vitendo vingi.
Bomba mara mbili kwenye kitufe cha juu au chini hubadilisha hali ya rangi ya LED. Unaweza kuchagua kati ya modes tofauti za tuli na zinazofifia pamoja na hali ya joto. Ikiwa uko katika moja ya njia za rangi tuli, kushikilia kitufe cha juu au chini hubadilisha rangi. Katika hali ya kufifia, bomba moja hubadilisha kasi ya michoro.
Kuweka hali ya kupunguka, bonyeza mara mbili kitufe cha sawa. Jopo lililoongozwa linaonyesha hali iliyowekwa kwa kupepesa mara nyingi.
- Wakati mmoja haimaanishi kupungua.
- Mara mbili inamaanisha mwangaza unadhibitiwa na sensa ya mwanga.
- Mara tatu na LED huzima moja kwa moja baada ya sekunde 10 ya kutokuwa na shughuli.
- Mara nne na njia zote mbili nyepesi zimejumuishwa.
Kubonyeza kitufe cha ok kwa muda mrefu hukuletea hali ya kuweka wakati, ambapo unaweza kutumia mishale ya juu na chini kubadilisha nambari. Bomba moja kwenye kitufe cha sawa hukuletea kutoka saa hadi dakika, bomba moja zaidi na unaweza kuweka sekunde. Baada ya hapo, bomba moja la mwisho linaokoa wakati mpya. Ikiwa utajidhihirisha kuingia katika hali ya kuweka wakati, unaweza kungojea sekunde 10 na saa itaiacha moja kwa moja.
Kama ilivyo kwa kitufe cha sawa, kubonyeza kitufe cha kengele kwa muda mrefu hukuruhusu kuweka kengele. Kugonga mara mbili kitufe cha kengele huamsha au kuzima kengele.
Ikiwa saa inalia, unagonga kitufe cha kengele mara moja, ili kuituma kulala kwa dakika 5 au kuishikilia, kuzima kinga ya silaha.
Hizi zote zilikuwa kazi ambazo saa ina hadi sasa. Ninaweza kuongeza zaidi katika siku zijazo ambazo unaweza kupata, ikiwa unapakua toleo la hivi karibuni la firmware.
Hatua ya 12: Kuelewa Kanuni (hiari)
Najua kwamba watu wengi hawapendi programu sana. Kwa bahati nzuri kwa watu hao, karibu hakuna maarifa ya programu inahitajika kujenga na kutumia saa hii ya binary. Kwa hivyo ikiwa haujali upande wa programu, unaweza kuruka tu hatua hii.
Walakini, ikiwa una nia ya sehemu ya usimbuaji, ningependa kukupa muhtasari wa jumla wa programu hiyo.
Kuelezea kila undani kidogo ya nambari ya saa itakuwa inayoweza kufundishwa peke yake, kwa hivyo nitaiweka rahisi kwa kuelezea mpango huo kwa njia inayolenga kitu.
Ikiwa haujui hiyo inamaanisha nini, programu inayolenga vitu (OOP) ni wazo la lugha za kisasa za programu kama C ++. Inakuruhusu kupanga kazi anuwai na vigeuzi katika madarasa yanayoitwa. Darasa ni templeti ambayo unaweza kuunda kitu kimoja au anuwai. Kila moja ya vitu hivi hupata Jina na ni seti yake ya anuwai.
Kwa mfano, nambari ya saa hutumia vitu kadhaa vya MultiTouchButton kama vile alarmButton. Hizo ni vitu kutoka kwa darasa la MultiTouchButton, ambayo ni sehemu ya maktaba yangu ya Button. Jambo la kupendeza juu ya vitu hivyo ni kwamba unaweza kuoana nao sawa na vitu halisi vya ulimwengu. Kwa mfano, tunaweza kuangalia, ikiwa kitufe cha kengele kiligongwa mara mbili kwa kupiga alarmButton.wasDoubleTapped (). Kwa kuongezea, utekelezaji wa kazi hii umefichwa vizuri kwenye faili tofauti na hatuhitaji kuwa na wasiwasi juu ya kuivunja, kwa kubadilisha kitu kingine chochote katika nambari yetu. Kuingia haraka katika ulimwengu wa programu inayolenga vitu, inaweza kupatikana kwenye wavuti ya Adafruit.
Kama unavyoona kwenye picha hapo juu, programu ya saa ina rundo la vitu tofauti.
Tulizungumza tu juu ya vitu vya kitufe, ambavyo vinaweza kutafsiri ishara za kuingiza kama bomba, bomba mara mbili au bonyeza kwa muda mrefu.
Jokebox, kama jina linavyopendekeza, inaweza kufanya kelele. Ina nyimbo kadhaa, ambazo zinaweza kuchezwa kupitia spika ndogo.
Kitu cha binaryClock kinasimamia mipangilio ya wakati na kengele, na pia kutazama kengele. Zaidi ya hayo ni kupata wakati kutoka kwa moduli ya rtc na kuibadilisha kuwa bafa ya habari ya binary kwa ledPanel.
ColourController inajumuisha kazi zote za athari za rangi na hutoa colorBuffer kwa ledPanel. Pia inaokoa hali yake katika Arduinos EEProm.
Dimmer hutunza mwangaza wa saa. Ina njia tofauti ambazo mtumiaji anaweza kupitia. Hali ya sasa pia imehifadhiwa katika EEProm.
LedPanel inasimamia bafa tofauti kwa thamani ya rangi, mwangaza na hali ya binary ya kila LED. Wakati wowote kazi ya kushinikizaToStrip () inaitwa, hufunika zile na kuzipeleka kwenye ukanda ulioongozwa.
Vitu vyote "vimeunganishwa" kupitia kuu (faili iliyo na usanidi na kazi za kitanzi), ambayo inajumuisha tu kazi kadhaa kutekeleza majukumu 3 muhimu.
- Kutafsiri pembejeo ya mtumiaji - Inapata pembejeo kutoka kwa vitu 4 vya kifungo na kuiweka kwa njia ya mantiki. Mantiki hii inakagua hali ya saa ili kubaini, ikiwa saa iko katika hali ya kawaida, kuweka wakati au hali ya kupigia na inaita kazi tofauti kutoka kwa vitu vingine ipasavyo.
- Kusimamia mawasiliano kati ya vitu - Inauliza kila kitu kitu cha binaryClock, ikiwa ina habari mpya inapatikana au ikiwa kengele inalia (). Ikiwa ina Habari mpya, inapata habariBuffer kutoka kwa binaryClock na kuipeleka kwa kitu kilichoongozwa chaPanel. Ikiwa saa inalia inaanza sanduku la juk.
- Kusasisha vitu - Kila moja ya vitu vya programu ina utaratibu wa sasisho, ambayo hutumiwa kwa vitu kama kuangalia pembejeo au kubadilisha rangi za LED. Wale wanahitaji kuitwa mara kwa mara katika kazi ya kitanzi ili saa ifanye kazi vizuri.
Hiyo inapaswa kukupa ufahamu wa jumla juu ya jinsi vipande vya msimbo vinavyofanya kazi pamoja. Ikiwa una maswali maalum zaidi, unaweza kuniuliza tu.
Kwa kuwa Msimbo wangu hakika haujakamilika, nitaiboresha zaidi katika siku zijazo, kwa hivyo kazi kadhaa zinaweza kubadilika. Jambo zuri kuhusu OOP ni kwamba bado itafanya kazi kwa njia inayofanana sana na bado unaweza kutumia picha kuuelewa.
Hatua ya 13: Maneno ya Mwisho
Ninafurahi kwamba uliendelea kusoma hadi hapa. Hiyo inamaanisha kuwa mradi wangu haukuchosha sana:).
Ninaweka kazi ya tani katika saa hii ndogo na hata kazi zaidi katika nyaraka zote na video, kuifanya iwe rahisi kwako, kujenga Saa yako ya Kengele ya Kibinadamu. Natumai juhudi yangu ilikuwa ya thamani na ningeweza kukuunganisha na wazo nzuri kwa mradi wako wa wikendi ijayo au angalau, nikupe msukumo.
Ningependa kusikia maoni yako juu ya saa katika maoni hapa chini:).
Ingawa nilijaribu kufunika kila undani, ningeweza kukosa kitu au mbili. Kwa hivyo jisikie huru kuuliza, ikiwa kuna maswali yoyote yameachwa.
Kama kawaida, asante sana kwa kusoma na kufanya furaha.
Mkimbiaji Juu katika Mashindano ya LED 2017
Ilipendekeza:
Saa ya Alarmino ya Saa na Sensorer ya Joto: Hatua 5
Saa ya Alarmino ya Saa na Sura ya Joto: Arduino ni rahisi sana na ni mtawala mdogo wa bei rahisi. na hutofautiana rahisi kuidhibiti. Kwa hivyo utatarajia nini katika mradi huu … tutatumia mipangilio sahihi ya muda wa RTC ambayo ina sauti kubwa ya kutosha kuamsha joto la joto lako unataka kutazama video fupi
Yote katika Chronometer Moja ya Dijiti (Saa, Saa, Kengele, Joto): Hatua 10 (na Picha)
Yote katika Chronometer Moja ya Dijitali (Saa, Saa, Kengele, Joto): Tulikuwa tukipanga kutengeneza Timer kwa mashindano mengine, lakini baadaye tulitekeleza saa (bila RTC). Tulipoingia kwenye programu, tulipenda kutumia matumizi zaidi ya kifaa na kuishia kuongeza DS3231 RTC, kama
Saa ya Kengele ya Smart: Saa ya Alarm ya Smart iliyotengenezwa na Raspberry Pi: Hatua 10 (na Picha)
Saa ya Alarm ya Smart: Saa ya Alarm ya Smart iliyotengenezwa na Raspberry Pi: Je! Umewahi kutaka saa nzuri? Ikiwa ndivyo, hii ndio suluhisho kwako! Nilitengeneza Saa ya Kengele ya Smart, hii ni saa ambayo unaweza kubadilisha wakati wa kengele kulingana na wavuti. Wakati kengele inalia, kutakuwa na sauti (buzzer) na taa 2 zita
Ardhi za kushinikiza za Alarmino kwa Kengele ya Mlango, Alarm ya Burglar, Larm za Moshi Nk: Hatua 8
Ardino Push Alerts for Doorbell, Burglar Alarm, Alarms moshi Nk: Arifa za IoT kutoka kwa Kengele yako ya Mlango, Alarm ya Burglar, Alarm za Moshi n.k kwa kutumia Arduino Uno na Ngao ya Ethernet. Maelezo kamili kwenye wavuti yangu hapaKuhusu Arduino Push Alert Box Inatumia Arduino Uno na Ngao ya Ethernet kulingana na Chip ya Wiznet W5100 kwa
Kutengeneza Saa na M5stick C Kutumia Arduino IDE - RTC Saa Saa Saa Na M5stack M5stick-C: Hatua 4
Kutengeneza Saa na M5stick C Kutumia Arduino IDE | RTC Saa Saa Saa Na M5stack M5stick-C: Halo jamani katika mafundisho haya tutajifunza jinsi ya kutengeneza saa na bodi ya maendeleo ya m5stick-C ya m5stack kutumia Arduino IDE.So m5stick itaonyesha tarehe, saa & wiki ya mwezi kwenye maonyesho