AULA 6 - Microcontroladores - Técnico: mudanças entre as edições

De IFSC
Ir para navegação Ir para pesquisar
imported>Fargoud
imported>Fargoud
Linha 33: Linha 33:
[[imagem: dutycicle32.png|center]]
[[imagem: dutycicle32.png|center]]


===Exemplo:===
O valor do Duty Cycle usado pelo Arduino é um inteiro armazenado em 8 bits, de forma que seu valor vai de 0 (0%) a 255 (100%).
 
===Exemplo:===
Para um sinal PWM de valor 200 temos:
 
Se 255 é 100%, 200 é aproximadamente 78,4%.
 
Como a tensão máx de saída do Arduino é 5V a tensão média do sinal PWM será:
 
Vmédio = Vmax*Duty Cycle(%)
 
Vmédio=5*78,4%
 
Vmédio=3,92V
 
===Exemplo 2:===
mudando a intensidade de um led de alto brilho com sinal PWM
mudando a intensidade de um led de alto brilho com sinal PWM


[[imagem: dutycicle4.png|center]]
[[imagem: dutycicle4.png|center]]

Edição das 10h19min de 5 de outubro de 2016

Sinal PWM – Pulse Width Modulation

(Modulação por Largura de Pulso)

PWM (Pulse Width Modulation – Modulação por Largura de Pulso) é uma técnica para obter resultados analógicos por meios digitais.

Essa técnica consiste na geração de uma onda quadrada em uma frequência muito alta em que pode ser controlada a porcentagem do tempo em que a onda permanece em nível lógico alto.

Esse tempo é chamado de Duty Cycle (Ciclo de trabalho) e sua alteração provoca mudança no valor médio da onda, indo desde 0V (0% de Duty Cycle) a 5V (100% de Duty Cycle) no caso do Arduino.

O Arduino UNO possui 6 (seis) portas PWM, 3, 5, 6, 9, 10 e 11.

O sinal PWM pode variar de 0 a 255 e para ativá-lo basta usar a seguinte instrução em uma das portas PWM:

  analogWrite(pin, sinal_pwm);

Note que as portas PWM são todas digitais, porém o sinal é modulado “como se fosse” um sinal analógico.

Ciclo de Trabalho – Duty-Cicle

O sinal PWM possui um ciclo de trabalho que determina com que frequência o sinal muda do nível lógico HIGH para o nível lógico LOW e vice versa.

No Arduino a frequência do PWM pode ser definida entre 32Hz até 62kHz.

Duty cicle = (100% * largura do pulso) / período
Dutycicle.png
Dutycicle2.png
Dutycicle3.png
Dutycicle32.png

O valor do Duty Cycle usado pelo Arduino é um inteiro armazenado em 8 bits, de forma que seu valor vai de 0 (0%) a 255 (100%).

===Exemplo:===
Para um sinal PWM de valor 200 temos:
Se 255 é 100%, 200 é aproximadamente 78,4%.
Como a tensão máx de saída do Arduino é 5V a tensão média do sinal PWM será:
Vmédio = Vmax*Duty Cycle(%)
Vmédio=5*78,4%
Vmédio=3,92V

Exemplo 2:

mudando a intensidade de um led de alto brilho com sinal PWM

Dutycicle4.png