Мазмуну:

Технология PT: 3 кадам
Технология PT: 3 кадам

Video: Технология PT: 3 кадам

Video: Технология PT: 3 кадам
Video: Лекция JADAM Часть 3. ДВА секретных ключевых слова сельскохозяйственных технологий. 2024, Ноябрь
Anonim
Tecnologia PT
Tecnologia PT

Үйрөткүчтүн жардамы менен сенсор BMP180 менен ЖКнын маалыматы менен жабдылган, жана алар орнотулган жана орнотулган. Espero que les sea útil

1 -кадам: материалдар

Төмөнкү панелдин жардамы менен протоколдун жардамы менен LCD жана сенсор BMP180 керектүү материалдарды камтыйт:

1. Protoboard

2. Arduino Uno

3. LCD

4. Сенсор BMP180

5. Кабелдер (19)

6. Потенциометр

7. Китепканалар орнотулууда (3 (LiquidCrystal, Wire, SFE_BMP180))

*BMP180 китепканасы sparkfun.com сайтынан жүктөлүп алынган

2 -кадам: Монтаж

Montaje
Montaje

Сунуштар: Conecte cada aparato peparado en orden (мисалы: ЖК, пленка BMP180 жана акыркы потенциометр)

3 -кадам: Codigo

Мисалы, BMP бийиктиктин мисалдары пропорционалдуулукту орнотот (BMP180) жана Arduino como el código базасы. Бул жерде LiquidCristal Helloworld колдонмосу бар, ал экөө тең Ардуинонун эксклюзивдүү дисплейлерин, ошондой эле сенсордук сенсорлорду иштетет. El código es el siguiente:

V10 Майк Грусин, SparkFun Electronics 2013-24-10 V1.1.2 Arduino 1.6.4 үчүн жаңыртуулар *

/ BMP180, Wire y LiquidCrystal китепкана китептерин камтыйт

// (Wire y LiquidCrystal уулу китепканаларынын стандарты Arduino)

#кошуу

#кошуу #кошуу

// Интерфейске кирүү китепканасы

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

// SFE_BM0180, "басым" баскычын басыңыз:

SFE_BMP180 басымы;

кош базалык;

жараксыз орнотуу ()

{Serial.begin (9600); lcd.println ("Кайра жүктөө"); lcd.begin (16, 2); // ЖКга билдирүү басып чыгаруу. lcd.print ("");

// Туура сенсор (эң маанилүү нерсе)

if (кысым башталат ())

Serial.println ("BMP180 баштапкы ийгилиги"); else {// si tiene problemas en errores en el codigo, consulte la parte de arriba del codigo.

lcd.println ("BMP180 демилгеси ишке ашпай калды (ажыратылдыбы?) n / n");

while (1); // Pausa infinita}

// Негизги басымды алыңыз:

баштапкы = getPressure (); lcd.print ("базалык басым:"); lcd.print (баштапкы); lcd.println ("mb"); }

боштук цикл ()

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

P = getPressure ();

// Muestra la altitude relativa

а = басым. бийиктик (P, баштапкы);

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); }

кош getPressure ()

{char абалы; кош T, P, p0, a;

// Сиз адегенде басымдын окуусун аткаруу үчүн температураны өлчөөңүз керек. Debes tener una medida de temperatura antes de tener una lektura de presion

// Температураны өлчөөнү баштаңыз: Темпераментти колдонуңуз // Чөп менен ката кетирбеңиз. // Чөптөрдүн каталары, бул жерде 0 жок

абал = press.startTemperature ();

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

кечигүү (статус);

// Темпераментти толуктоо

// Esta medida esta Guardada en la variable T // Utiliza & T para dar la direccion de T a la funcion. // Si ffuncion muestra 1 no errores, de contrario marcara 0

абал = press.getTemperature (T);

if (status! = 0) {// Басымды өлчөөнү баштаңыз: Comienza la medicion de la presion // Параметр - бул ашыкча тандалма, 0дөн 3кө чейин (эң жогорку рез, эң узак күтүү). Бул параметр конфигурацияланганда, 0 а 3 // сен эч кандай ката кетирбейсиң, бул ката. // Чөптөрдүн каталары, бул жерде 0 жок

status = press.startPressure (3);

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

// Recipier la medicion comple de la presion

// Notese que la medida esta almacenada en la variable P // Use & P 'address to provide 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 errores, de lo contrario marcara 0

абал = басым.getPressure (P, T);

if (status! = 0) {return (P); } else Serial.println ("басымдын өлчөө катасы / n"); } else Serial.println ("басымды өлчөөдө ката / n"); } else Serial.println ("температураны өлчөө катасы / n"); } else Serial.println ("температураны өлчөөдө ката / n"); }

Сунушталууда: