제어#
소개#
VEXcode VR의 제어 블록은 반복문, 조건문, 블록 실행 지연 등을 처리하여 프로젝트의 흐름을 관리합니다.
루프란 컴퓨터가 명령을 받을 때까지 동일한 단계 또는 일련의 단계를 반복하는 것을 말합니다. 조건이란 컴퓨터가 다음에 수행할 작업을 결정하기 위해 확인하는 규칙입니다. 예를 들어, 센서가 물체를 감지하면 로봇은 앞으로 이동할 수 있습니다.
아래는 사용 가능한 블록 목록입니다.
wait – 특정 시간 동안 블록 실행을 일시 중지합니다.
wait until – 지정된 조건이 충족될 때까지 블록 실행을 일시 중지합니다.
반복 – 블록 세트를 지정된 횟수만큼 반복합니다.
영원히 – 블록 세트를 무한히 반복합니다.
반복할 때까지 – 조건이 충족될 때까지 블록 세트를 반복합니다.
while – 조건이 참인 동안 블록 세트를 반복합니다.
if – 조건이 참이면 블록 세트를 실행합니다.
if / else – 조건이 참이면 한 세트의 블록을 실행하고, 그렇지 않으면 다른 세트를 실행합니다.
if / else if / else – 여러 조건에 따라 다른 블록 세트를 실행합니다.
break – repeat, forever, repeat until, 또는 while 루프를 즉시 종료합니다.
프로젝트 중지 – 프로젝트를 종료합니다.
기다리다#
대기 스택 블록은 다음 블록으로 넘어가기 전에 특정 시간 동안 블록 실행을 일시 중지합니다.
(1)초 기다리기
매개변수 |
설명 |
|---|---|
시간 |
기다려야 하는 시간을 양의 정수 또는 소수(초)로 나타냅니다. |
예
시작 시 :: hat events
[Move forward for one second, then stop.]
[앞으로 v] 방향으로 주행
(1)초 기다리기
주행 정지
기다리다#
wait until 스택 블록은 지정된 조건이 충족될 때까지 블록 실행을 일시 중지한 후 다음 블록으로 이동합니다.
<>까지 기다리기
매개변수 |
설명 |
|---|---|
상태 |
다음 단계로 넘어가기 전에 충족해야 하는 조건입니다. |
예
시작 시 :: hat events
[Move forward until a button is pressed, then stop.]
[앞으로 v] 방향으로 주행
<[LeftBumper v] 눌림?>까지 기다리기
주행 정지
반복하다#
반복 C 블록은 그 안에 있는 블록들을 정해진 횟수만큼 실행합니다.
[10]번 반복
끝
매개변수 |
설명 |
|---|---|
타임스 |
반복 블록이 실행되는 횟수를 설정하는 정수입니다. |
예
시작 시 :: hat events
[Move in a square path.]
[4]번 반복
[앞으로 v] 방향으로 [150] [mm v] 주행 ▶
[오른쪽 v] 방향으로 [90]도 회전 ▶
끝
영원히#
영원한 C 블록은 멈추지 않고 그 안에 있는 블록들을 계속해서 반복 실행합니다.
무한 반복
끝
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
예
시작 시 :: hat events
[Move in a square path forever.]
무한 반복
[앞으로 v] 방향으로 [150] [mm v] 주행 ▶
[오른쪽 v] 방향으로 [90]도 회전 ▶
끝
반복할 때까지#
반복 실행 C 블록은 지정된 조건이 충족될 때까지 그 안에 있는 블록들을 반복적으로 실행합니다.
<>까지 반복
끝
매개변수 |
설명 |
|---|---|
상태 |
각 반복문 실행 전에 확인하는 표현식 또는 변수입니다. 이 변수가 False이면 반복문이 계속 실행되고, True이면 반복문이 종료됩니다. |
예
시작 시 :: hat events
[Move the pen until the bumper is pressed.]
[앞으로 v] 방향으로 주행
<[LeftBumper v] 눌림?>까지 반복
펜 [아래로 v]이동
(0.5)초 기다리기
펜 [위로 v]이동
(0.5)초 기다리기
끝
(0.5)초 기다리기
주행 정지
~하는 동안#
C 블록의 while 구문은 지정된 조건이 충족되는 동안 내부 블록을 반복적으로 실행합니다.
<> 동안
끝
매개변수 |
설명 |
|---|---|
상태 |
각 반복문 실행 전에 확인하는 표현식 또는 변수입니다. 이 변수가 참이면 반복문이 계속 실행되고, 거짓이면 반복문이 종료됩니다. |
예
시작 시 :: hat events
[Display a message while moving.]
[앞으로 v] 방향으로 [300] [mm v] 주행 ◀ 및 기다리지 않음
<주행 중?> 동안
[Moving...] 출력 ▶
(0.1)초 기다리기
모든 행 지우기
끝
[Done!] 출력 ▶
만약에#
C 블록의 if 조건문은 조건이 참일 경우 내부 블록들을 실행합니다.
<>이면
끝
매개변수 |
설명 |
|---|---|
상태 |
조건문이 실행될 때 검사되는 표현식 또는 변수입니다. 이 값이 참이면 if 블록 안의 블록들이 실행되고, 거짓이면 해당 블록들은 건너뛰어집니다. |
예
시작 시 :: hat events
[Turn in a circle if the bumper is pressed.]
[앞으로 v] 방향으로 주행
무한 반복
<[LeftBumper v] 눌림?>이면
[뒤로 v] 방향으로 (200) [mm v] 주행 ▶
[오른쪽 v] 방향으로 (360)도 회전 ▶
끝
주행 정지
끝
만약 / 그렇지 않다면#
C 블록의 if / else 구문은 조건이 참인지 거짓인지에 따라 어떤 블록들이 실행될지 결정합니다.
<>이면
아니면
끝
매개변수 |
설명 |
|---|---|
상태 |
문장이 실행될 때 검사되는 표현식 또는 변수입니다. 이 변수가 참이면 if 블록 안의 블록들이 실행되고, 거짓이면 else 블록 안의 블록들이 실행됩니다. |
예
시작 시 :: hat events
[If bumper pressed, reverse and turn right.]
무한 반복
<[LeftBumper v] 눌림?>이면
[뒤로 v] 방향으로 (100) [mm v] 주행 ▶
[오른쪽 v] 방향으로 (90)도 회전 ▶
아니면
[앞으로 v] 방향으로 주행
끝
만약 / 그렇지 않다면 / 그렇지 않다면#
if / else if / else 확장형 C 블록은 조건에 따라 어떤 블록 집합이 실행될지 선택합니다.
if 문은 조건이 True로 평가되면 해당 코드 블록을 실행합니다.
else if 문은 이전의 모든 조건이 False로 평가된 경우에만 추가 조건을 확인합니다. 여러 개의 else if 문을 사용할 수 있습니다.
else는 이전 조건 중 어느 것도 True로 평가되지 않은 경우에만 해당 코드 블록을 실행합니다.
<>이면
아니면 <>이면
아니면
끝
매개변수 |
설명 |
|---|---|
상태 |
문장이 실행될 때 검사되는 표현식 또는 변수입니다. 첫 번째 조건이 참이면 해당 블록 집합이 실행됩니다. 모든 조건이 거짓으로 평가되면 else 블록 안의 블록들이 실행됩니다. |
예
시작 시 :: hat events
[Turn right if the an Eye Sensor detects red, left if it detects green, and continue driving if anything else.]
무한 반복
<[FrontEye v]이 [빨강 v] 감지?>이면
[오른쪽 v] 방향으로 (90)도 회전 ▶
아니면 <[FrontEye v]이 [초록 v] 감지?>이면
[왼쪽 v] 방향으로 (90)도 회전 ▶
아니면
[앞으로 v] 방향으로 주행
끝
끝
부서지다#
The break stack block exits a loop immediately. This block can be used inside repeat, repeat until, while, and forever blocks. Break is useful when a loop needs to stop early based on something that happens during the project, like a button being pressed or a sensor detecting an object.
중단
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
예
시작 시 :: hat events
[Stop turning after a button is pressed.]
무한 반복
[앞으로 v] 방향으로 주행
<[LeftBumper v] 눌림?>이면
중단
끝
끝
주행 정지
프로젝트 중단#
프로젝트 중지 스택 블록은 실행 중인 프로젝트를 종료합니다.
프로젝트 정지
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
예
시작 시 :: hat events
[Stop the project entirely after a button is pressed.]
무한 반복
[앞으로 v] 방향으로 주행
<[LeftBumper v] 눌림?>이면
프로젝트 정지
끝
끝