Nota
¡Hola, bienvenido a la Comunidad de Entusiastas de Raspberry Pi, Arduino y ESP32 de SunFounder en Facebook! Profundiza en Raspberry Pi, Arduino y ESP32 con otros entusiastas.
¿Por qué unirte?
Soporte experto: Resuelve problemas postventa y desafíos técnicos con la ayuda de nuestra comunidad y equipo.
Aprende y comparte: Intercambia consejos y tutoriales para mejorar tus habilidades.
Preestrenos exclusivos: Accede anticipadamente a anuncios de nuevos productos y adelantos.
Descuentos especiales: Disfruta de descuentos exclusivos en nuestros productos más recientes.
Promociones festivas y sorteos: Participa en sorteos y promociones de temporada.
👉 ¿Listo para explorar y crear con nosotros? Haz clic en [aquí] y únete hoy mismo!
Lección 14: Módulo de Sensor de Frecuencia Cardíaca y Oximetría de Pulso (MAX30102)
En este tutorial, aprenderás a operar el sensor MAX30102 utilizando un Raspberry Pi, simplificado mediante el uso del controlador de Python MAX30102 de código abierto disponible en GitHub. Este enfoque facilita la interfaz con el módulo, permitiéndote centrarte en comprender los conceptos básicos de la recolección y análisis de datos de sensores. Es ideal para principiantes, ya que proporciona experiencia práctica con la implementación de sensores y programación en Python en la plataforma Raspberry Pi.
Componentes Requeridos
En este proyecto, necesitamos los siguientes componentes.
Es definitivamente conveniente comprar un kit completo, aquí está el enlace:
Nombre |
ARTÍCULOS EN ESTE KIT |
ENLACE |
|---|---|---|
Kit Universal Maker Sensor |
94 |
También puedes comprarlos por separado desde los enlaces a continuación.
Introducción al Componente |
Enlace de Compra |
|---|---|
Raspberry Pi 5 |
|
Módulo de Oxímetro de Pulso y Sensor de Frecuencia Cardíaca (MAX30102) |
|
Cableado
Código
from heartrate_monitor import HeartRateMonitor
import time
# Imprimir un mensaje indicando que el sensor está iniciando
print('sensor starting...')
# Establecer la duración durante la cual se leerán los datos del sensor (en segundos)
duration = 30
# Inicializar el objeto HeartRateMonitor
# Establecer print_raw en False para evitar imprimir datos crudos
# Establecer print_result en True para imprimir los resultados calculados
hrm = HeartRateMonitor(print_raw=False, print_result=True)
# Iniciar el sensor de frecuencia cardíaca
hrm.start_sensor()
try:
time.sleep(duration)
except KeyboardInterrupt:
print('keyboard interrupt detected, exiting...')
# Detener el sensor después de que haya transcurrido la duración
hrm.stop_sensor()
# Imprimir un mensaje indicando que el sensor se ha detenido
print('sensor stopped!')
Análisis del Código
Importación de Módulos:
El módulo
heartrate_monitorse utiliza para interactuar con el sensor. Para más información sobre la bibliotecaheartrate_monitor, por favor visita doug-burrell/max30102.El módulo
timeayuda a gestionar la duración de la recolección de datos del sensor.
from heartrate_monitor import HeartRateMonitor import time
Inicialización del Monitor de Frecuencia Cardíaca:
Se crea un objeto
HeartRateMonitorcon opciones específicas para la impresión.print_rawcontrola si se imprimen los datos crudos del sensor.print_resultcontrola la impresión de los resultados procesados (frecuencia cardíaca y SpO2).
hrm = HeartRateMonitor(print_raw=False, print_result=True)
Iniciar el Sensor:
El método
start_sensoractiva el sensor de frecuencia cardíaca.hrm.start_sensor()
Ejecutar el Sensor durante un Tiempo Establecido:
El programa duerme durante la duración especificada, durante la cual el sensor recopila datos.
time.sleep(duration)detiene el programa durante el número de segundos especificado.
try: time.sleep(duration) except KeyboardInterrupt: print('keyboard interrupt detected, exiting...')
Detener el Sensor:
Después de la duración, se llama al método
stop_sensorpara detener la recolección de datos.hrm.stop_sensor()
Finalización del Programa:
Imprime un mensaje cuando el sensor se detiene.
print('sensor stopped!')