구동계#
소개#
123 로봇은 두 바퀴 구동계를 사용하여 주행 및 회전이 가능합니다. 구동계 블록은 로봇의 움직임을 제어합니다.
구동계는 두 가지 방식으로 거리를 측정할 수 있습니다. 걸음 수와 mm(밀리미터)입니다. 1 걸음 수는 123 필드의 한 칸에 해당합니다.
구동계를 코딩하는 방법은 여러 가지가 있습니다. 아래는 모든 구동계 블록 목록입니다.
동작 — 로봇을 이동시키고 회전시키세요.
drive — 로봇을 무한히 전진 또는 후진시킵니다.
드라이브 포 — 로봇을 특정 거리만큼 전진 또는 후진으로 이동시킵니다.
드라이브 텀 — 물체, 충돌 또는 선을 감지할 때까지 로봇을 앞뒤로 움직입니다.
turn — 로봇을 왼쪽 또는 오른쪽으로 계속 회전시킵니다.
turn for — 로봇을 지정된 각도만큼 왼쪽 또는 오른쪽으로 회전시킵니다.
방향 전환 — 로봇을 -359도에서 359도 사이의 특정 방향으로 회전시킵니다. 로봇은 목표 방향에 도달하기 위해 가장 짧은 방향으로 회전합니다.
주행 중지 — 로봇의 움직임을 중지합니다.
설정 — 구동계 설정을 조정합니다.
드라이브 타임아웃 설정 — 로봇이 동작을 완료하려고 시도할 시간을 초 단위로 설정합니다.
드라이브 헤딩 설정 — 로봇의 현재 헤딩을 새로운 헤딩으로 변경합니다.
값 — 이동 상태를 확인하세요.
드라이브가 완료되었습니다 — 로봇의 이동이 완료되었는지 여부를 보고합니다.
드라이브 헤딩 — 로봇의 현재 헤딩을 0~359도 범위에서 보고합니다.
행위#
운전하다#
드라이브 스택 블록은 로봇을 앞뒤로 무한히 움직이게 합니다. 로봇은 방향 전환이나 정지와 같은 다른 동작이 주어질 때까지 계속 움직입니다.
[앞으로 v] 방향으로 주행
매개변수 |
설명 |
|---|---|
방향 |
로봇의 이동 방향: 앞으로 또는 뒤로. |
예
시작 시
[Drive for 2 seconds.]
[앞으로 v] 방향으로 주행
(2)초 기다리기
주행 정지
운전하다#
스택 블록의 구동 기능은 로봇을 특정 거리만큼 앞뒤로 이동시킵니다. 프로젝트는 로봇이 이동을 완료할 때까지 기다린 후 스택의 다음 블록을 실행합니다.
[앞으로 v] 방향으로 (1) [스텝 v] 주행
매개변수 |
설명 |
|---|---|
방향 |
로봇의 이동 방향: 앞으로 또는 뒤로. |
거리 |
로봇이 주행한 거리입니다. 정수 또는 소수일 수 있습니다. |
단위 |
거리 단위: 걸음 또는 mm. |
예
시작 시
[Drive back and forth.]
[앞으로 v] 방향으로 (3) [스텝 v] 주행
[뒤로 v] 방향으로 (3) [스텝 v] 주행
운전해서 가세요#
드라이브 텀블(drive until) 스택 블록은 아이 센서가 물체, 충돌 또는 선을 감지할 때까지 로봇을 앞으로 이동시킵니다.
[물체 v]까지 앞으로 이동
매개변수 |
설명 |
|---|---|
상태 |
로봇을 멈추게 하는 조건:
|
예
시작 시
[Reverse after a crash.]
[충돌 v]까지 앞으로 이동
[뒤로 v] 방향으로 (1) [스텝 v] 주행
회전하다#
턴 스택 블록은 로봇을 왼쪽 또는 오른쪽으로 계속 회전시킵니다. 로봇은 주행이나 정지와 같은 다른 동작이 주어질 때까지 계속 회전합니다.
[오른쪽 v] 방향으로 회전
매개변수 |
설명 |
|---|---|
방향 |
로봇이 회전하는 방향: 왼쪽 또는 오른쪽. |
예
시작 시
[Turn for 2 seconds.]
[오른쪽 v] 방향으로 회전
(2)초 기다리기
주행 정지
돌려주세요#
스택의 turn for 블록은 로봇을 지정된 각도만큼 왼쪽 또는 오른쪽으로 회전시킵니다. 회전은 로봇의 현재 위치를 기준으로 합니다. 프로젝트는 로봇이 회전을 완료할 때까지 기다린 후 스택의 다음 블록을 실행합니다.
[오른쪽 v] 방향으로 (90)도 회전
매개변수 |
설명 |
|---|---|
방향 |
로봇이 회전하는 방향: 왼쪽 또는 오른쪽. |
각도 |
로봇이 회전하는 각도(도)입니다. 정수 또는 소수일 수 있습니다. |
예
시작 시
[Turn left, then turn around to the right.]
[왼쪽 v] 방향으로 (90)도 회전
[오른쪽 v] 방향으로 (180)도 회전
제목으로 이동#
헤딩은 로봇이 향하는 방향을 도 단위로 나타낸 것입니다. 턴 투 헤딩 스택 블록은 로봇을 -359도에서 359도 사이의 특정 방향으로 회전시킵니다. 로봇은 목표 방향에 도달하기 위해 가장 짧은 경로로 회전합니다.
로봇의 초기 진행 방향은 0도입니다.
(90)도 방향각으로 회전
매개변수 |
설명 |
|---|---|
표제 |
로봇이 향해야 할 방향을 도 단위로 입력합니다. 정수 또는 -359에서 359 사이의 소수 값을 사용할 수 있습니다. |
예
시작 시
[Turn to face the cardinal directions.]
(90)도 방향각으로 회전
(2)초 기다리기
(180)도 방향각으로 회전
(2)초 기다리기
(270)도 방향각으로 회전
(2)초 기다리기
(0)도 방향각으로 회전
(2)초 기다리기
운전을 멈추세요#
주행 정지 스택 블록은 로봇의 움직임을 멈춥니다.
주행 정지
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
예
시작 시
[Stop driving after 4 seconds.]
[앞으로 v] 방향으로 주행
[4]초 기다리기
주행 정지
설정#
드라이브 타임아웃 설정#
set drive timeout 스택 블록은 로봇이 동작을 완료하려고 시도하는 시간을 초 단위로 설정합니다. 로봇이 해당 시간 내에 동작을 완료하지 못하면 시도를 중단하고 스택의 다음 블록으로 넘어갑니다. 이는 로봇이 동작 중에 멈추는 것을 방지합니다.
주행 타임아웃을 (1)초로 설정
매개변수 |
설명 |
|---|---|
시간 |
로봇이 동작을 완료하려고 시도할 수 있는 시간(초)입니다. 정수 또는 소수일 수 있습니다. |
예
시작 시
[Turn right after driving for 1 second.]
주행 타임아웃을 (1)초로 설정
[앞으로 v] 방향으로 (1000) [mm v] 주행
[오른쪽 v] 방향으로 (90)도 회전
드라이브 헤딩 설정#
헤딩은 로봇이 바라보는 방향을 도 단위로 나타낸 것입니다. set drive heading 스택 블록은 로봇의 현재 헤딩 값을 새로운 헤딩 값으로 변경합니다.
예를 들어, 로봇이 오른쪽을 향하도록 회전한 상태에서 방향을 0도로 설정하면 오른쪽을 향한 위치가 새로운 0도가 됩니다. 그러면 로봇은 이 새로운 방향을 기준으로 다른 위치로 회전할 수 있습니다.
주행 방향각을 (0)도로 설정
매개변수 |
설명 |
|---|---|
표제 |
로봇의 진행 방향 값을 도 단위로 설정합니다. 이 값은 0에서 359 사이의 정수 또는 소수일 수 있습니다. |
예
시작 시
[Face the new 0 degree heading.]
주행 방향각을 (90)도로 설정
(0)도 방향각으로 회전
값#
드라이브가 완료되었습니다#
주행 완료 불리언 블록은 로봇의 이동이 완료되었는지 여부를 나타냅니다. 이 블록을 사용하여 로봇의 움직임에 따라 다른 동작의 타이밍을 제어할 수 있습니다.
참 — 로봇의 이동이 완료되었습니다.
거짓 — 로봇은 여전히 움직이고 있습니다.
이 블록은 다음 Drivetrain 블록과 함께 작동합니다: drive for, drive until, turn for, turn to heading.
<주행 완료?>
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
예
시작 시
[Glow blue after a crash.]
[충돌 v]까지 앞으로 이동
무한 반복
<주행 완료?>이면
[파랑 v]으로 빛내기
아니면
[초록 v]으로 빛내기
드라이브 헤딩#
헤딩은 로봇이 바라보는 방향을 도 단위로 나타낸 것입니다. 드라이브 헤딩 리포터 블록은 로봇의 현재 헤딩을 0도에서 359도 사이의 값으로 보고합니다.
로봇의 초기 진행 방향은 0도입니다.
(주행 방향각(도))
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
예
시작 시
[Display the heading after turning.]
[오른쪽 v] 방향으로 (450)도 회전
(주행 방향각(도)) 출력 ▶