Table des matières:

Tecnologia PT : 3 étapes
Tecnologia PT : 3 étapes

Vidéo: Tecnologia PT : 3 étapes

Vidéo: Tecnologia PT : 3 étapes
Vidéo: Лекция JADAM Часть 3. ДВА секретных ключевых слова сельскохозяйственных технологий. 2024, Juillet
Anonim
Tecnologia PT
Tecnologia PT

En este tutoriel padres encontrar como hacer que la información dada por el sensor BMP180 se muestre en el LCD, fusionando los montajes y los códigos. Espero que les mer jusqu'à

Étape 1: Matériaux

Para hacer un código y una conexión en el protoboard utilizando el LCD y el sensor BMP180 se necesitan los siguientes materiales:

1. Protoboard

2. Arduino Uno

3. LCD

4. Capteur BMP180

5. Câbles (19)

6. Potenciomètre

7. Bibliothèques pré-installées (3 (LiquidCrystal, Wire, SFE_BMP180))

*La libreria de BMP180 puede ser descargada en sparkfun.com

Étape 2: Montaje

Montaje
Montaje

Recommandations: Conecte cada aparato por separado en orden (ej: primero LCD, luego BMP180 y por ultimo Potenciometro)

Étape 3: Codigo

Se utiliza el código BMP altitud example proporcionado en los ejemlos de la librería instalada (BMP180) en Arduino como el código base. Est-ce que c'est le code qui fusionne avec le code LiquidCristal Helloworld, qu'il est aussi un modèle d'Arduino, pour l'affichage de l'écran LCD et les données qui nécessitent le capteur. Le code est le suivant:

V10 Mike Grusin, SparkFun Electronics 2013-10-24V1.1.2 Mises à jour pour Arduino 1.6.4 *

/ Debes incluir las librerias BMP180, Wire y LiquidCrystal en este proyecto

// (Wire y LiquidCrystal son librerias standard de Arduino)

#comprendre

#include #include

// Inicializa la libreria con los pins de interface

LiquidCrystal LCD (12, 11, 5, 4, 3, 2);

// Necesitara crear un objet SFE_BM0180, aqui llamado "pression":

pression SFE_BMP180;

ligne de base double;

void setup()

{ Serial.begin(9600); lcd.println("REBOOT"); lcd.begin (16, 2); // Imprime un message sur l'écran LCD. lcd.print("");

// Inicializa el sensor (es important tener los valores calibrados guardados en el dispositivo

si (pression.begin())

Serial.println("BMP180 init success"); else { // si tiene problemas o errores en el codigo, consulte la parte de arriba del codigo.

lcd.println("Échec de l'initialisation BMP180 (déconnecté ?)\n\n");

tandis que(1); // Pause infinie }

// Obtenir la pression de base:

ligne de base = getPressure(); lcd.print("pression de base: "); lcd.print(base); lcd.println(" mb"); }

boucle vide()

{ double a, P; // Consigue nuevos valores de presion

P = getPressure();

// Muestra la altitud relativa

a = pression.altitude(P, ligne de base);

lcd.print("altitude relative: "); if (a >= 0.0) Serial.print(" "); // ajoute un espace pour les nombres positifs lcd.print(a, 1); lcd.print(" mètres, "); if (a >= 0.0) Serial.print(" "); // ajoute un espace pour les nombres positifs lcd.print(a*3.28084, 0); lcd.println(" pieds"); retard (500); }

double getPressure()

{ statut du caractère; double T, P, p0, a;

// Vous devez d'abord obtenir une mesure de température pour effectuer une lecture de pression. Debes tener una medida de temperatura antes de tener una lectura de presion

// Commencer une mesure de température: Empieza una medicion de temperature // Si no hay errores, el numero de ms para esperar se mostrara. // Si hay errores, se mostrara un 0

status = pressure.startTemperature();

if (status != 0) { // Espere a que se termine la medicion de la temperatura

retard(statut);

// Recupera la medida de complete de temperatura

// Esta medida esta guardada en la variable T // Utiliza &T para dar la direccion de T a la funcion. // Si la ffuncion muestra 1 pas d'erreurs de foin, de lo contrario marcara 0

status = pressure.getTemperature(T);

if (status != 0) { // Lancer une mesure de pression: Comienza la medicion de la presion // Le paramètre est le réglage du suréchantillonnage, de 0 à 3 (résolution la plus élevée, attente la plus longue). El parametro sobremuestra la configuracion, de 0 a 3 // Si no hay errores, el numero de ms para esperar se mostrara. // Si hay errores, se mostrara un 0

état = pression.startPressure(3);

if (status != 0) { // Espere a que termine la medicion de la presion delay(status);

// Recupere la medicion complete de la presion

// Notese que la medida esta almacenada en la variable P // Utilisez '&P' pour fournir l'adresse de P. Utilice &P para dar la direccion de P // Notese tambien que la funcion requiere una medida previa de temperatura // (Si la temperatura es estable, puedes hacer una medicion de temperatura para las medidas de presion) // Si la ffuncion muestra 1 no hay errores, de lo contrario marcara 0

état = pression.getPressure(P, T);

if (statut != 0) { return(P); } else Serial.println("erreur lors de la récupération de la mesure de pression\n"); } else Serial.println("erreur de démarrage de la mesure de pression\n"); } else Serial.println("erreur lors de la récupération de la mesure de température\n"); } else Serial.println("erreur de démarrage de la mesure de température\n"); }

Conseillé: