개요
프로세싱으로 햄스터 로봇을 제어하기 위한 메소드는 크게 두 가지 종류가 있습니다.
- 햄스터 로봇 전용의 메소드
간편하게 코드를 작성할 수 있다는 장점이 있지만 햄스터 로봇에만 적용할 수 있다는 한계가 있습니다.
입문자용 레퍼런스를 참고하기 바랍니다.
- 모든 로봇에 적용할 수 있는 공통의 메소드
모든 로봇에 적용할 수 있는 일반화된 형태이기 때문에 햄스터 로봇 뿐만 아니라
로보이드 프레임워크를 따르는 다른 로봇(예: 거북이)에 대해서도
똑같은 방법으로 코드를 작성할 수 있습니다.
숙련자용 레퍼런스에는 공통의 메소드 뿐만 아니라 햄스터 로봇 전용의 메소드를 포함하여 제공되는 모든 메소드들이 설명되어 있습니다.
입문자용 레퍼런스
프로세싱으로 햄스터 로봇을 제어하기 위한 함수와 메소드, 상수 값을 설명합니다.
- 전역 함수
|
전역으로 사용하는 함수를 정의합니다. |
- Hamster
|
햄스터 로봇을 제어하기 위한 메소드와 상수 값을 정의합니다. |
- Runner
|
실행을 제어하기 위한 메소드를 정의합니다. |
- Scanner
|
시리얼 포트 목록을 출력하기 위한 메소드를 정의합니다. |
기본적인 메소드와 상수 값만 설명하며, 전체 설명은 숙련자용 레퍼런스를 참고하기 바랍니다.
사용 예시는 다음과 같습니다.
import org.roboid.runtime.*;
import org.roboid.hamster.*;
import org.roboid.robot.*;
Hamster hamster;
void setup() {
hamster = Hamster.create(this);
}
void draw() {
}
void run() {
int value1 = hamster.leftProximity(); // 왼쪽 근접 센서 값을 얻는다.
int value2 = hamster.accelerationY(); // Y축 가속도 값을 얻는다.
hamster.wheels(30, 30); // 왼쪽 바퀴와 오른쪽 바퀴의 속도를 30으로 한다.
}
숙련자용 레퍼런스
프로세싱으로 햄스터 로봇을 제어하기 위한 모든 함수와 메소드, 상수 값을 설명합니다.
- 전역 함수
|
전역으로 사용하는 함수를 정의합니다. |
- DataType
|
디바이스의 데이터 형에 대한 상수 값을 정의합니다. |
- Device
|
디바이스의 데이터를 읽고 쓰는 메소드를 정의합니다. |
- DeviceType
|
디바이스의 유형에 대한 상수 값을 정의합니다. |
- Hamster
|
햄스터 로봇을 제어하기 위한 메소드와 상수 값을 정의합니다. |
- Roboid
|
로보이드를 구성하는 디바이스를 찾거나 콜백 함수를 등록 및 제거하는 메소드를 정의합니다. |
- Robot
|
로봇을 구성하는 로보이드 또는 디바이스를 찾거나 로봇을 제어하기 위한 메소드를 정의합니다. |
- Runner
|
실행을 제어하기 위한 메소드를 정의합니다. |
- Scanner
|
시리얼 포트 목록을 출력하기 위한 메소드를 정의합니다. |
입문자용 개요에서 예시한 바와 같이 햄스터 로봇 전용의 메소드를 사용하여도 되지만
모든 로봇에 공통으로 적용할 수 있는 메소드를 사용한 예시는 다음과 같습니다.
import org.roboid.runtime.*;
import org.roboid.hamster.*;
import org.roboid.robot.*;
Hamster hamster;
void setup() {
hamster = Hamster.create(this);
}
void draw() {
}
void run() {
int value1 = hamster.read(Hamster.LEFT_PROXIMITY); // 왼쪽 근접 센서 값을 얻는다.
int value2 = hamster.read(Hamster.ACCELERATION, 1); // Y축 가속도 값을 얻는다.
hamster.write(Hamster.LEFT_WHEEL, 30); // 왼쪽 바퀴의 속도를 30으로 한다.
hamster.write(Hamster.RIGHT_WHEEL, 30); // 오른쪽 바퀴의 속도를 30으로 한다.
}
Copyright 로봇SW교육원 All rights reserved.
어려운 일이 있으면 광운대학교 로봇학부 박광현 교수(
akaii@kw.ac.kr)에게 연락하세요.