Orodha ya maudhui:
- Hatua ya 1: Mfumo wa Sanduku Nyeusi
- Hatua ya 2: Vipengele
- Hatua ya 3: D Flip-Flops
- Hatua ya 4: Masharti
- Hatua ya 5: Vikwazo
- Hatua ya 6: Faili Kuu ya Chanzo
- Hatua ya 7: Mkutano
- Hatua ya 8: Kupakia Programu
Video: Mwendo wa Nishati Ulioamilishwa Taa za Mtaa: Hatua 8
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:51
Lengo letu na mradi huu ilikuwa kuunda kitu ambacho kingeokoa jamii nishati na rasilimali fedha. Mwendo ulioamilishwa taa za barabarani ungefanya vitu hivi viwili. Nchini kote nishati inapotea kwenye taa za barabarani zikiwasha barabara ambazo hazina kitu. Mfumo wetu wa taa za barabarani unahakikisha taa zinawashwa tu wakati zinahitajika, kuokoa jamii kwa dola isitoshe. Kutumia sensorer za mwendo, mfumo huwasha taa tu wakati magari yapo. Pia kwa usalama wa watembea kwa miguu, tulitekeleza kitufe cha kubatilisha ambacho huwasha taa zote barabarani. Hatua zifuatazo zitakutembeza jinsi tulivyobuni na kujenga mfano wetu wa mradi uliopungua kwa kutumia Vivado na bodi ya Basys 3.
Hatua ya 1: Mfumo wa Sanduku Nyeusi
Tulianza mradi huu kwa kuchora mchoro rahisi wa sanduku nyeusi. Mchoro wa sanduku jeusi unaonyesha tu pembejeo na matokeo mfumo wetu unahitaji kukamilisha michakato yote muhimu. Tulijaribu kuweka muundo wetu kuwa rahisi na wa msingi iwezekanavyo. Pembejeo zetu tatu za mfumo zilijumuisha basi ya sensorer za mwendo (4 kwa mfano wetu uliopunguzwa), kitufe cha kupuuza kwa watembea kwa miguu, na pembejeo la saa. Kwa upande mwingine pato letu moja ni basi la taa za LED zinazowakilisha taa zetu za barabarani. Kwa mtindo huu tulitumia hali ya taa 16 za barabarani kwa sababu hiyo ndiyo idadi kubwa ya kujengwa kwa matokeo ya LED kwenye bodi ya Basys 3. Mwishowe, kwa kutumia mchoro huu tuliweza kuunda mradi wetu wa Vivado, chanzo, na faili za kikwazo na pembejeo na matokeo yanayofaa.
Hatua ya 2: Vipengele
Katika hatua hii tunatumbukia kwa kina kuchunguza vifaa vinavyounda mchoro wetu wa sanduku jeusi. Sehemu yetu ya kwanza ni faili ya chanzo ya VHDL iliyo na D flip-flops. D flip-flops tu kuchukua ishara yoyote ni kuwa pembejeo kwao kutoka sensorer kwenye makali ya kupanda kwa saa, na latches kwamba data katika mpaka ijayo kupanda makali. Hii inafanya sensorer zetu nyeti zisisababisha pato la LED kutoka "kuangaza". Pia, tunaweka flip-flop moja ya D kwenye ishara ya kuingiza kitufe ili kuweka taa za LED kwa sekunde 5-7 baada ya kitufe kusukumwa. Sisi pia tuliendesha hii kupitia mgawanyiko wa saa.
chombo clk_div2 ni Port (clk: in std_logic; sclk: out std_logic); mwisho clk_div2;
usanifu my_clk_div ya clk_div2 ni
hesabu ya mara kwa mara ya max: integer: = (300000000); ishara tmp_clk: std_logic: = '0'; Anza my_div: mchakato (clk, tmp_clk) div_cnt: nambari kamili: = 0; Anza ikiwa (kupanda_dge (clk)) basi ikiwa (div_cnt = MAX_COUNT) basi tmp_clk <= sio tmp_clk; div_cnt: = 0; mwingine div_cnt: = div_cnt + 1; mwisho ikiwa; mwisho ikiwa; sclk <= tmp_clk; mchakato wa mwisho my_div; maliza div_clk_div yangu;
Sehemu yetu ya mwisho kwenye mchoro huu ni faili ya chanzo ya tabia ya VHDL iliyo na viyoyozi kwa matokeo kulingana na usanidi wa ishara za kuingiza.
Hatua ya 3: D Flip-Flops
Vipande vinne vilivyounganishwa na ishara za kuingiza ni muhimu kwa utendaji wa mfumo wetu. Kama ilivyosemwa hapo awali, na sensorer nyeti za mwendo na kitufe cha kubatilisha, matembezi hutumia latches kutoa tu ishara yetu ya kuingiza kwenye makali ya saa. Mantiki hii inayofuatana inamaanisha taa zetu za barabarani zinaweza kukaa kwa muda uliowekwa baada ya kuchochewa na mwendo wa haraka. Uwekaji wa C-Flip Flop ni rahisi sana:
mchakato wa kuanza (CLK) anza ikiwa kupanda_edge (CLK) kisha Q <= D; mwisho ikiwa; mchakato wa mwisho;
Jambo lote linaweza kukusanywa kwa taarifa moja ikiwa. Mara tu tulipokuwa na kipande hiki, tuliunda faili ya chanzo ya VHDL iliyo na maandishi yetu manne muhimu:
anza DFF0: Ramani ya bandari ya DFF (CLK => CLK, D => D (0), Q => Q (0)); DFF1: Ramani ya bandari ya DFF (CLK => CLK, D => D (1), Q => Q (1)); DFF2: Ramani ya bandari ya DFF (CLK => CLK, D => D (2), Q => Q (2)); DFF3: Ramani ya bandari ya DFF (CLK => CLK, D => D (3), Q => Q (3));
mwisho Tabia;
Hii inasaidia kuweka faili yetu kuu ya muundo ambapo tunakusanya vifaa vyote vya mfumo safi zaidi na kupangwa.
Hatua ya 4: Masharti
Ili kuweka nambari yetu sawa na yenye ufanisi tuliandika hali zetu zote katika taarifa ya kesi moja. Kwa mfano wetu uliopunguzwa, tulikuwa na usanidi 16 wa pato la LED kwani kila sensorer ya mwendo inawajibika kwa kikundi cha 4 za LED.:
kesi NMS ni wakati "1111" => LED ya LED ya LED ya LED ya LED ya LED ya LED ya LED ya LED ya LED ya LED ya LED <= "1111111111111111"; kesi ya mwisho;
Hatua ya 5: Vikwazo
Ili kusema vizuri pembejeo na matokeo ukitumia Vivado, lazima utekeleze faili ya kikwazo inayosema bandari zote, vifungo, LED, na saa zinazotumika.
set_property PACKAGE_PIN W5 [get_ports CLK] set_property IOSTANDARD LVCMOS33 [get_ports CLK]
set_property PACKAGE_PIN U16 [get_ports {LED [0]}] set_property IOSTANDARD LVCMOS33 [get_ports {LED [0]}] set_property PACKAGE_PIN E19 [get_ports {LED [1]}] set_property IOSTANDARD LVCMOS33 [get_ports {LED [1]}] U19 [get_ports {LED [2]}] set_property IOSTANDARD LVCMOS33 [get_ports {LED [2]}] set_property PACKAGE_PIN V19 [get_ports {LED [3]}] set_property IOSTANDARD LVCMOS33 [get_ports {LED [3]}] set_property PACKAGE_PIN W18 get_ports {LED [4]}] set_property IOSTANDARD LVCMOS33 [get_ports {LED [4]}] set_property PACKAGE_PIN U15 [get_ports {LED [5]}] set_property IOSTANDARD LVCMOS33 [get_ports {LED [5]}] set_property PACKAGE_PIN U14 [uwanja_PACKAGE_PIN U14 [get_property LED [6]}] set_property IOSTANDARD LVCMOS33 [get_ports {LED [6]}] set_property PACKAGE_PIN V14 [get_ports {LED [7]}] set_property IOSTANDARD LVCMOS33 [get_ports {LED [7]}] set_property PACKAGE_PIN V13 [get_ports {LED] KIWANGO LVCMOS33 [get_ports {LED [9]}] set_property PACKAGE_PIN W3 [get_ports {LED [10]}] set_property IOSTANDARD LVCMOS33 [get_ports {LED [10]}] set_property PACKAGE_PIN U3 [get_ports {LED [11]}] set_property IOST [get_ports {LED [11]}] set_property PACKAGE_PIN P3 [get_ports {LED [12]}] set_property IOSTANDARD LVCMOS33 [get_ports {LED [12]}] set_property PACKAGE_PIN N3 [get_ports {LED [13]}] set_property IOSTANDARD LVCMOS33 [{LED [13]}] set_property PACKAGE_PIN P1 [get_ports [LED] [15]}]
set_property PACKAGE_PIN U18 [get_ports BTN] set_property IOSTANDARD LVCMOS33 [get_ports BTN]
set_property PACKAGE_PIN A14 [get_ports {MS [0]}] set_property IOSTANDARD LVCMOS33 [get_ports {MS [0]}] set_property PACKAGE_PIN A16 [get_ports {MS [1]}] set_property IOSTANDARD LVCMOS33 [get_ports {MS [1]}] B15 [get_ports {MS [2]}] set_property IOSTANDARD LVCMOS33 [get_ports {MS [2]}] set_property PACKAGE_PIN B16 [get_ports {MS [3]}] set_property IOSTANDARD LVCMOS33 [get_ports {MS [3]}]
Hatua ya 6: Faili Kuu ya Chanzo
Katika faili kuu hii tunakusanya faili zote za chanzo zilizotajwa hapo awali. Faili hii inafanya kazi kama nambari ya kimuundo inayoleta pamoja vifaa visivyo tofauti.
Mradi wa Master_Final_Project ni Bandari (BTN: katika STD_LOGIC; CLK: katika STD_LOGIC; MS: katika STD_LOGIC_VECTOR (3 chini ya 0); LED: nje STD_LOGIC_VECTOR (15 downto 0)); mwisho Master_Final_Project;
Tabia ya usanifu wa Master_Final_Project ni
mradi final_project ni Port (--CLK: in STD_LOGIC; NMS: in STD_LOGIC_VECTOR (3 downto 0); BTN: in STD_LOGIC; - sw: katika STD_LOGIC_Vector (1 downto 0); LED: nje STD_LOGIC_VECTOR (15 downto 0)); sehemu ya mwisho;
sehemu ya mwisho_DFF ni
Bandari (CLK: katika STD_LOGIC; D: katika STD_LOGIC_Vector (3 chini ya 0); Swali: nje STD_LOGIC_Vector (3 chini ya 0)); sehemu ya mwisho;
ishara DFF02proj30: STD_LOGIC;
ishara DFF12proj74: STD_LOGIC; ishara DFF22proj118: STD_LOGIC; ishara DFF32proj1512: STD_LOGIC;
anza
DFF0: Ramani ya bandari ya mwisho_DFF (CLK => CLK, D (0) => MS (0), D (1) => MS (1), D (2) => MS (2), D (3) => MS (3), Q (0) => DFF02proj30, Q (1) => DFF12proj74, Q (2) => DFF22proj118, Q (3) => DFF32proj1512); Proj0: final_project ramani ya bandari (NMS (0) => DFF02proj30, NMS (1) => DFF12proj74, NMS (2) => DFF22proj118, NMS (3) => DFF32proj1512, BTN => BTN, LED => LED); mwisho Tabia;
Hatua ya 7: Mkutano
Mkutano wa vifaa vya mradi huu ni mdogo. Vipande vinavyohitajika tu ni kama ifuatavyo:
1. Basys 3 bodi (1)
2. Sensorer za mwendo wa bei rahisi ambazo zinaweza kupatikana kwenye amazon hapa. (4)
3. Wanaume-kwa-wanawake wanaongoza (4)
Mkutano:
1. Unganisha inaongoza kwa wanaume 4 kwa bandari za PMod JB bandari 1-4 (Tazama Kielelezo).
2. Unganisha ncha za kike kwa pini ya kila sensorer ya mwendo.
Hatua ya 8: Kupakia Programu
Sasa tuko tayari kupakia faili kuu ya VHDL kwenye bodi ya Basys 3. Hakikisha kuendesha usanidi, utekelezaji, na utafute ufuatiliaji wa njia ndogo kwa makosa yoyote yanayowezekana. Ikiwa zote zinaendesha kwa mafanikio, fungua meneja wa vifaa na upange kifaa cha Basys 3. Mradi wako sasa umekamilika!
Ilipendekeza:
Vipande vya LED vya mwendo wa mwendo wa mwendo: Hatua 8 (na Picha)
Mwendo Reactive Surfboard Vipande vya LED: Hivi karibuni, mimi na marafiki wengine tuligundua kutumia mto. Kuishi Munich tuna bahati ya kuwa na mawimbi matatu ya mto yanayoweza kutiririka kati ya eneo maarufu la mawimbi ya Eisbach. Ubaya wa kutumia mto ni kwamba ni ya kulevya na kwa hivyo mimi hupata wakati wa kufanya
Mwendo ulioamilishwa Mabawa ya Cosplay Kutumia Mzunguko wa Uwanja wa Uwanja wa Maonyesho - Sehemu ya 1: Hatua 7 (na Picha)
Mwendo ulioamilishwa Mabawa ya Cosplay Kutumia Mzunguko wa Uwanja wa Uwanja wa Maonyesho - Sehemu ya 1: Hii ni sehemu ya moja ya mradi wa sehemu mbili, ambayo nitakuonyesha mchakato wangu wa kutengeneza mabawa ya hadithi ya kiotomatiki. Sehemu ya kwanza ya mradi ni mitambo ya mabawa, na sehemu ya pili inaifanya ivaliwe, na kuongeza mabawa
Mwendo Ulioamilishwa wa Taa: 3 Hatua
Kubadilisha Taa iliyoamilishwa kwa Mwendo: Wakati wowote tunapotoka dawati au chumba chetu, wakati mwingi tunasahau kuzima taa hapo. Hii inasababisha upotezaji wa umeme na nyongeza katika bili yako ya umeme. Lakini ni nini, ikiwa taa hupata zamu moja kwa moja, baada ya kutoka kwenye chumba. Ndio katika
Mwendo-ulioamilishwa na Mwendo-ulioamilishwa Taa ya LED: 4 Hatua
Mwendo wa Kuendesha-Mwendo-ulioamilishwa Taa ya LED: Ikiwa ungependa kuweka taa mahali pengine ambayo haitoi wired ndani, hii inaweza kuwa kile unahitaji
Mwendo Ulioamilishwa Mwanga na Sura ya Nuru: Hatua 5
Mwendo Ulioamilishwa Mwanga na Sura ya Nuru: Kitufe cha mwangaza kilicho na mwendo kina matumizi mengi nyumbani na ofisini. Hii, hata hivyo, imeongeza faida ya kuingiza sensa ya nuru, ili kwamba, taa hii inaweza kusababishwa tu wakati wa Usiku