- 쓰레기통을 편리하게 사용하기 위해서는 어떤 기능이 추가되면 좋을까요?
- 사람이 근처에 다가오면 자동으로 뚜껑이 열리면 좋겠습니다.
- 사람이 가까이 오는지 감지할 수 있도록 근접센서를 사용해야 합니다.
- 뚜껑이 열고 닫히도록 모터를 달아야 합니다.
- 적외선 센서를 사용할 때 주의해야 할 점은 무엇이 있을까요?
- 센서의 앞 부분을 가리지 않도록 공간이 확보되어 있어야 합니다.
- SAM Labs : 근접센서 1개, 서보모터 1개
- 준비물 : 카드보드지, 글루건, 자, 칼
1. 카드보드지에 가로 7cm, 세로 5cm, 높이 10cm의 직육면체 전개도를 그린 후 칼로 잘라줍니다.
2. 서보모터를 장착할 틈을 만들기 위해 구멍을 뚫어줍니다. 이 구멍에 서보모터의 날개가 들어갈 수 있도록 해주세요.
(※ 구멍을 너무 아래에 뚫으면 날개가 짧아 뚜껑을 제대로 열지 못할 수도 있습니다)
3. 근접센서를 장착시킬 부분을 카드보드지로 만들어줍니다.
1) 가로 4cm, 세로 4cm, 높이 1.5cm 전개도를 그린 후 귀퉁이 부분을 살짝 잘라줍니다.
2) 센서를 장착하기 위해 가운데 부분을 잘라내어 줍니다.
4. 전개도의 가장 오른쪽 면에 3에서 만든 부분을 끼워 넣을 수 있도록 칼집을 충분히 내어줍니다. (완전히 잘라버리지 않도록 조심하세요)
5.전개도를 따라 접고 3번에서 만든 부분을 부착하여 쓰레기통의 외형을 완성해줍니다.
6. 뒷부분에 서보모터의 블록을 장착할 수 있도록 공간을 만들어줍니다.
7. 근접센서가 쓰레기통 앞을 바라볼 수 있도록 넣어주어 쓰레기통을 완성합니다.
1. Google workbench에서 근접센서와 서보모터를 페어링해줍니다.(workbench 설치 및 연결방법은 '드론택배장 만들기'편을 참조해주세요)
2. [General]꾸러미에서 [program start]블록을, [Loops]꾸러미에서 {repeat forever do} 블록을 연결시켜줍니다.
프로그램이 실행되었을 때 이후의 과정을 끊임없이 반복하게 시켜주기 위함입니다.
3.쓰레기통을 특정한 조건에서 열리도록 코딩하기 위해서 조건문이 필요합니다.
[Logic]꾸러미에서 {if ~ do ~else}블록을 연결시켜주세요.
4. 근접센서 값은 앞에 사물이 가까워질 수록 수치가 커집니다. 근접센서값이 일정 수치보다 커질 경우 서보모터의 각도를 조정하여 뚜껑이 열리도록 코딩해줍니다.
1) 근접센서값이 85보다 커질 때 작동할 수 있도록 {if} 부분에 {get proximity Sensor value} > 85 로 해주세요.
2) 조건이 만족하면 서보보터가 60도가 돌아간 후 2초 간 정지할 수 있도록 {do} 부분에 {set Servo Motor motor position to 60} / {wait for 2 seconds} 로 코딩해주세요.
3) 조건이 만족하지 않는 경우에는 서보모터가 원래의 위치로 돌아가도록 {else} 부분에 {set Servo Motor motor position to 0}으로 코딩해 줍니다.