Obsah:

Detektor účinnosti paliva: 5 kroků
Detektor účinnosti paliva: 5 kroků

Video: Detektor účinnosti paliva: 5 kroků

Video: Detektor účinnosti paliva: 5 kroků
Video: Vodík jako zdroj domácí výroby energie: Odpovědi na vaše otázky 2024, Listopad
Anonim
Detektor účinnosti paliva
Detektor účinnosti paliva

Autor: Danica Fujiwara a William McGrouther

Automobily jsou dnes hlavním dopravním prostředkem na světě. Konkrétně v Kalifornii nás obklopují ulice, dálnice a zpoplatněné silnice, po kterých denně projíždějí tisíce aut. Automobily však používají plyn a Kalifornie používá nejvíce benzínu než kterýkoli jiný stát v USA, přibližně 4500 galonů denně. Pro náš projekt CPE 133 Final jsme se rozhodli vytvořit systém, ve kterém by bylo možné sledovat rychlost automobilu a zjistit, zda překračuje nejefektivnější rychlost pro nejlepší kilometrový výkon nebo úsporu paliva. Tento projekt by pomohl řidičům seznámit se s jejich spotřebou paliva, což by jim naštěstí pomohlo ušetřit peníze, používat méně plynu a vytvářet menší znečištění ovzduší.

Krok 1: Materiály

Materiály
Materiály
Materiály
Materiály
Materiály
Materiály
Materiály
Materiály

Materiály potřebné pro tento projekt:

- Základy 3 FPGA

- Arduino Uno

- prkénko

- Senzor absolutní orientace Adafruit BNO055

- Dráty mezi muži a muži

Krok 2: Porozumění designu

Pochopení designu
Pochopení designu
Pochopení designu
Pochopení designu

Diagram konečného stavu

Tento projekt má dva různé stavy ve výše uvedeném diagramu konečného stavu. Světlo může být buď zapnuto (reprezentováno „1“) nebo vypnuto (reprezentováno „0“). Stav se mění v závislosti na zadání rychlosti sledování (ts) a konstantní optimální rychlosti.

Schéma černé skříňky

Také nahoře je diagram Black Box modulu Fuel Efficiency, který obsahuje schéma srovnávače rychlosti a zobrazení sedmi segmentů, které jsou dále diskutovány níže. Tento kód VHDL přijímá 8bitový vstup z měření akcelerometru, který je připojen k arduinu.

Krok 3: Kódování VHDL

Pro tento projekt existují tři soubory VHDL, které vytvářejí náš návrh, modul Fuel_Efficency_FinalProject, modul Speed_Comparator a modul sseg_dec, kde Speed_Comparator a sseg_dec jsou na nižší úrovni a tvoří modul Fuel Efficiency.

Modul komparátoru rychlosti

Tento modul nabírá 8bitovou rychlost v mílích za hodinu a porovnává ji s optimální rychlostí pro co nejmenší spotřebu plynu. Průměrná optimální rychlost pro nejlepší kilometrový výkon automobilu je kolem 55 mph a méně. To se však může u jednotlivých vozů lišit, což lze v modulu přizpůsobit. Níže je uveden řádek 45 kódu, který lze změnit pro osobní optimalizaci

if (tracking> "00110111") then

Kde „00110111“(55 v binárním čísle) lze změnit na libovolné 8bitové číslo pro ideální rychlost vašeho osobního automobilu s co nejmenší spotřebou paliva.

Pokud je rychlost vyšší než optimální počet, rozsvítí se kontrolka upozorňující na to, že auto nevyužívá maximální spotřebu paliva.

Sedm segmentový zobrazovací modul

Tento modul nabírá 8bitovou rychlost v mílích za hodinu a zobrazuje rychlost na sedmisegmentovém displeji. To by uživateli umožnilo vědět, jak rychle bude vědět, zda potřebuje zpomalit. Tento modul nám byl přidělen v rámci naší třídy a byl napsán Bryanem Mealym, který obsahuje komponenty bin2bcdconv, které převádějí binární 8bitový vstup na formu BCD, kterou lze snáze dekódovat, a clk_div, takže displej může vizuálně zobrazovat číslo se 3 číslicemi změnou výstupu anody na vysoké hodinové frekvenci. Tento kód přijímá 8bitové číslo, které převádí číslo na čitelný displej na základní desce 3.

Modul palivové účinnosti

Toto je hlavní soubor, který používá výše uvedené moduly jako součásti. Jeho vstupy jsou hodiny a rychlost sledování. Hodiny jsou zabudovány na desce základen 3 a rychlost sledování je dána výstupem arduina, který je připojen k analogovému signálu pmod port (XADC). Každý bit rychlosti sledování 8 bitů je mapován na porty zobrazené v sekci zapojení v kroku 4. Další omezení Basys 3 najdete v Basys_3_Master.xdc.

Krok 4: Kódování Arduina

Tento projekt používá jeden hlavní soubor arduino, který vyžaduje použití několika knihoven, z nichž některé jsou již ve vašem programu arduino a jiné je třeba stáhnout buď z tohoto instruktuálu, nebo z webu Adafruit (odkaz níže).

Knihovny

odkaz na stránku Adafruit BNO055:

Společnost Adafruit vyvinula 2 knihovny pro použití BNO055 a uvádí příklady, jak je používat. V tomto projektu použijeme funkci.getVector k tomu, aby arduino vydalo data akcelerometru.

Tento projekt také využívá některé knihovny již nainstalované v programu arduino, jako je matematická knihovna.

Hlavní soubor

Tento soubor používá data akcelerometru z funkce.getVector a pomocí matematických rovnic jej přeměňuje na rychlost v mílích za hodinu, která je poté odeslána v 8 bitech dat do základen 3 (více viz část „Zapojení hardwaru“informace).

Krok 5: Zapojení hardwaru

Zapojení hardwaru
Zapojení hardwaru
Zapojení hardwaru
Zapojení hardwaru
Zapojení hardwaru
Zapojení hardwaru
Zapojení hardwaru
Zapojení hardwaru

Zapojení Arduino

Arduino by mělo být připojeno k prkénku jako na obrázcích výše.

Základy 3 Zapojení

Výstupy arduina jsou mapovány na vstupy základen 3 přes porty JXADC analogového signálu pmod. Každý bit rychlosti sledování 8 bitů může být připojen k jednomu z kolíků zobrazených na obrázku výše. Nejméně významný bit (digitální pin 7) se připojí k ts (7) a nejvýznamnější bit (digitální pin 0) se připojí k ts (0).

Doporučuje: