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, 0); // X축 가속도 값을 얻는다. int value3 = hamster.read(Hamster.ACCELERATION, 1); // Y축 가속도 값을 얻는다. int value4 = hamster.read(Hamster.ACCELERATION, 2); // Z축 가속도 값을 얻는다. hamster.write(Hamster.LEFT_WHEEL, 30); // 왼쪽 바퀴의 속도를 30으로 한다. }두 번째 종류의 메소드는 햄스터 로봇에만 적용할 수 있으며, 메소드 내부에서 위의 일반화된 메소드를 호출해 줍니다. 이 메소드는 디바이스의 이름과 유사한 이름으로 구성되어 있습니다.
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.accelerationX(); // X축 가속도 값을 얻는다. int value3 = hamster.accelerationY(); // Y축 가속도 값을 얻는다. int value4 = hamster.accelerationZ(); // Z축 가속도 값을 얻는다. hamster.leftWheel(30); // 왼쪽 바퀴의 속도를 30으로 한다. }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this, "COM52"); } void draw() { }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // X축 가속도 값을 얻는다. int value = hamster.accelerationX(); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // Y축 가속도 값을 얻는다. int value = hamster.accelerationY(); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // Z축 가속도 값을 얻는다. int value = hamster.accelerationZ(); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 버저 음을 짧게 소리낸다. hamster.beep(); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 말판 위에서 한 칸 앞으로 이동한다. hamster.boardForward(); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 말판 위에서 왼쪽 방향으로 제자리에서 90도 회전한다. hamster.boardLeft(); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 말판 위에서 오른쪽 방향으로 제자리에서 90도 회전한다. hamster.boardRight(); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 버저 소리의 음 높이를 1000 Hz로 한다. hamster.buzzer(1000); // 버저 소리의 음 높이를 261.63 Hz로 한다. hamster.buzzer(261.63); // 버저 소리를 끈다. hamster.buzzer(0); }
입출력 모드 | 값의 범위 | 설명 |
---|---|---|
IO_MODE_ANALOG_INPUT (아날로그 입력 모드) |
0 ~ 255 | 입력 전압을 8비트 ADC로 측정한다. 최대 입력 전압인 3.3V가 입력되면 255의 값을 가진다. |
IO_MODE_DIGITAL_INPUT (디지털 입력 모드) |
0 또는 1 | 입력 전압을 0과 1로 변환한다. 입력 전압이 1.6V 이상이면 1로 하고, 아니면 0으로 한다. |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); hamster.ioModeA(Hamster.IO_MODE_ANALOG_INPUT); } void draw() { } void run() { // 포트 A로 입력되는 신호 값을 얻는다. int value = hamster.inputA(); }
입출력 모드 | 값의 범위 | 설명 |
---|---|---|
IO_MODE_ANALOG_INPUT (아날로그 입력 모드) |
0 ~ 255 | 입력 전압을 8비트 ADC로 측정한다. 최대 입력 전압인 3.3V가 입력되면 255의 값을 가진다. |
IO_MODE_DIGITAL_INPUT (디지털 입력 모드) |
0 또는 1 | 입력 전압을 0과 1로 변환한다. 입력 전압이 1.6V 이상이면 1로 하고, 아니면 0으로 한다. |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); hamster.ioModeB(Hamster.IO_MODE_DIGITAL_INPUT); } void draw() { } void run() { // 포트 B로 입력되는 신호 값을 얻는다. int value = hamster.inputB(); }
입출력 모드 | 상수 값 | 설명 |
---|---|---|
IO_MODE_ANALOG_INPUT (아날로그 입력 모드) |
0 | 입력 전압을 8비트 ADC로 측정한다. 최대 입력 전압인 3.3V가 입력되면 255의 값을 가진다. |
IO_MODE_DIGITAL_INPUT (디지털 입력 모드) |
1 | 입력 전압을 0과 1로 변환한다. 입력 전압이 1.6V 이상이면 1로 하고, 아니면 0으로 한다. |
IO_MODE_SERVO_OUTPUT (아날로그 서보 출력 모드) |
8 | 외부 서보 제어용 PWM 신호를 출력한다. |
IO_MODE_PWM_OUTPUT (PWM 출력 모드) |
9 | 듀티비(0 ~ 255 단계)에 따른 PWM 파형을 출력한다. |
IO_MODE_DIGITAL_OUTPUT (디지털 출력 모드) |
10 | 디지털 값 LOW(0) 또는 HIGH(1)를 출력한다. |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); // 포트 A의 입출력 모드를 아날로그 입력 모드로 설정한다. hamster.ioModeA(Hamster.IO_MODE_ANALOG_INPUT); } void draw() { }
입출력 모드 | 상수 값 | 설명 |
---|---|---|
IO_MODE_ANALOG_INPUT (아날로그 입력 모드) |
0 | 입력 전압을 8비트 ADC로 측정한다. 최대 입력 전압인 3.3V가 입력되면 255의 값을 가진다. |
IO_MODE_DIGITAL_INPUT (디지털 입력 모드) |
1 | 입력 전압을 0과 1로 변환한다. 입력 전압이 1.6V 이상이면 1로 하고, 아니면 0으로 한다. |
IO_MODE_SERVO_OUTPUT (아날로그 서보 출력 모드) |
8 | 외부 서보 제어용 PWM 신호를 출력한다. |
IO_MODE_PWM_OUTPUT (PWM 출력 모드) |
9 | 듀티비(0 ~ 255 단계)에 따른 PWM 파형을 출력한다. |
IO_MODE_DIGITAL_OUTPUT (디지털 출력 모드) |
10 | 디지털 값 LOW(0) 또는 HIGH(1)를 출력한다. |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); // 포트 B의 입출력 모드를 PWM 출력 모드로 설정한다. hamster.ioModeB(Hamster.IO_MODE_PWM_OUTPUT); } void draw() { }
LED 색상 | 상수 값 | 설명 |
---|---|---|
LED_OFF | 0 | LED를 끈다. |
LED_BLUE | 1 | LED를 파란색으로 켠다. (R: 0, G: 0, B: 255) |
LED_GREEN | 2 | LED를 초록색으로 켠다. (R: 0, G: 255, B: 0) |
LED_CYAN | 3 | LED를 하늘색으로 켠다. (R: 0, G: 255, B: 255) |
LED_RED | 4 | LED를 빨간색으로 켠다. (R: 255, G: 0, B: 0) |
LED_MAGENTA | 5 | LED를 보라색으로 켠다. (R: 255, G: 0, B: 255) |
LED_YELLOW | 6 | LED를 노란색으로 켠다. (R: 255, G: 255, B: 0) |
LED_WHITE | 7 | LED를 하얀색으로 켠다. (R: 255, G: 255, B: 255) |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 왼쪽 LED를 빨간색으로, 오른쪽 LED를 파란색으로 켠다. hamster.leds(Hamster.LED_RED, Hamster.LED_BLUE); // 양쪽 LED를 끈다. hamster.leds(0, 0); }
LED 색상 | 상수 값 | 설명 |
---|---|---|
LED_OFF | 0 | LED를 끈다. |
LED_BLUE | 1 | LED를 파란색으로 켠다. (R: 0, G: 0, B: 255) |
LED_GREEN | 2 | LED를 초록색으로 켠다. (R: 0, G: 255, B: 0) |
LED_CYAN | 3 | LED를 하늘색으로 켠다. (R: 0, G: 255, B: 255) |
LED_RED | 4 | LED를 빨간색으로 켠다. (R: 255, G: 0, B: 0) |
LED_MAGENTA | 5 | LED를 보라색으로 켠다. (R: 255, G: 0, B: 255) |
LED_YELLOW | 6 | LED를 노란색으로 켠다. (R: 255, G: 255, B: 0) |
LED_WHITE | 7 | LED를 하얀색으로 켠다. (R: 255, G: 255, B: 255) |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 양쪽 LED를 초록색으로 켠다. hamster.leds(Hamster.LED_GREEN); // 양쪽 LED를 끈다. hamster.leds(0); }
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 value = hamster.leftFloor(); }
LED 색상 | 상수 값 | 설명 |
---|---|---|
LED_OFF | 0 | LED를 끈다. |
LED_BLUE | 1 | LED를 파란색으로 켠다. (R: 0, G: 0, B: 255) |
LED_GREEN | 2 | LED를 초록색으로 켠다. (R: 0, G: 255, B: 0) |
LED_CYAN | 3 | LED를 하늘색으로 켠다. (R: 0, G: 255, B: 255) |
LED_RED | 4 | LED를 빨간색으로 켠다. (R: 255, G: 0, B: 0) |
LED_MAGENTA | 5 | LED를 보라색으로 켠다. (R: 255, G: 0, B: 255) |
LED_YELLOW | 6 | LED를 노란색으로 켠다. (R: 255, G: 255, B: 0) |
LED_WHITE | 7 | LED를 하얀색으로 켠다. (R: 255, G: 255, B: 255) |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 왼쪽 LED를 빨간색으로 켠다. hamster.leftLed(Hamster.LED_RED); // 왼쪽 LED를 끈다. hamster.leftLed(0); }
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 value = hamster.leftProximity(); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 왼쪽 바퀴를 30%의 속력으로 앞으로 회전하게 한다. hamster.leftWheel(30); // 왼쪽 바퀴를 30%의 속력으로 뒤로 회전하게 한다. hamster.leftWheel(-30); // 왼쪽 바퀴를 정지한다. hamster.leftWheel(0); }
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 value = hamster.light(); }
라인 트레이서 모드 | 데이터 값 | 설명 |
---|---|---|
LINE_TRACER_MODE_OFF | 0 | 내장된 라인 트레이서 기능을 사용하지 않는다. |
LINE_TRACER_MODE_BLACK_LEFT_SENSOR | 1 | 왼쪽 바닥 센서를 사용하여 검은색 라인을 오른쪽에 두고 가장자리를 따라 전진한다. |
LINE_TRACER_MODE_BLACK_RIGHT_SENSOR | 2 | 오른쪽 바닥 센서를 사용하여 검은색 라인을 왼쪽에 두고 가장자리를 따라 전진한다. |
LINE_TRACER_MODE_BLACK_BOTH_SENSORS | 3 | 양쪽 바닥 센서를 모두 사용하여 검은색 라인을 중앙에 두고 전진한다. 검은색 교차로와 짧게 끊어진 라인은 직진하여 통과한다. |
LINE_TRACER_MODE_BLACK_TURN_LEFT | 4 | 현재 교차로에 있으면 교차로를 벗어날 때까지 좌회전하고, 검은색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_BLACK_TURN_RIGHT | 5 | 현재 교차로에 있으면 교차로를 벗어날 때까지 우회전하고, 검은색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_BLACK_MOVE_FORWARD | 6 | 현재 교차로에 있으면 교차로를 벗어날 때까지 직진하고, 검은색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_BLACK_UTURN | 7 | 180도 유턴하고 검은색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_WHITE_LEFT_SENSOR | 8 | 왼쪽 바닥 센서를 사용하여 흰색 라인을 오른쪽에 두고 가장자리를 따라 전진한다. |
LINE_TRACER_MODE_WHITE_RIGHT_SENSOR | 9 | 오른쪽 바닥 센서를 사용하여 흰색 라인을 왼쪽에 두고 가장자리를 따라 전진한다. |
LINE_TRACER_MODE_WHITE_BOTH_SENSORS | 10 | 양쪽 바닥 센서를 모두 사용하여 흰색 라인을 중앙에 두고 전진한다. 흰색 교차로와 짧게 끊어진 라인은 직진하여 통과한다. |
LINE_TRACER_MODE_WHITE_TURN_LEFT | 11 | 현재 교차로에 있으면 교차로를 벗어날 때까지 좌회전하고, 흰색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_WHITE_TURN_RIGHT | 12 | 현재 교차로에 있으면 교차로를 벗어날 때까지 우회전하고, 흰색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_WHITE_MOVE_FORWARD | 13 | 현재 교차로에 있으면 교차로를 벗어날 때까지 직진하고, 흰색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_WHITE_UTURN | 14 | 180도 유턴하고 흰색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 라인 트레이서 모드를 설정한다. hamster.lineTracerMode(Hamster.LINE_TRACER_MODE_BLACK_LEFT_SENSOR); // 내장된 라인 트레이서 기능을 사용하지 않는다. hamster.lineTracerMode(0); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 라인 트레이서 주행 속도를 5로 설정한다. hamster.lineTracerSpeed(5); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 4옥타브 도 음을 소리낸다. hamster.note(Hamster.NOTE_C_4); // 소리를 끈다. hamster.note(0); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 4옥타브 도 음을 0.5 박자 소리낸다. hamster.note(Hamster.NOTE_C_4, 0.5); // 0.5 박자 쉰다. hamster.note(0, 0.5); }
입출력 모드 | 값의 범위 | 설명 |
---|---|---|
IO_MODE_SERVO_OUTPUT (아날로그 서보 출력 모드) |
0 ~ 180 (0: off) |
외부 서보 제어용 PWM 신호를 출력하며, 20msec의 주기를 갖는 PWM 파형에서 ON 상태의 펄스 폭을 설정한다. 유효한 값은 1 ~ 180도이며, 펄스 폭 1.0msec ~ 2.0msec에 대응된다. (90도는 1.5msec에 대응) 0(off)인 경우에는 펄스 없이 항상 0이 출력되며, 180보다 큰 값을 입력하면 최대 펄스 폭인 2.5msec로 제한된다. |
IO_MODE_PWM_OUTPUT (PWM 출력 모드) |
0 ~ 255 | 20msec의 주기를 갖는 PWM 파형에서 ON 상태의 듀티비를 0 ~ 255 단계로 설정한다. |
IO_MODE_DIGITAL_OUTPUT (디지털 출력 모드) |
0 또는 1 | 디지털 출력(0 또는 1)을 설정한다. 0을 입력하면 LOW, 0이 아닌 값을 입력하면 HIGH 값을 출력한다. |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); hamster.ioModeA(Hamster.IO_MODE_PWM_OUTPUT); } void draw() { } void run() { // PWM 출력을 50으로 설정한다. hamster.outputA(50); }
입출력 모드 | 값의 범위 | 설명 |
---|---|---|
IO_MODE_SERVO_OUTPUT (아날로그 서보 출력 모드) |
0 ~ 180 (0: off) |
외부 서보 제어용 PWM 신호를 출력하며, 20msec의 주기를 갖는 PWM 파형에서 ON 상태의 펄스 폭을 설정한다. 유효한 값은 1 ~ 180도이며, 펄스 폭 1.0msec ~ 2.0msec에 대응된다. (90도는 1.5msec에 대응) 0(off)인 경우에는 펄스 없이 항상 0이 출력되며, 180보다 큰 값을 입력하면 최대 펄스 폭인 2.5msec로 제한된다. |
IO_MODE_PWM_OUTPUT (PWM 출력 모드) |
0 ~ 255 | 20msec의 주기를 갖는 PWM 파형에서 ON 상태의 듀티비를 0 ~ 255 단계로 설정한다. |
IO_MODE_DIGITAL_OUTPUT (디지털 출력 모드) |
0 또는 1 | 디지털 출력(0 또는 1)을 설정한다. 0을 입력하면 LOW, 0이 아닌 값을 입력하면 HIGH 값을 출력한다. |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); hamster.ioModeB(Hamster.IO_MODE_SERVO_OUTPUT); } void draw() { } void run() { // 서보 출력을 90으로 설정한다. hamster.outputB(90); }
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 value = hamster.rightFloor(); }
LED 색상 | 상수 값 | 설명 |
---|---|---|
LED_OFF | 0 | LED를 끈다. |
LED_BLUE | 1 | LED를 파란색으로 켠다. (R: 0, G: 0, B: 255) |
LED_GREEN | 2 | LED를 초록색으로 켠다. (R: 0, G: 255, B: 0) |
LED_CYAN | 3 | LED를 하늘색으로 켠다. (R: 0, G: 255, B: 255) |
LED_RED | 4 | LED를 빨간색으로 켠다. (R: 255, G: 0, B: 0) |
LED_MAGENTA | 5 | LED를 보라색으로 켠다. (R: 255, G: 0, B: 255) |
LED_YELLOW | 6 | LED를 노란색으로 켠다. (R: 255, G: 255, B: 0) |
LED_WHITE | 7 | LED를 하얀색으로 켠다. (R: 255, G: 255, B: 255) |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 오른쪽 LED를 파란색으로 켠다. hamster.rightLed(Hamster.LED_BLUE); // 오른쪽 LED를 끈다. hamster.rightLed(0); }
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 value = hamster.rightProximity(); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 오른쪽 바퀴를 30%의 속력으로 앞으로 회전하게 한다. hamster.rightWheel(30); // 오른쪽 바퀴를 30%의 속력으로 뒤로 회전하게 한다. hamster.rightWheel(-30); // 오른쪽 바퀴를 정지한다. hamster.rightWheel(0); }
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 value = hamster.signalStrength(); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 30%의 속력으로 앞으로 이동한다. hamster.wheels(30, 30); // 양쪽 바퀴를 정지한다. hamster.stop(); }
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 value = hamster.temperature(); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 연주 속도를 60 BPM으로 한다. hamster.tempo(60); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 양쪽 바퀴를 30%의 속력으로 앞으로 회전하게 한다. hamster.wheels(30, 30); // 양쪽 바퀴를 30%의 속력으로 뒤로 회전하게 한다. hamster.wheels(-30, -30); // 양쪽 바퀴를 정지한다. hamster.wheels(0, 0); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 양쪽 바퀴를 30%의 속력으로 앞으로 회전하게 한다. hamster.wheels(30); // 양쪽 바퀴를 30%의 속력으로 뒤로 회전하게 한다. hamster.wheels(-30); // 양쪽 바퀴를 정지한다. hamster.wheels(0); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void onDeviceDataChanged(Device device, int[] values) { if(device.getId() == Hamster.LEFT_PROXIMITY) { int leftProximity = values[0]; } } void setup() { hamster = Hamster.create(this); // 콜백 함수를 등록한다. hamster.addDeviceDataChangedListener("onDeviceDataChanged"); } void draw() { }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { if(hamster.e(Hamster.LINE_TRACER_STATE)) { // 데이터가 갱신되었는지 확인한다. int state = hamster.read(Hamster.LINE_TRACER_STATE); // 데이터를 읽는다. } }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); // 왼쪽 바퀴 디바이스를 찾는다. Device device = hamster.findDeviceById(Hamster.LEFT_WHEEL); } void draw() { }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); // 왼쪽 바퀴 디바이스를 찾는다. Device device = hamster.findDeviceByName("Hamster.LeftWheel"); } void draw() { }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); Roboid roboid = hamster.findRoboidByName("Hamster"); } void draw() { }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 로봇의 ID를 얻는다. String id = hamster.getId(); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 첫 번째 햄스터 로봇임을 확인한다. if(hamster.getIndex() == 0) { } }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 로봇의 이름을 얻는다. String name = hamster.getName(); }
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 value = hamster.read(Hamster.LEFT_PROXIMITY); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // Y축 가속도 값을 얻는다. int value = hamster.read(Hamster.ACCELERATION, 1); }
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[] data = new int[3]; // 3축 가속도 센서 값을 모두 얻는다. hamster.read(Hamster.ACCELERATION, data); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void onDeviceDataChanged(Device device, int[] values) { if(device.getId() == Hamster.LEFT_PROXIMITY) { int leftProximity = values[0]; } } void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 콜백 함수를 제거한다. hamster.removeDeviceDataChangedListener("onDeviceDataChanged"); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 로봇의 이름을 "Hamster"로 설정한다. hamster.setName("Hamster"); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 왼쪽 바퀴의 속도를 30으로 한다. hamster.write(Hamster.LEFT_WHEEL, 30); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 왼쪽 바퀴의 속도를 30으로 한다. hamster.write(Hamster.LEFT_WHEEL, 0, 30); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 버저 소리의 음 높이를 261.63 Hz로 한다. hamster.writeFloat(Hamster.BUZZER, 261.63); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 버저 소리의 음 높이를 261.63 Hz로 한다. hamster.writeFloat(Hamster.BUZZER, 0, 261.63); }
디바이스 ID | 데이터 형 | 배열 크기 | 단위 | 값의 범위 | 초기 값 |
---|---|---|---|---|---|
LEFT_WHEEL | int[] | 1 | % | -100 ~ 100 | 0 |
RIGHT_WHEEL | int[] | 1 | % | -100 ~ 100 | 0 |
BUZZER | float[] | 1 | Hz | 0 ~ 167772.15 (0: off) | 0 |
OUTPUT_A | int[] | 1 | 0 ~ 255 | 0 | |
OUTPUT_B | int[] | 1 | 0 ~ 255 | 0 | |
TOPOLOGY | int[] | 1 | 0 ~ 15 | 0 | |
LEFT_LED | int[] | 1 | 0 ~ 7 (0: off) | 0 | |
RIGHT_LED | int[] | 1 | 0 ~ 7 (0: off) | 0 | |
NOTE | int[] | 1 | 0 ~ 88 (0: off) | 0 | |
LINE_TRACER_MODE | int[] | 1 | 0 ~ 15 | 0 | |
LINE_TRACER_SPEED | int[] | 1 | 1 ~ 8 | 5 | |
IO_MODE_A | int[] | 1 | 0 ~ 15 | 0 | |
IO_MODE_B | int[] | 1 | 0 ~ 15 | 0 | |
CONFIG_PROXIMITY | int[] | 1 | 1 ~ 7 | 2 | |
CONFIG_GRAVITY | int[] | 1 | 0 ~ 3 | 0 | |
CONFIG_BAND_WIDTH | int[] | 1 | 1 ~ 8 | 3 | |
SIGNAL_STRENGTH | int[] | 1 | dBm | -128 ~ 0 | 0 |
LEFT_PROXIMITY | int[] | 1 | 0 ~ 255 | 0 | |
RIGHT_PROXIMITY | int[] | 1 | 0 ~ 255 | 0 | |
LEFT_FLOOR | int[] | 1 | 0 ~ 100 | 0 | |
RIGHT_FLOOR | int[] | 1 | 0 ~ 100 | 0 | |
ACCELERATION | int[] | 3 | -32768 ~ 32767 | 0 | |
LIGHT | int[] | 1 | Lux | 0 ~ 65535 | 0 |
TEMPERATURE | int[] | 1 | oC | -40 ~ 88 | 0 |
INPUT_A | int[] | 1 | 0 ~ 255 | 0 | |
INPUT_B | int[] | 1 | 0 ~ 255 | 0 | |
LINE_TRACER_STATE | int[] | 1 | 0 ~ 255 | 0 |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // X축 가속도 값을 얻는다. int accelerationX = hamster.read(Hamster.ACCELERATION, 0); // Y축 가속도 값을 얻는다. int accelerationY = hamster.read(Hamster.ACCELERATION, 1); // Z축 가속도 값을 얻는다. int accelerationZ = hamster.read(Hamster.ACCELERATION, 2); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 버저 소리의 음 높이를 1000 Hz로 한다. hamster.write(Hamster.BUZZER, 1000); // 버저 소리의 음 높이를 261.63 Hz로 한다. hamster.writeFloat(Hamster.BUZZER, 261.63); // 버저 소리를 끈다. hamster.write(Hamster.BUZZER, 0); }
데이터 값 | 대역 폭 (Hz) |
---|---|
1 | 7.81 |
2 | 15.63 |
3 (기본 값) | 31.25 |
4 | 62.5 |
5 | 125 |
6 | 250 |
7 | 500 |
8 | 1000 |
데이터 값 | 측정 범위 |
---|---|
0 (기본 값) | 2G |
1 | 4G |
2 | 8G |
3 | 16G |
데이터 값 | 전류 (mA) |
---|---|
1 | 5 |
2 (기본 값) | 10 |
3 | 20 |
4 | 50 |
5 | 100 |
6 | 150 |
7 | 200 |
입출력 모드 | 데이터 값의 범위 | 설명 |
---|---|---|
IO_MODE_ANALOG_INPUT (아날로그 입력 모드) |
0 ~ 255 | 입력 전압을 8비트 ADC로 측정한다. 최대 입력 전압인 3.3V가 입력되면 255의 값을 가진다. |
IO_MODE_DIGITAL_INPUT (디지털 입력 모드) |
0 또는 1 | 입력 전압을 0과 1로 변환한다. 입력 전압이 1.6V 이상이면 1로 하고, 아니면 0으로 한다. |
입출력 모드 | 데이터 값의 범위 | 설명 |
---|---|---|
IO_MODE_ANALOG_INPUT (아날로그 입력 모드) |
0 ~ 255 | 입력 전압을 8비트 ADC로 측정한다. 최대 입력 전압인 3.3V가 입력되면 255의 값을 가진다. |
IO_MODE_DIGITAL_INPUT (디지털 입력 모드) |
0 또는 1 | 입력 전압을 0과 1로 변환한다. 입력 전압이 1.6V 이상이면 1로 하고, 아니면 0으로 한다. |
입출력 모드 | 데이터 값 | 설명 |
---|---|---|
IO_MODE_ANALOG_INPUT (아날로그 입력 모드) |
0 | 입력 전압을 8비트 ADC로 측정한다. 최대 입력 전압인 3.3V가 입력되면 255의 값을 가진다. |
IO_MODE_DIGITAL_INPUT (디지털 입력 모드) |
1 | 입력 전압을 0과 1로 변환한다. 입력 전압이 1.6V 이상이면 1로 하고, 아니면 0으로 한다. |
IO_MODE_SERVO_OUTPUT (아날로그 서보 출력 모드) |
8 | 외부 서보 제어용 PWM 신호를 출력한다. |
IO_MODE_PWM_OUTPUT (PWM 출력 모드) |
9 | 듀티비(0 ~ 255 단계)에 따른 PWM 파형을 출력한다. |
IO_MODE_DIGITAL_OUTPUT (디지털 출력 모드) |
10 | 디지털 값 LOW(0) 또는 HIGH(1)를 출력한다. |
입출력 모드 | 데이터 값 | 설명 |
---|---|---|
IO_MODE_ANALOG_INPUT (아날로그 입력 모드) |
0 | 입력 전압을 8비트 ADC로 측정한다. 최대 입력 전압인 3.3V가 입력되면 255의 값을 가진다. |
IO_MODE_DIGITAL_INPUT (디지털 입력 모드) |
1 | 입력 전압을 0과 1로 변환한다. 입력 전압이 1.6V 이상이면 1로 하고, 아니면 0으로 한다. |
IO_MODE_SERVO_OUTPUT (아날로그 서보 출력 모드) |
8 | 외부 서보 제어용 PWM 신호를 출력한다. |
IO_MODE_PWM_OUTPUT (PWM 출력 모드) |
9 | 듀티비(0 ~ 255 단계)에 따른 PWM 파형을 출력한다. |
IO_MODE_DIGITAL_OUTPUT (디지털 출력 모드) |
10 | 디지털 값 LOW(0) 또는 HIGH(1)를 출력한다. |
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 leftFloor = hamster.read(Hamster.LEFT_FLOOR); }
LED 색상 | 데이터 값 | 설명 |
---|---|---|
LED_OFF | 0 | LED를 끈다. |
LED_BLUE | 1 | LED를 파란색으로 켠다. (R: 0, G: 0, B: 255) |
LED_GREEN | 2 | LED를 초록색으로 켠다. (R: 0, G: 255, B: 0) |
LED_CYAN | 3 | LED를 하늘색으로 켠다. (R: 0, G: 255, B: 255) |
LED_RED | 4 | LED를 빨간색으로 켠다. (R: 255, G: 0, B: 0) |
LED_MAGENTA | 5 | LED를 보라색으로 켠다. (R: 255, G: 0, B: 255) |
LED_YELLOW | 6 | LED를 노란색으로 켠다. (R: 255, G: 255, B: 0) |
LED_WHITE | 7 | LED를 하얀색으로 켠다. (R: 255, G: 255, B: 255) |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 왼쪽 LED를 빨간색으로 켠다. hamster.write(Hamster.LEFT_LED, Hamster.LED_RED); // 왼쪽 LED를 끈다. hamster.write(Hamster.LEFT_LED, Hamster.LED_OFF); }
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 leftProximity = hamster.read(Hamster.LEFT_PROXIMITY); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 왼쪽 바퀴를 30%의 속력으로 앞으로 회전하게 한다. hamster.write(Hamster.LEFT_WHEEL, 30); // 왼쪽 바퀴를 30%의 속력으로 뒤로 회전하게 한다. hamster.write(Hamster.LEFT_WHEEL, -30); // 왼쪽 바퀴를 정지한다. hamster.write(Hamster.LEFT_WHEEL, 0); }
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 light = hamster.read(Hamster.LIGHT); }
라인 트레이서 모드 | 데이터 값 | 설명 |
---|---|---|
LINE_TRACER_MODE_OFF | 0 | 내장된 라인 트레이서 기능을 사용하지 않는다. |
LINE_TRACER_MODE_BLACK_LEFT_SENSOR | 1 | 왼쪽 바닥 센서를 사용하여 검은색 라인을 오른쪽에 두고 가장자리를 따라 전진한다. |
LINE_TRACER_MODE_BLACK_RIGHT_SENSOR | 2 | 오른쪽 바닥 센서를 사용하여 검은색 라인을 왼쪽에 두고 가장자리를 따라 전진한다. |
LINE_TRACER_MODE_BLACK_BOTH_SENSORS | 3 | 양쪽 바닥 센서를 모두 사용하여 검은색 라인을 중앙에 두고 전진한다. 검은색 교차로와 짧게 끊어진 라인은 직진하여 통과한다. |
LINE_TRACER_MODE_BLACK_TURN_LEFT | 4 | 현재 교차로에 있으면 교차로를 벗어날 때까지 좌회전하고, 검은색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_BLACK_TURN_RIGHT | 5 | 현재 교차로에 있으면 교차로를 벗어날 때까지 우회전하고, 검은색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_BLACK_MOVE_FORWARD | 6 | 현재 교차로에 있으면 교차로를 벗어날 때까지 직진하고, 검은색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_BLACK_UTURN | 7 | 180도 유턴하고 검은색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_WHITE_LEFT_SENSOR | 8 | 왼쪽 바닥 센서를 사용하여 흰색 라인을 오른쪽에 두고 가장자리를 따라 전진한다. |
LINE_TRACER_MODE_WHITE_RIGHT_SENSOR | 9 | 오른쪽 바닥 센서를 사용하여 흰색 라인을 왼쪽에 두고 가장자리를 따라 전진한다. |
LINE_TRACER_MODE_WHITE_BOTH_SENSORS | 10 | 양쪽 바닥 센서를 모두 사용하여 흰색 라인을 중앙에 두고 전진한다. 흰색 교차로와 짧게 끊어진 라인은 직진하여 통과한다. |
LINE_TRACER_MODE_WHITE_TURN_LEFT | 11 | 현재 교차로에 있으면 교차로를 벗어날 때까지 좌회전하고, 흰색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_WHITE_TURN_RIGHT | 12 | 현재 교차로에 있으면 교차로를 벗어날 때까지 우회전하고, 흰색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_WHITE_MOVE_FORWARD | 13 | 현재 교차로에 있으면 교차로를 벗어날 때까지 직진하고, 흰색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_WHITE_UTURN | 14 | 180도 유턴하고 흰색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { hamster.write(Hamster.LINE_TRACER_MODE, Hamster.LINE_TRACER_MODE_BLACK_MOVE_FORWARD); // 앞쪽의 교차로까지 이동하는 것이 완료되었는지 확인한다. if(hamster.e(Hamster.LINE_TRACER_STATE)) { if(hamster.read(Hamster.LINE_TRACER_STATE) == 0x40) { println("완료"); } } }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 4옥타브 도 음을 소리낸다. hamster.write(Hamster.NOTE, Hamster.NOTE_C_4); // 소리를 끈다. hamster.write(Hamster.NOTE, Hamster.NOTE_OFF); }
입출력 모드 | 데이터 값의 범위 | 설명 |
---|---|---|
IO_MODE_SERVO_OUTPUT (아날로그 서보 출력 모드) |
0 ~ 180 (0: off) |
외부 서보 제어용 PWM 신호를 출력하며, 20msec의 주기를 갖는 PWM 파형에서 ON 상태의 펄스 폭을 설정한다. 유효한 값은 1 ~ 180도이며, 펄스 폭 1.0msec ~ 2.0msec에 대응된다. (90도는 1.5msec에 대응) 0(off)인 경우에는 펄스 없이 항상 0이 출력되며, 180보다 큰 값을 입력하면 최대 펄스 폭인 2.5msec로 제한된다. |
IO_MODE_PWM_OUTPUT (PWM 출력 모드) |
0 ~ 255 | 20msec의 주기를 갖는 PWM 파형에서 ON 상태의 듀티비를 0 ~ 255 단계로 설정한다. |
IO_MODE_DIGITAL_OUTPUT (디지털 출력 모드) |
0 또는 1 | 디지털 출력(0 또는 1)을 설정한다. 0을 입력하면 LOW, 0이 아닌 값을 입력하면 HIGH 값을 출력한다. |
입출력 모드 | 데이터 값의 범위 | 설명 |
---|---|---|
IO_MODE_SERVO_OUTPUT (아날로그 서보 출력 모드) |
0 ~ 180 (0: off) |
외부 서보 제어용 PWM 신호를 출력하며, 20msec의 주기를 갖는 PWM 파형에서 ON 상태의 펄스 폭을 설정한다. 유효한 값은 1 ~ 180도이며, 펄스 폭 1.0msec ~ 2.0msec에 대응된다. (90도는 1.5msec에 대응) 0(off)인 경우에는 펄스 없이 항상 0이 출력되며, 180보다 큰 값을 입력하면 최대 펄스 폭인 2.5msec로 제한된다. |
IO_MODE_PWM_OUTPUT (PWM 출력 모드) |
0 ~ 255 | 20msec의 주기를 갖는 PWM 파형에서 ON 상태의 듀티비를 0 ~ 255 단계로 설정한다. |
IO_MODE_DIGITAL_OUTPUT (디지털 출력 모드) |
0 또는 1 | 디지털 출력(0 또는 1)을 설정한다. 0을 입력하면 LOW, 0이 아닌 값을 입력하면 HIGH 값을 출력한다. |
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 rightFloor = hamster.read(Hamster.RIGHT_FLOOR); }
LED 색상 | 데이터 값 | 설명 |
---|---|---|
LED_OFF | 0 | LED를 끈다. |
LED_BLUE | 1 | LED를 파란색으로 켠다. (R: 0, G: 0, B: 255) |
LED_GREEN | 2 | LED를 초록색으로 켠다. (R: 0, G: 255, B: 0) |
LED_CYAN | 3 | LED를 하늘색으로 켠다. (R: 0, G: 255, B: 255) |
LED_RED | 4 | LED를 빨간색으로 켠다. (R: 255, G: 0, B: 0) |
LED_MAGENTA | 5 | LED를 보라색으로 켠다. (R: 255, G: 0, B: 255) |
LED_YELLOW | 6 | LED를 노란색으로 켠다. (R: 255, G: 255, B: 0) |
LED_WHITE | 7 | LED를 하얀색으로 켠다. (R: 255, G: 255, B: 255) |
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 오른쪽 LED를 초록색으로 켠다. hamster.write(Hamster.RIGHT_LED, Hamster.LED_GREEN); // 오른쪽 LED를 끈다. hamster.write(Hamster.RIGHT_LED, Hamster.LED_OFF); }
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 rightProximity = hamster.read(Hamster.RIGHT_PROXIMITY); }
import org.roboid.runtime.*; import org.roboid.hamster.*; import org.roboid.robot.*; Hamster hamster; void setup() { hamster = Hamster.create(this); } void draw() { } void run() { // 오른쪽 바퀴를 30%의 속력으로 앞으로 회전하게 한다. hamster.write(Hamster.RIGHT_WHEEL, 30); // 오른쪽 바퀴를 30%의 속력으로 뒤로 회전하게 한다. hamster.write(Hamster.RIGHT_WHEEL, -30); // 오른쪽 바퀴를 정지한다. hamster.write(Hamster.RIGHT_WHEEL, 0); }
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 signalStrength = hamster.read(Hamster.SIGNAL_STRENGTH); }
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 temperature = hamster.read(Hamster.TEMPERATURE); }
토폴로지 | 데이터 값 | 설명 |
---|---|---|
TOPOLOGY_NONE | 0 | None (토폴로지 사용 안 함) |
TOPOLOGY_DAISY_CHAIN | 1 | Daisy Chain |
TOPOLOGY_STAR | 2 | Star |
TOPOLOGY_EXTENDED_STAR | 3 | Extended Star |