센서 일문 답변: 호흡 감지

6058 단어 Arduino

경위


어떤 비상근 수업에서 학생들로부터 다음 질문이 있습니다.
"호흡을 감지할 수 있는 센서가 없나?"
구체적인 용도로
"호흡 시각화, 예를 들어 : 호흡 빈도, 호흡시 기류의 크기에 따라 조명의 밝기, 화면 이미지를 변경하고 싶습니다."
그래서 호흡 센서를 찾아 보았습니다.

MPRLS Ported 기압 센서 모듈



스위치 과학에서 발견

다른 기압 센서와 달리 보드의 중앙에 탑재된 금속 포트에 튜브를 설치하여 숨을 불어 넣는 등 그 밀폐 공간 내의 기압을 측정하는 모듈입니다. sip & puff라고 불리는 호흡 조작 인터페이스나 진공 챔버나 다른 가압 용기 내의 압력 측정에 사용하기에 최적인 센서입니다.

그리고 기압 센서 중에서도 호흡을 검지하는 용도에 적합하다는 것.

하드웨어 준비


스위치 사이언스 HP에 있는 "가이드"를 참조하여 핀 헤더, 소켓 및 점프 와이어를 납땜

Arduino Test 섹션의 아래를 참조하여 센서와 Arduino를 연결
  • Connect Vin to the power supply, 3-5V is fine. Use the same voltage that the microcontroller logic is based off of. For most Arduinos, that is 5V
  • Connect GND to common power/data ground
  • Connect the SCL pin to the I2C clock SCL pin on your Arduino. On an UNO & '328 based Arduino, this is also known as A5, on a Mega it is also known as digital 21 and on a Leonardo/Micro, 디지털 3
  • Connect the SDA pin to the I2C data SDA pin on your Arduino. On an UNO & '328 based Arduino, this is also known as A4, on a Mega it is also known as digital 20 and on a Leonardo/Micro, 디지털 2

  • The MPRLS has a default I2C address of 0x18 and cannot be changed!

    위에서 배우고 아래와 같이 배선
    센서측의 VIN(아래 그림 적색)→Seeeduino(Arduino)의 5V
    센서측의 GND(아래 그림 검정색) → Seeeduino(Arduino)의 GND
    센서측 SCL(아래 그림 황색) → Seeeduino(Arduino)의 A5
    센서측의 GND(아래 그림 청색) → Seeeduino(Arduino)의 A4
    센서의 포트에 붙이는 튜브는 수축 튜브로 대용했다

    소프트웨어 준비


    Install Arduino Libraries를 참조하여 라이브러리 설치

    Basic Example을 시도했습니다.
    hPa의 단위계 쪽이 사용하기 쉽기 때문에, 조금 개변해 시리얼 출력하도록 했다
    ArduinoIDE의 "시리얼 플로터"를 시작하여 수축 튜브에 숨을 불어 넣으면 ...
    →실행 결과 참조
    #include <Wire.h>
    #include "Adafruit_MPRLS.h"
    
    // You dont *need* a reset and EOC pin for most uses, so we set to -1 and don't connect
    #define RESET_PIN  -1  // set to any GPIO pin # to hard-reset on begin()
    #define EOC_PIN    -1  // set to any GPIO pin to read end-of-conversion by pin
    Adafruit_MPRLS mpr = Adafruit_MPRLS(RESET_PIN, EOC_PIN);
    
    void setup() {
      Serial.begin(115200);
      Serial.println("MPRLS Simple Test");
      if (! mpr.begin()) {
        Serial.println("Failed to communicate with MPRLS sensor, check wiring?");
        while (1) {
          delay(10);
        }
      }
      Serial.println("Found MPRLS sensor");
    }
    
    
    void loop() {
      float pressure_hPa = mpr.readPressure();
      Serial.print("Pressure (hPa): "); Serial.println(pressure_hPa);
     // Serial.print("Pressure (PSI): "); Serial.println(pressure_hPa / 68.947572932);
      delay(50);
    }
    

    실행 결과


    Youtube 영상 끼워넣을 수 없기 때문에 링크는 여기
    ※마이크의 상태가 좋지 않기 때문에 후일 재수록 예정

    숨 조작 인터페이스 "sip and puff"


    상기 호흡 조작 인터페이스에 대해 조사한 결과, 다음 PDF를 발견
    미국 화학회 자료 “Teaching Chemistry to Students with Disabilities: A Manual for High Schools, Colleges, and Graduate Programs Edition 4.1”, 번역 자료
    htps //w w. r 또는 st. 우우. 아 c. jp / 콘텐트 t / 000009036. pdf
    sip & puff 인터페이스를 살펴보면
    공압을 사용하여 장치에 신호를 전송하는 데 사용되는 보조 기술. 주로 손을 사용하지 않는 사람이 이용(- wikipedia) 」라고 있다.
    시선에 의한 문자 입력과 조합하는 것으로, 숨을 토해 입력 문자를 확정, 숨을 피우는 것으로 한 문자 삭제, 라고 하는 사용법이 상정된다.
    혹은, 시선 입력으로 자유로운 선을 그리면서 그림을 그릴 때, 펜의 굵기(손으로 말하는 곳의 힘의 넣어 상태)를 숨으로 실시하는 등, 다양한 용도를 검토할 수 있다.

    좋은 웹페이지 즐겨찾기