구동계#
소개#
구동계는 로봇의 주행 및 회전을 제어하는 바퀴와 모터로 구성됩니다. 구동계는 모터 또는 모터 그룹으로 구성할 수 있습니다.
구동계는 브레인의 관성 센서를 사용하여 충돌을 감지하고 로봇이 정확하게 움직이고 회전할 수 있도록 합니다. 각 프로젝트 시작 시 구동계는 관성 센서를 자동으로 보정합니다. 보정하는 동안 로봇이 올바르게 움직이고 회전할 수 있도록 로봇을 약 2초 동안 정지 상태로 유지하십시오.
구동계를 코딩하는 방법은 여러 가지가 있습니다. 아래는 모든 구동계 블록 목록입니다.
동작 — 로봇을 이동시키고 회전시키세요.
drive — 로봇을 무한히 전진 또는 후진시킵니다.
드라이브 포 — 로봇을 특정 거리만큼 전진 또는 후진으로 이동시킵니다.
turn — 로봇을 왼쪽 또는 오른쪽으로 계속 회전시킵니다.
turn for — 로봇을 지정된 각도만큼 왼쪽 또는 오른쪽으로 회전시킵니다.
방향 전환 — 로봇을 특정 방향으로 향하게 합니다.
회전 — 로봇을 특정 회전으로 회전시킵니다.
주행 중지 — 로봇의 움직임을 중지합니다.
설정 — 구동계 설정을 조정합니다.
주행 속도 설정 — 로봇에게 얼마나 빠르게 주행할지 알려줍니다.
회전 속도 설정 — 로봇에게 회전 속도를 알려줍니다.
드라이브 정지 설정 — 로봇이 정지하는 방법을 지정합니다. 브레이크, 관성 주행 또는 정지.
드라이브 타임아웃 설정 — 로봇이 동작을 완료하려고 시도할 시간을 초 단위로 설정합니다.
드라이브 헤딩 설정 — 로봇의 현재 헤딩을 새로운 헤딩으로 변경합니다.
구동 회전 설정 — 로봇의 현재 회전을 새로운 회전으로 변경합니다.
값 — 이동 상태를 확인하세요.
드라이브가 완료되었습니다 — 로봇의 이동이 완료되었는지 여부를 보고합니다.
드라이브가 움직이고 있습니다 — 로봇이 움직이고 있는지 여부를 보고합니다.
드라이브 헤딩 — 로봇의 현재 헤딩을 0~359.99도 범위에서 보고합니다.
구동 회전 — 로봇의 현재 회전을 보고합니다.
주행 속도 — 로봇이 얼마나 빠르게 주행하는지 보고합니다.
구동 전류 — 구동계가 사용하는 전기 전류량을 보고합니다.
구동력 — 구동계가 에너지를 얼마나 빨리 사용하는지 보고합니다.
구동 토크 — 구동계가 사용하는 토크량을 보고합니다.
구동 효율 — 구동계가 동력을 얼마나 효율적으로 사용하는지 보고합니다.
구동 온도 — 구동계의 온도를 보고합니다.
행위#
운전하다#
드라이브 스택 블록은 로봇을 앞뒤로 무한히 움직이게 합니다. 로봇은 방향 전환이나 정지와 같은 다른 동작이 주어질 때까지 계속 움직입니다.
[앞으로 v] 방향으로 주행
매개변수 |
설명 |
|---|---|
방향 |
로봇의 이동 방향: 앞으로 또는 뒤로. |
예
시작 시
[Drive forward, then stop.]
[앞으로 v] 방향으로 주행
[2]초 기다리기
주행 정지
운전하다#
스택 블록의 구동 기능은 로봇을 특정 거리만큼 앞뒤로 이동시킵니다. 프로젝트는 로봇이 이동을 완료할 때까지 기다린 후 스택의 다음 블록을 실행합니다.
[앞으로 v] 방향으로 [200] [mm v] 주행 ▶
매개변수 |
설명 |
|---|---|
방향 |
로봇의 이동 방향: 앞으로 또는 뒤로. |
거리 |
로봇이 주행한 거리입니다. 정수 또는 소수일 수 있습니다. |
단위 |
측정 단위: mm(밀리미터) 또는 인치 |
그리고 기다리지 마세요 |
화살표( ▶ )를 선택하여 블록을 확장하면 기다리지 마세요라고 표시되고, 스택의 다음 블록이 즉시 실행됩니다. |
예
시작 시
[Drive forwards and backwards.]
[앞으로 v] 방향으로 [200] [mm v] 주행 ▶
[1]초 기다리기
[뒤로 v] 방향으로 [200] [mm v] 주행 ▶
회전하다#
턴 스택 블록은 로봇을 왼쪽 또는 오른쪽으로 계속 회전시킵니다. 로봇은 주행이나 정지와 같은 다른 동작이 주어질 때까지 계속 회전합니다.
[오른쪽 v] 방향으로 회전
매개변수 |
설명 |
|---|---|
방향 |
로봇이 회전하는 방향: 왼쪽 또는 오른쪽. |
예
시작 시
[Turn right, then stop.]
[오른쪽 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]도 방향각으로 회전 ▶
회전으로 전환#
회전 스택 블록은 로봇을 특정 회전 방향으로 회전시킵니다.
회전은 로봇이 회전한 정도를 도 단위로 측정한 값입니다. 프로젝트 시작 시 회전 값은 0도로 설정됩니다. 회전은 set drive rotation 블록을 사용하여 설정할 수도 있습니다.
회전 값은 절대값입니다. 즉, 회전 방향은 로봇의 현재 회전 각도에 따라 결정됩니다. 오른쪽으로 회전하면 회전 각도가 증가하고, 왼쪽으로 회전하면 회전 각도가 감소합니다.
예를 들어, 로봇이 0도에서 시작하여 720도 회전하면 오른쪽으로 두 번 회전합니다. 그런 다음 360도 회전하면 720도보다 360도가 작기 때문에 왼쪽으로 한 번 회전합니다.
이 프로젝트는 로봇이 회전을 마칠 때까지 기다린 후 스택의 다음 블록을 실행합니다.
[90]도 회전각으로 회전 ▶
매개변수 |
설명 |
|---|---|
회전 |
로봇이 회전할 각도(도)입니다. 정수 또는 소수일 수 있습니다. |
그리고 기다리지 마세요 |
화살표( ▶ )를 선택하여 블록을 확장하면 기다리지 마세요라고 표시되고, 스택의 다음 블록이 즉시 실행됩니다. |
예
시작 시
[Turn left, then spin in a circle clockwise and face right.]
[-90]도 회전각으로 회전 ▶
[2]초 기다리기
[450]도 회전각으로 회전 ▶
운전을 멈추세요#
주행 정지 스택 블록은 로봇의 움직임을 멈춥니다.
주행 정지
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
예
시작 시
[Drive forward, then stop.]
[앞으로 v] 방향으로 주행
[4]초 기다리기
주행 정지
설정#
주행 속도 설정#
주행 속도 설정 스택 블록은 로봇이 얼마나 빠르게 주행해야 하는지를 지정합니다. 백분율이 높을수록 로봇은 더 빠르게 주행하고, 백분율이 낮을수록 더 느리게 주행합니다.
모든 프로젝트는 로봇이 기본적으로 50% 속도로 주행하는 것으로 시작합니다.
참고: 속도가 높을수록 로봇의 주행 속도는 빨라지지만 정밀도는 떨어질 수 있습니다. 속도가 낮을수록 로봇의 주행 속도는 느려지지만 정밀도는 높아질 수 있습니다.
주행 속도를 (50) %로 설정
매개변수 |
설명 |
|---|---|
속도 |
주행 속도를 0%에서 100%까지 조절할 수 있습니다. |
예
시작 시
[Drive forward at the default velocity.]
[앞으로 v] 방향으로 (100) [mm v] 주행 ▶
(1)초 기다리기
[Move slower.]
주행 속도를 (20) %로 설정
[앞으로 v] 방향으로 (100) [mm v] 주행 ▶
(1)초 기다리기
[Move faster.]
주행 속도를 (100) %로 설정
[앞으로 v] 방향으로 (100) [mm v] 주행 ▶
(1)초 기다리기
회전 속도 설정#
회전 속도 설정 스택 블록은 로봇이 회전하는 속도를 지정합니다. 백분율이 높을수록 로봇은 더 빠르게 회전하고, 백분율이 낮을수록 더 느리게 회전합니다.
모든 프로젝트는 로봇이 기본적으로 50% 속도로 회전하는 것으로 시작합니다.
참고: 속도가 높을수록 로봇의 회전 속도는 빨라지지만 정밀도는 떨어질 수 있습니다. 속도가 낮을수록 로봇의 회전 속도는 느려지지만 정밀도는 높아질 수 있습니다.
회전 속도를 [50] [% v]로 설정
매개변수 |
설명 |
|---|---|
속도 |
회전 속도는 0%에서 100%까지입니다. |
예
시작 시
[Turn at default velocity.]
[오른쪽 v] 방향으로 (100)도 회전 ▶
(1)초 기다리기
[Turn slower.]
회전 속도를 (20)%로 설정
[오른쪽 v] 방향으로 (100)도 회전 ▶
(1)초 기다리기
[Turn faster.]
회전 속도를 (100)%로 설정
[오른쪽 v] 방향으로 (100)도 회전 ▶
(1)초 기다리기
세트 드라이브 정지#
설정 드라이브 정지 스택 블록은 로봇이 정지하는 방식(브레이크, 관성 주행 또는 정지)을 설정합니다.
주행 정지 모드를 [브레이크 v]로 설정
매개변수 |
설명 |
|---|---|
행동 중지 |
로봇 정지 방법:
|
이 블록을 사용하지 않으면 로봇은 정지할 때 브레이크를 사용합니다.
드라이브 타임아웃 설정#
set drive timeout 스택 블록은 로봇이 동작을 완료하려고 시도하는 시간을 초 단위로 설정합니다. 로봇이 해당 시간 내에 동작을 완료하지 못하면 시도를 중단하고 스택의 다음 블록으로 넘어갑니다. 이는 로봇이 동작 중에 멈추는 것을 방지합니다.
주행 타임아웃을 (1)초로 설정
매개변수 |
설명 |
|---|---|
시간 |
로봇이 동작을 완료하려고 시도할 수 있는 시간(초)입니다. 정수 또는 소수일 수 있습니다. |
드라이브 헤딩 설정#
헤딩은 로봇이 바라보는 방향을 도 단위로 나타낸 것입니다. set drive heading 스택 블록은 로봇의 현재 헤딩 값을 새로운 헤딩 값으로 변경합니다.
예를 들어, 로봇이 오른쪽을 향하도록 회전한 상태에서 방향을 0도로 설정하면 오른쪽을 향한 위치가 새로운 0도가 됩니다. 그러면 로봇은 이 새로운 방향을 기준으로 다른 위치로 회전할 수 있습니다.
주행 방향각을 (0)도로 설정
매개변수 |
설명 |
|---|---|
표제 |
로봇의 진행 방향 값을 도 단위로 설정합니다. |
예
시작 시
[Turn to the left.]
주행 방향각을 (90)도로 설정
(0)도 방향각으로 회전 ▶
설정 구동 회전#
회전은 로봇이 회전한 정도를 각도로 나타낸 것입니다. 프로젝트 시작 시 회전 값은 0도로 설정됩니다. 드라이브 회전 설정 스택 블록은 로봇의 현재 회전 값을 새로운 값으로 변경합니다.
예를 들어, 로봇이 오른쪽으로 두 바퀴를 완전히 돌았다면 회전 값은 720도가 됩니다. 회전 값을 0도로 설정하면 회전 값이 720도에서 0도로 초기화됩니다. 그러면 로봇은 이 새로운 값을 기준으로 회전할 수 있습니다.
주행 회전각을 (0)도로 설정
매개변수 |
설명 |
|---|---|
회전 |
로봇의 회전 각도를 도 단위로 설정합니다. 정수 또는 소수일 수 있습니다. |
예
시작 시
[Spin counterclockwise two times.]
주행 회전각을 (720)도로 설정
(0)도 회전각으로 회전 ▶
값#
드라이브가 완료되었습니다#
주행 완료 불리언 블록은 로봇의 이동이 완료되었는지 여부를 나타냅니다. 이 블록을 사용하여 로봇의 움직임에 따라 다른 동작의 타이밍을 제어할 수 있습니다.
참 — 로봇의 이동이 완료되었습니다.
거짓 — 로봇은 여전히 움직이고 있습니다.
이 블록은 and don’t wait 매개변수를 가진 다음 Drivetrain 블록과 함께 작동합니다. drive for, turn for, turn to heading, turn to rotation.
<주행 완료?>
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
드라이브가 움직이고 있습니다#
**드라이브가 움직이고 있습니까?**라는 불리언 블록은 로봇이 움직이고 있는지 여부를 나타냅니다. 이를 통해 로봇의 움직임에 따라 다른 동작의 타이밍을 제어할 수 있습니다.
참 — 로봇이 움직이고 있습니다.
거짓 — 로봇은 움직이지 않습니다.
이 블록은 and don’t wait 매개변수를 가진 다음 Drivetrain 블록과 함께 작동합니다. drive for, turn for, turn to heading, turn to rotation.
<주행 중?>
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
드라이브 헤딩#
헤딩은 로봇이 바라보는 방향을 도 단위로 나타낸 것입니다. 드라이브 헤딩 리포터 블록은 0도에서 359.99도까지의 헤딩 값을 보고합니다.
로봇의 초기 진행 방향은 0도입니다.
(주행 방향각(도))
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
예
시작 시
[Display the heading after turning.]
[오른쪽 v] 방향으로 (450)도 회전 ▶
화면에 (주행 방향각(도)) 출력 ◀ 및 커서를 다음 행으로 이동
구동 회전#
회전은 로봇이 회전한 정도를 각도로 나타낸 것입니다. 프로젝트 시작 시 회전 값은 0도로 설정됩니다. 드라이브 회전 리포터 블록은 로봇의 현재 회전 값을 보고합니다.
오른쪽으로 돌면 회전 각도가 증가하고, 왼쪽으로 돌면 회전 각도가 감소합니다. 예를 들어, 오른쪽으로 두 바퀴를 완전히 돌면 720도 회전한 것으로 표시됩니다.
(주행 회전각(도))
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
예
시작 시
[Display the rotation after turning.]
[오른쪽 v] 방향으로 (450)도 회전 ▶
화면에 (주행 회전각(도)) 출력 ◀ 및 커서를 다음 행으로 이동
주행 속도#
주행 속도 리포터 블록은 로봇이 얼마나 빠르게 주행하는지를 보고합니다.
양수 값은 로봇이 전진하고 있음을 의미하고, 음수 값은 로봇이 후진하고 있음을 의미합니다.
(주행 속도([% v]))
매개변수 |
설명 |
|---|---|
단위 |
측정 단위:
|
구동 전류#
구동 전류 보고 블록은 구동계가 사용하는 전류량을 암페어(A) 단위로 측정하여 보고합니다. 전류는 구동계를 통해 흐르는 전기의 양입니다.
전류 값이 높다는 것은 구동계가 더 많은 전류를 사용하고 있다는 의미입니다. 이는 로봇이 물체를 밀거나 갇힌 상태에서 움직이려고 할 때 발생할 수 있습니다.
이는 동작 중에 구동계가 제대로 작동하지 못하는지 확인하는 데 사용할 수 있습니다. 전류가 높은 상태로 유지되면 구동계가 과열되거나 전력 효율이 떨어질 수 있습니다.
(주행 전류(암페어))
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
구동력#
구동력 리포터 블록은 구동계가 사용하는 전력량을 와트 단위로 보고합니다. 전력은 구동계가 에너지를 얼마나 빠르게 사용하는지를 보여줍니다.
출력값이 높다는 것은 구동계가 에너지를 더 빠르게 소모한다는 의미입니다. 이는 로봇이 물체를 밀거나 갇힌 상태에서 움직이려고 할 때 발생할 수 있습니다.
이 기능은 움직임을 비교하거나 구동계가 제대로 작동하지 않는지 확인하는 데 사용할 수 있습니다. 출력이 높은 상태로 유지되면 구동계가 과열되거나 에너지 효율이 떨어질 수 있습니다.
(주행 전력(와트))
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
구동 토크#
토크는 구동계가 회전하는 동안 얼마나 강하게 비틀거나 밀거나 당길 수 있는지를 보여줍니다.
구동 토크 보고 블록은 구동계가 사용하는 토크량을 인치-파운드(InLb) 또는 뉴턴-미터(Nm) 단위로 측정하여 보고합니다.
토크 값이 높다는 것은 구동계가 더 강하게 밀거나 당긴다는 것을 의미합니다. 이는 로봇이 물체를 밀거나, 움직이지 못하는 상황에서 움직이려고 할 때 발생할 수 있습니다.
이는 구동계가 제대로 작동하는지 확인하거나, 각 동작에 필요한 추진력을 비교하는 데 사용할 수 있습니다.
(주행 토크([InLb v]))
매개변수 |
설명 |
|---|---|
단위 |
측정 단위:
|
구동 효율#
구동 효율 보고 블록은 구동계가 동력을 얼마나 효율적으로 사용하는지 0%에서 100%까지의 백분율로 표시합니다.
효율은 구동계의 동력 중 얼마나 많은 부분이 움직임에 사용되는지를 나타냅니다. 효율 값이 높을수록 구동계의 동력이 더 많이 움직이고 있다는 의미입니다. 반대로 로봇이 멈춰 있거나 물체에 부딪혔을 때처럼 구동계가 힘겹게 작동하지만 움직임이 미미할 경우 효율 값이 낮아질 수 있습니다.
이는 움직임을 비교하거나 구동계가 동력을 움직임에 사용하지 않고 낭비하는지 여부를 확인하는 데 사용할 수 있습니다.
(주행 효율\(%\))
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
구동 온도#
구동계 온도 보고 블록은 구동계의 온도를 0%에서 100%까지의 백분율로 보고합니다.
모터 온도는 구동계의 온도를 나타냅니다. 온도가 높을수록 모터가 작동 중에 뜨거워지고 있다는 의미입니다. 모터는 최적의 성능을 유지하려면 55°C 이하로 유지되어야 합니다.
모터가 과열되면 자체 보호를 위해 최대 전류를 낮춥니다. 70°C에 도달하면 모터는 식을 때까지 작동을 멈춥니다.
이는 반복적인 움직임, 장시간 주행 또는 물체를 밀어낼 때 구동계가 과열되는지 여부를 확인하는 데 사용할 수 있습니다.
(주행 온도\(%\))
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |