Projeto passo-a-passo para uma Lanterna com LEDs!
Utilizando os cinco LEDs que sobraram do projeto de Fonte de Alimentação com 1 pilha para o PIC!, este projeto é bem fácil de implementar e de carater didático, sendo também muito útil, pois a idéia é o acendimento dos cinco LEDs em sequência, incluindo também um controle de brilho (PWM) individual por LED. Com todos acesos, a iluminação é intensa (aproximadamente 20 mA de corrente em cada LED – 100mA no total).
O projeto terá todas as etapas de sua construção detalhadas, até quem não conhece a tecnologia de microcontroladores e eletrônica pode montar e aprender.
O controle será por meio de uma chave liga-desliga e de um potenciômetro, que será o responsável por todo o controle do brilho dos LEDs.
O princípio básico é uma conversão analógica para digital a partir da leitura do cursor do potenciômetro, atuando diretamente no controle de brilho (PWM) gerado por software, em passos de 5 mA por LED (5×4 passos = 20 mA), atingido os 20mA, o próximo LED começa a brilhar com 5mA, e assim por diante até os 5 LEDs estarem acesos com os seus brilhos máximos (20mA x 5 = 100mA).
Note que os 5 mA são aproximados em relação aos pulsos PWM que recebem (25%) até os 20mA (100%) do ciclo ativo (25%, 50%, 75%). Em 100% estará totalmente ligado e sem o efeito do PWM.
Temos então que, para facilitar a montagem e a codificação, escolher o microcontrolador mais adequado. Levar em consideração: preço, tamanho (número de pinos), características como implementar a conversão analógica para digital (ADC) internamente ( http://pt.wikipedia.org/wiki/ADC ). Existem vários modelos de PIC no mercado que são equivalentes nestas funções.
Para este pequeno projeto, escolhemos o PIC16F688 ( PIC16F688 ), de 14 pinos, com conversor ADC de 8 canais com 10 bits de resolução, oscilador interno de 8Mhz e memória do tipo flash. Adquirimos o componente na Dabi ( Dabi Comercio ) por R$ 6,50.
O circuito é composto por uma pequena placa universal, um capacitor de 100nF, cinco resistores de 100R 1/8w, soquete de 14 pinos torneado para o PIC, suporte de pilhas, material da lanterna que sobrou da montagem anterior, potenciômetro linear de 10K, chave liga-desliga (opcional) e o próprio PIC.
O código-fonte do programa foi escrito em C, para o compilador PCW (PIC MCU C Compiler - CCS Compilers ), e se encontra aqui para download ( Projeto-Lanterna-de-5-LEDs.zip ) incluindo também o arquivo .hex já pronto para a gravação. Como características do código, a principal é usar a interrupção do Timer0 para o controle do PWM (75Hz de frequência – 15mS), e permitir que, mesmo desligando a lanterna, quando voltar a ligá-la, não importa a posição do potenciômetro, os LEDs voltam a acender da mesma maneira que estavam quando foram apagados (efeito "memória"), inclusive, se a lanterna estiver apagada e movimentar o cursor do potenciômetro para outra posição, esta será lida e ativada ao se tornar a ligar a lanterna. Embora este código funcione bem, não está otimizado (no sentido de se economizar memória de programa – ainda assim utilizou somente uma pequena parte da memória disponível do PIC) para que fique fácil de entender (não foi utilizado assembly também por este motivo).
Para já se ter uma idéia de como ficou a montagem, vejam a seguir as fotos:
Circuito 01: – clique na imagem para ampliar!
Circuito 02: – clique na imagem para ampliar!
Circuito 03: – clique na imagem para ampliar!
Um programa utilitário de simulação para o PIC muito útil é o Real Pic Simulator, segue abaixo a simulação feita para este projeto:
Diagrama do circuito: – clique na imagem para ampliar!
Compilador com o código fonte: – clique na imagem para ampliar!
O gravador que foi utilizado é o MultiPROG – Programador PIC - ICD2 da Smart Radio: – clique na imagem para ampliar!
Uma informação importante para quem possui este gravador, é que falta especificar PICs de 14 pinos (conforme documentação abaixo), porém é só seguir a informação à respeito de PICs de 8 pinos, pois a posição do componente no soquete é a mesma: – clique na imagem para ampliar!
Gravador em ação 01 (tela do MPLAB IDEv8.56 – MPLAB IDE da Microchip):
Carregando o arquivo .hex gerado pelo compilador
Gravador em ação 02 (tela do MPLAB IDEv8.56):
Selecionando o arquivo "lanterna5leds.hex"
Gravador em ação 03 (tela do MPLAB IDEv8.56):
Escolhendo o programador – neste caso é o MPLAB ICD 2
Gravador em ação 04 (tela do MPLAB IDEv8.56):
Conectando ao gravador
Gravador em ação 05 (tela do MPLAB IDEv8.56):
Mensagens de sucesso na conexão
Gravador em ação 06 (tela do MPLAB IDEv8.56):
Opcional – Conferindo o modelo do PIC
Gravador em ação 07 (tela do MPLAB IDEv8.56):
Apagando o PIC (ícone acima à direita)
Gravador em ação 08 (tela do MPLAB IDEv8.56):
Gravando o PIC (ícone acima à direita) – Concluído com sucesso!
Segue abaixo video do seu funcionamento:
O link para assistir é o: http://www.youtube.com/watch?v=BU8IEKsyB98
Espero que este pequeno projeto ajude a esclarecer como se torna fácil construir o que se quer, gastando bem pouco e aproveitando equipamentos que podem ser modificados para funcionarem de maneira mais sofisticada e interessante. Boa montagem, e até o próximo Post!
By leoadm | Posted in Leds | Tagged Microcontrolador PIC, Microcontroladores PIC | Comments (0)
Fonte de Alimentação com 1 pilha para o PIC!
Atualmente, as lanternas que utilizam os LEDs brancos de alto brilho e que possuem 1 pilha somente para o seu funcionamento, trazem um circuito para o seu acionamento que eleva a voltagem desta pilha (1,5V – comum ou 1,2V – recarregável) para níveis que possam acender estes LEDs. Como o custo destas lanternas é muito baixo (comprei a utilizada neste projeto por R$ 5,00), vale a pena aproveitar este circuito como fonte de alimentação. O circuito equivalente, (como exemplo, visto que às vezes é difícil identificar o componente) é o PR4401 LED Driver.
- clique na imagem para ampliar!
O circuito permite uma corrente de carga de no máximo 100mA, mas não pode ser utilizada toda esta corrente, por motivo de queda de voltagem. O PIC16F628A por exemplo, funciona bem com uma voltagem de 3V até 5,5V, consumindo conforme trecho abaixo extraido da documentação:
- PIC16F628A:
- 3.0V to 5.5V
- 15μA typical @ 3.0V, 32 kHz
- < 1.0μA typical standby current @ 3.0V
Este circuito garante mais de 20mA sem problemas (aumentando a corrente consumida, diminui a voltagem disponível), e dependendo da aplicação, é mais do que suficiente, inclusive, com baixo consumo, a durabilidade da pilha é garantida (boa opção é a pilha palito AAA alcalina).
Pode ser acrescentado, após o capacitor, um resistor e um diodo zener, de forma a estabilizar a voltagem (aumentando um pouco o consumo – por exemplo um zener de 3,9V e 1W – o resistor depende da corrente mínima para o funcionamento do zener, e da que o circuito precisa, devendo ser experimentado e testado o melhor valor):
Na montagem, a voltagem ficou em torno dos 6,4V (sem carga), o que é facilmente compensado com um resistor de 560 ohms como carga (voltagem cai para 5,1V).
Um capacitor de 100nF cerâmico também pode ser acrescentado como filtro.
Diodo: 1N4148(Switching diode) ou similar (1 ou 2 em paralelo);
Resistor: 10k 1/8w;
Capacitor: eletrolítico 470μF 25V;
Indutor: (aproveitado da lanterna);
C.I.: (aproveitado da lanterna);
Pinagem: (frontal): pino1 – saída; pino2: positivo; pino3: terra.
Foto A - clique na imagem para ampliar!
Foto B - clique na imagem para ampliar!
Foto C - clique na imagem para ampliar!
Boa sorte na montagem, aproveitem!
By leoadm | Posted in Circuitos | Tagged Microcontrolador PIC, Microcontroladores PIC | Comentários desativados