- Modulação de largura de pulso:
- Componentes necessários:
- Explicação do circuito:
- Explicação de trabalho:
Raspberry Pi é uma placa baseada em processador de arquitetura ARM projetada para engenheiros eletrônicos e amadores. O PI é uma das plataformas de desenvolvimento de projeto mais confiáveis que existe agora. Com maior velocidade do processador e 1 GB de RAM, o PI pode ser usado para muitos projetos de alto perfil, como processamento de imagens e Internet das coisas.
Para fazer qualquer um dos projetos de alto nível, é necessário compreender as funções básicas do PI. Estaremos cobrindo todas as funcionalidades básicas do Raspberry Pi nestes tutoriais. Em cada tutorial, discutiremos uma das funções do PI. Ao final da série de tutoriais, você será capaz de realizar projetos de alto nível sozinho. Verifique estes para Introdução à configuração do Raspberry Pi e do Raspberry Pi.
Discutimos o piscar de LED e a interface de botão com Raspberry Pi em tutoriais anteriores. Neste tutorial do Raspberry Pi PWM, falaremos sobre como obter a saída PWM com o Raspberry Pi. PWM significa ' Modulação por largura de pulso '. PWM é um método usado para obter tensão variável de fonte de alimentação constante. Iremos gerar o sinal PWM do Raspberry PI e demonstrar o PWM variando o brilho de um LED, conectado ao Pi.
Modulação de largura de pulso:
Já falamos sobre PWM muitas vezes em: Modulação de largura de pulso com ATmega32, PWM com Arduino Uno, PWM com 555 timer IC e PWM com Arduino Due.
Na figura acima, se a chave for fechada continuamente por um período de tempo, o LED ficará 'LIGADO' durante esse tempo continuamente. Se a chave for fechada por meio segundo e aberta por meio segundo seguinte, o LED ficará LIGADO apenas na primeira metade de segundo. Agora, a proporção para a qual o LED está LIGADO ao longo do tempo total é chamada de Ciclo de Trabalho e pode ser calculada da seguinte forma:
Ciclo de trabalho = tempo para ligar / (tempo para ligar + tempo para desligar)
Ciclo de trabalho = (0,5 / (0,5 + 0,5)) = 50%
Portanto, a tensão média de saída será 50% da tensão da bateria.
Este é o caso por um segundo e podemos ver o LED apagado por meio segundo e o LED aceso na outra metade de segundo. Se a frequência dos tempos de LIGADO e DESLIGADO aumentou de '1 por segundo' para '50 por segundo '. O olho humano não consegue captar esta frequência. Para um olho normal, o LED será visto, brilhando com metade do brilho. Portanto, com a redução do tempo de ativação, o LED parece muito mais claro.
Vamos programar o PI para obter um PWM e conectar um LED para mostrar seu funcionamento.
Existem 40 pinos de saída GPIO no Raspberry Pi. Mas de 40, apenas 26 pinos GPIO (GPIO2 a GPIO27) podem ser programados. PARA saber mais sobre os pinos GPIO, vá até: LED piscando com Raspberry Pi
Componentes necessários:
Aqui, estamos usando o Raspberry Pi 2 Model B com o Raspbian Jessie OS. Todos os requisitos básicos de hardware e software foram discutidos anteriormente. Você pode consultá-los na introdução do Raspberry Pi, exceto o que precisamos:
- Pinos de conexão
- Resistor 220Ω ou 1KΩ
- CONDUZIU
- Tábua de pão
Explicação do circuito:
Conforme mostrado no diagrama de circuito, vamos conectar um LED entre o PIN35 (GPIO19) e o PIN39 (terra). Como disse anteriormente, não podemos extrair mais de 15mA de qualquer um desses pinos, então para limitar a corrente estamos conectando um resistor de 220Ω ou 1KΩ em série com o LED.
Explicação de trabalho:
Assim que tudo estiver conectado, podemos ligar o Raspberry Pi para escrever o programa em PYHTON e executá-lo.
Vamos falar sobre alguns comandos que vamos usar no programa PYHTON.
Vamos importar o arquivo GPIO da biblioteca, a função abaixo nos permite programar os pinos GPIO do PI. Também estamos renomeando “GPIO” para “IO”, portanto, no programa, sempre que quisermos nos referir aos pinos GPIO, usaremos a palavra 'IO'.
importar RPi.GPIO como IO
Às vezes, quando os pinos GPIO, que estamos tentando usar, podem estar executando algumas outras funções. Nesse caso, receberemos avisos durante a execução do programa. O comando abaixo diz ao PI para ignorar os avisos e prosseguir com o programa.
IO.setwarnings (falso)
Podemos referir os pinos GPIO do PI, tanto pelo número do pino a bordo quanto pelo número da função. No diagrama de pinos, você pode ver que 'PIN 35' na placa é 'GPIO19'. Portanto, dizemos aqui que vamos representar o pino aqui por '35' ou '19'.
IO.setmode (IO.BCM)
Estamos configurando GPIO19 (ou PIN35) como pino de saída. Obteremos a saída PWM deste pino.
IO.setup (19, IO.IN)
Depois de definir o pino como saída, precisamos configurar o pino como pino de saída PWM, p = IO.PWM (canal de saída, frequência do sinal PWM)
O comando acima é para configurar o canal e também para configurar a frequência do sinal PWM. 'p' aqui é uma variável, pode ser qualquer coisa. Estamos usando GPIO19 como canal de saída PWM. ' frequência do sinal PWM ' foi escolhido 100, pois não queremos ver o LED piscando.
O comando abaixo é usado para iniciar a geração do sinal PWM, ' DUTYCYCLE ' é para definir a taxa de ativação, 0 significa que o LED ficará LIGADO por 0% do tempo, 30 significa que o LED ficará LIGADO por 30% do tempo e 100 significa completamente LIGADO.
p.start (DUTYCYCLE)
Este comando executa o loop 50 vezes, sendo x incrementado de 0 a 49.
para x no intervalo (50):
Enquanto 1: é usado para loop infinito. Com este comando, as instruções dentro deste loop serão executadas continuamente.
Com o programa sendo executado, o ciclo de trabalho do sinal PWM aumenta. E então diminui ao atingir 100%. Com um LED conectado a este PIN, o brilho do LED aumenta primeiro e depois diminui.