블록쌓기 프로그래밍

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

브로클리 로봇S3 - 5. 외부장치 확장

Contents

브로클리 로봇S3 실습 세부목차


1. 브로클리 로봇S3 시작하기

2. 브로클리 로봇S3 - 불빛과 소리

3. 브로클리 로봇S3 - 간단한 동작 모터블록으로

4. 브로클리 로봇S3 - 센서 주행하기

5. 브로클리 로봇S3 - 외부장치 확장


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


브로클리프롭(BlocklyProp) 프로그래밍 방법으로 Parallax사의 스크리블러3(Scribbler 3 : S3) 로봇을 교육활동에 사용할 수 있습니다. 로봇S3 에는 여러 가지 종류의 센서가 이미 내장되어 있어서, 초등학생들도 전자회로 구성의 어려움없이 로봇제어를 고급 수준까지 프로그래밍할 수 있는 특징이 있습니다.


로봇S3 해커포트(Hacker Port)는 PING)))과 같은 추가 센서 및 장치로 로봇을 확장할 수 있는 무한한 가능성을 제공합니다. (초음파 거리 센서, 시차 표준 서보 등) 본 학습 내용은 노출된 해커 포트를 사용하여 주변 센서를 연결하고 브로클리프롭(BlocklyProp) 프로그램에 통합하는 방법을 알려줍니다. 


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

1) 해커 포트(Hacker Port)란 무엇입니까?

2) 표준서보 제어

3) 표준 서보 펜 리프터

4) PING)))으로 거리측정


a998b44605a28b8262e4d39e893f84cf_1511096777_3976.png
 

아래 학습을 따라가려면 브로클리프롭(BlocklyProp) 웹 사이트에 열려있는 창이나 탭이 필요합니다. 그리고 이전 학습내용들을 모두 마쳐야 합니다.


1) 해커 포트(Hacker Port)란 무엇입니까?


많은 전자 장치에 대한 표준 경고 중 하나는 포장을 열면 제조업체의 보증이 무효화된다는 것입니다. 이로 인해 많은 사용자가 해킹하거나 장치를 독창적으로 수정하지 못하게 되었지만, 사람들이 대담하게 보증을 피하도록 하기도 했습니다.


다행히도 로봇S3 해킹은 권장되지 않는 것이 아니라 오히려 권장됩니다. 해킹을 지원하고 장려하기 위해 로봇S3에는 노출되고 분류된 해커 포트가 포함됩니다. 해킹하시오! Parallax 켄 그레이시 (Ken Gracey) 회장은 "당신이 해킹할 수 없다면 소유하지 않을 것입니다!"라고 말했습니다.


이 내용은 사용자가 시작하기 위한 것입니다. 먼저 해커 포트를 찾은 다음 사용 가능한 핀을 살펴봅시다.


알고 계셨습니까?

해커라는 용어는 1960 년대에 처음 사용되기 시작했습니다. 프로그래머 또는 컴퓨터 코드를 해킹하거나 수정한 사람을 묘사하는데 사용되었습니다 (종종 컴퓨터 또는 해당 사용자에게 해를 끼칠 수 있음). 오늘날 이 용어는 컴퓨터, 네트워킹, 프로그래밍 또는 하드웨어에 대한 고급 지식을 보유하고 있지만 취미 또는 코드나 하드웨어를 향상시키는 방법으로 해킹하는 사람을 포함하여 더 광범위하게 사용됩니다. 해커 문화는 여러 가지 물건을 제작, 수정 또는 재사용하는 Makers라고 하는 더 큰 공동체 사이에서 발전했습니다. 우리의 경우 - 로봇!


정확히 해커 포트란 무엇입니까?

로봇 학자들은 해킹하는 것을 좋아합니다. 우리는 이 연습을 권장하므로 S3 해커 포트가 완전히 노출되고 로봇 상단에 위치하도록 해야합니다. 로봇S3 또는 Startup Guide에 포함된 셸의 상단 부분의 레이블이 있는 다이어그램을 살펴보십시오. 해커 포트는 왼쪽 드라이브 휠의 앞쪽 왼쪽에 있습니다. 포트 안에는 세 개의 기둥과 여덟 줄의 핀이 있습니다. 이 핀은 로봇S3의 강력한 내부 동작에 직접 연결됩니다. 이 핀들이 노출되는 것에 대해 무엇이 대단한가요? 로봇 케이스를 열어 볼 필요가 없습니다. 주변 센서를 추가하는 것은 간단히 케이블을 연결하는 것만 큼 쉽습니다.


이 핀들은 각각 목적을 가지고 있습니다. 각 핀의 목적을 이해하기 위해 엔지니어는 Pinout 다이어그램을 만듭니다. 해커 포트 레이블은 핀 번호, 전원 전압 및 접지 연결을 표시합니다.


프로펠러 마이크로 컨트롤러의 핀 배열 다이어그램은 매우 자세합니다. 호기심이 생기면 "Parallax Propeller pinout"을 온라인으로 검색하십시오. 해커포트(Hacker Port)에서 사용 가능한 것보다 많은 프로펠러 마이크로 컨트롤러가 있음을 알 수 있습니다. 그러나 이들 중 다수는 내장된 센서 및 로봇S3 의 다른 기능을 모니터링하고 제어하기 위해 예약되어 있습니다.


로봇S3에 포함된 S3 사용자 안내서에서 가져온 S3 해커 포트의 핀 배치도를 살펴보겠습니다.


a998b44605a28b8262e4d39e893f84cf_1511096906_4267.png
 

해커 포트에서 몇 가지 핀을 사용하여 유용한 것을 시도해 봅시다.


LED 추가하기

다이오드는 한 방향으로 그것을 통하여 전기가 흐를 수 있도록 하는 전기 부품입니다. 발광 다이오드에 전류가 통과할 때 (LED)는 빛을 냅니다. LED가 켜지려면 올바른 방법으로 연결해야 합니다. LED를 역방향으로 연결하면 빛을 방출하지 않습니다.


LED는 양극과 음극의 두 단자를 가지고 있습니다. 양극 리드는 회로도에서 삼각형의 넓은 부분으로 더하기 기호 (+)로 표시되어 있습니다. 마이너스 기호 (-)로 표시된 음극 리드는 회로도에서 삼각형의 점을 가로 지르는 수직선입니다.

a998b44605a28b8262e4d39e893f84cf_1511096920_0609.png
 

LED의 플라스틱 케이스의 모양에 따라 양극과 음극을 구분할 수 있습니다. 자세히 보십시오. 거의 둥글지만, 음극 리드 가까이에 작은 평면 구역이 있습니다. 또한 LED 리드 길이가 다릅니다. 일반적으로 짧은 리드는 음극에 연결됩니다.


참고: 항상 LED의 플라스틱 케이스를 확인하십시오. 때로는 리드가 동일한 길이로 잘리거나 제조업체가 이 규칙을 따르지 않는 경우가 있습니다.


해커 포트에 연결할 수 있는 가장 간단한 방법 중 하나는 LED입니다. 낙서 방지 로봇용 LED 회로를 제작하려면 아래 항목들이 필요합니다.


• 3 핀 케이블

• 220 옴 저항기 (빨강 - 적갈색)

• LED

• 마스킹 테이프 또는 전기 테이프와 같은 테이프


중요! 로봇S3의 해커 포트에 무엇인가를 연결하기 전에 로봇S3가 꺼져 있고 프로그래밍 케이블에서 플러그가 뽑혀 있는지 확인하십시오 !


- LED의 긴 다리를 저항기의 다리 중 하나에 연결하십시오. 좋은 전기 연결이 될 때까지 다리를 함께 비틀면서 다음 연결을 만들 수 있습니다. 그런 다음 연결부를 소량의 테이프로 가립니다.

 a998b44605a28b8262e4d39e893f84cf_1511097010_096.png 

 a998b44605a28b8262e4d39e893f84cf_1511097016_4749.png 


- 저항의 연결되지 않은 다리를 3 핀 케이블의 한쪽 끝에 있는 흰색 와이어 연결부에 삽입하고 LED 짧은 다리를 3 핀 케이블의 검은 색 와이어 연결부에 삽입하십시오.

- 해커 포트의 P5 행을 찾고 3 핀 케이블을 연결하십시오. 검정색 선이 접지 핀에 연결되고 흰색 선이 P5 (신호) 핀에 연결되어 있는지 확인하십시오.


a998b44605a28b8262e4d39e893f84cf_1511097171_7557.png
 

- HACKER PORT> PINS 범주 블록을 사용하여 다음 프로그램을 작성하고 로봇S3에 로드하십시오.

a998b44605a28b8262e4d39e893f84cf_1511097182_7529.png 


이제 LED가 깜박입니다!


어떻게 동작하는가?

P5가 메이크 핀(make pin) 블록에 의해 하이로 턴될 때, 그것은 핀에서 양의 전압을 보내기 시작함을 의미합니다. 그 양(+)의 전압은 저항과 LED를 통해 전류를 밀어냅니다. LED가 접지에 연결되어 있으므로 회로가 완료되고 LED가 켜집니다. make pin 블록이 P5를 low상태로 설정하면, 회로의 양단은 0V가 되고, 이것은 LED를 통해 전류를 밀어낼 전압이 없다는 의미여서 불빛이 꺼집니다.


a998b44605a28b8262e4d39e893f84cf_1511097197_8779.png
 

리어 범퍼 추가하기

로봇S3는 전면에 적외선 장애 감지 센서가 있지만 장애물에 되돌아가는지 알 수 있는 방법이 없습니다. 몇 가지 간단한 재료를 사용하여 후방 장애 감지기 (범퍼)를 로봇에 추가할 수 있습니다!


필요한 부품들:

• (1) 3-핀 케이블

• (1) 큰 종이 클립

• (1) 알루미늄, 주석 또는 구리 호일 (너비가 약 1/2 인치, 길이가 6 인치)

• (2) 점퍼 선

• (1) 10 kohm 이상의 저항 (갈색 - 검은 색 오렌지색)

• 마스킹 또는 덕트 테이프

 

해커 포트에 물건을 연결하기 전에 로봇S3이 꺼져 있는지 확인하십시오.


- 큰 클립을 표시된 모양으로 구부리십시오.

a998b44605a28b8262e4d39e893f84cf_1511097281_0506.png
 

- 하나의 점퍼 선의 노출된 끝을 클립에 단단히 비트십시오. 점퍼 선의 단열재를 벗겨서 종이 클립 주위에 포장하기 전에 더 많이 노출시키는 것이 도움이 될 수 있습니다.

- 로봇S3의 뒤쪽에 포일을 테이프로 붙입니다.

- 한쪽 끝에 포일을 통해 다른 점퍼 선의 한쪽 끝을 찔러 넣고 포일과 와이어 사이의 연결을 테이프로 고정합니다.

- 호일의 끝 부분을 테이프로 감싸서 위에 붙인 종이 클립이 전기 접촉을 하지 않도록하십시오.

a998b44605a28b8262e4d39e893f84cf_1511097295_406.png
 

- 다음과 같이 클립을 테이프로 붙이십시오.

a998b44605a28b8262e4d39e893f84cf_1511097303_7419.png 


- 저항의 한쪽 다리를 흰색 와이어 핀에, 다른 쪽 다리는 3 핀 케이블의 빨간색 와이어 핀에 삽입하십시오.

- 하나의 점퍼 선을 백색 선의 핀 (저항 포함)에 삽입하고 다른 점퍼 선을 3 핀 케이블의 검정 선 핀에 삽입하십시오.

a998b44605a28b8262e4d39e893f84cf_1511097319_3629.png
 

- 해커 포트 P4 행을 찾고 3 핀 케이블을 연결하십시오. 검정색 선이 접지 핀에 연결되고 흰색 선이 P4 (신호) 핀에 연결되어 있는지 확인하십시오.

- HACKER PORT> PINS> check pin  블록을 사용하여 표시된 프로그램을 빌드하고  로봇S3에 로드하십시오.

a998b44605a28b8262e4d39e893f84cf_1511097870_1003.png 


- 터미널 출력을 관찰하십시오. 호일과 접촉하도록 클립을 누르십시오. 연결이 제대로 작동하면 표시되는 번호가 변경됩니다.



어떻게 작동 하는가?

체크 핀(check pin) 블록 세트는 P4를 입력으로 설정합니다. 이것은 전압이 P4에 공급될 때 (또는 공급되지 않을 때) 감지한다는 것을 의미합니다. 이 저항은 신호 핀 (흰색 와이어)을 양의 전압까지 "끌어 당겨" 범퍼를 누르지 않으면 체크 핀 블록의 값이 1이 됩니다. 클립이 호일에 닿으면 신호선이 접지 (0 볼트)에 직접 연결됩니다. 즉, 범퍼를 누르면 체크 핀 블록 의 값 이 0이 됩니다. 


시도해 보세요!

아래에 표시된 프로그램을 빌드하고 로봇S3에 로드하십시오.

a998b44605a28b8262e4d39e893f84cf_1511097383_2177.png 


로봇S3는 충돌할 때까지 후진할 것입니다. 그런 다음 2 초 전진하여 다시 역으로 운전합니다.


당신 차례 !

- 리어 범퍼와 함께 장애물 센서를 사용하여 로봇S3를 완전히 방 주위를 돌아다닐 수 있도록하십시오.

- 로봇S3에 더 많은 LED와 범퍼를 추가하십시오.



2) 표준서보 제어


표준서보(Parallax Standard Servo)를 연결하고 제어함으로써 로봇S3의 해커 포트를 사용할 차례입니다. 이 학습에서는 먼저 표준 서보가 세 가지 위치를 잡는 방법을 보여줍니다. 그리고 부드럽고 지속적인 동작을 대략적으로 작은 위치에서 변경합니다. 로봇S3의 해커 포트를 사용하면 물리적 연결이 매우 쉽고 브로클리프롭(BlocklyProp)을 사용하면 코딩이 크게 단순 해집니다.


다음 부품이 필요합니다.

(1) 시차 표준 서보 (# 900-00005)

(1) 3 "점퍼 와이어 (# 800-00016) 또는 긴 트위스트 넥타이


참고: 취미용 서보는 많은 라디오 제어 장난감 비행기, 보트 및 자동차에서 플랩, 러더 및 조향 장치의 위치를 제어하는 소형 장치입니다. Parallax Standard Servo는 많은 로봇 및 애니매트로닉스 프로젝트에서 유용할 수 있는 취미용 서보입니다. 그것은 위치로 이동하고 홀드할 수 있기 때문에 거리 센서를 회전하거나 로봇 손에서 손가락을 제어하는 것과 같은 작업에 이상적입니다.


서보 각도 마커

서보, 호른(horn)의 선회 부분에 각도 표시기를 만들면 도움이 됩니다. 점퍼 선이나 꼬임 선이 잘 동작합니다.


- 경음기의 좌우를 가볍게 뒤틀면서 서보의 범위 중간을 찾은 다음 기계적 정지 지점을 찾은 다음 범위 중간에 위치시키십시오.

- 해당 범위의 중심에 있는 상단 두 구멍을 통해 와이어를 비틀어 "중간"위치로 표시합니다. 끝나면 아래 그림과 비슷하게 보일 것입니다.

a998b44605a28b8262e4d39e893f84cf_1511097536_5024.png
 

패럴렉스 표준 서보는 4 ~ 6 V (볼트) 전원에 대한 정격을 사용합니다. 로봇S3 사용자 가이드는 로봇S3가 규제된 5V 전원, 접지 (G) 및 해커 포트에서 I / O 핀 0-5에 대한 액세스를 제공함을 설명합니다. 3.3V 전원 및 아날로그 핀 0 및 1에 대한 연결은 해커 포트에서도 가능합니다.


서보를 로봇S3에 올바르게 연결하는데 필요한 모든 정보는 아래 이미지에 있습니다. 해커 포트 바로 옆에 있는 로봇S3 표면에 바로 인쇄된다는 것을 기억하십시오. 보시다시피, 3 열로 8 줄의 핀이 배열되어 있습니다.


a998b44605a28b8262e4d39e893f84cf_1511097559_8947.png
 

Servo를 로봇S3에 연결하십시오.

로봇S3의 전원이 꺼져 있는지 확인하고 프로그래밍 / 충전 케이블에서 코드가 빠져 있는지 확인하십시오. 표준 서보의 검정색 / 적색 / 흰색 케이블 커넥터를 P0이라고 표시된 핀 열에 연결하십시오. 검정색 선이 Ground 열에 연결되고 적색선이 중간 (5V)에 연결되고 흰색 신호 커넥터가 P0이라고 표시된 행을 따라 핀 열에 있도록 커넥터의 방향을 맞춥니다. 실수로 A0 또는 A1 레이블이 있는 행 중 하나에 연결하지 않도록 주의하십시오.


a998b44605a28b8262e4d39e893f84cf_1511097585_9938.png
 

3 가지 위치 유지하기

a998b44605a28b8262e4d39e893f84cf_1511097618_2936.png
 

이제 브로클리프롭(BlocklyProp) 표준 서보 테스트 프로그램을 작성하여 위에 표시된 세 가지 위치를 유지할 수 있습니다. 코드는 3 초 동안 서보를 세 위치 (0 °, 90 ° 및 180 °)로 이동시켜 각 위치 사이를 이동하고 유지해야 합니다. 이 코드는 서보 위치에 따라 표시기 LED도 변경합니다. 프로그램이 실행 중일 때 서보는 위치를 어긋나게 하려는 시도에 저항합니다. 프로그램이 끝나면 서보가 저항을 멈춥니다.


- 브라우저에서 브로클리프롭(BlocklyProp) 로그인을 하고 로봇S3에 대한 새 프로젝트를 시작하십시오.

- 프로그램의 표준 서보 테스트 이름을 지정하십시오.


ACTIONS > MOTORS 카테고리에서, 당신은 rotate servo 블록과 disable servo 블록을 찾을 수 있습니다. 다른 블록은 이전 자습서에서 사용되었으므로 논의되지 않습니다.


- 표시된 프로그램과 함께 다음 프로그램을 스냅합니다.

- 저장하고, 컴파일하고, EEPROM에 로드하고, 프로그램을 실행하십시오. 서보가 0 ° 위치, 90 ° 위치, 마지막으로 180 ° 위치를 약 3 초 동안 유지하는지 확인하십시오.


a998b44605a28b8262e4d39e893f84cf_1511097643_3348.png
 

브로클리프롭(BlocklyProp)으로 코드 자체에 대해 설명합니다.


• 회전 서보(rotate servo) 블록의 드롭다운 메뉴를 사용하여 핀을 설정할 수 있습니다 (이미지는 서보가 연결된 행이기 때문에 기본값인 0 으로 설정 됨).

• 숫자(number) 블록은 angle value in degrees 의 입력으로 사용됩니다. 이 설정을 변경하려면 창을 클릭하십시오 (표준 서보를 사용하는 경우 0 ~ 180).

대기(wait) 블록은 각 이동 사이에서 당신이 시간 값을 3000 밀리초(3초)까지 설정할 수 있도록 해줍니다. 마지막으로 disable servo 블록이 추가되어 동일한 핀 # ( P0 )에 설정됩니다. 각 위치에서 표시기 LED 피드백을 확인하십시오.


위 그림과 같이 회전 서보 블록을 사용하면 서보가 연결된 핀 과 각도로 표시된 서보 각도의 두 가지 매개 변수를 설정할 수 있습니다. 예를 들어, P0에 연결된 서보를 90도 회전시키려면 블록을 P0 과 90으로 설정하십시오. rotate servo 블록은 서보가 위치에 도달하도록 기다려 주지 않는다는 것을 명심하십시오. 이것은 새로운 각을 설정하기 이전에 서보가 원하는 위치에 도달할 wait 블록을 필요로 하는 이유입니다. 마지막으로, 비활성화 서보 블록은 서보에 대한 펄스가 종료되었는지 확인합니다.


참고 : 표준 서보는 180도 범위를 가지며 개별 단위 사이에 작은 차이가 있습니다. 서보 각도가 180도 이상이 되지 않도록 주의하십시오. 모터가 손상될 수 있습니다.


 

당신 차례 !

- 서보를 45 ° 각도와 135 ° 각도로 유지하도록 프로그램을 수정하십시오. 다시 LED 피드백을 사용하십시오. 서보를 비활성화하십시오. 예상대로 작동하는지 확인하십시오.

- 루프(X times)블록을 사용하십시오 – 서보가 움직임 사이의 적절한 지연을 LED 피드백하면서 0 °에서 180 ° 사이를 계속 10회 왕복하도록 프로그래밍하시오.



3) 표준 서보 펜 리프터


로봇S3를 사용하여 "Robot"이라는 단어를 쓰고 싶다고 가정해 보십시오. 각 문자가 분리되도록 하려면 각 문자 사이의 드로잉 표면에서 펜 끝을 제거해야 합니다. 필기 또는 그림 용어에서는 펜 리프트라고 합니다.


하드웨어 해킹 지침

이전 학습에서는 표준 서보를 로봇S3의 해커 포트에 연결하여 표준 서보를 제어하는 방법을 배웠습니다. 펜 리프트 해킹에서는 서보를 사용하여 글자 사이에서 펜을 올리거나 낙서 할때 다른 특수 목적으로 사용할 수 있습니다. 방법을 배우려면 다음 학습을 따르십시오.


필요한 사진, 지침 및 PDF 인쇄물은 다음과 같습니다. 표준 서보 및 몇 가지 간단한 도구를 사용하여 펜 리프터를 로봇S3에 추가하는 것은 간단하고 창의적인 방법입니다.


부품 목록

S3 로봇

패럴렉스 표준 서보 (# 900-00005)

1/2 "1/2"조각의 양면 폼 테이프 또는 비슷한 크기의 Command® 스트립

3/4 "넓이의 투명 테이프 (투명 양면 테이프는 충분히 강하지 않습니다)

S3 - Sharpie® 또는 화이트 보드 마커에 맞는 펜

가위

필립스 스크루 드라이버

대각선 커터 또는 주석 깍기 (또는 손톱과 클램프)

안전 안경 (항상 좋은 생각이지만 물건을자를 때마다 사용하십시오!)

케이블 타이 또는 트위스트 넥타이

S3 펜 리프터 종이 템플릿

 

펜 및 부착 고리 준비

- 펜 리프터 템플릿 문서를 부품 목록에서 인쇄하십시오.

- 가위 또는 종이 커터를 사용하여 템플릿 중 하나를 잘라냅니다.

a998b44605a28b8262e4d39e893f84cf_1511097713_5933.png
 

- 라인 "a"를 따라 세로로 접습니다.

a998b44605a28b8262e4d39e893f84cf_1511097725_7522.png
 

- 테이프 조각을 사용하여 종이 스트립의 길이, 긴 이음새 위 / 둘레에 테이프를 펼치지 마십시오.

a998b44605a28b8262e4d39e893f84cf_1511097743_1923.png
a998b44605a28b8262e4d39e893f84cf_1511097743_5733.png
 

- 선 "b"를 따라 폭 방향으로 접으십시오.

a998b44605a28b8262e4d39e893f84cf_1511097754_6604.png
 

- 종이 템플리트의 하단 ( "cap"으로 표시)을 펜의 뚜껑에 맞추고 "펜 쪽"이라고 표시된 면이 정확히 그 면과 일치하도록 하십시오.

- "c"테이프 영역 위에 테이프 조각을 올려 펜에 고정하십시오.

a998b44605a28b8262e4d39e893f84cf_1511097764_7441.png
 

- 똑같은 방식으로 펜에 테이프 "d"를 붙이고 템플릿이 펜에 평평하게 놓여있는지 확인하십시오. 템플릿의 두 끝이 일치하지 않습니다.

a998b44605a28b8262e4d39e893f84cf_1511097778_3295.png
 

- 연필이나 이와 유사한 도구로 조심스럽게 종이를 열어서 밀어야 합니다.

a998b44605a28b8262e4d39e893f84cf_1511097788_1907.png 

 

서보 혼 수정하기

- 가능한 한 서보 경적을 시계 반대 방향으로 부드럽게 돌리려면 손을 사용하십시오. 강제하지 않도록 주의하십시오.

- Phillips-Head 드라이버를 사용하여 서보 혼을 제거하십시오.

- 3 개의 포인트를 자르려면 대각선 커터, 주석 스니프 또는 손톱을 사용하십시오. 안전 안경을 착용하고 핸드 톱을 사용하는 경우 클램프로 서보 경적을 잡으십시오 - 손이 아님!

a998b44605a28b8262e4d39e893f84cf_1511097919_0013.png
 

서보 테스트 및 구성

- 로봇S3의 전원이 꺼져 있는지 확인하십시오. 3 선 케이블을 P5라고 표시된 핀 행에 연결하십시오. 검정색 선이 접지 열에 연결되고 빨간색 선이 중간 또는 5V 핀에 연결되고 흰색 신호 커넥터 선이 핀 열에 연결되도록 커넥터의 방향을 맞춥니다.

- 브로클리프롭(BlocklyProp)을 열고 로그인하여 Pen Down Test라는 새로운 프로그램을 만들고 아래 코드를 구성하십시오. 힌트 : 당신은 코드를 완성하기 위해 set variable 블록과 get variable 블록을 사용할 필요가 있을 것입니다. 다음과 같이 이름을 변경하세요.


a998b44605a28b8262e4d39e893f84cf_1511097831_1107.png
 

- 저장하고, 컴파일하고, EEPROM에 로드하십시오. 서보를 중앙 위치로 설정하고 중앙 LED를 녹색으로 설정합니다.

- 수정된 서보 혼을 서보 출력 샤프트에 아래 표시된 방향으로 다시 놓고 출력 샤프트에 내려놓고 나사를 끼워 고정하십시오.

a998b44605a28b8262e4d39e893f84cf_1511097937_1322.png
 

- 이제 파란색 재설정 버튼을 눌러 코드를 다시 실행하십시오. 위와 같이 혼이 중앙에 위치하도록 정확한 각도 설정을 찾습니다. 새로운 각도를 pen_down 변수 값으로 삽입하십시오. 완료되면 S3의 전원을 끕니다.

 


함께 결합하기

- 양면 폼 테이프로 ½ "½"씩 잘라냅니다.

- 핀을 실은 스크린에 인접한 표면의 로봇S3에 테이프를 붙이십시오 (로봇S3가 쓰여진 얼굴에서 약 3/4 "뒤로).

a998b44605a28b8262e4d39e893f84cf_1511098005_5546.png
 

- 표시된 위치에 테이프 위에 서보를 놓고 30 초 동안 제자리에서 누르고 있으면 좋고 강한 결합이 유지됩니다.

a998b44605a28b8262e4d39e893f84cf_1511098013_5264.png
 

- 연결되지 않은 경우 해커 포트의 P5에 서보를 연결하고 케이블 타이를 사용하여 여분의 케이블을 고정하십시오.

a998b44605a28b8262e4d39e893f84cf_1511098020_2402.png
 

- 안전한 쓰기 표면 위에 로봇S3를 놓으십시오 (Sharpie 잉크가 영구적이라는 것을 기억하십시오).

- 펜에서 캡을 제거하고 잉크를 펜 홀더에 내려놓으십시오. 다음 사진 세트에서와 같이 서보 혼 위에 용지 루프를 뒤집습니다.

a998b44605a28b8262e4d39e893f84cf_1511098030_3965.png


- 축하합니다, 당신은 펜 해킹을 완료했습니다! 이제 브로클리프롭(BlocklyProp) 코드를 하나 더 작성하여 펜의 "up" 위치를 테스트하고 설정해 보겠습니다.

 


시도해보세요!

- 브로클리프롭(BlocklyProp)을 열고 로그인하여 펜 다운 테스트를 엽니다. 펜 다운 및 업 테스트로 복사본을 저장하십시오. 그런 다음 아래와 같이 코드를 수정하십시오.


a998b44605a28b8262e4d39e893f84cf_1511098047_7772.png
 

이 코드는 다음과 같이 묘사합니다 : 첫째, pen_up set variable 블록을 추가합니다. 귀하의 가치는 다를 수 있습니다 - 아래의 참고를 보십시오. 다음으로 코드 본문을 5 번 반복합니다. 초록색 LED는 펜이 내려져 있음을 나타내며, 펜이 500ms 동안 유지됩니다. 빨간색 LED는 펜이 다시 500ms 동안 작동되었음을 나타냅니다. 이전과 마찬가지로 서보가 P5에 부착됩니다. 마지막으로 서보가 끝나면 서보를 비활성화합니다.


참고 : pen_down 및 pen_up 값은 서보 위치, 용지 루프 크기 및 위치에 따라 달라질 수 있지만 값 사이의 20 도가 정확해야 합니다. 그걸 가지고 노는 것이 무엇이 가장 적합한 지 알아보십시오.


- 저장하고, 컴파일하고, EEPROM에 로드하십시오. 펜이 내려갔을 때 표면에 닿았는지, 표면 위쪽으로 펜이 올려졌는지 확인하십시오. 필요한 경우 코드에서 이러한 설정의 변수를 조정하고 저장한 다음 다시 테스트하십시오.

- 프로그램을 수정하십시오. 이름을 "Pen Down and Up Drive Test"로 지정하십시오. 속도 가변 블록과 드라이브 속도 블록을 추가하십시오.


a998b44605a28b8262e4d39e893f84cf_1511098061_6156.png
 

- 이제 끝에 정지(stop) 블록을 추가하십시오. 이 코드는 펜이 아래에서 위로 움직일 때 S3가 앞으로 움직이게하여 점선을 만듭니다.


- 저장하고, 컴파일하고, EEPROM에 로드하고, 프로그램을 실행하십시오. 펜 높이기가 최적으로 작동하도록 설정을 조정하십시오. 점선 패턴을 변경하려면 드라이브 속도 변수와 대기 시간을 변경하십시오.

 


당신 차례 !

- Pen Down and Up Drive Test 수정 - 대기 블록 설정을 위한 변수 추가. 그것은 이전의 "시도해보세요!"를 스냅하는 것입니다!

- Draw Simple Shapes 또는 Turning Shapes에서 만든 브로클리프롭(BlocklyProp) 프로그램 중 일부를 Art로 수정 - 펜 리프트를 추가하여 점선이 있는 도형을 만듭니다.

- Parallax-friend Whit Stodghill이 만든 브로클리프롭(BlocklyProp) 프로그램을 확인하고 그것이 무엇인지 알아낼 수 있는지 확인하십시오.

- S3의 낙서로 사본을 저장하고, 컴파일하고, EEPROM에 로드하십시오. (참고 : 이전에 발견한 개인 로봇S3에 가장 적합한 변수 설정을 사용하십시오.)

- 펜 홀더에 펜을 놓고 종이 루프를 서보 혼에 부착하십시오. 프로그램을 실행하려면 리셋 버튼을 한 번 누릅니다.


로봇S3가 예상한대로 동작했습니까? 그렇지 않다면 이 프로그램의 Youtube Video를 확인 하십시오.



4) PING)))으로 거리측정


PING))) 초음파 거리측정 센서

PING)))센서는 초음파 사운드의 왕복 시간을 측정하여 대상 물체가 얼마나 멀리 떨어져 있는지 확인합니다. 그것은 3 센티미터에서 3 미터까지의 거리를 측정할 수 있습니다. 로봇을위한 훌륭한 거리센서가 될 뿐만아니라, 출입구를 통과하고, 미술 전시회를 관람하고, 휴일 소품에 접근하는 등 많은 사람들을 탐지하는데 유용합니다.


좀 더 깊이 들어가고 싶습니까? 그러면 다음 이 참조 문서에서 소리의 속도와 기온에 대해 확인하고 환경 온도가 PING))) 센서의 거리 측정에 큰 영향을 미칠 수 있는 방법을 알아보십시오.


연결 및 부품들

PING))) 센서는 I / O 핀, 전원 및 접지의 3 가지 연결만 필요합니다. 이렇게 하면 해커 포트에서 쉽게 연결할 수 있기 때문에 로봇S3와 함께 간단한 해킹 프로젝트를 만들 수 있습니다. 자세한 내용은 이전 내용을 참고하십시오. 브로클리프롭(BlocklyProp)은 PING))))센서 프로그래밍을 간단하고 재미있게 만듭니다.


이 자습서를 완료하려면 다음과 같은 부분이 필요합니다.

(1) - PING))) 초음파 거리 센서 (# 28015)

(1) - 3 핀 신호 - 전원 접지 케이블 연장 (4 ") (# 800-00040)

프로그래밍 케이블이있는 S3 로봇.

PING)))) (일부 아이디어는 아래에 나열되어 있습니다)

 


브로클리프롭(BlocklyProp) 코드 테스트

이제 브로클리프롭(BlocklyProp) 테스트 코드를 빌드해 보겠습니다. 우리의 코드는 센서 전면에 위치한 물체의 거리를 센티미터 단위로 표시하여 터미널 및 LED 피드백을 제공합니다. 이제 브로클리프롭(BlocklyProp) PING)))) 테스트 코드를 만들 차례입니다.a998b44605a28b8262e4d39e893f84cf_1511098145_4812.png 


- 브라우저에서 브로클리프롭(BlocklyProp)을 가리키고 로봇S3에 로그인하여 새 프로젝트를 시작하십시오. 귀하의 프로그램 이름을 PING)))) Test로 지으십시오.

- SENSORS > PING))) 범주에서, ping))) distance 블록을 찾으십시오 – 여기서 우리는 units of measurePin connection을 설정합니다. 필요합니다 (당신은 또한 대기 블록, 조건부 반복 블록, change LED 블록을 필요로 합니다. COMMUNICATE 카테고리에서 찾을 수 있습니다.) 설정값과 함께 다음 프로그램을 스냅하십시오.



- 로봇S3에 ping)))센서를 설치하는 간단한 방법을 찾으십시오. 아래의 예는 검은 색 테이프에 싸여 빨래 집게를 사용 (샤피는 ® 우리는 그들이 펜 포트에 맞는 알고 이후에 모자와 펜도 기본으로 사용할 수 있습니다). 어떤 종류의 테이프가 필요할 것 같습니다.

- PING)))핀에 검은 색 와이어가 접지 (GND) 열에 연결되도록 적색 와이어가 중간 또는 5V 핀에 연결되고 흰색 신호 커넥터가 SIG 열에 연결되도록 커넥터 케이블을 놓으십시오.

- 케이블의 다른 쪽 끝을 P5의 해커 포트 핀에 연결하십시오. 전선이 제대로 연결되어 있는지 다시 한 번 확인하십시오. 검정 케이블 선은 GND에 연결해야 합니다.

a998b44605a28b8262e4d39e893f84cf_1511098160_8216.png 

- 저장하고, 컴파일하고, EEPROM에 로드하고, 프로그램을 실행하십시오.

- 물체를 PING)))센서 앞에 놓고 물체를 더 가깝게, 더 멀리 이동할 때 측정값이 적절하게 변경되는지 확인하십시오.

 


어떻게 동작하는가?

PING))) 센서가 로봇S3의 프로펠러 칩에서 로우 - 하이 - 로우 시작 펄스를 수신하면 짧은 초음파 삑 소리를 냅니다. 초음파이므로 사람이 들을 수는 없지만 에코가 돌아올 때 자신의 초음파 변환기가 이 소리를 감지할 만큼 충분히 큽니다.


PING))) 센서가 삑 소리를 내면 출력 핀을 높게 설정합니다. 에코가 돌아오면 핀을 로우로 설정합니다. 프로펠러는 PING))) 센서가 이 핀을 높이 유지하는 시간을 측정합니다. 이 숫자는 소리가 돌아오는 왕복 시간입니다.


a998b44605a28b8262e4d39e893f84cf_1511098219_3859.png 


브로클리프롭(BlocklyProp) Ping))) 거리 블록에는 시작 펄스를 보내고 에코 시간 펄스를 측정하는 기능이 있습니다. 또한 에코 시간을 센티미터 거리 (또는 블록에 설정된대로 측정 단위) 로 변환하기 위해 공기 중에서 소리의 속도를 사용하는 기능을 이용합니다.


알고 계셨습니까?

공기 중 소리의 속도는 실온 (약 72 ° F 또는 22.2 ° C)에서 초당 344.8 미터입니다. 그것은 c = 344.8 m / s, T = 72 ºF 또는 22.2 ºC입니다.


특정 시간 동안 움직이는 거리 (들)는 소리의 속도와 시간의 곱입니다. 그것은 s = c × t입니다. 왕복 여행의 경우, 소리는 두 배 오래 걸립니다, 거리는 2배 값이므로, 2로 나눕니다.  그것은 s = C × t ÷ 2입니다. 1m는 100cm, 1초는 1,000,000 마이크로 초입니다. 즉, 1m = 100cm이고 1s = 1,000,000μs입니다.


따라서 마이크로 초 단위의 에코 시간이 있고 거리 측정을 센티미터 단위로 원하면 다음과 같습니다.

a998b44605a28b8262e4d39e893f84cf_1511098234_0582.png
 

0.01724는 실제로 1/58에 가깝습니다. Ping))) 코드는 s = t ÷ 58을 사용합니다.


 

당신 차례 !

- 해커 포트의 다른 핀 (0-4) 행에 연결하도록 프로그램을 수정하십시오. 핀 A0 또는 A1을 사용하지 마십시오.

- 프로그램을 수정하여 터미널에서 다른 측정 단위로 거리를 측정하고 표시하십시오.

- 다음 새 프로그램을 만듭니다. 그것을 실행하면 어떻게 될지 예측하십시오.


a998b44605a28b8262e4d39e893f84cf_1511098257_2851.png
 

- 저장하고, 컴파일하고, EEPROM에 로드하고, 프로그램을 실행하십시오.

- PING))) 센서를 약 2 피트 정도 떨어진 곳에 두고 손으로 프로그램이 로봇S3를 제어하는 방법을 관찰하십시오. 표시된 코드에 의해 동작이 어떻게 제어되는지 볼 수 있습니까? 당신이 생각했던대로 되었나요? 그 이유는 무엇인가요?



이전 페이지로