Blocos específicos para robôs#
Introdução#
O robô de competição GO inclui controlos para os motores dos braços e blocos de sensores específicos para robôs.
Todos os blocos VR padrão do VEXcode estão disponíveis para utilização no GO Competition - Mars Math Expedition Playground.
Abaixo está uma lista de todos os blocos específicos para robôs disponíveis:
Sistema de transmissão – Movimenta e roda o robô.
Ações
drive — Move o robô para a frente ou para trás indefinidamente.
drive for — Move o robô para a frente ou para trás uma distância específica.
virar — Vira o robô para a esquerda ou para a direita para sempre.
virar para — Vira o robô para a esquerda ou para a direita por um número específico de graus.
virar para a direção — Vira o robô para ficar virado para uma direção específica.
virar para rotação — Roda o robô para uma rotação específica.
parar de conduzir — Interrompe o movimento do robô.
Configurações
definir velocidade de condução — Indica ao robô a velocidade de condução.
definir velocidade de rotação — Indica ao robô a velocidade com que deve rodar.
definir direção de direção — Altera a direção atual do robô para uma nova direção.
definir rotação de acionamento — Altera a rotação atual do robô para uma nova rotação.
set drive timeout — Define quantos segundos o robô tentará completar um movimento.
Valores
drive is done — Reporta se o robô já terminou de se mover.
drive is moving — Reporta se o robô se está a mover.
direção de condução — Reporta a direção atual do robô de 0 a 359,99 graus.
rotação de acionamento — Reporta a rotação atual do robô.
velocidade de deslocamento — Reporta a velocidade de deslocamento do robô.
Movimento – Mova e acompanhe o motor do braço do robô.
Ações
rodar motor – Roda o motor do braço para cima ou para baixo continuamente.
rodar motor para – Roda o motor do braço por uma distância específica em graus ou voltas.
rodar motor para a posição – Roda o motor do braço para uma posição específica.
parar motor – Impede o motor do braço de rodar.
Configurações
definir velocidade do motor – Indica ao motor do braço a velocidade de rotação.
definir tempo limite do motor – Define durante quanto tempo o motor do braço tentará completar um movimento.
definir posição do motor – Altera a posição atual do motor do braço para um novo valor.
Valores
motor is done – Reporta se o motor do braço já terminou de se mover.
motor está a rodar – Reporta se o motor do braço está a rodar.
posição do motor – Reporta a posição atual do motor do braço.
velocidade do motor – Reporta a velocidade de rotação do motor do braço, em percentagem de -100% a 100%.
Deteção - Utilize os sensores do robô.
Sensor ocular
Olho encontrou um objeto — Reporta se o sensor ocular detetou ou não um objeto dentro do alcance.
Olho deteta cor — Reporta se o sensor ocular deteta uma cor específica.
Brilho dos olhos — Reporta o brilho detectado pelo sensor ocular.
Matiz dos olhos — Reporta a tonalidade detectada pelo sensor ocular.
Sensor giroscópico
detetada colisão — Reporta se o robô detetou um impacto repentino.
Os exemplos nesta página utilizam a posição inicial padrão do Playground.
Transmissão#
O sistema de transmissão controla a forma como o robô de realidade virtual se move e gira. Pode mover-se para a frente ou para trás, virar para a esquerda ou para a direita, mudar de direção e acompanhar a sua rotação.
Ações#
conduzir#
O bloco de acionamento move o robô para a frente ou para trás indefinidamente. O robô continuará a mover-se até receber outra ação, como virar-se ou parar.
conduzir [frente v]
Parâmetros |
Descrição |
|---|---|
direção |
A direção em que o robô se move: para a frente ou para trás. |
Exemplo
quando iniciar :: hat events
[Drive forward, then stop.]
conduzir [frente v]
aguardar (2) segundos
parar de conduzir
conduzir para#
O bloco de pilha drive for move o robô para a frente ou para trás por uma distância específica. O projeto aguardará até que o robô termine de se mover antes de executar o próximo bloco na pilha.
conduzir [frente v] por (200) [mm v] ▶
Parâmetros |
Descrição |
|---|---|
direção |
A direção em que o robô se move: para a frente ou para trás. |
distância |
A distância percorrida pelo robô. Pode ser um número inteiro ou decimal. |
unidade |
A unidade de distância: mm (milímetros) ou polegadas |
e não espere |
Selecione a seta ( ▶ ) para expandir o bloco e apresentar e não esperar, para que o próximo bloco da pilha seja executado imediatamente. |
Exemplo
quando iniciar :: hat events
[Drive forward.]
conduzir [frente v] por (500) [mm v] ▶
virar#
O bloco de pilha virar faz com que o robô vire para a esquerda ou para a direita indefinidamente. O robô continuará a virar até receber outra ação, como conduzir ou parar.
virar [direita v]
Parâmetros |
Descrição |
|---|---|
direção |
A direção para a qual o robô vira: esquerda ou direita. |
Exemplo
quando iniciar :: hat events
[Turn right, then stop.]
virar [direita v]
aguardar (2) segundos
parar de conduzir
virar para#
O bloco de pilha rodar para roda o robô para a esquerda ou para a direita por um número específico de graus. A rotação é relativa à posição atual do robô. O projeto aguardará até que o robô termine de rodar antes de executar o próximo bloco na pilha.
virar [direita v] por (90) graus ▶
Parâmetros |
Descrição |
|---|---|
direção |
A direção para a qual o robô vira: esquerda ou direita. |
ângulo |
O número de graus que o robô roda. Pode ser um número inteiro ou decimal. |
e não espere |
Selecione a seta ( ▶ ) para expandir o bloco e apresentar e não esperar, para que o próximo bloco da pilha seja executado imediatamente. |
Exemplo
quando iniciar :: hat events
[Turn left, then turn around to the right.]
virar [esquerda v] por (90) graus ▶
virar [direita v] por (180) graus ▶
virar para a direção#
A direção é a direção para a qual o robô está virado, medida em graus. O bloco de pilha virar para a direção roda o robô para uma direção específica entre -359 e 359 graus. O robô irá rodar na direção mais curta para alcançar a direção desejada.
A direção inicial é de 0 graus.
O projeto aguardará até que o robô termine de rodar antes de executar o próximo bloco na pilha.
virar para a direção (90) graus ▶
Parâmetros |
Descrição |
|---|---|
cabeçalho |
A direção para a qual o robô deve estar virado varia entre -359 a 359 graus. |
e não espere |
Selecione a seta ( ▶ ) para expandir o bloco e apresentar e não esperar, para que o próximo bloco da pilha seja executado imediatamente. |
Exemplo
quando iniciar :: hat events
[Turn to face the cardinal directions.]
virar para a direção (90) graus ▶
aguardar (2) segundos
virar para a direção (180) graus ▶
aguardar (2) segundos
virar para a direção (270) graus ▶
aguardar (2) segundos
virar para a direção (0) graus ▶
aguardar (2) segundos
girar#
O bloco de pilha rodar para rotação roda o robô para uma rotação específica.
A rotação é o quanto o robô rodou, medida em graus. No início de um projeto, o valor de rotação é definido como 0 graus. A rotação também pode ser definida através do bloco definir rotação de acionamento.
Os valores de rotação são absolutos. Isto significa que a direção da viragem depende da rotação atual do robô. Virar para a direita aumenta a rotação, e virar para a esquerda diminui a rotação.
Por exemplo, se o robô começar a 0 graus e rodar 720 graus, este irá virar para a direita duas vezes. Se depois rodar 360 graus, virará para a esquerda uma vez, porque 360 é inferior a 720.
O projeto aguardará até que o robô termine de rodar antes de executar o próximo bloco na pilha.
virar para a rotação (90) graus ▶
Parâmetros |
Descrição |
|---|---|
rotação |
O valor de rotação, em graus, para o qual o robô irá rodar. Pode ser um número inteiro ou decimal. |
e não espere |
Selecione a seta ( ▶ ) para expandir o bloco e apresentar e não esperar, para que o próximo bloco da pilha seja executado imediatamente. |
Exemplo
quando iniciar :: hat events
[Turn left, then spin in a circle clockwise and face right.]
virar para a rotação (-90) graus ▶
aguardar (2) segundos
virar para a rotação (450) graus ▶
Pare de conduzir#
O bloco de pilha parar de conduzir interrompe o movimento do robô.
parar de conduzir
Parâmetros |
Descrição |
|---|---|
Este bloco não possui parâmetros. |
Exemplo
quando iniciar :: hat events
[Drive forward, then stop.]
conduzir [frente v]
aguardar [4] segundos
parar de conduzir
Configurações#
definir velocidade de acionamento#
O bloco de pilha definir velocidade de acionamento indica ao robô a velocidade de deslocação. Uma percentagem mais elevada faz com que o robô se desloque mais rapidamente e uma percentagem mais baixa faz com que se desloque mais lentamente.
Todos os projetos começam com o robô a deslocar-se a 50% da velocidade por defeito.
Nota: Uma velocidade mais elevada faz com que o robô se mova mais rapidamente, mas pode ser menos preciso. Uma velocidade mais baixa faz com que o robô se mova mais devagar, mas pode ser mais preciso.
definir velocidade de condução para (50) [% v]
Parâmetros |
Descrição |
|---|---|
velocidade |
A velocidade de condução varia entre 0% a 100%. |
unidade |
Unidade de velocidade: % |
Exemplo
quando iniciar :: hat events
[Drive forward at the default velocity.]
conduzir [frente v] por (100) [mm v] ▶
aguardar (1) segundos
[Move slower.]
definir velocidade de condução para (20) [% v]
conduzir [frente v] por (100) [mm v] ▶
aguardar (1) segundos
[Move faster.]
definir velocidade de condução para (100) [% v]
conduzir [frente v] por (100) [mm v] ▶
aguardar (1) segundos
definir velocidade de rotação#
O bloco de pilha definir velocidade de rotação indica ao robô a velocidade a que deve rodar. Uma percentagem mais elevada faz com que o robô gire mais rápido e uma percentagem mais baixa faz com que o robô gire mais devagar.
Todos os projetos começam com o robô a rodar a 50% da velocidade por defeito.
Nota: Uma velocidade mais elevada faz com que o robô gire mais rápido, mas pode ser menos preciso. Uma velocidade mais baixa faz com que o robô gire mais devagar, mas pode ser mais preciso.
definir velocidade de giro para (50) [% v]
Parâmetros |
Descrição |
|---|---|
velocidade |
A velocidade de rotação varia entre 0% a 100%. |
unidade |
Unidade de velocidade: % |
Exemplo
quando iniciar :: hat events
[Turn at default velocity.]
virar [direita v] por (100) graus ▶
aguardar (1) segundos
[Turn slower.]
definir velocidade de giro para (20)%
virar [direita v] por (100) graus ▶
aguardar (1) segundos
[Turn faster.]
definir velocidade de giro para (100)%
virar [direita v] por (100) graus ▶
aguardar (1) segundos
definir rumo de condução#
A direção é a direção para a qual o robô está virado, medida em graus. O bloco de pilha definir direção de acionamento altera a direção atual do robô para um novo valor de direção.
Por exemplo, se o robô se virou para a direita, definir a direção para 0 graus faz com que essa posição virada para a direita se torne os novos 0 graus. De seguida, o robô pode rodar para outras posições com base nessa nova direção.
definir direção de condução para (0) graus
Parâmetros |
Descrição |
|---|---|
cabeçalho |
O valor da direção, em graus, a definir para o robô. |
Exemplo
quando iniciar :: hat events
[Turn to the left.]
definir direção de condução para (90) graus
virar para a direção (0) graus ▶
definir rotação do acionamento#
A rotação indica o quanto o robô rodou, medida em graus. No início de um projeto, o valor de rotação é definido como 0 graus. O bloco de pilha definir rotação de acionamento altera a rotação atual do robô para um novo valor.
Por exemplo, se o robô tiver dado duas voltas completas para a direita, o seu valor de rotação será de 720 graus. Definir a rotação para 0 graus irá repor essa rotação de 720 para 0 graus. De seguida, o robô poderá rodar para rotações baseadas nesse novo valor.
definir rotação de condução para (0) graus
Parâmetros |
Descrição |
|---|---|
rotação |
O valor de rotação, em graus, a definir para o robô. Pode ser um número inteiro ou decimal. |
Exemplo
quando iniciar :: hat events
[Spin counterclockwise two times.]
definir rotação de condução para (720) graus
virar para a rotação (0) graus ▶
definir tempo limite da unidade#
O bloco de pilha set drive timeout define durante quantos segundos o robô tentará completar um movimento. Se o robô não conseguir completar dentro deste tempo, interromperá a tentativa e passará para o bloco seguinte da pilha. Isto impede que o robô fique preso num movimento.
definir tempo limite de condução para (1) segundos
Parâmetros |
Descrição |
|---|---|
hora |
O número de segundos que o robô pode tentar para completar um movimento. Pode ser um número inteiro ou decimal. |
Exemplo
quando iniciar :: hat events
[Drive forward for 1 second, then turn.]
definir tempo limite de condução para (1) segundos
conduzir [frente v] por (25) [polegadas v] ▶
virar [direita v] por (90) graus ▶
Valores#
A viagem terminou.#
O bloco booleano conclusão da condução indica se o robô terminou de se mover. Isto pode ser utilizado para controlar o tempo de outros comportamentos com base no movimento do robô.
Verdadeiro — O robô terminou de se mover.
Falso — O robô ainda se está a mover.
Este bloco funciona em conjunto com blocos de transmissão que possuem o parâmetro e não espere.
<condução concluída?>
Parâmetros |
Descrição |
|---|---|
Este bloco não possui parâmetros. |
Exemplo
quando iniciar :: hat events
[Start spinning when the drive is complete.]
conduzir [frente v] por (200) [mm v] ◀ e não aguardar
aguardar até <condução concluída?>
virar [direita v] por (360) graus ▶
O veículo está em movimento.#
O bloco booleano drive is moving informa se o robô se está a mover. Isto pode ser utilizado para controlar o tempo de outros comportamentos com base no movimento do robô.
Verdadeiro — O robô está em movimento.
Falso — O robô não se está a mover.
Este bloco funciona em conjunto com blocos de transmissão que possuem o parâmetro e não espere.
<condução em movimento?>
Parâmetros |
Descrição |
|---|---|
Este bloco não possui parâmetros. |
Exemplo
quando iniciar :: hat events
[Print that the robot is moving while it is still driving.]
conduzir [frente v] por (200) [mm v] ◀ e não aguardar
enquanto <condução em movimento?>
imprimir [Still Moving...] ▶
aguardar (0.1) segundos
limpar tela
fim
imprimir [Done!] ▶
Conduzir em direção a#
A direção para a qual o robô está virado, medida em graus. O bloco de relatório direção de direção informa esta direção de 0 a 359,99 graus.
A direção inicial do robô é de 0 graus.
(direção de condução em graus)
Parâmetros |
Descrição |
|---|---|
Este bloco não possui parâmetros. |
Exemplo
quando iniciar :: hat events
[Display the heading after turning.]
virar [direita v] por (450) graus ▶
imprimir (direção de condução em graus) na tela ◀ e mover cursor para a próxima linha
rotação de acionamento#
A rotação indica o quanto o robô rodou, medida em graus. No início de um projeto, o valor de rotação é definido como 0 graus. O bloco de relatório rotação de acionamento informa a rotação atual do robô.
Virar para a direita aumenta a rotação, e virar para a esquerda diminui a rotação. Por exemplo, duas voltas completas para a direita resultarão numa rotação de 720 graus.
(rotação de condução em graus)
Parâmetros |
Descrição |
|---|---|
Este bloco não possui parâmetros. |
Exemplo
quando iniciar :: hat events
[Display the rotation after turning.]
virar [direita v] por (450) graus ▶
imprimir (rotação de condução em graus) na tela ◀ e mover cursor para a próxima linha
velocidade de acionamento#
O bloco de relatório de velocidade de deslocamento informa a velocidade a que o robô se está a deslocar.
(velocidade de condução em [% v])
Parâmetros |
Descrição |
|---|---|
unidade |
Unidade de velocidade: % |
Exemplo
quando iniciar :: hat events
[Display the velocity after driving.]
conduzir [frente v] por (200) [mm v] ▶
imprimir (velocidade de condução em [% v]) na tela ◀ e mover cursor para a próxima linha
Movimento#
O robô GO Competition Advanced 2.0 utiliza o motor do braço para levantar e baixar o braço, permitindo-lhe apanhar, levantar e transportar objetos.
Ações#
motor de rotação#
O bloco de pilha do motor de rotação faz com que o motor do braço gire para cima ou para baixo indefinidamente. O motor continuará a rodar até receber outra ação, como rodar numa direção diferente ou parar.
girar [ArmMotor v] [subir v]
Parâmetros |
Descrição |
|---|---|
motor |
O motor para rodar: ArmMotor. |
direção |
O sentido de rotação do motor: para cima ou para baixo. |
Exemplo
quando iniciar
[Raise the Arm Motor, then stop.]
girar [ArmMotor v] [subir v]
aguardar (1) segundos
parar [ArmMotor v]
motor de rotação para#
O bloco motor de rotação pára acciona um motor por uma distância específica. A rotação é relativa à posição atual do motor. O projeto aguardará até que o motor termine de rodar antes que o próximo bloco da pilha seja acionado.
girar [ArmMotor v] [subir v] por [90] [graus v] ▶
Parâmetros |
Descrição |
|---|---|
motor |
O motor para rodar: ArmMotor. |
direção |
O sentido de rotação do motor: para cima ou para baixo. |
distância |
A distância a que o motor roda. Graus são valores inteiros. As voltas podem ser valores inteiros ou decimais. |
unidade |
A unidade de distância: graus ou voltas. |
e não espere |
Selecione a seta ( ▶ ) para expandir o bloco e apresentar e não esperar, para que o próximo bloco da pilha seja executado imediatamente. |
Exemplo
quando iniciar
[Raise the Arm Motor by 200 degrees.]
girar [ArmMotor v] [subir v] por [200] [graus v] ▶
Rode o motor para a posição desejada.#
O bloco de pilha rodar motor para posição roda um motor para uma posição específica.
A posição de um motor é o quanto ele rodou, medida em graus ou voltas. Uma volta é igual a 360 graus. No início de um projeto, a posição do motor é definida para 0 graus. A posição do motor também pode ser definida através do bloco definir posição do motor.
Os valores de posição são absolutos. Isto significa que o sentido de rotação depende da posição atual do motor.
Por exemplo, se o motor arrancar a 0 graus e rodar até uma posição de 720 graus, dará duas voltas para a frente. Se depois rodar até uma posição de 360 graus, dará uma volta para trás, porque 360 é inferior a 720.
girar [ArmMotor v] para a posição [90] [graus v] ▶
Parâmetros |
Descrição |
|---|---|
motor |
O motor para rodar: ArmMotor. |
posição |
O valor da posição para a qual o motor irá rodar. Graus utilizam números inteiros. As voltas podem utilizar números inteiros ou decimais. |
unidade |
A unidade de posição: graus ou voltas. |
e não espere |
Selecione a seta ( ▶ ) para expandir o bloco e apresentar e não esperar, para que o próximo bloco da pilha seja executado imediatamente. |
Exemplo
quando iniciar
[Move the Arm Motor to 180 degrees.]
girar [ArmMotor v] para a posição [180] [graus v] ▶
motor de paragem#
O bloco de pilha parar motor pára o motor selecionado.
parar [ArmMotor v]
Parâmetros |
Descrição |
|---|---|
motor |
O motor a parar: ArmMotor. |
Exemplo
quando iniciar
[Raise the Arm Motor, then stop.]
girar [ArmMotor v] [subir v]
aguardar (1) segundos
parar [ArmMotor v]
Configurações#
definir velocidade do motor#
O bloco de pilha definir velocidade do motor indica ao motor a velocidade de rotação. Uma percentagem mais elevada faz com que o motor gire mais depressa e uma percentagem mais baixa faz com que o motor gire mais devagar.
definir velocidade de [ArmMotor v] para [50] [% v]
Parâmetros |
Descrição |
|---|---|
motor |
O motor para definir a velocidade de: ArmMotor. |
velocidade |
A velocidade de rotação do motor. Percentagem utiliza números inteiros de 0% a 100%. |
unidade |
A unidade de velocidade é: %. |
Exemplo
quando iniciar
[Set the Arm Motor velocity to 100%.]
definir velocidade de [ArmMotor v] para [100] [% v]
girar [ArmMotor v] [subir v] por [1] [voltas v] ▶
definir tempo limite do motor#
O bloco de pilha definir tempo limite do motor define durante quanto tempo um motor tentará completar um movimento. Se o motor não conseguir concluir dentro deste tempo, interromperá a tentativa e passará para o bloco seguinte da pilha. Isto impede que o motor fique preso num movimento.
definir tempo limite de [ArmMotor v] para [1] segundos
Parâmetros |
Descrição |
|---|---|
motor |
O motor para definir o tempo limite de: ArmMotor. |
hora |
O número de segundos que o motor pode tentar para completar um movimento. Pode ser um número inteiro ou decimal. |
Exemplo
quando iniciar
[Limit Arm Motor movement to 1 second.]
definir tempo limite de [ArmMotor v] para [1] segundos
girar [ArmMotor v] [subir v] por [3] [voltas v] ▶
Posição#
posição do motor#
A posição de um motor é o quanto ele rodou, medida em graus ou voltas. Uma volta equivale a 360 graus. O bloco de registo da posição do motor informa a posição atual do motor.
No início de um projeto, a posição do motor é definida para 0 graus. Se o motor rodar uma volta completa para a frente, a posição será de 360 graus ou 1 volta. Se o motor rodar no sentido oposto, a posição será negativa.
(posição de [ArmMotor v] em [graus v] :: custom-motion)
Parâmetros |
Descrição |
|---|---|
motor |
O motor que reporta a posição de: ArmMotor. |
unidade |
A unidade para indicar a posição do motor é: graus ou rotações. |
Exemplo
quando iniciar
[Print the Arm Motor position.]
imprimir (posição de [ArmMotor v] em [graus v] :: custom-motion) ▶
definir posição do motor#
A posição de um motor é o quanto ele rodou, medida em graus ou voltas. Uma volta equivale a 360 graus. O bloco de pilha definir posição do motor altera a posição atual do motor para um novo valor.
Por exemplo, se um motor tiver rodado 180 graus, definir a posição para 0 graus irá repor essa posição de 180 para 0 graus. De seguida, o motor poderá rodar para posições baseadas nesse novo valor.
definir posição de [ArmMotor v] para [0] [graus v]
Parâmetros |
Descrição |
|---|---|
motor |
O motor para definir a posição de: ArmMotor. |
posição |
O valor de posição a definir para o motor. Graus podem ser valores inteiros. As voltas podem ser valores inteiros ou decimais. |
unidade |
A unidade de posição: graus ou voltas. |
Exemplo
quando iniciar
[Set the Arm Motor to 90 degrees, then return to 0 degrees.]
definir posição de [ArmMotor v] para [90] [graus v]
girar [ArmMotor v] para a posição [0] [graus v] ▶
Valores#
O motor está pronto.#
O bloco booleano motor is done informa se o motor terminou de se mover. Isto pode ser utilizado para controlar o tempo de outros comportamentos com base no movimento do motor.
Verdadeiro — O motor terminou de trabalhar.
Falso — O motor ainda está em movimento.
Este bloco funciona em conjunto com os seguintes blocos de Movimento que têm o parâmetro e não esperar: rodar motor para e rodar motor para posição.
<[ArmMotor v] concluído?>
Parâmetros |
Descrição |
|---|---|
motor |
O motor que reporta terminou de se mover: ArmMotor. |
Exemplo
quando iniciar
[Check when the Arm Motor has finished moving.]
girar [ArmMotor v] [subir v] por [180] [graus v] ◀ e não aguardar
aguardar (0.1) segundos
se <[ArmMotor v] concluído?> então
imprimir [Arm Motor is done.] ▶
fim
O motor está a rodar#
O bloco booleano motor está a rodar informa se o motor está a rodar. Isto pode ser utilizado para controlar o tempo de outros comportamentos com base no movimento do motor.
Verdadeiro — O motor está a rodar.
Falso — O motor não está a rodar.
Este bloco funciona em conjunto com os seguintes blocos de Movimento que têm o parâmetro e não esperar: rodar motor para e rodar motor para posição.
<[ArmMotor v] girando?>
Parâmetros |
Descrição |
|---|---|
motor |
O motor que deve informar se está a rodar é: ArmMotor. |
Exemplo
quando iniciar
[Check whether the Arm Motor is moving.]
girar [ArmMotor v] [subir v] por [180] [graus v] ◀ e não aguardar
aguardar (0.1) segundos
se <[ArmMotor v] girando?> então
imprimir [Arm Motor is spinning.] ▶
fim
velocidade do motor#
O bloco de relatório de velocidade do motor indica a velocidade de rotação do motor, em percentagem, de -100% a 100%.
Um valor positivo significa que o motor está a rodar para a frente. Um valor negativo significa que o motor está a rodar para trás.
(velocidade de [ArmMotor v] em [% v] :: custom-motion)
Parâmetros |
Descrição |
|---|---|
motor |
O motor que deve reportar a velocidade é: ArmMotor. |
unidade |
A unidade de medida para reportar a velocidade do motor é: %. |
Exemplo
quando iniciar
[Print the Arm Motor velocity.]
imprimir (velocidade de [ArmMotor v] em [% v] :: custom-motion) ▶
Sensação#
O robô herói virtual tem também acesso aos blocos de sensores padrão do cérebro e do sistema de transmissão.
Olho#
O olho encontrou um objeto#
O bloco booleano Olho detetou um objeto informa se o Sensor Ocular detetou ou não um objeto dentro do alcance.
Verdadeiro — O sensor ocular deteta um objeto.
Falso — O sensor ocular não detetou qualquer objeto.
<[FrontEye v] encontrou um objeto?>
Parâmetros |
Descrição |
|---|---|
Este bloco não possui parâmetros. |
Exemplo
quando iniciar
[Check whether the Front Eye Sensor detects an object.]
se <[FrontEye v] encontrou um objeto?> então
imprimir [Object detected!] ▶
senão
imprimir [No object detected.] ▶
fim
O olho deteta a cor.#
O bloco booleano Deteção de cor pelo olho informa se o sensor ocular detetou uma cor específica, com base no valor de matiz detetado.
Verdadeiro — O sensor ocular deteta a cor selecionada.
Falso — O sensor ocular não detetou a cor selecionada.
Para verificar o valor exato de matiz detetado pelo sensor ocular, utilize o bloco de relatório matiz do olho.
<[FrontEye v] detecta [vermelho v]?>
Parâmetros |
Descrição |
|---|---|
cor |
A cor que o sensor ocular deve detetar:
|
Exemplo
quando iniciar
[Check whether the Front Eye Sensor detects blue.]
se <[FrontEye v] detecta [azul v]?> então
imprimir [Blue object detected.] ▶
fim
Brilho ocular#
O bloco de relatório Brilho dos olhos indica a quantidade de luz que é refletida de volta para o sensor ocular, numa percentagem de 0% a 100%.
Uma percentagem mais elevada significa que mais luz é refletida de volta para o sensor ocular. Uma percentagem mais baixa significa que menos luz é refletida de volta.
(brilho de [FrontEye v] em %)
Parâmetros |
Descrição |
|---|---|
Este bloco não possui parâmetros. |
Exemplo
quando iniciar
[Print the brightness detected by the Front Eye Sensor.]
imprimir (brilho de [FrontEye v] em %) ▶
Cor dos olhos#
O bloco de relatório Matiz dos olhos indica a tonalidade detetada pelo sensor ocular como um número de 0 a 359 graus.
O matiz é uma forma de descrever a cor utilizando números num círculo cromático.

(matiz de [FrontEye v] em graus)
Parâmetros |
Descrição |
|---|---|
Este bloco não possui parâmetros. |
Exemplo
quando iniciar
[Print the hue detected by the Front Eye Sensor.]
imprimir (matiz de [FrontEye v] em graus) ▶
Giroscópio#
O robô GO Competition Advanced 2.0 utiliza sensores giroscópicos para detetar impactos repentinos, como colisões com paredes ou objetos.
queda detectada#
O bloco booleano detetada colisão informa se o robô detetou um impacto repentino, como bater numa parede ou num objeto com força suficiente para alterar rapidamente o seu movimento.
Verdadeiro — Foi detectada uma falha.
Falso — Não foi detetada nenhuma falha.
<colisão detectada?>
Parâmetros |
Descrição |
|---|---|
Este bloco não possui parâmetros. |
Exemplo
quando iniciar
[Drive until the robot crashes, then stop.]
conduzir [frente v]
aguardar até <colisão detectada?>
parar de conduzir