외부의 웹 브라우저에서 실행하는 경우
-
로봇 코딩 소프트웨어에 내장된 자바스크립트 에디터를 사용하는 경우에는 코드만 작성하여 실행하면 됩니다.
-
외부의 웹 브라우저를 사용하는 경우에는 roboid-2.0.5.js 파일을 포함해야 하며,
connect 함수를 호출하여 로봇 코딩 소프트웨어와 통신으로 연결하여야 합니다.
-
connect 함수를 호출할 때 로봇 코딩 소프트웨어가 실행되어 있는 컴퓨터의 IP 주소를 입력하면 되는데,
로봇 코딩 소프트웨어가 실행되어 있는 컴퓨터와 웹 브라우저가 실행되는 컴퓨터가 같은 경우에는
'localhost' 또는 '127.0.0.1'을 입력하면 됩니다.
<!DOCTYPE html>
<html>
<head>
<title>Example</title>
<script src="roboid-2.0.5.js"></script>
</head>
<body>
<script>
connect('123.45.67.89');
var hamster = Hamster.create();
hamster.wheels(30, 30);
</script>
</body>
</html>
자바스크립트 코드 작성 시 주의할 점
-
자바스크립트 코드는 비동기 방식으로 작성되어야 합니다.
아래 코드와 같이 무한 반복을 하거나 오랫동안 시간을 끄는 코드는 작성하지 않아야 합니다.
var hamster = Hamster.create();
while(true) {
console.log(hamster.leftProximity());
}
var hamster = Hamster.create();
while(hamster.leftProximity() < 40) {
hamster.wheels(30, 30);
}
hamster.wheels(0, 0);
-
위의 코드들은 아래와 같이 execute() 함수를 통해 작성할 수 있습니다.
-
execute() 함수는 function execute()의 형태로 함수를 선언하기만 하면 됩니다.
execute() 함수는 약 20msec마다 호출되기 때문에 함수 내에서 시간을 끌면 안 되고,
함수 내에서 구현된 부분은 20msec 내에 모두 처리가 되도록 하여야 합니다.
var hamster = Hamster.create();
function execute() {
console.log(hamster.leftProximity());
}
var hamster = Hamster.create();
function execute() {
if(hamster.leftProximity() < 40) {
hamster.wheels(30, 30);
} else {
hamster.wheels(0, 0);
}
}
목차
심화
- 컵 따라 돌기
- 로봇 청소기
- 라인 트레이서
- 햄스터 친구 따라가기
- 미로 탈출
확장 키트
- 디지털 입력 - 버튼을 누르면 삐 소리가 나요
- 디지털 출력 - 어두우면 LED 불이 켜져요
- 디지털 출력 - 반짝반짝 LED를 깜박여요
- 디지털 출력 - 기울이는 방향으로 LED가 켜져요
- 아날로그 입력 (ADC) - 포텐셔미터를 돌리면 음 높이가 달라져요
- 아날로그 입력 (ADC) - 뜨겁지 않게 해주세요
- 아날로그 입력 (ADC) - 빛을 따라 움직여요
- PWM 출력 - LED 불이 부드럽게 밝아졌다 어두워져요
- PWM 출력 - LED 촛불이 바람에 흔들려요
- 아날로그 서보 출력 - 햄스터 로봇에게 꼬리가 생겼어요
영재반
- 브레이튼버그의 로봇
- 행위 기반의 로봇 제어
- 경로 탐색
- 자리 바꾸기
Copyright Robot Software Education Institute. All rights reserved.
Please contact prof. Kwang-Hyun Park (
akaii@kw.ac.kr) if you have any problem.