Sisukord:
- Samm: vajalikud seadmed
- 2. samm: Blackboxi diagramm/piiratud olekumasin
- Samm: BlackBoxi digitaalne kell
- 4. samm: komponendid koos ja kirjeldus
- Samm: kood
- 6. samm: tulevased muudatused
- Samm 7: Järeldus
- 8. samm: tsiteerimine
Video: Liikumisanduri tuled: 3: 8 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
Lõpliku digitaalse disaini projekti jaoks otsustasime simuleerida liikumisandurite tulesid. Need aktiveeruvad mitte ainult siis, kui objekt on selle lähedal, vaid aktiveeruvad ka ainult teatud kellaajal. Saame seda modelleerida, kasutades FPGA -d (Basys3 -plaati). FPGA -d kasutades lubasime kasutajal sisestada aja, millal liikumisandurid saavad aktiveeruda, ja seejärel saadavad andurid signaali sõltuvalt sellest, milline andur see on on selles ruumis või piirkonnas selle konkreetse valguse sisselülitamine. Me modelleerisime seda, lubades teatud ajal aktiveerida ainult ühe liikumisanduri ja lülitades vastavalt ette antud tuled. Ajapiirangu tõttu ei saa me kasutaja sisestatud aega mõjutada liikumisanduri aktiveerimist. Meie loogika alus peaks aga võimaldama kellelgi seda hõlpsasti korrata ja parandada.
### Allpool olev link näitab projekti videot
drive.google.com/file/d/1FnDwKFfFFDDo8mg25j1sW61lUyEqdavQG/view?usp=sharing
Samm: vajalikud seadmed
Selle projekti jaoks vajate järgmist:
-Basys3 juhatus
-USB kuni microusb kaabel
-8 leivaplaadi hüppaja juhtmest
-Leivalaud
-2 hajutatud LED -i
2. samm: Blackboxi diagramm/piiratud olekumasin
See musta kasti skeem näitab LED -tulede sisselülitamiseks vajalikke sisendeid. Sisendid Tund ja Min sisendid tähistavad aega, mille kasutaja sisestas basys3 -plaadile (lülitite abil). Nagu näiteks, sisend sw tähistab seda, millises ruumi ruumis kasutaja on (jällegi lülitite abil asukohaobjekti kuvamiseks).
Mikroneesia näitab üleminekut ruumi ühest piirkonnast teise, kus objekt asub antud ajahetkel. Erinevates ruumides on 4 erinevat andurit, mis on kujutatud (s1, s2, s3, s4). Mis juhivad väljundeid või erinevate ruumide tulesid, näiteks valgust (L1, L2, L3). Andurite esialgne olek ei tuvasta kedagi, nii et kõik tuled on välja lülitatud. Järgmisesse olekusse (olek 1) liikumiseks peab s1 kellegi tuvastama, s2, s3 ja s4 on välja lülitatud. See väljastab L1 (lülitage tuli 1 sisse), L2 ja L3 on välja lülitatud. Olekust 2 olekust 1 liikumiseks peavad s1, s3 ja s4 olema välja lülitatud, s2 peab olema sisse lülitatud. See lülitab sisse L1 ja L2. Sellest olekust järgmisesse olekusse liikumiseks peab s3 olema sisse lülitatud ja kõik muud andurid välja lülitatud. See lülitab L2 ja L3 sisse, L1 on välja lülitatud. Lõppolekusse liikumiseks peab S4 olema sisse lülitatud ja kõik muud andurid välja lülitatud. See lülitab sisse ainult L3, kõik muud tuled kustuvad. Kui inimene siseneb ruumi s4 poolelt ja väljub s1 kaudu, toimuvad kõik sammud vastupidises järjekorras.
Samm: BlackBoxi digitaalne kell
Meie loodud digitaalse kella eesmärk on see, et andurite tuled ei aktiveeruks päeva jooksul ja töötaksid ainult kasutaja sisestatud aja jooksul. Digitaalkell võtab basys3 -plaadil olevate lülitite abil sisse tunni_in sisendi ja mins_in ning selle tahvlile laadimiseks peate vajutama (led_btn), et see pardal kuvataks. Lisasime ka lähtestusnupu (rst_b), et saaksite erineva aja uuesti üles laadida. Kuna basys3 -l on piisavalt ruumi kolme erineva teabe kuvamiseks, rakendasime sekundid taustal. Sel eesmärgil kasutasime sekundi lülitit, nii et see suureneb aja jooksul ainult siis, kui kasutaja otsustab basys3 -tahvli (e_sec) sisendi sisse lülitada. Digitaalkella sisemine raami töö koosneb plätudest, mis salvestavad sisestatud aega ja loenduritest, mis suurendavad kasutaja sisestatud aega ainult siis, kui (e_sec) on sisse lülitatud. Lisame koodi, et saaksite vaadata, kuidas seda täpselt rakendati.
4. samm: komponendid koos ja kirjeldus
Ülaltoodud pildid näitavad, kuidas komponendid on omavahel ühendatud. See algab kõigepealt sisendite sisestamisest tundide ja minutitega. Nende sisendite signaalid saadetakse loenduri tundide ja loendurite minutitele, kus see liidab bitid kokku, ja loendurite väljundsignaal saadetakse SSEG -komponendile, kus see teisendab bitid kindlateks märkideks, mis kuvatakse basys3 -plaadil. Loenduritelt saadetud signaali ei saadeta aga SSEG -komponendile enne, kui kasutaja on vajutanud sisendit (led_btn). Seda tehti, kuna me ei loonud digitaalse kella jaoks FSM -i. Samuti ei suurene sisestatud aeg enne sisendlüliti (e_sec) sisselülitamist, sest vastasel juhul töötab sekundite loendur alati taustal. Kui loenduri sekund on jõudnud ‘59’ -ni, saadab see signaali minutitele nii, et see suurendab minutite kaupa sama, mis tehakse minutitest tundidesse. Samuti on olemas liikumisanduri sisendid ja signaalid saadetakse FSM -i komponenti, kus see määrab oleku, kuhu minna, sõltuvalt sisse lülitatud andurist. Selle esialgne olek on siis, kui kõik andurid on välja lülitatud. Kogu FSM kirjeldust kirjeldati 2. etapis.
Samm: kood
6. samm: tulevased muudatused
Tulevikus oleks projektile tegelike liikumisandurite lisamine koos LED -ide kombinatsiooniga parem. Et saaksime projekti keerukust suurendada ja näha, kas suudame luua kaasaegse liikumisvalgusanduri. See tekitaks rohkem probleeme, kuna peate mõtlema ka objekti lähedusele, et tuled vastavalt sisse lülituksid. Lisaks kõik muud funktsioonid enne. Samuti digitaalse kella funktsionaalsuse parandamine FSM -i abil, selle asemel et oodata, kuni kasutaja sekundit sisse lülitab (e_sec). Digitaalse kella FSM oleks sarnane liikumisanduriga.
Samm 7: Järeldus
Üldiselt on see projekt aidanud meil paremini mõista, kuidas piiratud olekuga masinad töötavad. Lisaks peate Mikroneesia Liidus alati meeles pidama, et peate teadma, millises olekus olete ja millal soovite teise olekusse minna. Teisisõnu, peate teadma, kus te antud ajahetkel viibite ja kus te hiljem olete. Pidades silmas, millised tegurid võimaldavad teil (sisenditel) teise olekusse minna ja mida see sinna jõudmisel (väljund) teeb. Samuti õppisime, kuidas teavet basys3 tahvlisse salvestada, kasutades klappe, mis on registrid, ja kuidas aega suurendada, kasutades loendureid, mis liidavad kokku binaarnumbrid.
8. samm: tsiteerimine
The two_sseg.vhdl = universal_sseg_dec.vhd
Ratner, James ja Cheng Samuel.. Ratface Engineering.universal_sseg_dec.vhd
Soovitan:
Liikumisanduri alarm: 5 sammu
Liikumisanduri alarm: kas kontrollite alati, kes on teie ukse ees? See on teie jaoks ideaalne ese. Mul on alati olnud uudishimulik teada saada, kas mu ukse taga on inimesi teadmata. Olen loonud selle liikumisanduri häire LED -tuledega, mis näitavad
Liikumisanduri veekraan Arduino ja solenoidventiili abil - DIY: 6 sammu
Liikumisanduri veekraan Arduino ja solenoidventiili abil - DIY: Selles projektis näitan teile, kuidas ehitada liikumisanduri veekraan solenoidventiili abil. See projekt aitab teil muuta olemasoleva käsitsi veekraani kraaniks, mida saab liigutuste tuvastamise abil juhtida. IR -anduri liidese kasutamine
Liikumisanduri uksekell: 5 sammu (piltidega)
Liikumisanduri uksekell: Kui rääkisin oma pojale Jaydenile väljakutsest, mõtles ta kohe LEGO WeDo komplekti kasutada. Ta on Legodega mänginud aastaid, kuid alles eelmise kooliaasta alguses sai ta võimaluse WeDo 2.0 -ga koodida
Kuidas teha kodus PIR -liikumisanduri valgust: 7 sammu
Kuidas teha kodus PIR -liikumisanduri valgust: selles videos olen näidanud, kuidas kodus pir -liikumisanduri valgust valmistada. Saate vaadata minu videot YouTube'is. Palun tellige, kui teile meeldib minu video ja aidake mul kasvada. Https://youtu.be/is7KYNHBSp8
Liikumisanduri/loenduriga juhitavad tuled: 7 sammu
Liikumisandurid/loenduriga juhitavad tuled: see projekt loodi lõpliku projektina digitaalse disaini kursusel Cal Poly, San Luis Obispo (CPE 133). Miks me seda teeme? Tahame aidata kaitsta maailma loodusvarasid. Meie projekt keskendub elektri säästmisele. Salvestades rohkem elektrit