PPT - 앱 인벤터 2

Download Report

Transcript PPT - 앱 인벤터 2

PART 1
앱 인벤터 프로젝트
12 원격 로봇
장난감 로봇
 Lego MindStorms NXT 로봇
 레고 사에서 개발한 프로그래밍이 가능한 장난감 로봇
 바퀴로 움직이고, 여러 가지 센서 장착
 세 개의 모터와 네 개의 입력 센서
 초중고 방과 후 교실에서도 활용
 문제해결 능력, 공학과 컴퓨터 프로그래밍 연습
 <원격 로봇> 앱
 스마트폰이 로봇 리모콘으로 변신
 로봇의 블루투스 기능 활용
무엇을 배우는가?
 <원격 로봇> 앱을 만들면서 배우는 것들
 NXT와 연결을 담당하는 BluetoothClient 컴포넌트
 연결할 NXT를 고르는데 사용하는 ListPicker 컴포넌트
 로봇의 바퀴를 구동하는 NxtDrive 컴포넌트
 장애물을 검출해 주는 초음파 센서를 제어하는 NxtUltrasonicSensor 컴포넌트
NXT와 핸드폰 연결
 안드로이드 폰과 NXT를 블루투스로 연결하는 절차
1. NXT에서 블루투스를 찾고 주황색 버튼 누름
2. Visibility를 찾고 주황색 버튼 누름
3. Visibility를 Visible로 설정
4. 안드로이드 폰에서 [설정] 앱을 실행
5. 블루투스를 켬
6. [Bluetooth]와 [Search for devices]를 클릭
7. Available devices 목록에서 NXT 검색
8. NXT를 클릭
9. PIN 입력
10. NXT에서 주황색 버튼을 눌러 승인
11. 성공적으로 한 쌍이 됨
보이지 않는 컴포넌트 추가하기
보이는 컴포넌트 추가하기
컴포넌트 동작 프로그래밍
 <원격 로봇> 앱에서 프로그래밍해야 할 기능들
 연결 가능한 로봇을 리스트에 표시하고, 사용자가 선택한 로봇을 앱과 연결하기
 로봇과 연결 끊기
 제어 버튼으로 로봇 구동하기
 장애물을 만나면 로봇을 멈추기
NXT 연결 및 로봇 목록 표시하기
 연결 가능한 로봇 목록 표시 기능 프로그래밍
 사용자가 [연결하기…] 버튼을 누르면 블루투스로 연결된 로봇 목록 표시
블루투스로 앱과 로봇을 연결하기
 연결 기능 프로그래밍
 사용자가 로봇을 선택하면 앱과 로봇을 블루투스로 연결해줌
NXT와 연결 끊기
 연결 끊기 기능 프로그래밍
 Bluetooth1.Disconnect를 호출하여 연결을 끊음
 사용자 인터페이스를 상황에 맞게 변경해야 함  컴포넌트의 Visible 속성으로 조정
NXT와 연결 끊기
NXT 구동하기
 로봇을 앞뒤로 움직이고, 좌우로 방향을 트는 기능을 프로그래밍
NXT 구동하기
초음파 센서로 장애물 검출하기
 NxtUltrasonicSensor 컴포넌트
 장애물을 검출해주는 컴포넌트
 검출 범위를 cm 단위로 지정할 수 있는 BottomOfRange와 TopOfRange라는 속성
(기본값은 각각 30과 90)
 세 종류의 이벤트 블록
• BelowRange: 장애물이 BottomOfRange 이내에 있을 때 발생
• WithinRange: 장애물이 BottomOfRange와 TopOfRange 사이에 있을 때 발생
• AboveRange: 장애물이 TopOfRange보다 멀리 있을 때 발생
초음파 센서로 장애물 검출하기
확장해 보기
감사합니다.