블록쌓기 프로그래밍

브로클리프롭 로봇카 프로그래밍

프로펠러 로봇카 - 2. 프로펠러 로봇카 전자회로 실습하기

Contents

브로클리프롭 로봇카 프로그래밍 실습 세부목차


1. 프로펠러 로봇카 준비하기

2. 프로펠러 로봇카 전자회로 실습하기

3. 프로펠러 로봇카 기초 주행실습

4. 프로펠러 로봇카 센서 주행실습 L1

5. 프로펠러 로봇카 센서 주행실습 L2

6. 프로펠러 로봇카 센서 주행실습 L3

7. 프로펠러 로봇카 문제해결 


본 페이지의 내용은 패럴렉스(Learn.Parallax.com)사의 공식 홈페이지에서 제공되는 자료를 참고하여 작성되었습니다.


브로클리프롭(BlocklyProp) 프로그래밍 방법으로 프로펠러 로봇카를 이용하여 실습할 수 있습니다. 로봇카와 브로클리프롭(BlocklyProp) 비주얼 프로그래밍으로 로봇공학, 그래픽 프로그래밍, 전자 공학을 익혀 보십시오!


아래 세부 내용들을 살펴볼 수 있습니다.

1) 3접점 전원 스위치

2) 브레드 보드

3) 보드에 내장된 LED 불빛 깜박이기

4) 부저음 소리내기


바로 로봇 주행에 뛰어들고 싶습니다. 이해합니다! 그러나 차량을 운전하는 것과 마찬가지로 운전을 시도하기 전에 조작방법에 익숙해지는 것이 좋습니다.


이 섹션에서는 다음을 수행합니다.


- Propeller Activity Board의 기능을 살펴보십시오.

- 전원 스위치와 브레드 보드를 자세히 살펴보십시오.

- 내장된 발광 다이오드를 깜박이십시오.

- 보드에 피에조 스피커를 추가하고 신호음을 냅니다.


마이컴 보드에 대해 알고 있나요?

Propeller Activity Board (오리지널 또는 WX 버전)를 둘러보고 기능을 익히거나 다시 익히십시오. 서보 포트에 케이블을 연결하고 배터리 팩을 전원 잭에 연결했습니다. 이미 프로그래밍을 해왔으므로 USB 포트를 사용하고 있습니다.


- 보드의 라벨을 확인하고 아래 기능에 대해 자세히 읽어보십시오.


프로펠러(Propeller) activity board WX

그림입니다. 원본 그림의 이름: mem00002a700003.png 원본 그림의 크기: 가로 562pixel, 세로 410pixel


프로펠러 Activity board (Original, # 32910)

그림입니다. 원본 그림의 이름: mem00002a700004.png 원본 그림의 크기: 가로 595pixel, 세로 515pixel 사진 찍은 날짜: 2013년 04월 12일 오후 7:41


다음은 특히 전원 스위치와 브레드 보드의 두 가지 기능에 대해 자세히 살펴보겠습니다. 이 기능은 Activity board 의 두 버전에서 모두 볼 수 있습니다.


1) 3접점 전원 스위치


전원 스위치에는 세 가지 위치가 있습니다.


위치 0 은 보드의 전원을 끕니다. 회로를 제작하거나 수정하기 전에 항상 스위치를 위치 0에 설정하십시오. 위치 0 에서도 USB 포트가 연결되어 있으면 표시등이 계속 깜박일 수 있습니다.


위치 1 은 전원을 프로펠러 시스템과 흰색 브레드 보드의 세 가장자리를 따라 검은 소켓에 연결합니다. 흰색 브레드 보드 위에 있는 P12-P17 레이블의 3 핀 서보 포트에는 전원이 연결되지 않습니다. 로봇의 바퀴를 돌릴 수 있는 탐색 프로그램을 로드하기 전에 위치 1에 스위치를 놓은 다음 프로그램을 EEPROM에 로드하십시오. 이렇게 하면 프로그램이 로드되는 즉시 로봇이 주행을 시작하지 않습니다.


위치 2 는 3 핀 서보 포트를 포함하여 보드의 모든 회로에 전원을 공급합니다. 내비게이션 프로그램을 EEPROM에 로드한 후, 로봇을 바닥에 놓고 리셋 버튼을 누른 상태에서 스위치를 위치 2에 놓습니다. 리셋 버튼을 놓으면 프로그램이 실행되고 로봇이 운전을 시작합니다 (잘하면) 안전한 장소에 놓았습니다. 서보 포트에 전원을 공급하려면 스위치를 위치 2에 놓습니다.


그림입니다. 원본 그림의 이름: mem00002a700005.png 원본 그림의 크기: 가로 249pixel, 세로 161pixel 사진 찍은 날짜: 2013년 08월 23일 오후 3:31


2) 브레드 보드


브레드 보드를 사용하면 일반적인 전자 부품으로 회로를 직접 만들 수 있습니다. 전기에 대해 배우고 자신만의 발명품을 실습해 볼 수 있는 좋은 방법입니다. 자신의 프로젝트를 설계하기 위해 실습 회로를 제작하는 것을 프로토타이핑이라고 하며 실제 엔지니어링 기술입니다.


프로펠러 Activity board의 브레드 보드는 세면에 검은 색 소켓으로 둘러싸여 있습니다. 이를 통해 브레드 보드의 회로를 전원, 접지 및 프로펠러 I / O 핀에 편리하게 연결할 수 있습니다. 디지털 - 아날로그 변환기 및 아날로그 - 디지털 변환기에 연결하기 위한 소켓도 있습니다.


그림입니다. 원본 그림의 이름: mem00002a700006.png 원본 그림의 크기: 가로 570pixel, 세로 526pixel 사진 찍은 날짜: 2013년 08월 23일 오후 8:17

 

이전에 브레드 보드에 회로를 만든 적이 없는 경우 브레드 보드에 대한 비디오 및 회로를 회로에 빌드하는 방법을 살펴보십시오. 역사는 꽤 재미있을 수 있습니다!



3) 보드에 내장된 LED 불빛 깜박이기


Activity board 에는 보드의 오른쪽 하단 모서리 근처에 2 개의 내장형 발광 다이오드 (LED)가 있습니다. 이미 프로펠러 I / O 핀 P26 및 P27에 전기적으로 연결되어 있습니다. 이 LED는 센서를 사용하는 응용 프로그램을 개발할 때 유용합니다. 아이디어는 센서가 활성화될 때 LED를 켜는 프로그램을 만드는 것입니다. 그런 다음 로봇 기술자는 센서가 실제로 어떤 것을 감지하고 있다는 시각적 신호를 얻을 수 있습니다.


그림입니다. 원본 그림의 이름: mem00002a700007.png 원본 그림의 크기: 가로 348pixel, 세로 251pixel 사진 찍은 날짜: 2013년 08월 23일 오후 7:10


I / O 핀

프로펠러 마이크로 컨트롤러는 P0에서 P31까지의 32 개 입력 / 출력 핀 또는 I / O 핀을 가지고 있습니다. 프로펠러는 이러한 라벨을 사용하는 프로그램을 통해 I / O 핀에 연결된 다른 회로와 상호작용할 수 있습니다. 프로펠러 I / O 핀은 다음 세 가지 작업을 수행할 수 있습니다.


* 아래 그림과 같이 3.3V 전원에 회로를 연결하십시오. 이것은 핀을 "output high"로 설정하는 것으로 알려져 있습니다.

* 아래 그림과 같이 회로를 0V, 즉 접지에 연결하십시오. 이것은 핀을 "output low"로 설정합니다.

* 회로를 모니터링하여 0V 또는 3.3V에 연결되어 있는지 확인하십시오. 이는 핀을 "input"으로 설정했다는 의미입니다.


우리는 프로펠러를 프로그래밍하여 I / O 핀의 "O"(출력) 기능을 실습하여 조명을 켜고 끕니다. 작은 LED와 저항기가 포함된 조명 회로는 이미 Propeller Activity Board (원래 또는 WX) 또는 Propeller Board of Education에 내장되어 있습니다.


내장형 LED

보드의 작은 LED 표시등을 찾습니다. Propeller Activity board (Propeller Board of Education)의 오른쪽 하단 모서리에 있는 P26 라벨 바로 위의 작은 부분입니다.


그림입니다. 원본 그림의 이름: mem00002a700008.jpg 원본 그림의 크기: 가로 612pixel, 세로 237pixel


코드 테스트

브로클리프롭(BlocklyProp)에서, 단일 블록으로 LED를 켜거나 끌 수 있습니다 : 핀 상태 카테고리에서 make PIN 블록.


그림입니다. 원본 그림의 이름: mem00002a700009.png 원본 그림의 크기: 가로 230pixel, 세로 170pixel 사진 찍은 날짜: 2017년 02월 28일 오후 1:46


- 브로클리프롭(BlocklyProp) 계정에 로그인하여 보드를 컴퓨터에 연결하고 브로클리프롭(BlocklyProp) 클라이언트가 실행 중인지 확인하십시오.

- 당신의 보드를 위한 새로운 프로젝트를 시작하고 위에 보이는 프로젝트를 작업 공간에 빌드하십시오.

- 프로젝트를 저장하고 Run Once 버튼을 클릭하십시오.

- P26 표시등이 0.5 초 동안 켜진 다음 0.5 초 동안 꺼졌다가 다시 켜지는지 확인하십시오.


어떻게 동작하는가?

첫 번째 확인 PIN 블록은 프로펠러 칩의 P26 I / O 핀을 출력 하이로 설정하여 핀을 3.3V 전원 공급 장치에 연결합니다. 이 핀은 3.3 V의 전기 압력을 LED 회로에 적용하여 전류가 흐르도록 하고 빛이 켜지도록 합니다. 그 후, pause (500) 는 프로그램이 500ms 동안 아무것도하지 못하게 하여, 0.5 초 동안 불이 켜지도록 합니다.


다음으로 로우 (26)이 P26을 출력 로우로 설정하면, 이 핀을 전원 전압에 대신 0V 접지에 연결합니다. 이렇게 하면 전기 압력이 제거되므로 전류가 회로를 통해 흐르지 않고 표시등이 꺼집니다. 또 다른 pause (500) 는 빛을 0.5 초 동안 끕니다.


당신은 알고 있었습니까?

아래 그림을 타이밍 다이어그램이라고 합니다. 수직축에 전압, 수평축에 시간이 표시된 그래프입니다. 타이밍 다이어그램은 종종 마이크로 컨트롤러와 회로 또는 다른 장치 간의 전기적 상호 작용을 설명하는데 사용됩니다. 이 타이밍 다이어그램은 위의 테스트 코드에서 I / O 핀 P26의 출력을 보여줍니다.


그림입니다. 원본 그림의 이름: mem00002a70000a.png 원본 그림의 크기: 가로 400pixel, 세로 185pixel 사진 찍은 날짜: 2017년 03월 01일 오후 5:29


시도해 보세요!

pause 블록의 값을 변경하여 표시등을 빠르게 또는 느리게 깜박이도록 할 수 있습니다. 두 개의 pause 블록에서 다른 값을 사용하여 오프 타임과 다른 시간을 만들 수도 있습니다.


- 아래의 예제 코드 및 타이밍 다이어그램에 표시된 것처럼 LED가 두 번 빨리 깜박이도록 프로그램을 수정하십시오. pause 값은 어떤 값인가요?


 그림입니다. 원본 그림의 이름: mem00002a70000b.png 원본 그림의 크기: 가로 230pixel, 세로 170pixel 사진 찍은 날짜: 2017년 03월 01일 오후 6:43그림입니다. 원본 그림의 이름: mem00002a70000c.png 원본 그림의 크기: 가로 400pixel, 세로 217pixel 사진 찍은 날짜: 2017년 03월 01일 오후 5:33


- LED가 꺼져있는 만큼 3 번 켜지도록 프로그램을 수정하십시오.


 그림입니다. 원본 그림의 이름: mem00002a70000d.png 원본 그림의 크기: 가로 230pixel, 세로 170pixel 사진 찍은 날짜: 2017년 02월 28일 오후 1:45그림입니다. 원본 그림의 이름: mem00002a70000e.png 원본 그림의 크기: 가로 400pixel, 세로 185pixel 사진 찍은 날짜: 2017년 03월 01일 오후 5:35


당신 차례 !

아래의 타이밍 다이어그램에 따라 P26 표시등을 P27 표시등과 함께 제어해보십시오.


- 프로그램에 블록을 추가하여 P27 표시등이 P26 표시등과 거의 동시에 켜지거나 꺼지도록 하십시오.

그림입니다. 원본 그림의 이름: mem00002a70000f.png 원본 그림의 크기: 가로 400pixel, 세로 350pixel 사진 찍은 날짜: 2017년 03월 01일 오후 5:38


- 프로그램을 수정하여 P26 표시등이 켜지면 P27 표시등이 꺼지고 그 반대의 경우도 마찬가지가 되도록 하십시오.


그림입니다. 원본 그림의 이름: mem00002a700010.png 원본 그림의 크기: 가로 400pixel, 세로 350pixel 사진 찍은 날짜: 2017년 03월 01일 오후 5:42


4) 부저음 소리내기


로봇카에서 제작할 첫 번째 브레드 보드 회로는 간단한 피에조 스피커입니다. 일상생활에서 사용되는 많은 전자기기는 전자레인지, 자동차 자물쇠, 연기 감지기, 리프트로 주행하는 지게차 등 더 많은 예제를 생각해 볼 수 있습니다. 마찬가지로 로봇카에서 소리를 통해 의사 소통하는 것이 유용합니다.


전자회로

피에조 스피커 안에는 전압이 가해질 때 변형되는 압전 소자라고 불리는 얇은 재료 조각이 있으며, 나중에 원래 모양으로 돌아갑니다. 전압을 빠르게 켜고 끄면 진동이 울립니다. 스위칭 주파수가 빠를수록 톤이 높아집니다. 프로펠러 I / O 핀은 특정 속도로 빠르게 전환되는 이 전압을 제공할 수 있습니다.

그림입니다. 원본 그림의 이름: mem00002a700011.png 원본 그림의 크기: 가로 200pixel, 세로 154pixel 사진 찍은 날짜: 2013년 08월 23일 오후 8:41


구성 부품들

(1) 압전 스피커 

(2) 점퍼 선


- 아래 그림과 같이 로봇카 브레드 보드의 정확한 위치에 피에조 스피커 회로를 설치하십시오. 그리고 나중에 다양한 센서 회로를 추가할 여지를 남겨 둡니다.

- 케이스의 (+) 기호 아래에 있는 피에조 스피커 핀이 P4 소켓에 연결된 점퍼 선과 동일한 브레드 보드 행에 있는지 확인하십시오.

- 다른 스피커 핀이 GND에 연결된 점퍼 선과 함께 다른 행에 있는지 확인하십시오.

그림입니다. 원본 그림의 이름: mem00002a700012.png 원본 그림의 크기: 가로 249pixel, 세로 350pixel 사진 찍은 날짜: 2013년 09월 02일 오후 2:01그림입니다. 원본 그림의 이름: mem00002a700013.png 원본 그림의 크기: 가로 162pixel, 세로 324pixel 사진 찍은 날짜: 2017년 03월 30일 오후 4:40


코드 테스트

오디오 > 주파수 출력 블록은 피에죠스피커(piezospeaker) 경고음을 만들 수 있습니다.


- 브로클리프롭(BlocklyProp) 계정에 로그인하고 보드에 대한 새 프로젝트를 만듭니다.

- 오디오 메뉴에서 주파수 출력 블록을 선택하십시오.

- 블록의 필드를 아래와 같이 설정하십시오.


그림입니다. 원본 그림의 이름: mem00002a700014.png 원본 그림의 크기: 가로 488pixel, 세로 41pixel 사진 찍은 날짜: 2017년 03월 01일 오후 11:09


- Run Once (RAM에로드)를 클릭하고 스피커가 1 초간의 경고음을 울렸는지 확인합니다.


어떻게 동작합니까?


주파수 출력 블록을 설정하는 세 개의 필드가 있습니다. PIN 은 우리 회로의 피에조 스피커에 연결된 프로펠러 I / O 핀을 지정합니다. duration 필드는 이 예제에서 경고음이 지속되는 시간, 즉 1000ms (1 초)를 설정합니다. 주파수 (Hz) 필드는 경고음의 피치, 본 예에서는 3000 Hz로 설정한다. 이 주파수를 생성하기 위해, 프로펠러는 출력 P4를 설정하고 초당 3000 회 진동하는 스피커 내부 압전 소자가 0 V ~ 3.3 V 사이를 빠르게 전환할 수 있도록 설정합니다. 결과는 높은 음조입니다.


알고 계셨습니까?

공급 전압이 부족할 때 - 로봇카의 배터리가 거의 소모되고 있을 때, 당신에게 전압저하 지시기가 신호를 보냅니다. 배터리 전압이 너무 낮아지면 프로펠러 마이크로 컨트롤러가 프로그램을 재설정하고 다시 시작합니다. 이런 일이 일어나고 있는지 모를 경우 프로그래밍이나 회로 오류처럼 보일 수 있습니다! 따라서 로봇을 움직이게 하는 로봇카 예제 프로그램의 시작 부분에서 이 블록을 볼 수 있습니다. 배터리 부족 경고음은 배터리 부족 전력을 원인으로 판정하여 로봇카 프로젝트 문제를 해결하는 데 도움이 됩니다.


브라운 아웃(brownout) 이란 무엇입니까? - blackout 단어에 대해 잘 알고 있을 수 있습니다. blackout 은 전원이 집에서 완전하게 죽을 때입니다. 브라운아웃(brownout) 은 모든 작업을 하는데 있어서, 여전히 충분하지 않은 전력을 의미합니다.


시도해 보세요!

Frequency out 블록의 지속 시간 (밀리 초) 및 주파수 (Hz) 필드는 user variable 블록으로 받을 수 있고, 심지어 operators>Numbers 카테고리 블록뿐만 아니라 기본 number value 블록을 받을 수 있습니다. 로봇카가 감지하고 있는 것을 알 수 있도록 일부 센서의 입력 값과 상관 관계가 있는 소리음을 만들면 종종 재미있거나 유용합니다. 지금은 repeat item 블록 에서 루프를 계산하는 변수를 사용하여 아이디어를 동작시켜 보겠습니다.


- 아래의 것과 일치하도록 프로젝트를 수정하고 저장하십시오.

- Run Once (RAM에 로드)를 클릭하면 점점 더 높은 음조를 듣게 됩니다.


그림입니다. 원본 그림의 이름: mem00002a700015.png 원본 그림의 크기: 가로 663pixel, 세로 103pixel 사진 찍은 날짜: 2017년 03월 30일 오후 5:45


당신 차례 !

- 루프를 통과할 때마다 각 톤의 지속 시간이 변경되도록 프로젝트를 수정하십시오. 주파수가 높아질수록 짧아집니다.



이전 페이지로     다음 페이지로