다운로드 교육자료 문제해결 레퍼런스 구입방법

교육 자료 : 프로세싱 : 이동하고 회전하기

앞으로 이동하기
바퀴의 속도는 -100부터 100까지의 값을 가지는데 최대 속도에 대한 % 값입니다. 양수 값이면 바퀴가 앞으로, 음수 값이면 뒤로 회전하고, 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() {
    hamster.wheels(30, 30); // 왼쪽 바퀴와 오른쪽 바퀴의 속도를 30으로 설정한다.
}

값을 하나만 입력하면 양쪽 바퀴의 속도를 같은 값으로 설정합니다.

hamster.wheels(30); // 양쪽 바퀴의 속도를 30으로 설정한다.

바퀴의 속도를 0부터 100까지 변경하면서 로봇이 이동하는 속도가 어떻게 달라지는지 관찰해 봅시다.
뒤로 이동하기
햄스터 로봇이 뒤로 이동하게 하려면 왼쪽 바퀴와 오른쪽 바퀴의 속도를 같은 음수 값으로 하면 됩니다.

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.wheels(-30, -30); // 왼쪽 바퀴와 오른쪽 바퀴의 속도를 -30으로 설정한다.
}

값을 하나만 입력하면 양쪽 바퀴의 속도를 같은 값으로 설정합니다.

hamster.wheels(-30); // 양쪽 바퀴의 속도를 -30으로 설정한다.

바퀴의 속도를 0부터 -100까지 변경하면서 로봇이 이동하는 속도가 어떻게 달라지는지 관찰해 봅시다.
제자리 돌기 (스핀)
왼쪽 바퀴와 오른쪽 바퀴의 속도를 크기는 같게 하고 부호만 반대로 하면 제자리에서 회전합니다. 로봇이 회전하는 중심점은 왼쪽 바퀴와 오른쪽 바퀴의 축을 연결하는 직선의 중심입니다.

               

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.wheels(-30, 30); // 왼쪽 바퀴의 속도를 -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() {
    hamster.wheels(0, 30); // 왼쪽 바퀴의 속도를 0, 오른쪽 바퀴의 속도를 30으로 설정한다.
}

오른쪽 바퀴를 중심으로 회전하게 해보고, 시계 방향, 반시계 방향 등 다양한 회전을 만들어 봅시다.

왼쪽 바퀴 또는 오른쪽 바퀴, 하나의 값만 설정하기 위해서는 leftWheel() 또는 rightWheel() 메소드를 사용하여도 됩니다.

void run() {
    hamster.leftWheel(30); // 왼쪽 바퀴의 속도를 30으로 설정한다.
}
void run() {
    hamster.rightWheel(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() {
    hamster.wheels(20, 40); // 왼쪽 바퀴의 속도를 20, 오른쪽 바퀴의 속도를 40으로 설정한다.
}

왼쪽 바퀴와 오른쪽 바퀴의 속도를 변경하면서 로봇이 회전하는 원의 크기가 어떻게 달라지는지 관찰해 봅시다.

종이컵의 바깥을 돌 수 있도록 왼쪽 바퀴와 오른쪽 바퀴의 속도를 조정해 봅시다.

목차
수업 자료 내려 받기
수업 준비
  1. 하드웨어 살펴보기
  2. 햄스터 · 햄스터S · USB 동글 PDF · PPT
  3. 소프트웨어 설치 (설치 파일을 내려 받은 경우)
  4. PDF · PPT
  5. 소프트웨어 설치 (라이브러리 파일을 내려 받은 경우)
  6. PDF · PPT
  7. 로봇과 컴퓨터 연결
  8. PDF · PPT
  9. 소프트웨어 실행
  10. PDF · PPT
  11. 환경 설정
  12. PDF · PPT
프로세싱 기초
  1. 도형 그리기
  2. 애니메이션
  3. 마우스와 키보드 이벤트
햄스터 기초
  1. 코드의 기본 형태 만들기
  2. 클라우드 컴퓨터 환경에서 작업하기 (선택 사항)
  3. 말판 이동하기 #1 (순차, 횟수 반복)
  4. 이동하고 회전하기
  5. LED 켜고 소리 내기
  6. 순서대로, 반복하여 명령하기
  7. 키보드 이벤트
  8. 근접 센서 사용하기
  9. 말판 이동하기 #2 (~인 동안 반복)
  10. 바닥 센서 사용하기
  11. 밝기 센서와 가속도 센서 사용하기
  12. 브레이튼버그의 로봇
햄스터 심화
  1. 보드 게임 만들기
  2. 그래픽 인터페이스
  3. 센서 한 개를 사용한 라인 트레이서
  4. 센서 두 개를 사용한 라인 트레이서
  5. 햄스터 친구 따라가기 (2인 1조)
  6. 벽 따라가기
  7. 로봇 청소기 흉내 내기
  8. 라인 트레이서 교차로 주행하기
  9. 미로 탈출
확장 키트
  1. 조립하기
  2. 핀/소켓 배치 살펴보기
  3. 디지털 입력 - 버튼을 누르면 삐 소리가 나요
  4. 디지털 출력 - 어두우면 LED 불이 켜져요
  5. 디지털 출력 - 반짝반짝 LED를 깜박여요
  6. 디지털 출력 - 기울이는 방향으로 LED가 켜져요
  7. 아날로그 입력 - 포텐셔미터를 돌리면 음 높이가 달라져요
  8. 아날로그 입력 - 뜨겁지 않게 해주세요
  9. 아날로그 입력 - 빛을 따라 움직여요
  10. PWM 출력 - LED 불이 부드럽게 밝아졌다 어두워져요
  11. PWM 출력 - LED 촛불이 바람에 흔들려요
  12. 아날로그 서보 출력 - 햄스터 로봇에게 꼬리가 생겼어요
햄스터 고급
  1. 행위 기반의 로봇 제어
  2. 경로 탐색
  3. 자리 바꾸기
Copyright 로봇SW교육원 All rights reserved.
어려운 일이 있으면 광운대학교 로봇학부 박광현 교수(akaii@kw.ac.kr)에게 연락하세요.