// 햄스터 객체를 생성한다. var hamster = Hamster.create(); // 왼쪽 근접 센서 값을 얻는다. hamster.leftProximity(); // X축 가속도 값을 얻는다. hamster.accelerationX(); // Y축 가속도 값을 얻는다. hamster.accelerationY(); // Z축 가속도 값을 얻는다. hamster.accelerationZ(); // 왼쪽 바퀴의 속도를 30으로 한다. hamster.leftWheel(30);
var hamster = Hamster.create();
var hamster = Hamster.create(); // X축 가속도 값을 얻는다. var value = hamster.accelerationX();
var hamster = Hamster.create(); // Y축 가속도 값을 얻는다. var value = hamster.accelerationY();
var hamster = Hamster.create(); // Z축 가속도 값을 얻는다. var value = hamster.accelerationZ();
var hamster = Hamster.create(); // 버저 소리의 음 높이를 1000 Hz로 설정한다. hamster.buzzer(1000); // 버저 소리의 음 높이를 261.63 Hz로 설정한다. hamster.buzzer(261.63); // 버저 소리를 끈다. hamster.buzzer(0);
var hamster = Hamster.create(); // 로봇의 이름을 얻는다. var name = hamster.getName();
입출력 모드 | 값의 범위 | 설명 |
---|---|---|
IO_MODE_ANALOG_INPUT (아날로그 입력 모드) |
0 ~ 255 | 입력 전압을 8비트 ADC로 측정한다. 최대 입력 전압인 3.3V가 입력되면 255의 값을 가진다. |
IO_MODE_DIGITAL_INPUT (디지털 입력 모드) |
0 또는 1 | 입력 전압을 0과 1로 변환한다. 입력 전압이 1.6V 이상이면 1로 하고, 아니면 0으로 한다. |
var hamster = Hamster.create(); hamster.ioModeA(Hamster.IO_MODE_ANALOG_INPUT); // 포트 A로 입력되는 신호 값을 얻는다. var 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으로 한다. |
var hamster = Hamster.create(); hamster.ioModeB(Hamster.IO_MODE_DIGITAL_INPUT); // 포트 B로 입력되는 신호 값을 얻는다. var 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 | 듀티비(%)에 따른 PWM 파형을 출력한다. |
IO_MODE_DIGITAL_OUTPUT (디지털 출력 모드) |
10 | 디지털 값 LOW(0) 또는 HIGH(1)를 출력한다. |
var hamster = Hamster.create(); // 포트 A의 입출력 모드를 아날로그 입력 모드로 설정한다. hamster.ioModeA(Hamster.IO_MODE_ANALOG_INPUT);
입출력 모드 | 상수 값 | 설명 |
---|---|---|
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 | 듀티비(%)에 따른 PWM 파형을 출력한다. |
IO_MODE_DIGITAL_OUTPUT (디지털 출력 모드) |
10 | 디지털 값 LOW(0) 또는 HIGH(1)를 출력한다. |
var hamster = Hamster.create(); // 포트 B의 입출력 모드를 PWM 출력 모드로 설정한다. hamster.ioModeB(Hamster.IO_MODE_PWM_OUTPUT);
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) |
var hamster = Hamster.create(); // 왼쪽 LED를 빨간색으로, 오른쪽 LED를 파란색으로 켠다. hamster.leds(Hamster.LED_RED, Hamster.LED_BLUE); // 양쪽 LED를 끈다. hamster.leds(0, 0);
var hamster = Hamster.create(); // 왼쪽 바닥 센서 값을 얻는다. var 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) |
var hamster = Hamster.create(); // 왼쪽 LED를 빨간색으로 켠다. hamster.leftLed(Hamster.LED_RED); // 왼쪽 LED를 끈다. hamster.leftLed(0);
var hamster = Hamster.create(); // 왼쪽 근접 센서 값을 얻는다. var value = hamster.leftProximity();
var hamster = Hamster.create(); // 왼쪽 바퀴의 속도를 30으로 설정하여 30%의 속력으로 앞으로 회전하게 한다. hamster.leftWheel(30); // 왼쪽 바퀴의 속도를 -30으로 설정하여 30%의 속력으로 뒤로 회전하게 한다. hamster.leftWheel(-30); // 왼쪽 바퀴를 멈춘다. hamster.leftWheel(0);
var hamster = Hamster.create(); // 밝기 센서 값을 얻는다. var 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도 유턴하고 흰색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
var hamster = Hamster.create(); // 라인 트레이서 모드를 설정한다. hamster.lineTracerMode(Hamster.LINE_TRACER_MODE_BLACK_LEFT_SENSOR); // 내장된 라인 트레이서 기능을 사용하지 않는다. hamster.lineTracerMode(0);
라인 트레이서 모드 | 데이터 값 | 설명 |
---|---|---|
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_TURN_LEFT | 11 | 현재 교차로에 있으면 교차로를 벗어날 때까지 좌회전하고, 흰색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_WHITE_TURN_RIGHT | 12 | 현재 교차로에 있으면 교차로를 벗어날 때까지 우회전하고, 흰색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_WHITE_MOVE_FORWARD | 13 | 현재 교차로에 있으면 교차로를 벗어날 때까지 직진하고, 흰색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
LINE_TRACER_MODE_WHITE_UTURN | 14 | 180도 유턴하고 흰색 라인을 따라 직진하다가 다음 교차로를 만나면 정지한다. |
var hamster = Hamster.create(); function callback() { console.log("완료"); // 완료 메시지를 콘솔 창에 표시한다. } // 라인 트레이서 모드를 설정한다. hamster.lineTracerMode(Hamster.LINE_TRACER_MODE_BLACK_MOVE_FORWARD, callback);
var hamster = Hamster.create(); // 라인 트레이서 주행 속도를 5로 설정한다. hamster.lineTracerSpeed(5);
var hamster = Hamster.create(); // 4옥타브 도 음을 소리낸다. hamster.note(Hamster.NOTE_C_4); // 소리를 끈다. hamster.note(0);
입출력 모드 | 값의 범위 | 설명 |
---|---|---|
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 ~ 100 [%] | 20msec의 주기를 갖는 PWM 파형에서 ON 상태의 듀티비(%)를 나타낸다. 100보다 큰 값을 입력하면 항상 ON인 파형이 출력된다. |
IO_MODE_DIGITAL_OUTPUT (디지털 출력 모드) |
0 또는 1 | 디지털 출력(0 또는 1)을 나타낸다. 0을 입력하면 LOW, 0이 아닌 값을 입력하면 HIGH 값을 출력한다. |
var hamster = Hamster.create(); hamster.ioModeA(Hamster.IO_MODE_PWM_OUTPUT); // 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 ~ 100 [%] | 20msec의 주기를 갖는 PWM 파형에서 ON 상태의 듀티비(%)를 나타낸다. 100보다 큰 값을 입력하면 항상 ON인 파형이 출력된다. |
IO_MODE_DIGITAL_OUTPUT (디지털 출력 모드) |
0 또는 1 | 디지털 출력(0 또는 1)을 나타낸다. 0을 입력하면 LOW, 0이 아닌 값을 입력하면 HIGH 값을 출력한다. |
var hamster = Hamster.create(); hamster.ioModeB(Hamster.IO_MODE_SERVO_OUTPUT); // 서보 출력을 90으로 설정한다. hamster.outputB(90);
var hamster = Hamster.create(); // 오른쪽 바닥 센서 값을 얻는다. var 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) |
var hamster = Hamster.create(); // 오른쪽 LED를 파란색으로 켠다. hamster.rightLed(Hamster.LED_BLUE); // 오른쪽 LED를 끈다. hamster.rightLed(0);
var hamster = Hamster.create(); // 오른쪽 근접 센서 값을 얻는다. var value = hamster.rightProximity();
var hamster = Hamster.create(); // 오른쪽 바퀴의 속도를 30으로 설정하여 30%의 속력으로 앞으로 회전하게 한다. hamster.rightWheel(30); // 오른쪽 바퀴의 속도를 -30으로 설정하여 30%의 속력으로 뒤로 회전하게 한다. hamster.rightWheel(-30); // 오른쪽 바퀴를 멈춘다. hamster.rightWheel(0);
var hamster = Hamster.create(); // 로봇의 이름을 'Hamster'로 설정한다. hamster.setName('Hamster');
var hamster = Hamster.create(); // 신호 세기 값을 얻는다. var value = hamster.signalStrength();
var hamster = Hamster.create(); // 온도 센서 값을 얻는다. var value = hamster.temperature();
var hamster = Hamster.create(); // 양쪽 바퀴의 속도를 30으로 설정하여 30%의 속력으로 앞으로 이동하게 한다. hamster.wheels(30, 30); // 양쪽 바퀴의 속도를 -30으로 설정하여 30%의 속력으로 뒤로 이동하게 한다. hamster.wheels(-30, -30); // 양쪽 바퀴를 멈춘다. hamster.wheels(0, 0);