Tartalomjegyzék:

Mozgásérzékelő fények: 3: 8 lépés
Mozgásérzékelő fények: 3: 8 lépés

Videó: Mozgásérzékelő fények: 3: 8 lépés

Videó: Mozgásérzékelő fények: 3: 8 lépés
Videó: Napelemes Mozgásérzékelős LED Reflektor - Szolár Paneles - 500lm - 3 Funkció - IP65 2024, November
Anonim
Mozgásérzékelő fények Basys3
Mozgásérzékelő fények Basys3
Mozgásérzékelő fények Basys3
Mozgásérzékelő fények Basys3
Mozgásérzékelő fények Basys3
Mozgásérzékelő fények Basys3

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

Szükséges felszerelé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

Blackbox diagram/véges állapotú gép
Blackbox diagram/véges állapotú gép
Blackbox diagram/véges állapotú gép
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

BlackBox digitális óra
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

Alkatrészek együtt és leírás
Alkatrészek együtt és leírás
Alkatrészek együtt és leírás
Alkatrészek 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: