LOOPS E SWITCHES
LOOPS E SWITCHES Loops Switches Loops Simples Switches Simples Loops Encadeados Switches Encadeados Utilizando Loops e Switches
LOOPS
LOOPS Os LOOPS nos permitem repetir trechos de códigos sem a necessidade de se ter cópias do código. Podemos criar loops encadeados, ou seja estruturas de loops dentro de estruturas de loops. Isso facilita a legibilidade do código além de deixá-lo mais elaborado e limpo.
LOOPS ESTRUTURA LOOP LOOP O bloco LOOP nos permite criar uma estrutura de loop dentro do programa. Ele fica na paleta comum de blocos. ABA DE BLOCOS COMUNS
LOOPS ESTRUTURA LOOP Com a propriedade SHOW podemos acrescentar um contador ao loop. PROPRIEDADE SHOW
LOOPS ESTRUTURA LOOP Na propriedade CONTROL definimos qual será o critério iéi de parada do loop. FOREVER não utiliza nenhum critério de parada, para que o loop seja interrompido precisamos utilizar um bloco chamado STOP. PROPRIEDADE CONTROL: FOREVER
LOOPS ESTRUTURA LOOP Podemos definir um sensor como o controlador do loop. Nesse caso precisamos também definir qual dos sensores já vistos que será usado. Precisamos também configurar o sensor com as condições que iremos esperar do sensor para que o loop seja terminado. Essas condições já foram vistas anteriormente. PROPRIEDADE CONTROL: SENSOR
LOOPS ESTRUTURA LOOP Podemos definir um tempo em segundos para a duração do loop. PROPRIEDADE CONTROL: TIME
LOOPS ESTRUTURA LOOP Podemos definir um número de repetições (um contador). PROPRIEDADE CONTROL: COUNT
LOOPS ESTRUTURA LOOP Podemos definir um valor lógico que será verificado a cada interação do loop. Para isso precisamos ligar a conexão de entrada da estrutura LOOP a um bloco que tenha uma saída lógica, para que o valor definido como útil seja verificado. PROPRIEDADE CONTROL: LOGIC
SWITCHES
SWITCHES Com SWITCHES podemos criar linhas de execução que só serão executadas segundo uma determinada condição inicial. Assim como os loops podemos criar cadeias de SWITCHES, ou seja SWITCHES dentro de SWITCHES. Com a utilização conjunta de SWITCHES e loops podemos criar programas mais elaborados e com melhores funcionalidades.
SWITCHES ESTRUTURA SWITCH SWITCH O bloco SWITCH nos permite dividir trechos do código, criando assim possibilidades diferentes. ABA DE BLOCOS COMUNS
SWITCHES ESTRUTURA SWITCH Podemos definir o controle do bloco através de valores ou sensores. PROPRIEDADE CONTROL: VALUE
SWITCHES ESTRUTURA SWITCH Na propriedade DISPLAY temos a opção FLAT VIEW que nos permite ver a linha de execução como duas linhas. Quando desmarcada vemos as possibilidades através de abas e além disso nos permite criar mais opções de linhas de códigos quando estamos com o tipo NUMBER ou TEXT. PROPRIEDADE DISPLAY
SWITCHES ESTRUTURA SWITCH Quando definimos o controle como VALUE temos também que definir o tipo de valor que será usado na propriedade TYPE. Podemos escolher entre os três tipos existentes do robô: lógico, numérico ou texto. PROPRIEDADE TYPE
SWITCHES ESTRUTURA SWITCH Após definir o tipo devemos escolher as condições de controle do bloco. Quando a opção FLAT VIEW está ativa podemos adicionar mais do que duas opções de linhas de execução. PROPRIEDADE CONDITIONS
SWITCHES ESTRUTURA SWITCH No caso dos tipos NUMBER e TEXT ainda precisamos informar os valores que serão verificados. O botão * define o valor padrão, ou seja, caso nenhuma da opções seja selecionada a linha que tiver marcada será executada. VALOR PADRÃO
SWITCHES ABAS DE SELEÇÃO ENTRADA PARA CONTROLE Quando definimos o bloco SWITCH como VALUE precisamos conectar a entrada dele uma ligação com a saída de outro bloco que tenha o mesmo tipo definido no bloco SWITCH. Esse bloco então controlará e selecionará uma das opções do bloco SWITCH. OPÇÕES A SEREM SELECIONADAS
SWITCHES BLOCO SWITCH SENSOR ESCOLHIDO Quando definimos o bloco SWITCH como SENSOR precisamos configurar as opções que desejamos utilizar, essas configurações já foram vistas em SENSORES. OPÇÕES A SEREM CONFIGURADAS
SWITCHES VISUALIZAÇÃO ATRAVÉS DE ABAS SENSOR ESCOLHIDO Também podemos visualizar o bloco através de abas, bastando para isso desmarcar a opção FLAT VIEW. OPÇÕES A SEREM CONFIGURADAS
LOOPS SIMPLES
Loops Simples 1º Exemplo Robô: avance por 5 segundos, vire 90 para a esquerda. Repita quatro vezes. Para fazer esse programa é necessário que ele seja dividido em três blocos, um para controlar o loop e outros dois para executar os movimentos. Devemos lembrar de colocar tudo o que tiver de ser repetido dentro do bloco LOOP. O que tiver fora dele não será repetido.
Loops Simples BLOCO MOVE BLOCO LOOP BLOCO MOVE Insira um bloco LOOP com a opção CONTROL marcada como COUNT, especifique a quantidade de repetições (4). Insira dois blocos MOVE e configure os para executar as ações desejadas. d PROPRIEDADE CONTROL: COUNT
Loops Simples 2 Exemplo Robô: dê uma volta e diminua até parar, quando o sensor de luz detectar um nível acima de 20% de meia volta para trás. Repita três vezes. Para fazer esse programa é necessário que ele seja dividido em quatro blocos, um para controlar o loop, dois para executar os movimentos e um para aguar o resultado do sensor de som.
Loops Simples BLOCO WAIT: SENSOR BLOCO LOOP BLOCO MOVE BLOCO MOVE Insira um bloco LOOP com a opção CONTROL marcada como COUNT, especifique a quantidade de repetições (3). Insira os blocos de ação e um bloco WAIT para aguardar o sensor de som. Configure tudo de acordo com o desejado. PROPRIEDADE CONTROL: COUNT
SWITCHES SIMPLES
Switches Simples 1º Exemplo Robô: verifique o sensor de som se ele detectar um valor acima de 50% vire 90 para a esquerda e ande para frente até o sensor ultrasônico detectar uma distância menor que 50cm. Caso não seja detectado um som acima de 50% vire 90 para a direita e ande para frente até o sensor ultrasônico detectar um valor menor que 50cm.
Switches Simples CASO VERDADEIRO BLOCO SWITCH CASO FALSO Insira um bloco SWITCH e o configure com a opção SENSOR, selecione o sensor de som. Na linha de execução superior coloque os blocos para o caso do resultado ser verdadeiro e na de baixo para falso. PROPRIEDADE CONTROL: SENSOR
Switches Simples CASO VERDADEIRO BLOCO SWITCH CASO FALSO Configure as opções do sensor de som. Insira os blocos de ação sua linha correspondente e os configure do jeito que foi pedido. Caso queira ver as linhas de execução separadamente desmarque a opção FLAT VIEW. PROPRIEDADE CONTROL: SENSOR
LOOPS ENCADEADOS
Loops Encadeados Exemplo Robô: avance por 5 segundos, dê uma volta e diminua até parar, quando o sensor de som detectar t um nível acima de 20% dê meia volta para trás. Repita três vezes. Vire 90 para a esquerda. Repita tudo quatro vezes. Para fazer esse exemplo basta utilizar os exemplos anteriores como base.
Loops Encadeados BLOCO LOOP BLOCO LOOP Insira dois blocos LOOP com a opção CONTROL marcada como COUNT. Especifique a quantidade de repetições de cada loop. 3 repetições para o loop interno e 4 para o loop externo. PROPRIEDADE CONTROL: COUNT
Loops Encadeados BLOCO MOVE BLOCO MOVE BLOCO MOVE BLOCO WAIT: SOUND BLOCO MOVE Agora insira os blocos necessários para a execução Agora insira os blocos necessários para a execução do programa e configure os. Lembrando da ordem de execução e em que os loops devem ser colocados.
SWITCHES ENCADEADOS
Switches Encadeados 1º Exemplo Robô: verifique o sensor de som se ele detectar um valor acima de 50% vire 90 para a esquerda, se o sensor ultrasônico detectar t uma distância maior que 50cm avance 2 segundos caso contrário vire para a direita 90. Caso não seja detectado um som acima de 50% vire 90 para a direita, se o sensor ultrasônico detectar um valor maior que 50cm avance 2 segundos caso contrário vire a esquerda 90.
Switches Encadeados BLOCO LOOP BLOCO LOOP Insira um bloco SWITCH, e em cada linha de execução insira mais um bloco SWITCH. Faça as devidas configurações dos blocos SWITCH. BLOCO LOOP PROPRIEDADE CONTROL: SENSOR
Switches Encadeados BLOCOS MOVE Agora insira os blocos necessários para a execução das ações de cada linha de execução dos switches inseridos. BLOCOS MOVE PROPRIEDADE CONTROL: SENSOR
UTILIZANDO LOOPS E SWITCHES
Utilizando Loops e Switches BLOCO STOP Caso necessite abortar um loop ou um switch antesdele terminar normalmente utilize o bloco STOP. Para utilizar esse bloco precisamos conectar a entrada dele em uma saída lógica de outro bloco. Quando o bloco STOP receber true em sua porta ele irá abortar o loop ou o switch no qual esteja dentro.
Utilizando Loops e Switches 1º Exemplo Robô: se o sensor de som detectar um valor acima de 50%, vire para a esquerda e avance até o sensor ultrasônico detectar t uma distância menor que 50cm. Caso contrário vire para a direita e avance até o sensor ultrasônico detectar uma distância menor que 50cm. Repita tudo 3 vezes.
Utilizando Loops e Switches BLOCO SWITCH BLOCO LOOP Insira um bloco LOOP e configure o para 3 repetições. Depois insira um bloco SWITCH dentro do bloco LOOP. E faça as devidas configurações do bloco.
Utilizando Loops e Switches CASO VERDADEIRO CASO FALSO Agora basta inserir os blocos de ação e configurá los nas devidas linhas de execução.