Sisukord:
- Samm: materjalid
- 2. samm: kujunduse mõistmine
- Samm: VHDL -i kodeerimine
- Samm: Arduino kodeerimine
- Samm: riistvara ühendamine
Video: Kütusesäästlikkuse detektor: 5 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
Autor: Danica Fujiwara ja William McGrouther
Autod on tänapäeval peamine transpordiliik maailmas. Täpsemalt, Californias ümbritsevad meid tänavad, maanteed ja tasulised teed, millega tuhanded autod iga päev sõidavad. Kuid autod kasutavad gaasi ja California kasutab kõige rohkem bensiini kui ükski teine USA osariik, umbes 4 500 gallonit päevas. Meie CPE 133 lõpliku projekti jaoks otsustasime luua süsteemi, mille abil saab jälgida auto kiirust ja öelda, kas see ületab parima gaasi läbisõidu või kütusesäästu jaoks kõige tõhusama kiiruse. See projekt aitaks autojuhtidel oma kütusesäästu teadvustada, mis omakorda aitaks neil loodetavasti raha säästa, gaasi vähem kasutada ja õhku vähem reostada.
Samm: materjalid
Selle projekti jaoks vajalikud materjalid:
- Basys 3 FPGA
- Arduino Uno
- Leivalaud
- Adafruit BNO055 absoluutse orientatsiooni andur
- Meeste ja meeste juhtmed
2. samm: kujunduse mõistmine
Piiratud oleku diagramm
Sellel projektil on ülaltoodud lõpliku oleku diagrammis kaks erinevat olekut. Valgus võib olla sisse lülitatud (tähistatud '1') või välja lülitatud (tähistatud '0'). Olek muutub sõltuvalt jälgimiskiiruse (ts) sisendist ja konstantsest optimaalsest kiirusest.
Musta kasti skeem
Eespool on ka kütusesäästlikkuse mooduli musta kasti diagramm, mis sisaldab kiiruse võrdluse ja seitsme segmendi kuva skemaatikat, mida käsitletakse allpool. See VHDL-kood saab arduinoga ühendatud kiirendusmõõturi mõõtmistelt 8-bitise sisendi.
Samm: VHDL -i kodeerimine
Selle projekti jaoks on meie disaini koostamiseks kolm VHDL -faili, Fuel_Efficency_FinalProject moodul, Speed_Comparator moodul ja sseg_dec moodul, kus Speed_Comparator ja sseg_dec on madalamal tasemel, et moodustada kütusetõhususe moodul.
Kiiruse võrdlusmoodul
See moodul võtab 8-bitise kiiruse miili tunnis ja võrdleb seda optimaalse kiirusega väikseima gaasikulu jaoks. Keskmine optimaalne kiirus auto parima gaasi läbisõidu jaoks on umbes 55 miili tunnis ja alla selle. See võib aga erinevates autodes erineda, mida saab moodulis kohandada. Allpool on näidatud koodi rida 45, mida saab isikliku optimeerimise jaoks muuta
kui (jälgimine> "00110111") siis
Kus “00110111” (55 binaarses numbris) saab muuta mis tahes 8-bitiseks numbriks teie isikliku auto ideaalse kiiruse jaoks väikseima kütusekulu korral.
Kui kiirus ületab optimaalse arvu, süttib tuli, teatades, et auto ei kasuta maksimaalset kütusesäästlikkust.
Seitsme segmendi ekraanimoodul
See moodul võtab 8-bitise kiiruse miilides tunnis ja kuvab kiiruse seitsme segmendi ekraanil. See võimaldaks kasutajal teada, kui kiiresti nad teavad, kas tal on vaja aeglustada. See moodul anti meile meie klassis ja selle kirjutas Bryan mealy, mis sisaldab komponente bin2bcdconv, mis teisendab binaarse 8-bitise sisendi BCD-vorminguks, mida on lihtsam dekodeerida ja clk_div, nii et ekraanil oleks visuaalselt võimalik kuvada 3-kohaline number muutes anoodväljundit kõrgel taktsagedusel. See kood aktsepteerib 8-bitist numbrit, mis teisendab numbri bass 3 tahvli loetavaks kuvariks.
Kütusetõhususe moodul
See on peamine fail, mis kasutab ülaltoodud mooduleid komponentidena. Selle sisendid on kell ja jälgimiskiirus. Kell on ehitatud basys 3 plaadile ja jälgimiskiiruse annab arduino väljund, mis on ühendatud analoogsignaali pmod -pordiga (XADC). Iga 8-bitise jälgimiskiiruse bit on kaardistatud 4. etapi juhtmestiku osas näidatud portidega. Teisi Basys 3 piiranguid leiate kaustast Basys_3_Master.xdc.
Samm: Arduino kodeerimine
See projekt kasutab ühte peamist arduino -faili, mis nõuab mitme raamatukogu kasutamist, millest mõned on juba teie arduino programmis ja teised tuleb alla laadida kas sellest juhendist või Adafruit'i veebisaidilt (link allpool).
Raamatukogud
link Adafruit BNO055 lehele:
Adafruit on välja töötanud kaks raamatukogu BNO055 kasutamiseks ja too näiteid nende kasutamiseks. Selles projektis kasutame funktsiooni.getVector, et arduino saadaks kiirendusmõõturi andmed.
See projekt kasutab ka mõnda arduino programmi juba installitud raamatukogu, näiteks matemaatikakogu.
Põhifail
See fail kasutab kiirendusmõõturi andmeid.getVector ja kasutab matemaatilisi võrrandeid, et muuta see kiiruseks miilides tunnis, mis seejärel väljastatakse 8 -bitiste andmetega Basys 3 -le (lisateavet leiate jaotisest "Riistvara ühendamine"). teave).
Samm: riistvara ühendamine
Arduino juhtmestik
Arduino tuleks ühendada leivalauaga, nagu need on ülaltoodud piltidel.
Põhi 3 Juhtmestik
Arduino väljundid kaardistatakse Basys 3 sisenditega analoogsignaali pmod JXADC portide kaudu. Iga 8-bitise jälgimiskiiruse bitti saab ühendada ühe ülaloleval pildil näidatud tihvtiga. Kõige vähem oluline bit (digitaalne tihvt 7) ühendatakse ts (7) ja kõige olulisem bit (digitaalne tihvt 0) ts (0).
Soovitan:
Veetaseme detektor: 7 sammu
Veetaseme detektor: ultraheliandur töötab samadel põhimõtetel nagu radarisüsteem. Ultraheli andur võib muuta elektrienergia akustilisteks laineteks ja vastupidi. Kuulus ultraheli andur HC SR04 genereerib ultrahelilaineid 40 kHz sagedusel
Zigbee voodi olemasolu detektor: 8 sammu
Zigbee voodi olemasolu detektor: Otsisin juba mõnda aega võimalust tuvastada, millal me voodis oleme. Seda selle teabe kasutamiseks Homeassistantis. Selle teabe abil saaksin automatiseerida öösel tulede väljalülitamise või näiteks aktiveerida oma hoiatussüsteemi
Projeto IoT - Sema detektor De Fumaça: 5 sammu
Projeto IoT - Sistema Detector De Fumaça: Sissejuhatus Sistema Detector de Fumaça koosneb igast lahendusest IoT -le või lubade andmisele või häirete jälgimisele Androidis. O projeto ja baseado em um microcontrolador que se comunica com a nu
Arduino avatud akende detektor - talveks: 6 sammu
Arduino avatud akende detektor - talveks: väljas läheb jahedaks, kuid mõnikord vajan oma tubades värsket õhku. Niisiis, ma avan akna, lahkun toast, sulgen ukse ja tahan 5-10 minuti pärast tagasi tulla. Ja mõne tunni pärast meenub mulle, et aken on lahti … Võib -olla teate, et
Taskusuuruse köha detektor: 7 sammu
Taskusuuruse köha detektor: COVID19 on tõesti ajalooline pandeemia, mis mõjutab kogu maailma väga halvasti ja inimesed ehitavad sellega võitlemiseks palju uusi seadmeid. Oleme ehitanud ka automaatse desinfitseerimismasina ja termopüstoli kontaktivaba temperatuuri sõelumiseks. Tod