Transmissão#

Introdução#

O sistema de transmissão inclui rodas e motores que controlam a forma como o robô se move e gira. Os sistemas de transmissão podem ser encontrados em projetos como o Code Base 2.0, o Super Car ou um robô personalizado.

Os sistemas de transmissão utilizam o Sensor Inercial no Cérebro para detetar colisões e ajudar o robô a mover-se e a rodar com precisão. No início de cada projeto, o sistema de transmissão calibra o Sensor Inercial automaticamente. Mantenha o robô imóvel durante cerca de 2 segundos durante a calibração, para que se possa mover e rodar corretamente.

Existem muitas formas de programar o sistema de transmissão. Abaixo está uma lista de todos os blocos do sistema de transmissão:

Ações — Mova e rode o robô.

  • 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.

  • dirigir até — Move o robô para a frente ou para trás até que o sensor ocular detete um objeto ou o robô detete uma colisão.

  • 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 — Roda o robô para ficar virado para uma direção específica de -359 a 359 graus. O robô irá rodar na direção mais curta para alcançar a direção alvo.

  • virar para rotação — Roda o robô para uma rotação específica.

  • parar de conduzir — Interrompe o movimento do robô.

Definições — Ajustar as definições da transmissão.

Valores — Verificar o estado da movimentaçã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
[Build Used: Code Base 2.0]
[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 [100] [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
[Build Used: Code Base 2.0]
[Drive back and forth.]
conduzir [frente v] por [100] [mm v] ▶
conduzir [inverso v] por [4] [polegadas v] ▶

conduzir até#

O bloco de pilha dirigir até move o robô para a frente ou para trás até que o sensor de visão detete um objeto ou o robô detete uma colisão.

conduzir [frente v] até [objeto v] ▶

Parâmetros

Descrição

direção

A direção em que o robô se move: para a frente ou para trás.

estado

A condição que para o robô é: objeto ou colisão.

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
[Build Used: Code Base 2.0]
[Turn right after a crash.]
conduzir [frente v] até [colisão v] ▶
virar [direita v] por (90) graus ▶

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
[Build Used: Code Base 2.0]
[Turn right and left, then stop.]
virar [direita v]
aguardar [2] segundos
virar [esquerda 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
[Build Used: Code Base 2.0]
[Turn right then left.]
virar [direita v] por (90) graus ▶
virar [esquerda v] por (90) graus ▶

virar para a direção#

A direção é a direção para a qual o cérebro do robô está a apontar, medida em graus. O bloco de pilha virar para a direção roda o robô para apontar para uma direção específica, de -359 a 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.

Uma base de código VEX GO 2.0 mostrando as direcções de rumo: 0 graus para a frente, 90 graus para a direita, 180 graus para trás e 270 graus para a esquerda.

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, expressa como um número inteiro, de -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
[Build Used: Code Base 2.0]
[Turn to face the cardinal directions.]
virar para a direção [90] graus ▶
aguardar [1] segundos
virar para a direção [180] graus ▶
aguardar [1] segundos
virar para a direção [270] graus ▶
aguardar [1] segundos
virar para a direção [0] graus ▶

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.

Uma base de código VEX GO 2.0 que mostra setas a rodar para a direita e para a esquerda. A seta da esquerda mostra "menos" e a seta da direita mostra "mais".

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.

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
[Build Used: Code Base 2.0]
[Make one full turn to the right.]
virar para a rotação [360] graus ▶
[Make another full turn to the right.]
virar para a rotação [720] graus ▶
[Make one full turn to the left, returning to 360 degrees.]
virar para a rotação [360] 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
[Build Used: Code Base 2.0]
[Drive forward then stop.]
conduzir [frente v]
aguardar (2) 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 seja mais preciso.

definir velocidade de condução para (50) %

Parâmetros

Descrição

velocidade

A velocidade de condução varia entre 0% a 100%.

Exemplo

quando iniciar :: hat events
[Build Used: Code Base 2.0]
[Drive at different velocities.]
conduzir [frente v] por [100] [mm v] ▶
aguardar [1] segundos
[Drive slow.]
definir velocidade de condução para (20) %
conduzir [frente v] por [100] [mm v] ▶
aguardar [1] segundos
[Drive fast.]
definir velocidade de condução para (100) %
conduzir [frente v] por [100] [mm v] ▶

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 seja mais preciso.

definir velocidade de giro para [50]%

Parâmetros

Descrição

velocidade

A velocidade de rotação varia entre 0% a 100%.

Exemplo

quando iniciar :: hat events
[Build Used: Code Base 2.0]
[Turn at different velocities.]
virar [direita v] por [180] graus ▶
aguardar [1] segundos
[Turn fast.]
definir velocidade de giro para [100]%
virar [direita v] por [180] graus ▶

definir paragem de acionamento#

O bloco de pilha set drive stopping define a forma como o robô irá parar de se mover: travagem, inércia ou mantendo a mudança parada.

definir parada de condução para [frear v]

Parâmetros

Descrição

comportamento de interrupção

Como o robô irá parar:

  • travão — Pára imediatamente.
  • deslizamento — Diminui a velocidade até parar.
  • manter — Pára imediatamente e mantém a posição das rodas.

Se este bloco não for utilizado, o robô utilizará o travão ao parar.

Exemplo

quando iniciar :: hat events
[Build Used: Code Base 2.0]
[Drive, then coast to a stop.]
definir velocidade de condução para (100) %
definir parada de condução para [deslizar v]
conduzir [frente v]
aguardar [2] segundos
parar de conduzir

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
[Build Used: Code Base 2.0]
[Drive as far as possible for 1 second before turning right.]
definir tempo limite de condução para [1] segundos
conduzir [frente v] por [25] [polegadas v] ▶
virar [direita v] por [90] graus ▶

definir rumo de condução#

A direção é a direção para a qual o cérebro do robô está a apontar, medida em graus. O bloco de pilha definir direção de direção 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ô. Pode ser um número inteiro de 0 a 359.

Exemplo

quando iniciar :: hat events
[Build Used: Code Base 2.0]
[Face the new 0 degree heading.]
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.

Exemplo

quando iniciar :: hat events
[Build Used: Code Base 2.0]
[Spin counterclockwise two times.]
definir rotação de condução para [720] graus
virar para a rotação [0] 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 os seguintes blocos de transmissão que têm o parâmetro e não esperar: dirigir por, dirigir até, virar por, virar para rumo e virar para rotação.

<condução concluída?>

Parâmetros

Descrição

Este bloco não possui parâmetros.

Exemplo

quando iniciar :: hat events
[Build Used: Code Base 2.0]
[Turn when the drivetrain is done moving forward.]
conduzir [frente v] por [100] [mm v] ◀ e não aguardar
aguardar [0.25] segundos
para sempre
se <condução concluída?> então
virar [direita v] por [180] graus ▶
interromper
senão
imprimir [Still moving...] ▶
aguardar [0.1] segundos
limpar todas as linhas

Conduzir em direção a#

A direção é a direção para a qual o cérebro do robô está virado, medida em graus. O bloco de relatório direção de direção reporta esta direção de 0 a 359 graus.

A direção inicial do robô é de 0 graus.

Um VEX GO Brain mostrando as direcções de rumo: 0 graus para a frente, 90 graus para a direita, 180 graus para trás e 270 graus para a esquerda.

(direção de condução em graus)

Parâmetros

Descrição

Este bloco não possui parâmetros.

Exemplo

quando iniciar :: hat events
[Build Used: Code Base 2.0]
[Display the heading while turning.]
virar [direita v] por [450] graus ◀ e não aguardar
para sempre
limpar todas as linhas
imprimir (direção de condução em graus) ▶
aguardar [0.1] segundos

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.

Uma base de código VEX GO 2.0 que mostra setas a rodar para a direita e para a esquerda. A seta da esquerda mostra "menos" e a seta da direita mostra "mais".

(rotação de condução em graus)

Parâmetros

Descrição

Este bloco não possui parâmetros.

Exemplo

quando iniciar :: hat events
[Build Used: Code Base 2.0]
[Display the rotation while turning.]
virar [direita v] por [450] graus ◀ e não aguardar
para sempre
limpar todas as linhas
imprimir (rotação de condução em graus) ▶
aguardar [0.1] segundos

velocidade de acionamento#

O bloco de relatório de velocidade de deslocamento indica a velocidade de deslocamento do robô, em percentagem, de -100% a 100%.

Um valor positivo significa que o robô se está a mover para a frente. Um valor negativo significa que o robô se está a mover para trás.

(velocidade de condução em %)

Parâmetros

Descrição

Este bloco não possui parâmetros.

Exemplo

quando iniciar :: hat events
[Build Used: Code Base 2.0]
[Display the velocity of the robot before and while moving.]
imprimir [Start: ] ▶
imprimir (velocidade de condução em %) ▶
mover cursor para a próxima linha
conduzir [frente v]
aguardar [0.5] segundos
imprimir [Moving: ] ▶
imprimir (velocidade de condução em %) ▶
parar de conduzir