فهرست مطالب:

Tecnologia PT: 3 مرحله
Tecnologia PT: 3 مرحله

تصویری: Tecnologia PT: 3 مرحله

تصویری: Tecnologia PT: 3 مرحله
تصویری: FINISH Making New Boom Lift Cylinders | Franna Crane Project | Part 3 2024, جولای
Anonim
Tecnologia PT
Tecnologia PT

این آموزش به صورت کامل با استفاده از سنسور BMP180 در LCD ، با استفاده از سیستم های ضبط شده و los códigos آشنا می شود. Espero que les sea útil

مرحله 1: مواد

Para hacer un código y una conexión en el protoboard utilisando el LCD y el sensor BMP180 که لازم است در مورد مواد اولیه:

1. Protoboard

2. آردوینو اونو

3. ال سی دی

4. سنسور BMP180

5. کابل (19)

6. پتانسیومتر

7. کتابخانه ها پیش از نصب (3 (LiquidCrystal، Wire، SFE_BMP180))

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

مرحله 2: Montaje

مونتاژ
مونتاژ

توصیه ها: Conecte cada aparato por separado en orden (ej: primero LCD، luego BMP180 y por ultimo Potenciometro)

مرحله 3: Codigo

استفاده از الگوریتم BMP ارتفاع مثال 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 ، در حال حاضر نمی توانید از Arduino استفاده کنید ، برای اولین بار در صفحه نمایش LCD خود می توانید از اطلاعات مربوط به سنسور استفاده کنید. El código es el siguiente:

V10 مایک گروسین ، SparkFun Electronics 2013-24-10 V1.1.2 به روز رسانی برای Arduino 1.6.4 *

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

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

#عبارتند از

#شامل #شامل شود

// Inicializa la libreria con los pines de interface

LCD مایع LiquidCrystal (12 ، 11 ، 5 ، 4 ، 3 ، 2) ؛

// Necesitara crear un objet SFE_BM0180 ، aqui llamado "فشار":

فشار SFE_BMP180 ؛

خط پایه دوگانه ؛

void setup ()

{Serial.begin (9600) ؛ lcd.println ("راه اندازی مجدد") ؛ lcd.begin (16 ، 2) ؛ // پیام را روی LCD چاپ کنید. lcd.print ("")؛

// حسگر داخلی (es importante tener los valores calibrados guardados en el dispositivo)

if (press.begin ())

Serial.println ("موفقیت اولیه BMP180") ؛ else {// si tiene problemas o errores en el codigo، consulte la parte de arriba del codigo.

lcd.println ("BMP180 init fail (قطع شده؟) n / n")؛

در حالی که (1) ؛ // Pausa infinita}

// فشار پایه را بدست آورید:

baseline = getPressure ()؛ lcd.print ("فشار پایه:") ؛ lcd.print (پایه) ؛ lcd.println ("mb") ؛ }

حلقه خالی ()

{double a، P؛ // Consigue nuevos valores de presion

P = getPressure ()؛

// Muestra la altitude relativa

a = press.altitude (P ، baseline) ؛

lcd.print ("ارتفاع نسبی:") ؛ if (a> = 0.0) Serial.print ("")؛ // یک فاصله برای اعداد مثبت اضافه کنید lcd.print (a، 1)؛ lcd.print ("متر") ؛ if (a> = 0.0) Serial.print ("")؛ // یک فاصله برای اعداد مثبت اضافه کنید lcd.print (a*3.28084، 0)؛ lcd.println ("پا") ؛ تأخیر (500) ؛ }

Double getPressure ()

{وضعیت char؛ دو برابر T ، P ، p0 ، a ؛

// برای اندازه گیری فشار باید ابتدا اندازه گیری دما را انجام دهید. Debes tener una medida de temperatura antes de tener una lectura de presion

// شروع به اندازه گیری دما: 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 = press.startTemperature ()؛

if (وضعیت! = 0) {// Espere a que se termine la medicion de la temperatura

تاخیر (وضعیت) ؛

// Recupera la medida de completea 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 = press.getTemperature (T)؛

if (وضعیت! = 0) {// شروع به اندازه گیری فشار: Comienza la medicion de la presion // پارامتر تنظیمات نمونه برداری بیش از 0 تا 3 است (بیشترین رزولوشن ، طولانی ترین انتظار). 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

وضعیت = فشار. شروع فشار (3) ؛

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

// Recupere la medicion completea la la presion

// Notese que la medida esta almacenada en la variable P // از '& P' برای ارائه آدرس P. Utilice & P para dar la direccion de P // Notese tambien que la funcion Requirere 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

وضعیت = press.getPressure (P، T)؛

if (وضعیت! = 0) {return (P)؛ } else Serial.println ("خطای بازیابی اندازه گیری فشار / n")؛ } else Serial.println ("خطای اندازه گیری فشار / n")؛ } else Serial.println ("خطا در بازیابی اندازه گیری دما / n")؛ } else Serial.println ("خطای اندازه گیری درجه حرارت / n")؛ }

توصیه شده: