1 / 15

- 보이스 로봇 (Voice Robot ) -

- 보이스 로봇 (Voice Robot ) -. 사운드 센서. 사운드 센서는 데시벨 레벨 , 즉 , 소리의 크기 또는 강도를 감지한다 . 주변의 소리를 인식하여 소리의 크기를 0~100% 로 값을 변환한다. 사운드 센서 모드. 사운드센서는 2 가지 모드로 작동 dB(decibel) 모드 : 소리의 상대적인 크기를 나타내는 단위 Bell 단위가 너무 커서 10 분의 1( deci ) 로 줄인 단위로 사용

arnold
Download Presentation

- 보이스 로봇 (Voice Robot ) -

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. - 보이스로봇(VoiceRobot) -

  2. 사운드 센서 • 사운드 센서는 데시벨 레벨, 즉, 소리의 크기 또는 강도를 감지한다. • 주변의 소리를 인식하여 소리의 크기를 0~100%로 값을 변환한다.

  3. 사운드센서 모드 • 사운드센서는 2가지 모드로 작동 • dB(decibel) 모드 : 소리의 상대적인 크기를 나타내는 단위 • Bell 단위가 너무 커서 10분의 1(deci)로 줄인 단위로 사용 • 저주파부터고주파까지 모든 소리를 감지하며 소리의 상대적인 크기를 나타내는 단위  인간이 듣기에 너무 높거나 낮은 소리 포함 • dBA(acoustic decibell) 모드 : 사람이감지할 수 있는 소리 크기에 맞춘 기준

  4. 사운드센서의 동작 (상태값)

  5. 사운드센서의 동작 (상태값) - View • 사운드센서 상태 값 확인 • NXT와 사운드센서 2번 포트로 연결 • NXT ‘view’ 메뉴 선택 • ‘sounddB’ 혹은 ‘sound dBA’ 선택 • 2번 포트 선택 • LCD 수치 확인 : 입김을 불거나 소리크기를 변형하면서 Sound 크기를 확인

  6. 사운드 센서의 응용 1 • 큰 소리에만 작동하는 로봇 • 사운드센서에 입력되는 소리가 크면(70이상) 전진하고, 작으면(70이하) 정지하는 로봇을 만든다. 터치센서를 누르면 로봇 행위는 종료한다. • (순서도)

  7. 사운드 센서의 응용 1 사운드센서에 입력되는 소리가 70이상인 동안 전진하고, 70보다 작아지면 정지

  8. 사운드 센서의 응용 2 • 입김으로 드리블 하는 로봇 • 소리 크기에 따라 전진, 우회전, 좌회전, 정지하는 로봇 • (순서도)

  9. 사운드 센서의 응용 2

  10. 사운드 센서의 응용 3 • 박수소리 회수에 따라 움직이는 로봇

  11. 사운드 센서의 응용 3 void Turn(int);

  12. 사운드 센서의 응용 3

  13. 도전과제 1 • 소리 크게 지르기 게임 • 5m 거리에서 각각 1초간 소리를 지르며 가장 큰 값을 화면에 출력하는 게임 • 터치센서를 누르면 시작,1초간 소리크기 측정 • 측정된 소리와 현재까지 가장 큰 소리의 크기를 화면에 출력 • 측정된 소리가 가장 크면 • “You Win” 과 soundFastUpwardTones출력 • 그렇지 않으면 • “You Lose”와 soundException출력 • 터치센서를 다시 누르면 다음 사람이 측정을 반복

  14. task main() { while(1) { while(SensorValue(touch) ==0); while(SensorValue(touch) ==1); StartTask(CurrentMaxSound); wait1Msec(1000); StopTask(CurrentMaxSound); if (allmax < curmax) { allmax=curmax; PlaySound(soundFastUpwardTones); nxtDisplayBigTextLine(5, "You Win"); } else { PlaySound(soundException); nxtDisplayBigTextLine(5, "You Lose"); } nxtDisplayTextLine(1, "Cur Max : %d", curmax); nxtDisplayTextLine(2, "Maxium : %d", allmax); } } #pragmaconfig(Sensor, S1, touch, sensorTouch) #pragmaconfig(Sensor, S2, sound, sensorSoundDBA) intcurmax=0; intallmax=0; task CurrentMaxSound() { intcsound=0; curmax=0; while(1) { csound=SensorValue(sound); if (csound>curmax) curmax=csound; } }

  15. 도전과제 2 • 소리 나는 쪽으로 고개 돌리기 • 사운드 센서 2개를 사람의 귀에 해당되도록 사람의 머리처럼 로봇을 제작하고 박수를 쳐서 소리가 나는 곳으로 고개를 돌리는 로봇을 만들자. • 사운드 센서가 50% 이상일 때 소리가 난 것으로 간주 • 왼쪽과 오른쪽 사운드 센서가 모두 100%일 때는 소리를 내며 머리를 한 바퀴 회전한다.

More Related