한글보드 : 아두이노 아날로그 사운드센서 / 소리감지 (LM386 Analog Sound Sensor)

라임 2017-05-14 (일) 22:06 6년전 7295  

글보드 : LM386 아날로그 사운드센서 / 소리감지 (Introduction)

LM386 증폭앰프가 내장되어있는 고감도의 사운드센서입니다. 노래나 박수 등의 소리를 감지할 수 있으며, 소리

크기에 따라 값이 다른 아날로그 전기신호를 출력합니다. 센서 보드의 가변부를 통해 출력되는 값을 조절할 수

있습니다.


554d3d8d1bbb20bbcb645539fd3d473a_1494767

사양 (Specification)

  • LM386 기반 사운드 센서

  • 아날로그 인터페이스

  • 작동 전압: DC 5V

  • 크기: 26 x 21 mm

  • 무게: 5g




튜토리얼 (Tutorial)

554d3d8d1bbb20bbcb645539fd3d473a_1494767
 

 

 

 

샘플 코드 (Sample Code)


void setup() {

  Serial.begin(9600);                                       // 시리얼 통신을 시작, 통신 속도는 9600

}


void loop() {

  int a = analogRead(A0);                               // 정수형 변수 a를 선언하고 A0핀에 입력되는 신호를 대입


  if (a > 150) {                                                // 만약 a가 150보다 크다면

    Serial.print(a);                                           // 시리얼 모니터에 a의 값을 출력

    delay(100);                                               // 0.1초 대기

  }

//이 밑 부분은 ++를 표시해주는 코드입니다.

  if (150 < a && a < 200 ) {

    Serial.println("  ++");

  }

  if (201 < a && a < 250 ) {

    Serial.println("  +++++");

  }

  if (251 < a && a < 300 ) {

    Serial.println("  ++++++++");

  }

  if (351 < a && a < 400 ) {

    Serial.println("  +++++++++++");

  }

  if (401 < a && a < 450 ) {

    Serial.println("  ++++++++++++++");

  }

  if (451 < a && a < 500 ) {

    Serial.println("  +++++++++++++++++");

  }

  if (501 < a && a < 550 ) {

    Serial.println("  ++++++++++++++++++++");

  }

  if (551 < a && a < 600 ) {

    Serial.println("  +++++++++++++++++++++++");

  }

  if (601 < a && a < 650 ) {

    Serial.println("  +++++++++++++++++++++++++++");

  }

  if (651 < a && a < 700 ) {

    Serial.println("  ++++++++++++++++++++++++++++++");

  }

  if (701 < a && a < 750 ) {

    Serial.println("  +++++++++++++++++++++++++++++++++");

  }

  if (751 < a && a < 800 ) {

    Serial.println("  ++++++++++++++++++++++++++++++++++++");

  }

  if (801 < a && a < 900 ) {

    Serial.println("  +++++++++++++++++++++++++++++++++++++++");

  }

  if (901 < a && a < 1023 ) {

    Serial.println("  ++++++++++++++++++++++++++++++++++++++++++");

  }

}


 

 

결과물 (Output)

아두이노 스케치의 시리얼 모니터 확인시 센서의 감지 상태을 확인할 수 있습니다.

554d3d8d1bbb20bbcb645539fd3d473a_1494767



 

판매처 - 메카솔루션 (http://mechasolution.com)  /   디스트리뷰터 문의 -

메카리워즈 Image Map

카키노 2018-10-15 (월) 11:10 5년전
if를 안쓰고 기본 아날로그 값 출력 시 serial모니터상 출력되는 값사이 0이 포함되는데 이 것은 원래 이런걸까요?? 이런 현상때문에 if문을 쓰는건가요??
 또 기본적으로 출력되는 값의 숫자는 무슨 단위인지 알고싶습니다.
주소

모바일 버전으로 보기