Arduino: Entradas e Saidas: mudanças entre as edições

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
Linha 61: Linha 61:
==Led RGB==
==Led RGB==
Um '''led RGB''' apresenta em um único led a possibilidade de fornecer todas as cores, obtidas a partir da mistura das '''cores primárias luz''', ou '''cores primárias aditivas''', que são '''vermelho''' (<font color="red">'''''R'''ed''</font>), '''verde''' (<font color="green">'''''G'''reen''</font>) e '''azul''' (<font color="blue">'''''B'''lue''</font>).
Um '''led RGB''' apresenta em um único led a possibilidade de fornecer todas as cores, obtidas a partir da mistura das '''cores primárias luz''', ou '''cores primárias aditivas''', que são '''vermelho''' (<font color="red">'''''R'''ed''</font>), '''verde''' (<font color="green">'''''G'''reen''</font>) e '''azul''' (<font color="blue">'''''B'''lue''</font>).
<font color="red">'''vermelho'''</font>, o <font color="blue">'''azul'''</font>


[[Arquivo:CoresPrimarias.jpg]]
[[Arquivo:CoresPrimarias.jpg]]

Edição das 11h46min de 13 de setembro de 2016

Minicurso: Arduíno e eletrônica

Este minicurso tem como objetivos realizar uma introdução ao microcontrolador Arduíno e a eletrônica a partir de atividades teóricas e práticas.

O minicurso está organizados em módulos, cada um deles trabalhando conceitos específicos sobre o microcontrolador Arduíno e os correspondentes conceitos de eletricidade e eletrônica envolvidos.

Características do microcontrolador Arduíno

Arduíno

Saídas digitais

O Arduíno UNO possui 14 Entradas/Saídas Digitais
  • As entradas/saídas digitais estão localizadas nos pinos 0 a 13.
  • Estas entradas/saídas operam com valores digitais LOW e HIGH, os quais correspondem aos valores de tensão 0 V e 5 V, respectivamente..
  • Cada pino fornece corrente de até 20 mA, sendo que qualquer corrente solicitada acima de 40mA pode danificar o Arduíno.
pinMode
Comando da linguagem de programação do Arduíno que configura o pino digital como entrada (INPUT) ou saída (OUTPUT).
Exemplo:
pinMode(13, OUTPUT);
digitalWrite
Comando para escrever na saída digital.
digitalWrite(pino, HIGH/LOW)

Laboratório 1: Saída digital

Blink
  • Carregar no Arduíno o programa exemplo para piscar o led do pino 13, mantendo acesso por 1 seg e em seguida apagada por 1 seg. O led do pino 13 é um led instalado na própria placa do Arduíno.
  • Modificar o tempo (delay) e verificar a mudança na frequência do piscar do led.

Leds

Para entender o funcionamento dos leds, alguns conceitos são necessários:

Eletricidade Básica
Conceitos de tensão, corrente e resistência elétrica.
Resistores
Código de cores para resistores
Diodos e Leds
Cálculo do resistor de proteção de um circuito com led.

Laboratório 2: Semáforo automatizado com leds

Blink
  • Montar hardware para acionamento de 3 leds (vermelho, verde e amarelo), comandados por 3 saídas digitais independentes do Arduíno, utilizando resistores de proteção adequados.
  • Modificar programa blink para acionar os leds como um semáforo, com temporização adequada para cada cor.

Frequência e período de um sinal periódico

A frequência é uma grandeza física que indica o número de ocorrências de um evento (ciclo ou oscilações) em um determinado intervalo de tempo. Esse tempo recebe o nome de período (T).

A unidade de medida de frequência é o Hertz (Hz):

 1  Hz =    1 ciclo/segundo
60  Hz =   60 ciclos/segundo (p. ex. frequência da tensão alternada senoidal da rede elétrica)
 1 KHz = 1000 ciclos/segundo

Relação entre frequência (f) e período (T):

f = 1 / T 

Sinais periódicos digitais geralmente são ondas quadradas, com os níveis lógicos LOW (0 V) e HIGH (5 V). A transição LOW para HIGH é chamada transição positiva (borda de subida) e a transição de HIGH para LOW é chamada transição negativa (borda de descida).

Led RGB

Um led RGB apresenta em um único led a possibilidade de fornecer todas as cores, obtidas a partir da mistura das cores primárias luz, ou cores primárias aditivas, que são vermelho (Red), verde (Green) e azul (Blue).

Um led RGB, portanto, reúne em um único componente três leds diferentes, utilizando um terminal comum. Os leds RGB são encontrados em duas estruturas:

  • Anodo comum;
  • Catodo comum.

Laboratório 3: Led RGB

Blink
  • Montar hardware para led RGB anodo comum utilizando resistores de proteção adequados.
  • Modificar programa blink para piscar cores vermelho (R), verde (G) e azul (B) alternadamente;
  • Variar a frequência do piscar de leds RGB nos seguintes valores:
    • 1 Hz
    • 10 Hz
    • 100 Hz
    • 1000Hz
Verificar o resultado nas cores observadas.

Entradas digitais

Um pino digital do Arduíno pose ser definido como entrada (INPUT).

pinMode(2, INPUT)
digitalRead
Comando para ler o estado de uma entrada digital.
estadoPino = digitalRead(pino)

Neste caso o Arduíno vai ler se o estado do pino é LOW (0 V) ou HIGH (5 V).

Chave digital

Uma chave digital fornecerá 0 V (LOW) ou 5 V (HIGH) caso estiver aberta ou fechada.

  • Caso a chave estiver aberta, não haverá sobre o resistor e a tensão entregue ao pino do Arduíno será 0 V.
  • Caso a chave estiver fechada, haverá corrente no resistor e a tensão entregue ao pino do Arduíno será 5 V.
    • Corrente no resistor:
I = V / R
5 (V) / 10k (Ω) = 0,5 mA

Laboratório 4: Entrada digital

Button
  • Montar hardware com chave (push botton), utilizando resistores de proteção de 10 KΩ.
  • Carregar programa exemplo Button para ligar ou desligar led em função de pressão em chave digital.

Entradas Analógicas

O Arduíno UNO possui 6 entradas analógicas
  • As entradas analógicas são nomeadas de A0 até A5.
  • Cada entrada analógica recebe valores analógicos entre 0 V e 5 V, os quais são convertidos para valores digitais com 10 bits de resolução (valores entre 0 e 1023).
analogRead
Comando para ler entrada analógica.
valorPino = analogRead(pinoAnalogico)

Divisor de Tensão

Quando uma tensão é aplicada sobre resistores em série, a tensão total sobre os dois resistores é igual a somas das quedas de tensão sobre cada resistor.

V = V1 + V2
V = I.R1 + I.R2

ou

V1 = R1/(R1 + R2) . V
V2 = R2/(R1 + R2) . V
Potenciômetros
São resistências variáveis através de um cursor.
Na figura, através de um potenciômetro é possível implementar um divisor de tensão com uma tensão variável Vx obtida a partir do terminal central do potenciômetro.

Aplicação do Divisor de Tensão

Sensores baseados em resistência variável para Arduíno
Sensores de luminosidade (LDR) e sensores de temperatura possuem um resistor variável em função da grandeza que estão medindo.

--Evandro.cantu (discussão) 16h33min de 12 de setembro de 2016 (BRT)