top of page

Estruturas de Repetição

EstruturaRepeticao

A estrutura de repetição é utilizada quando for preciso executar um determinado bloco de instruções quantas vezes forem necessárias. A quantidade de vezes é determinada pelo programador e deverá ser finito.
A estrutura de repetição permite uma economia de linhas de instruções, uma vez que não é necessário reescrever as instruções novamente, basta executar a mesma rotina n vezes.

RepeticaoTesteInicio

Repetição com Teste no Início

A repetição com teste no início permite repetir um determinado bloco de instruções enquanto a condição avaliada for verdadeira. 
A verificação é realizada antes de executar uma determinada rotina, através de um teste lógico feito no início. Enquanto a condição 1 for verdadeira será executado a rotina (1), e quando a condição for falsa, deixará de ser executada. Se a condição no seu primeiro teste for falsa, a rotina nunca será executada.

Quadro MD14 - Estrutura de Repetição com Teste no Início

Rtesteinicio.png

Desenvolver um projeto utilizando a porta PWM para controlar a luminosidade de um LED.

Componentes

Qtd - Descrição

01 - Arduino Mega 2560

01 - Protoboard

01 - LED (Vermelho)

01 - Resistor 220Ω para o LED

 Jumpers

Instruções

Led na porta digital (10) (no Arduino MEGA é uma porta PWM). É possível trabalhar de 0V até 5V de forma crescente.

Desenvolver um projeto utilizando uma porta analógica e um potenciômetro para controlar a velocidade de iluminação de um LED. Quando o valor do potenciômetro for igual ou menor que 1000, um LED deverá permanecer ligado. Quando esse valor for inferior ou igual a 500, outro LED deverá piscar com uma velocidade proporcional ao valor do potenciômetro.

Componentes

Qtd - Descrição

01 - Arduino Mega 2560

01 - Protoboard

02 - LEDs (Vermelho) (Amarelo)

02 - Resistor 220Ω para os LEDs

01 - Potenciômetro

 Jumpers

Instruções

-Led vermelho na porta digital (10)

-Led amarelo na porta digital (11)

-Potenciômetro na porta analógica (A0)

Os pinos do potenciômetro devem ser conectados da seguinte forma:

O conector central ligado à uma das entradas analógicas. Neste exemplo, utilizaremos a porta A0;

Um dos conectores laterais (não importa qual) conectado ao terra (GND);

O outro conector ligado à saída 5V do Arduino.

Desenvolver um projeto, utilizando um Sensor de Luz LDR e um Diodo Laser para simular sistema de alarme.
Quando algum objeto impedir a recepção da luz, um alarme deverá ser disparado e o LED ficará aceso. O alarme e o LED podem ser desligados por meio de um botão.

Componentes

Qtd - Descrição

01 - Arduino Mega 2560

01 - Protoboard

01 - LED (Vermelho)

01 - Resistor 220Ω para o LED

01 - BUZZER

01 - Push-Button

01 - Resistor de 10KΩ para o Push-Button

01 - Sensor de Luz LDR

01 - Resistor de 10KΩ para o LDR

01 - Diodo Laser

 Jumpers

Instruções

-Led vermelho na porta digital (10)

-Push- Button na porta digital (2)

-Buzzer na porta na porta digital (8)

-LDR na analógica (A0)

-Diodo: positivo 5V (fio vermelho) negativo (fio azul)

Repetição com Variável de Controle

RepeticaoVariavelControle

A repetição com variável de controle permite que um determinado bloco de instruções seja executado dentro de um limite fixo de vezes determinado pelo programador. 
 O símbolo do diagrama de blocos utilizado é o preparação
A verificação de execução é realizada pela própria estrutura. Essa estrutura tem um valor do tipo contador que determina quantas vezes a execução será realizada, desta forma, encerrando a execução quando esse valor atingir o limite superior/inferior determinado. 
Dentro de um valor determinado de vezes a rotina (1) é executada. Observaremos que não existe um teste lógico para esse tipo de repetição.

Quadro MD15 - Estrutura de Repetição com Varíavel de Controle

RvariavelControle.png

onde:
Controle - é uma variável do tipo int;
Início - é o valor inicial; 

Expressão - é uma expressão relacional;
Incremento - é o passo de incremento/decremento do contador.
 
No Arduino podemos utilizar o comando break para encerrar um laço tipo Repetição com Variável de Controle.

Desenvolver um projeto utilizando um sensor de movimento com um micro servo para simular a abertura de uma cancela.

Componentes

Qtd - Descrição

01 - Arduino Mega 2560

01 - Protoboard

01 - Sensor de Movimento

01 - Micro Servo 9g

02 - LEDs (Vermelho) (Verde) 

02 - Resistor de 220Ω para os LEDs

 Jumpers

Instruções

- Sensor na porta digital 2; 
- Micro servo na porta digital 3.


É necessário instalar a biblioteca:
#include <Servo.h>
para utilizar o Micro Servo.

Desenvolver um projeto utilizando dois sensores de distância ultrassônico e um micro servo para simular a abertura de uma cancela.

Componentes

Qtd - Descrição

01 - Arduino Mega 2560

01 - Protoboard

02 - Sensor de Distância Ultrassônico

01 - Micro Servo 9g

01 - LED RGB

03 - Resistor de 220Ω para o LED

 Jumpers

Instruções

-LED RGB (RED na porta 3, GREEN na porta 5, BLUE na porta 6).

-Sensor Ultrassônico 1: VCC conectado em 5V, o trigger (saída) na porta digital 8, o echo (entrada) na porta 7, o GND no GDN do Arduino.

-Sensor Ultrassônico 2: VCC conectado em 5V, o trigger (saída) na porta digital 10, o echo (entrada) na porta 9, o GND no GDN do Arduino.

 

Para os sensores é necessário instalar a biblioteca #include Ultrasonic.h

Informar os dados para o arduino:

Sensor(Porta de Saída, Porta de Entrada)

 

-Micro servo na porta digital 11.

É necessário instalar a biblioteca

#include <Servo.h> para utilizar o Micro Servo.

RepeticaoTesteFim

Repetição com Teste no Fim

A repetição com teste no final permite repetir um determinado bloco de instruções até que uma condição seja verdadeira.
A verificação é realizada após executar uma determinada rotina pelo menos uma única vez, através de um teste lógico que é feito no final.
Independente da validade da condição 1, a rotina (1) é executada pelo menos uma vez. Após a execução é aplicado um teste lógico, caso a condição seja falsa a rotina é executada novamente, ou será encerrada caso a condição seja verdadeira.

Quadro MD16 - Estrutura de Repetição com Teste no Fim

Rtestefim.png

Desenvolver um projeto para desligar um Diodo Laser, utilizando um sensor de Touch Capacitivo.

Componentes

Qtd - Descrição

01 - Arduino Mega 2560

01 - Protoboard

02 - LEDs (vermelho - verde)

02 - Resistor de 220Ω para os LEDs

01 - Sensor Touch Capacitivo

01 - Sensor de luz LDR

01 - Resistor 10KΩ para o LDR

01 - Diodo Laser

 Jumpers

Instruções

-LED vermelho na porta digital (10)

-LED verde na porta digital (11)

-LDR na porta analógica (A0)

-Diodo:  positivo (fio vermelho na porta digital (3)) negativo (fio azul) em GND

-Touch Capacitivo na porta digital (2) positivo em 5V e negativo em GND

bottom of page