Spisu treści:

Tecnologia PT: 3 kroki
Tecnologia PT: 3 kroki

Wideo: Tecnologia PT: 3 kroki

Wideo: Tecnologia PT: 3 kroki
Wideo: Лекция JADAM Часть 3. ДВА секретных ключевых слова сельскохозяйственных технологий. 2024, Listopad
Anonim
Technologia PT
Technologia PT

En este tutorial 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 sea útil

Krok 1: Materiały

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. Płyta prototypowa

2. Arduino Uno

3. LCD

4. Czujnik BMP180

5. Kable (19)

6. Potencjometry

7. Biblioteki przed instalacją(3(LiquidCrystal, Wire, SFE_BMP180))

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

Krok 2: Montaje

Montaje
Montaje

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

Krok 3: Codigo

Se utiliza el código BMP altitud example proporcionado en los ejemplos de la librería instalada (BMP180) en Arduino como el código base. Este código tiene que ser fusionado con el código LiquidCristal Helloworld, que también es un ejemplo de Arduino, para que en el display del LCD se muestren los data que manda el sensor. El código es el siguiente:

V10 Mike Grusin, SparkFun Electronics 24.10.2013 Aktualizacje V1.1.2 dla Arduino 1.6.4 *

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

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

#włączać

#włącz #włącz

// Inicializa la libreria con los pines de interface

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

// Necesitara crear un objet SFE_BM0180, aqui llamado "ciśnienie":

ciśnienie SFE_BMP180;

podwójna linia bazowa;

pusta konfiguracja()

{ Szeregowy.początek(9600); lcd.println("REBOOT"); lcd.początek(16, 2); // Wydrukuj wiadomość na wyświetlaczu LCD. lcd.print("");

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

jeśli (nacisk.rozpocznij())

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

lcd.println("Inicjowanie BMP180 nie powiodło się (rozłączono?)\n\n");

natomiast(1); // pauza nieskończona }

// Pobierz ciśnienie bazowe:

linia bazowa = getPressure(); lcd.print("ciśnienie bazowe: "); lcd.print(linia bazowa); lcd.println("mb"); }

pusta pętla()

{ podwójne a, P; // Consigue nuevos valores de presion

P = pobierzCiśnienie();

// Muestra la altitud relativa

a = ciśnienie.wysokość(P, linia bazowa);

lcd.print("wysokość względna: "); if (a >= 0.0) Serial.print(" "); // dodaj spację dla liczb dodatnich lcd.print(a, 1); lcd.print(" metry, "); if (a >= 0.0) Serial.print(" "); // dodaj spację dla liczb dodatnich lcd.print(a*3.28084, 0); lcd.println("stopy"); opóźnienie (500); }

dwukrotnie uzyskaćCiśnienie()

{ status znaku; podwójne T, P, p0, a;

// Musisz najpierw uzyskać pomiar temperatury, aby wykonać odczyt ciśnienia. Debes tener una medida de temperatura antes de tener una lectura de presion

// Rozpocznij pomiar temperatury:Empieza una medicion de temperatura // Si no hay errores, el numero de ms para esperar se mostrara. // Si hay errores, se mostrara un 0

status = ciśnienie.startTemperatura();

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

opóźnienie(stan);

// Recupera la medida de completa 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 no hay errores, de lo contrario marcara 0

status = ciśnienie.getTemperatura(T);

if (status != 0) { // Rozpocznij pomiar ciśnienia: Comienza la medicion de la presion // Parametrem jest ustawienie oversamplingu, od 0 do 3 (najwyższa res, najdłuższe oczekiwanie). 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

status = ciśnienie.startCiśnienie(3);

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

// Recupere la medicion completa de la presion

// Notese que la medida esta almacenada en la variable P // Użyj „&P”, aby podać adres 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

status = ciśnienie.getPressure(P, T);

if (status != 0) { return(P); } else Serial.println("błąd podczas pobierania pomiaru ciśnienia\n"); } else Serial.println("błąd rozpoczęcia pomiaru ciśnienia\n"); } else Serial.println("błąd podczas pobierania pomiaru temperatury\n"); } else Serial.println("błąd pomiaru temperatury\n"); }

Zalecana: