Tabla de contenido:
- Paso 1: Equipo indispensable que necesitamos
- Paso 2: Conexiones de hardware para armar el circuito
- Paso 3: Programación de Raspberry Pi en Java
- Paso 4: La practicidad del código (en funcionamiento)
- Paso 5: Aplicaciones y características
- Paso 6: Conclusión
Video: Usando Raspberry Pi, mida la altitud, la presión y la temperatura con MPL3115A2: 6 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:42
¡Sepa lo que posee y sepa por qué lo posee
Es intrigante. Vivimos en la era de la automatización de Internet, que se sumerge en una plétora de nuevas aplicaciones. Como entusiastas de la informática y la electrónica, hemos aprendido mucho con la Raspberry Pi y hemos decidido combinar nuestros intereses. Este proyecto demora aproximadamente una hora si es nuevo en las conexiones I²C y la configuración del software, y es una excelente manera de expandir las capacidades de MPL3115A2 con Raspberry Pi en Java.
Paso 1: Equipo indispensable que necesitamos
1. Raspberry Pi
El primer paso fue obtener una placa Raspberry Pi. Este pequeño genio es utilizado por aficionados, profesores y para crear entornos innovadores.
2. Escudo I2C para Raspberry Pi
El INPI2 (adaptador I2C) proporciona a la Raspberry Pi 2/3 un puerto I²C para usar con varios dispositivos I2C. Está disponible en Dcube Store.
3. Altímetro, sensor de presión y temperatura, MPL3115A2
El MPL3115A2 es un sensor de presión MEMS con una interfaz I²C para proporcionar datos de presión, altitud y temperatura. Este sensor utiliza el protocolo I²2 para comunicarse. Compramos este sensor en Dcube Store.
4. Cable de conexión
Usamos el cable de conexión I²C disponible en Dcube Store.
5. Cable micro USB
La Raspberry Pi funciona con un suministro micro USB.
6. Mejora del acceso a Internet: cable Ethernet / módulo WiFi
Una de las primeras cosas que querrá hacer es conectar su Raspberry Pi a Internet. Puede conectarse mediante un cable Ethernet o con un adaptador inalámbrico USB Nano WiFi.
7. Cable HDMI (opcional, su elección)
Puede conectar Raspberry Pi a un monitor mediante un cable HDMI. Además, puede acceder de forma remota a su Raspberry Pi mediante SSH / PuTTY.
Paso 2: Conexiones de hardware para armar el circuito
Realice el circuito según el esquema que se muestra. En general, las conexiones son bastante simples. Siga las instrucciones y las imágenes anteriores y no debería tener problemas. Mientras planificamos, analizamos el hardware y la codificación, así como los conceptos básicos de la electrónica. Queríamos diseñar un esquema electrónico simple para este proyecto. En el diagrama, puede observar las diferentes partes, componentes de potencia y sensor I²C siguiendo los protocolos de comunicación I²C. Con suerte, esto ilustra lo simple que es la electrónica para este proyecto.
Conexión de Raspberry Pi y I2C Shield
Para esto, Raspberry Pi y coloque el I²C Shield en él. Presione el escudo suavemente (vea la foto).
Conexión del sensor y Raspberry Pi
Tome el sensor y conecte el cable I²C con él. Asegúrese de que la salida I²C SIEMPRE se conecte a la entrada I²C. Lo mismo le seguirá la Raspberry Pi con el blindaje I²C montado sobre él. Tenemos el blindaje I²C y los cables de conexión I²C de nuestro lado como una gran ventaja ya que solo nos queda la opción plug and play. No más problemas de pines y cableado y, por lo tanto, la confusión se ha ido. Qué alivio imaginarse a sí mismo en la red de cables y meterse en eso. ¡Tan simple como esto!
Nota: El cable marrón siempre debe seguir la conexión de tierra (GND) entre la salida de un dispositivo y la entrada de otro dispositivo
La conectividad a Internet es crucial
Para que nuestro proyecto sea un éxito, necesitamos un acceso a Internet para nuestra Raspberry Pi. En esto, tiene opciones como conectar un cable Ethernet (LAN). Además, como una forma alternativa pero impresionante de utilizar un adaptador WiFi.
Encendido del circuito
Enchufe el cable Micro USB en el conector de alimentación de Raspberry Pi. Enciéndelo y listo, ¡estamos listos!
Conexión a la pantalla
Podemos tener el cable HDMI conectado a un monitor o podemos ser un poco innovadores para hacer nuestro Pi sin cabeza (usando -SSH / PuTTY) lo que ayuda a reducir el costo adicional porque de alguna manera somos aficionados.
Cuando un hábito comienza a costar dinero, se llama pasatiempo
Paso 3: Programación de Raspberry Pi en Java
El código Java para el sensor Raspberry Pi y MPL3115A2. Está disponible en nuestro repositorio de Github.
Antes de continuar con el código, asegúrese de leer las instrucciones dadas en el archivo Léame y configure su Raspberry Pi de acuerdo con él. Solo tomará un momento hacerlo. La altitud se calcula a partir de la presión utilizando la siguiente ecuación:
h = 44330.77 {1 - (p / p0) ^ 0.1902632} + OFF_H (valor de registro)
donde p0 = presión al nivel del mar (101326 Pa) y h está en metros. El MPL3115A2 usa este valor ya que el registro de compensación se define como 2 Pascales por LSB. El código está claramente frente a usted y está en la forma más simple que pueda imaginar y no debería tener problemas.
También puede copiar el código Java de trabajo para este sensor desde aquí.
// Distribuido con licencia de libre albedrío.// Úselo de la forma que desee, lucrativa o gratuita, siempre que encaje en las licencias de sus obras asociadas. // MPL3115A2 // Este código está diseñado para funcionar con el mini módulo MPL3115A2_I2CS I2C disponible en ControlEverything.com. //
import com.pi4j.io.i2c. I2CBus;
import com.pi4j.io.i2c. I2CDevice; import com.pi4j.io.i2c. I2CFactory; import java.io. IOException;
clase pública MPL3115A2
{public static void main (String args ) throws Exception {// Crear bus I2C Bus I2CBus = I2CFactory.getInstance (I2CBus. BUS_1); // Obtener dispositivo I2C, MPL3115A2 La dirección I2C es 0x60 (96) I2CDevice device = Bus.getDevice (0x60); // Seleccionar registro de control // Modo activo, OSR = 128, modo altímetro device.write (0x26, (byte) 0xB9); // Seleccionar registro de configuración de datos // Evento de datos listos habilitado para altitud, presión, temperatura device.write (0x13, (byte) 0x07); // Seleccionar registro de control // Modo activo, OSR = 128, modo altímetro device.write (0x26, (byte) 0xB9); Thread.sleep (1000);
// Leer 6 bytes de datos de la dirección 0x00 (00)
// estado, tHeight msb1, tHeight msb, tHeight lsb, temp msb, temp lsb byte data = new byte [6]; device.read (0x00, datos, 0, 6);
// Convierte los datos a 20 bits
int tHeight = ((((datos [1] y 0xFF) * 65536) + ((datos [2] y 0xFF) * 256) + (datos [3] y 0xF0)) / 16); int temp = ((datos [4] * 256) + (datos [5] & 0xF0)) / 16; doble altitud = tHeight / 16.0; doble cTemp = (temp / 16.0); fTemp doble = cTemp * 1.8 + 32;
// Seleccionar registro de control
// Modo activo, OSR = 128, dispositivo en modo barómetro.write (0x26, (byte) 0x39); Thread.sleep (1000); // Leer 4 bytes de datos de la dirección 0x00 (00) // estado, pres msb1, pres msb, pres lsb device.read (0x00, data, 0, 4);
// Convierte los datos a 20 bits
int pres = (((datos [1] y 0xFF) * 65536) + ((datos [2] y 0xFF) * 256) + (datos [3] y 0xF0)) / 16; presión doble = (pres / 4.0) / 1000.0; // Enviar datos a la pantalla System.out.printf ("Presión:%.2f kPa% n", presión); System.out.printf ("Altitud:%.2f m% n", altitud); System.out.printf ("Temperatura en grados Celsius:%.2f C% n", cTemp); System.out.printf ("Temperatura en Fahrenheit:%.2f F% n", fTemp); }}
Paso 4: La practicidad del código (en funcionamiento)
Ahora, descargue (o git pull) el código y ábralo en la Raspberry Pi. Ejecute los comandos para compilar y cargar el código en el terminal y vea la salida en Monitor. Después de unos segundos, mostrará todos los parámetros. Después de asegurarse de que todo funciona sin problemas, puede llevar este proyecto a un proyecto más grande.
Paso 5: Aplicaciones y características
El uso común del sensor del altímetro de precisión MPL3115A2 es en aplicaciones como mapa (asistente de mapa, navegación), brújula magnética o GPS (navegación por estima, mejora de GPS para servicios de emergencia), altímetro de alta precisión, teléfonos inteligentes / tabletas, altímetro de electrónica personal y Satélites (Equipo de Estación Meteorológica / Predicción).
Por ejemplo Con este sensor y Rasp Pi, puede construir un altímetro visual digital, la pieza más importante del equipo de paracaidismo, que puede medir la altitud, la presión del aire y la temperatura. Puede agregar gasa de viento y otros sensores para que sea más interesante.
Paso 6: Conclusión
Dado que el programa es increíblemente personalizable, hay muchas formas interesantes en las que puede ampliar este proyecto y hacerlo aún mejor. Por ejemplo, un altímetro / interferómetro incluiría varios altímetros montados en mástiles que adquirirían mediciones simultáneamente, proporcionando así una cobertura de área amplia continua, de uno o varios altímetros. Tenemos un interesante video tutorial en YouTube que puede ayudarlo a comprender mejor este proyecto.
Recomendado:
Altímetro (medidor de altitud) basado en la presión atmosférica: 7 pasos (con imágenes)
Altímetro (medidor de altitud) basado en la presión atmosférica: [Editar]; Consulte la versión 2 en el paso 6 con entrada manual de altitud de línea base. Esta es la descripción de construcción de un altímetro (medidor de altitud) basado en un Arduino Nano y un sensor de presión atmosférica Bosch BMP180. El diseño es simple pero las mediciones
Altitud, presión y temperatura con Raspberry Pi con MPL3115A2: 6 pasos
Altitud, presión y temperatura usando Raspberry Pi con MPL3115A2: Suena interesante. Es muy posible en este momento en el que todos estamos entrando en la generación de IoT. Como fanático de la electrónica, hemos estado jugando con la Raspberry Pi y decidimos hacer proyectos interesantes usando este conocimiento. En este proyecto, vamos a
Determinación de la presión y la altitud con GY-68 BMP180 y Arduino: 6 pasos
Determinación de la presión y la altitud utilizando GY-68 BMP180 y Arduino: descripción general En muchos proyectos, como robots voladores, estaciones meteorológicas, mejorar el rendimiento de enrutamiento, deportes, etc., medir la presión y la altitud es muy importante. En este tutorial, aprenderá a usar el sensor BMP180, que es uno de los más
Mida la presión con su micro: bit: 5 pasos (con imágenes)
Mida la presión con su micro: bit: El siguiente instructivo describe un dispositivo económico y fácil de construir para realizar mediciones de presión y demostrar la ley de Boyle, usando el micro: bit en combinación con el sensor de presión / temperatura BMP280. Considerando que esta jeringa / presión s
Registrador de temperatura, humedad relativa y presión atmosférica con Raspberry Pi y TE Connectivity MS8607-02BA01: 22 pasos (con imágenes)
Registrador de temperatura, humedad relativa y presión atmosférica con Raspberry Pi y TE Connectivity MS8607-02BA01: Introducción: En este proyecto, le mostraré cómo crear la configuración paso a paso de un sistema de registro para temperatura, humedad y presión atmosférica. Este proyecto se basa en el chip sensor ambiental Raspberry Pi 3 Model B y TE Connectivity MS8607-02BA