본문 바로가기
큐브셋 초소형 인공위성

CubeSat - Sound Detector (SEN-12642)

by 로니킴 2021. 9. 3.


본 연구의 목표는 큐브셋을 통해 우주 시스템을 이해하고 창의 임무 설계, 요구 조건 분석, 그리고 시스템 기본 설계 및 제작을 통해 학교에서 배워온 지식을 실제 응용하여 공학과 과학의 관계와 차이를 배우고 관련 전공에 대한 흥미를 유발하기 위함에 있다.  다양한 환경센서를 성층권에서 측정하는데 목적이 있다. 

 

 

 

 


CubeSat - Sound Detector (SEN-12642)

 

https://first.global/cubesat/

 

 

 

 




SEN-12642 센서란?

SparkFun Sound Detector는 작은 마이크를 사용하여 소리를 감지하고 3개의 출력을 제공한다. 

 

 


 

 

 

SEN-12642 아두이노 센서 특징

 

SparkFun Sound Detector는 작고 사용하기 쉬운 세 가지 출력의 오디오 감지 보드입니다. Sound Detector는 오디오 출력을 제공할 뿐만 아니라 소리의 존재에 대한 이진 표시와 진폭의 아날로그 표현도 제공한다. 3개의 출력이 동시에 독립적으로 사용 가능하므로 한번에 원하는 만큼 사용할 수 있다. 

 

● 오디오: 원시 오디오 출력을 감지한다. 
● Envelope: 소리의 진폭을 감지하는 아날로그 출력
● Gate: 소리가 있는지 없는지를 감지하는 바이너리 출력

 

Envelope 출력을 사용하여 소리가 조용한지, 보통인지 또는 큰지 결정하지만 3개의 출력 모두 나중에 사용할 수 있도록 배선된다. 엔벨로프 출력을 사용하면 단순히 아날로그 전압을 측정하여 사운드의 진폭을 쉽게 읽을 수 있다. 

 

이진(게이트) 출력 핀의 임계값도 변경하기 위해 스루홀 저항으로 이득을 조정할 수 있다. 

3개의 출력 신호 각각은 보드 가장자리의 0.1인치 핀아웃에 있다. 동시에 활성화됨자. 특정 애플리케이션에서 하나를 사용하지 않는 경우 해당 핀을 연결 해제된 상태로 두면 된다. 

 

 

 

 

 




SEN-12642 센서 구입하기

[SEN-12642 센서]는 알리익스프레스, 네이버 쇼핑몰, 아마존 등에서 센서를 구입할 수 있다

 

 

 

 

 


 

SEN-12642 센서 하드웨어 연결

다음과 같이 SEN-12642 아두이노 센서를 연결할 수 있다. 

 

 

 

 

https://docs.google.com/document/d/1eAw2IYenie7WQMwoDr9OGAb8qNWS2ij0oXYFiu42hPY/edit

 

다음과 같이 연결 할 수 있다. 

 

 

 


 



SEN-12642 센서 소프트웨어 코딩

하드웨어 연결이 완료되면, 아두이노 IDE를 이용해 아두이노 센서 소스코드를 코딩할 수 있다. 

 

https://github.com/sparkfun/Sound_Detector

https://github.com/sparkfun/Sound_Detector

 

 

센서 코드는 다음과 같다. 

/******************************************************************************
   sound_detector_demo.ino
   Sound detector sample sketch
   Byron Jacquot @ SparkFun Electronics
   February 19, 2014
   https://github.com/sparkfun/Sound_Detector

   Distributed as-is; no warranty is given.
 ******************************************************************************/

// Define hardware connections
#define PIN_GATE_IN 6
#define IRQ_GATE_IN  0
#define PIN_LED_OUT 6
#define PIN_ANALOG_IN A6

// soundISR()
// This function is installed as an interrupt service routine for the pin
// change interrupt.  When digital input 2 changes state, this routine
// is called.
// It queries the state of that pin, and sets the onboard LED to reflect that
// pin's state.
void soundISR()
{
  int pin_val;

  pin_val = digitalRead(PIN_GATE_IN);
  digitalWrite(PIN_LED_OUT, pin_val);
}

void setup()
{
  Serial.begin(9600);
  //  Configure LED pin as output
  pinMode(PIN_LED_OUT, OUTPUT);
  // configure input to interrupt
  pinMode(PIN_GATE_IN, INPUT);
  attachInterrupt(IRQ_GATE_IN, soundISR, CHANGE);
  // Display status
  Serial.println("Initialized");
}

void loop()
{
  int value;
  // Check the envelope input
  value = analogRead(PIN_ANALOG_IN);
  // Convert envelope value into a message
  Serial.print("Status: ");
  if (value <= 10)
  {
    Serial.println("Quiet.");
  }
  else if ( (value > 10) && ( value <= 30) )
  {
    Serial.println("Moderate.");
  }
  else if (value > 30)
  {
    Serial.println("Loud.");
  }

  // pause for 1 second
  delay(1000);
}

 

 

 


 

SEN-12642 센서 동작확인

하드웨어 연결, 소프트웨어 코딩이 완료되면 다음과 같이 동작 화면을 확인할 수 있다. 

 

------------------------------------------------------ 
개발환경 : WINDOWS 10 
아두이노 IDE : 1.8.13 
------------------------------------------------------ 

 

01. 아두이노 IDE를 연다.
02. 기존 텍스트를 삭제하여 빈 IDE를 만든다.
03. 이 코드를 복사하여 IDE에 붙여넣는다.  

04. MKR1000을 컴퓨터에 연결한다..

 

 


05. 프로그램 업로드
컴파일이 이상없이 완료되면 스케치>업로드(CTRL+U) 를 선택해서 컴파일 파일을 업로드 한다. 

 

 

 


06. 직렬 모니터 열기


07. 직렬 모니터는 다음을 읽어야 한다.


08. 게인을 낮추려면(검출기를 덜 민감하게 만들기) 저항을 보드의 R17 지점에 납땜한다. (4.7K 옴 저항 사용)

 

https://docs.google.com/document/d/1eAw2IYenie7WQMwoDr9OGAb8qNWS2ij0oXYFiu42hPY/edit

 

9. 게인을 낮추면 상태가 더 조용하고 적당한 소리로 표시된다.

 

 


 



마무리

아두이노와 SEN-12642 센서를 연결하고, 간단한 코딩으로 센서를 쉽게 실습할 수 있다. 

 

 

 

 

 

 


 

모두의 아두이노 환경 센서 책

[모두의 아두이노 환경 센서] 책은 예스24, 인터넷 교보문고, 알라딘, 인터파크도서, 영풍문고, 반디앤루니스 , 도서11번가 등에서 구입할 수 있다. 이 책에서는 PMS7003, GP2Y1010AU0F, PPD42NS, SDS011 미세먼지 센서, DHT22 온습도 센서, MH-Z19B 이산화탄소 센서, ZE08-CH2O 포름알데히드 센서, CCS811 총휘발성유기화합물 TVOC, GDK101 방사선(감마선) 센서, MQ-131 오존(O3) 센서, MQ-7 일산화탄소, MICS-4514 이산화질소 센서, MICS-6814 암모니아 센서, DGS-SO2 아황산가스(SO2) 센서, BME280 기압 센서, GUVA-S12SD 자외선(UV) 센서, MD0550 기류 센서, QS-FS01 풍속 센서(Wind speed) 를 사용한다.  

 

모두의 아두이노 환경 센서

아두이노와 센서로 내 건강을 지킬 수 있다!다양한 환경 센서를 실생활 프로젝트에 응용해보자!시중에 판매되고 있는 간이측정기도 센서로 값을 측정합니다. 똑같은 센서를 아두이노에 연결하

book.naver.com

 

 

 

 



댓글