Table des matières:

Détecteur d'efficacité énergétique : 5 étapes
Détecteur d'efficacité énergétique : 5 étapes

Vidéo: Détecteur d'efficacité énergétique : 5 étapes

Vidéo: Détecteur d'efficacité énergétique : 5 étapes
Vidéo: Conférence sur les solutions d'efficacité énergétique en milieu industriel- Elec Expo 2022 2024, Novembre
Anonim
Détecteur d'efficacité énergétique
Détecteur d'efficacité énergétique

Par: Danica Fujiwara et William McGrouther

La voiture est aujourd'hui le principal moyen de transport dans le monde. Plus précisément, en Californie, nous sommes entourés de rues, d'autoroutes et de routes à péage sur lesquelles des milliers de voitures roulent quotidiennement. Cependant, les voitures utilisent de l'essence et la Californie utilise le plus d'essence que tout autre État des États-Unis, environ 4 500 gallons par jour. Pour notre projet CPE 133 Final, nous avons décidé de créer un système dans lequel il pourrait suivre la vitesse d'une voiture et dire si elle dépasse la vitesse la plus efficace pour la meilleure consommation d'essence ou la meilleure économie de carburant. Ce projet aiderait les conducteurs à prendre conscience de leur économie de carburant, ce qui, espérons-le, les aiderait à économiser de l'argent, à utiliser moins d'essence et à créer moins de pollution dans l'air.

Étape 1: Matériaux

Matériaux
Matériaux
Matériaux
Matériaux
Matériaux
Matériaux
Matériaux
Matériaux

Matériel nécessaire pour ce projet:

-Basys 3 FPGA

-Arduino Uno

- Planche à pain

- Capteur d'orientation absolue Adafruit BNO055

- Fils mâle à mâle

Étape 2: Comprendre la conception

Comprendre la conception
Comprendre la conception
Comprendre la conception
Comprendre la conception

Diagramme d'état fini

Ce projet a deux états différents dans le diagramme d'états finis montré ci-dessus. La lumière peut être allumée (représentée par « 1 ») ou éteinte (représentée par « 0 »). L'état change en fonction de l'entrée de la vitesse de suivi (ts) et de la vitesse optimale constante.

Diagramme de la boîte noire

Également au-dessus, il y a un diagramme de boîte noire du module d'efficacité énergétique qui contient le schéma du comparateur de vitesse et de l'affichage à sept segments qui sont discutés plus en détail ci-dessous. Ce code VHDL reçoit une entrée 8 bits des mesures de l'accéléromètre connecté à l'arduino.

Étape 3: Codage du VHDL

Pour ce projet, il existe trois fichiers VHDL qui construisent notre conception, le module Fuel_Efficiency_FinalProject, le module Speed_Comparator et le module sseg_dec où Speed_Comparator et sseg_dec sont au niveau inférieur pour constituer le module d'efficacité énergétique.

Le module comparateur de vitesse

Ce module prend une vitesse de 8 bits en miles par heure et la compare à la vitesse optimale pour la moindre consommation de gaz. La vitesse optimale moyenne pour la meilleure consommation d'essence d'une voiture est d'environ 55 mph et moins. Cependant, cela peut varier d'une voiture à l'autre, ce qui peut être personnalisé dans le module. La ligne 45 de code qui peut être modifiée pour une optimisation personnelle est affichée ci-dessous

si (suivi > "00110111") alors

Où "00110111" (55 en binaire) peut être remplacé par n'importe quel nombre à 8 bits pour la vitesse idéale de votre voiture personnelle pour une consommation de carburant minimale.

Si la vitesse dépasse le nombre optimal, le voyant s'allumera pour indiquer que la voiture n'utilise pas le rendement énergétique maximal.

Le module d'affichage à sept segments

Ce module prend une vitesse de 8 bits en miles par heure et affiche la vitesse sur l'affichage à sept segments. Cela permettrait à l'utilisateur de savoir à quelle vitesse il saura s'il doit ralentir. Ce module nous a été donné au sein de notre classe et a été écrit par Bryan Mealy qui contient les composants bin2bcdconv qui convertit l'entrée binaire 8 bits en forme BCD plus facile à décoder et clk_div afin que l'affichage puisse afficher visuellement un nombre à 3 chiffres en changeant la sortie d'anode à une fréquence d'horloge élevée. Ce code accepte un nombre de 8 bits et convertit le nombre en un affichage lisible sur la carte basys 3.

Le module d'efficacité énergétique

C'est le fichier principal qui utilise les modules ci-dessus comme composants. Ses entrées sont l'horloge et la vitesse de suivi. L'horloge est intégrée à la carte basys 3 et la vitesse de suivi est donnée par la sortie de l'arduino qui est connectée au port pmod du signal analogique (XADC). Chaque bit de la vitesse de suivi de 8 bits est mappé sur les ports indiqués dans la section de câblage à l'étape 4. D'autres contraintes Basys 3 peuvent être trouvées dans Basys_3_Master.xdc.

Étape 4: Codage Arduino

Ce projet utilise un fichier arduino principal qui nécessite l'utilisation de plusieurs bibliothèques, dont certaines sont déjà dans votre programme arduino et d'autres doivent être téléchargées à partir de cette instructable ou du site Web d'Adafruit (lien ci-dessous).

Bibliothèques

lien vers la page Adafruit BNO055:

Adafruit a développé 2 bibliothèques pour l'utilisation du BNO055, et donne des exemples d'utilisation. Dans ce projet, nous utiliserons la fonction.getVector pour que l'arduino génère les données de l'accéléromètre.

Ce projet utilise également certaines bibliothèques déjà installées dans le programme arduino, comme la bibliothèque mathématique.

Fichier principal

Ce fichier utilise les données de l'accéléromètre de la fonction.getVector et utilise des équations mathématiques pour la transformer en une vitesse en miles par heure, qui est ensuite sortie en 8 bits de données vers le Basys 3 (voir la section "Câblage du matériel" pour plus informations).

Étape 5: Câblage du matériel

Câblage du matériel
Câblage du matériel
Câblage du matériel
Câblage du matériel
Câblage du matériel
Câblage du matériel
Câblage du matériel
Câblage du matériel

Câblage Arduino

L'Arduino doit être câblé à la maquette comme sur les images ci-dessus.

Câblage Basys 3

Les sorties de l'arduino sont mappées sur les entrées du Basys 3 via les ports de signal analogique pmod JXADC. Chaque bit de la vitesse de suivi de 8 bits peut être connecté à l'une des broches illustrées dans l'image ci-dessus. Le bit le moins significatif (broche numérique 7) est connecté à ts(7) et le bit le plus significatif (broche numérique 0) est connecté à ts(0).

Conseillé: