Tartalomjegyzék:
- 1. lépés: Szükséges felszerelés
- 2. lépés: Blackbox diagram/véges állapotú gép
- 3. lépés: BlackBox digitális óra
- 4. lépés: Összetevők együtt és leírás
- 5. lépés: Kód
- 6. lépés: Jövőbeli módosítások
- 7. lépés: Következtetés
- 8. lépés: Citizáció
Videó: Mozgásérzékelő fények: 3: 8 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:43
A digitális tervezéssel kapcsolatos utolsó projektünkhöz a mozgásérzékelők fényeinek szimulációjáról döntöttünk. Nem csak akkor aktiválódnak, ha egy tárgy a közelében van, hanem csak a nap egy bizonyos időszakában. Ezt az FPGA (Basys3 kártya) használatával tudjuk modellezni. Az FPGA használata során lehetővé tettük a felhasználó számára, hogy megadjon egy időpontot, amikor a mozgásérzékelők elkezdhetnek aktiválni, majd az érzékelők jelet küldenek attól függően, hogy melyik érzékelőt hogy bekapcsolja az adott világítást az adott szobában vagy területen. Ezt úgy modelleztük, hogy adott időben csak egy mozgásérzékelőt tudunk aktiválni, és ennek megfelelően kapcsoljuk be az adott lámpákat. Az idő szűkössége miatt nem tudjuk befolyásolni a felhasználó által megadott időt a mozgásérzékelő aktiválására. Logikánk alapja azonban lehetővé teszi, hogy valaki könnyen megismételje és javítsa azt.
### Az alábbi linken egy videó látható a projektről
drive.google.com/file/d/1FnDwKFfFFDDo8mg25j1sW61lUyEqdavQG/view?usp=sharing
1. lépés: Szükséges felszerelés
Ehhez a projekthez a következőkre lesz szüksége:
-Basys3 tábla
-USB -microsb kábel
-8 kenyeretábla jumper vezeték
-Kenyértábla
-2 szórt LED
2. lépés: Blackbox diagram/véges állapotú gép
Ez a fekete doboz diagram a LED -ek bekapcsolásához szükséges bemeneteket mutatja. A Hour bemenet és a Min bemenet azt az időt jelzi, amelyet a felhasználó a basys3 kártyára (kapcsolókkal) bevitt. Például az sw bemenet azt jelzi, hogy a felhasználó melyik részében van a helyiség (ismét kapcsolók segítségével ábrázolja a helyobjektumot).
Az FSM bemutatja az átmenetet a helyiség egyik területéről a másik területére, ahol egy adott időpontban egy objektum található. A különböző helyiségekben 4 különböző érzékelő található (s1, s2, s3, s4). Melyek szabályozzák a kimeneteket, vagy a különböző helyiségek lámpáit, például a fényt (L1, L2, L3). A kezdeti állapot az érzékelők nem észlelnek senkit, így minden lámpa ki van kapcsolva. Ahhoz, hogy a következő állapotba (1. állapot) lépjen, az s1 -nek észlelnie kell valakit, az s2, s3 és s4 ki lesz kapcsolva. Ekkor az L1 kimenet (az 1 -es lámpa bekapcsolása), az L2 és az L3 kikapcsol. Ahhoz, hogy az 1. állapotból a 2. állapotba léphessen, az s1, s3 és s4 kikapcsolt, s2 bekapcsolt állapotban kell lennie. Ez bekapcsolja az L1 és L2 funkciókat. Ahhoz, hogy ebből az állapotból a következő állapotba léphessen, az s3 -nak be kell kapcsolnia, és az összes többi érzékelőnek ki kell kapcsolnia. Ez bekapcsolja az L2 és az L3 funkciót, az L1 kikapcsol. A végső állapotba lépéshez az S4 -nek be kell kapcsolnia, és az összes többi érzékelőnek ki kell kapcsolnia. Ez csak az L3 -at kapcsolja be, az összes többi lámpa kialszik. Ha valaki belép a helyiségbe az s4 oldalról és kilép az s1 -en keresztül, minden lépés fordított sorrendben lesz.
3. lépés: BlackBox digitális óra
Az általunk létrehozott digitális óra célja, hogy az érzékelők fényei ne aktiválódjanak napközben, és csak a felhasználó által bevitt idő alatt működjenek. A digitális óra a óra_in bemenetet és a perc percet veszi fel a basys3 táblán található kapcsolók segítségével, és ahhoz, hogy betöltse a táblára, nyomja meg a (led_btn) gombot, hogy megjelenítse a fedélzeten. Hozzáadtunk egy visszaállítási gombot (rst_b) is, így új időpontban töltheti fel újra. Mivel a basys3 rendelkezik elegendő hellyel 3 különböző információpéldány megjelenítéséhez, a háttérben végrehajtottuk a másodperceket. Ebből a célból megvalósítottunk egy másodperc kapcsolót, így csak akkor fog növekedni az idő, amikor a felhasználó úgy dönt, hogy bekapcsolja az (e_sec) bemenetet a basys3 táblán. A digitális órán belüli belső keretmunka papucsokból áll, amelyek a bevitt időt tárolják, és számlálók, amelyek csak akkor növelik a felhasználó által bevitt időt, ha az (e_sec) be van kapcsolva. Hozzáadjuk a kódot, hogy megtekinthesse, hogyan valósult meg pontosan.
4. lépés: Összetevők együtt és leírás
A fenti képek bemutatják, hogyan kell az alkatrészeket összekapcsolni. Úgy kezdődik, hogy először beírja az órákat és perceket. Az ezekből a bemenetekből érkező jeleket a számláló óra és számláló perceire küldik, ahol összeadja a biteket, a számlálók kimenő jelét pedig elküldi az SSEG komponenshez, ahol a biteket meghatározott karakterekké alakítja, amelyek megjelennek a basys3 táblán. A számlálók jelzése azonban nem kerül elküldésre az SSEG komponenshez, amíg a felhasználó nem nyomja meg a bemenetet (led_btn). Ezenkívül a bevitt idő nem növekszik, amíg a bemeneti kapcsoló (e_sec) be van kapcsolva, mert különben a másodpercszámláló mindig a háttérben fut. Amint a számláló másodperce eléri az „59” értéket, jeleket küld a perceknek úgy, hogy percenként növeli ugyanazt, mint percről órára. Ezenkívül vannak mozgásérzékelő bemenetek, és a jelek elküldésre kerülnek az FSM komponenshez, ahol az meghatározza, hogy milyen állapotba kell menni a bekapcsolt érzékelőtől függően. A kezdeti állapot az, amikor az összes érzékelő ki van kapcsolva. Az FSM összes leírását a 2. lépésben ismertettük.
5. lépés: Kód
6. lépés: Jövőbeli módosítások
A jövőben javítani kellene a tényleges mozgásérzékelők és LED -ek kombinációját a projektben. Annak érdekében, hogy növeljük a projekt összetettségét, és megnézzük, hogy létrehozhatunk -e egy modern mozgásfény -érzékelőt. Ez további problémákat okozna, mivel a tárgyak közelségére is gondolnia kell, hogy a lámpák ennek megfelelően kapcsoljanak be. Ezen kívül minden más funkciót megelőzően. Továbbá a digitális óra funkcionalitásának javítása FSM használatával is, ahelyett, hogy a felhasználó másodpercekre várna (e_sec). A digitális óra FSM -je hasonló lenne a mozgásérzékelőéhez.
7. lépés: Következtetés
Összességében ez a projekt segített nekünk jobban megérteni a véges állapotú gépek működését. Ezenkívül az MSZÁ -val mindig szem előtt kell tartania, hogy tudnia kell, hogy milyen állapotban van, és mikor szeretne másik állapotba váltani. Más szóval, tudnia kell, hogy hol van egy adott időpontban, és hol lesz később. Figyelembe véve, hogy milyen tényezők teszik lehetővé, hogy (bemenetek) másik állapotba váltsanak, és mit fog tenni, amikor odaér (kimenet). Azt is megtanultuk, hogyan tárolhatunk információkat a basys3 táblán a flip-flopok segítségével, amelyek regiszterek, és hogyan növelhetjük az időt a bináris számokat összeadó számlálók használatával.
8. lépés: Citizáció
A two_sseg.vhdl = universal_sseg_dec.vhd
Ratner, James és Cheng Samuel.. Ratface Engineering.universal_sseg_dec.vhd
Ajánlott:
A mozgásérzékelő riasztása: 5 lépés
A mozgásérzékelő riasztása: Mindig ellenőrzi, hogy ki áll az ajtóban? Ez a tökéletes elem az Ön számára. Mindig kíváncsi voltam, hogy vannak -e emberek az ajtómon kívül anélkül, hogy tudnám. Létrehoztam ezt a mozgásérzékelő riasztást LED -es fényekkel, amelyek jelzik
Hordozható mozgásérzékelő: 4 lépés
Hordozható mozgásérzékelő: Helló, készítettem egy hordozható akkumulátorral működő mozgásérzékelőt, amelyet szeretnék megosztani veletek. Amire szüksége lesz: Arduino Uno Keyes mozgásérzékelő Vezetékek LED -ek (piros, zöld kék)
Mozgásérzékelő Arduino Halloween tök: 4 lépés
Mozgásérzékelő Arduino Halloween sütőtök: Ennek az utasításnak az volt a célja, hogy olcsó és egyszerű módszert hozzon létre Halloween -dekoráció elkészítéséhez otthon minden előzetes készség vagy bármilyen díszes eszköz nélkül. Az internetről könnyen beszerezhető elemek használatával Ön is elkészítheti saját egyszerű és személyre szabott H
Interaktív udvari fények, sétányi fények: 3 lépés
Interaktív udvari fények, sétányfények: Valamilyen interaktív udvari lámpát akartam építeni a hátsó udvaromhoz. Az ötlet az volt, hogy ha valaki az egyik irányba sétált, akkor animációt indított el abba az irányba, ahol Ön járt. A Dollar General 1,00 dolláros napelemes lámpáival kezdtem
Mozgásérzékelő/számlálóvezérelt fények: 7 lépés
Mozgásérzékelő/számlálóvezérelt lámpák: Ez a projekt a Digital Design tanfolyam utolsó projektjeként jött létre a Cal Poly, San Luis Obispo (CPE 133). Miért tesszük ezt? Szeretnénk segíteni a világ természeti erőforrásainak megőrzésében. Projektünk az energiatakarékosságra összpontosít. Több elem mentésével