ALERTA SONORO DE LANTERNAS LIGADAS COM PIC 12F629 (REF002)

1

Quem já não passou pela seguinte situação:  esquecer as lanternas do veiculo ligadas o dia todo, e ao  retornar, depois de um cansativo dia de trabalho, descobrir que a bateria estava completamente descarregada !!! Após um momento de raiva e autocomiseração, vem a hora de buscar ajuda, nem sempre disponível.
Como evitar este terrível transtorno ? Aí surgiu a ideia de fazer um pequeno circuito, que ao abrir a porta, com a lanterna ligada, soasse um discreto aviso, lembrando-nos de desligar as lanternas.  Sem duvida, poderia ser feito somente com componentes discretos, mas, visando reduzir o tamanho e dar um certo “charme” ao som gerado, optei pelo uso de um pequeno microcontrolador, o  PIC12f629, que tem suficiente pinos de saída para isto (até sobra).
A etapa de saída com os dois transistores em par complementar podem ser suprimidas se for usado um alto-falante piezoelétrico do tipo usado em telefones de mesa. O regulador de tensão 7805 foi optado pelo tamanho miniatura. Como o circuito é alimentado  pela linha da lanterna, não haverá consumo quando ela estiver desligada. Foi previsto uma ligação para o  + 15 (chave de contato ligada), que visa unicamente não acionar o alerta quando o veiculo está com a lanterna ligada, motor ligado e alguém abre a porta para descer do carro.  Assim, são três  as condições para o alarme acionar: lanterna ligada,  contato desligado e abrir portas. Com uma pequena plaquinha de impresso (sobrão)  de 3 cm X 2 cm  podemos realizar a montagem.

Para  gravar o PIC com arquivo Hex poderá usar um programa como  WinPic800 e se desejar alterar o programa “alerta.asm” use o Mplab da Microchip.

Segue esquema de ligações:

Segue arquivo asm:

*************************************************************************

; Alerta.asm

; PROJETO : ALERTA DE LANTERNA LIGADA

; AUTOR: CLAUDIO LÁRIOS

; PROCESSADOR: PIC 12F629

; OBJETIVO: AO SAIR DO VEICULO (ABRIR UMA DAS PORTAS) EMITIR SINAL SONORO SE

; LANTERNAS ESTIVEREM LIGADAS E CHAVE DE CONTATO DESLIGADA APENAS, POR ; UM PERIODO DE TEMPO.

;*************************************************************************

#INCLUDE ; ARQUIVO PADRAO

__CONFIG _BODEN_ON & _CP_OFF & _PWRTE_ON & _WDT_OFF & _MCLRE_ON & _INTRC_OSC_NOCLKOUT

;PAGINACAO DE MEMÓRIA;

#DEFINE BANK0 BCF STATUS,RP0 ;SETA BANK0 DE MEMORIA

#DEFINE BANK1 BSF STATUS,RP0 ;SETA BANK1

; VARIAVEIS

CBLOCK 0X20 ;ENDERECO INICIAL DE MEMORIA

AUX,DEL4, DEL5,AUX1,AUXOFF,CAUX1,INV,TEMP,CONT

ENDC

;=====DEFINICAO DE BITS E FLAGS==============

#DEFINE SOM GPIO,5 ; SAIDA PARA DADO DO MOSTRADOR EXTERNO PINO 2

#DEFINE PCAR GPIO,4 ;ENTRADA PARA PORTAS PINO 3

#DEFINE M15 GPIO,2 ;ENTRADA PARA +15 DA IGNIÇÃO PINO 5

ORG 0X00

GOTO INICIO

; VETOR DE INTERRUPCAO

ORG 0X04

RETFIE

;................................................................................................

INICIO

BANK1 ;BANCO 1

MOVLW .0

MOVWF INTCON ;DESLIGA TODAS INTERRUPCOES

MOVLW B'11110' ;SAIDA EM GP0

MOVWF TRISIO ;

BANK0

MOVLW .7 ;DESLIGA O COMPARADOR

MOVWF CMCON ;IDEM

CLRF INV

TESTA:

MOVLW 0X0a

MOVWF CONT

T1:

BTFSC PCAR

GOTO TESTA

BTFSC M15

GOTO TESTA

MOVLW 0XBF ;TEMPO DE PAUSA

MOVWF AUXOFF

MOVLW 0X0F ;TEMPO DE DECAIMENTO

MOVWF CAUX1

MOVLW 0X3C ;TEMPO ON

CALL SINO

;------------------------------------------------

MOVLW 0X1F ;DELAY ENTRE NOTAS

MOVWF TEMP

LL1

MOVLW 0XFF

CALL DELAY

DECFSZ TEMP,F

GOTO LL1

DECFSZ CONT,F

GOTO T1

T2:

BTFSS PCAR

GOTO $-1

MOVLW 0XFF

CALL DELAY

MOVLW 0XFF

CALL DELAY

MOVLW 0XFF

CALL DELAY

MOVLW 0XFF

CALL DELAY

BTFSS PCAR

GOTO T2

GOTO TESTA

;-----------------------------------------------------------------

SINO

MOVWF AUX

CLRF INV

DENOVO1

INCF INV,F

MOVFW CAUX1

MOVWF AUX1

DENOVO

BCF SOM

MOVFW AUXOFF

CALL DELAY

BSF SOM

MOVFW AUX

CALL DELAY

BCF SOM

MOVFW INV

CALL DELAY

DECFSZ AUX1,F

GOTO DENOVO

DECFSZ AUX,F

GOTO DENOVO1

RETURN

;------------------------------------------------------------------------------------------

DELAY

MOVWF DEL5

DECFSZ DEL5,F

GOTO $-1

RETURN

ATRASO

NOP

NOP

NOP

RETURN

END

Segue código Alerta.Hex:

:020000040000FA
:020000000528D1
:080008000900831600308B0093
:100010001E308500831207309900A6010A30A8001F
:10002000051A0E2805190E28BF30A4000F30A500B0
:100030003C302F201F30A700FF304220A70B1C2888
:10004000A80B1028051E2228FF304220FF30422036
:10005000FF304220FF304220051E22280E28A0003B
:10006000A601A60A2508A3008512240842208516A9
:1000700020084220851226084220A30B3428A00B1A
:1000800031280800A200A20B43280800000000004D
:040090000000080064
:02400E00E43F8D
:00000001FF

Segue pasta com arquivos desta montagem:

alerta_lanterna

Curiosidades:
Universo cheio de surpresas
Universo – obra do acaso?
Nosso inigualável sistema solar
Mapeamento do céu
Qual a origem do universo e a vida?

Outros assuntos:
Quatro dicas para lidar com problemas financeiros e dívidas
Como lidar com sucesso com os sogros
Como reagir a um assédio sexual
Como parar de adiar as coisas

Até o próximo artigo!!!!

1

14 comments

  1. 0

    Bom dia nobre Claudio!!!

    Montei o seu alerta de farol ligado e funcionou muito bem.Tentei fazer algumas alterações mas não entendo de Assembly. sei que é pedir demais mas vou pedir: poderia passar este código para C no compilador MikroC PRO V5.61??? Tem como incrementar a função para avisar ao motorista para ligar o farol quando ele esquecer??? já está em vigor a nova lei do farol desde o dia 07 deste mês!!! O alerta ficaria com duas funções, avisava quando do esquecimento do farol ligado e avisava para ligar o farol, entendeu??? Muito obrigado…

    1. 0

      Olá Batmonstro!
      Eu somente uso o compilador CCS C. Ainda não estou familiarizado com os comandos do Mikro C. Com respeito a lei, ela é somente para os usuários de estrada. Na cidade, por enquanto a lei não exige uso de farol baixo. Suspeito, não tenho certeza, que os fabricantes de lâmpadas automotivas tem lobistas fortes atuando na legislação de leis. Esta lei fará que aumente as vendas de lâmpadas de 4 watts das placas e lanternas, de 21/10 watts das lanternas traseiras, e 55 watts dos faróis. Será que tá chegando lâmpadas de led para faróis também? Para durar umas 25000 horas , contra menos de 500 horas de uso das lâmpadas atuais de filamento?
      Cláudio

  2. 0

    BOA NOITE, CLAUDIO!!!
    ESTOU MONTANDO ESTE ALERTA E ESBARREI NA SEGUINTE DÚVIDA: O ALTO-FALANTE KC1206 TEM DE 16 OHM, 40 OHM E 75 OHM. QUAL EU DEVO USAR??? SE USAR UM DE IMPEDÂNCIA MAIS ALTA, O SOM FICARÁ MAIS BAIXO??? TESTEI COM UM DE 16 OHM E O SOM FICOU COM UMA INTENSIDADE LEGAL!!! MUITO OBRIGADO PELO PROJETO E AGUARDO SUA RESPOSTA.

    1. 0

      Ola Batmonstro!
      Eu usei de 8 ohms , mas nada impede que você use de 16 ohms se estiver no volume que lhe agrade.
      Cláudio

      1. 0

        Bom dia Claudio, obrigado pela resposta…No Mercado Livre só tem KC1206 de 40 ohm. Pergunto: Se eu comprar o de 40 ohm, o som ficará mais baixo??? Eu posso aumentar, pra compensar o som mais baixo, aumentando o capacitor de 47uF/25V para dá uma compensada no volume??? Por última, posso saber onde você compra seus componentes, inclusive o KC1206????

        1. 0

          Olá Batmonstro!
          Acredito que o som ficará um pouco mais baixo, mas como o som trabalha na escala logarítmica, talvez não se perceba muita diferença. Terá que fazer os testes para ver. Quanto aos componentes, uso muito de sucata, como placas antigas de computador, DVD, videocassetes, etc. Os pics comprei quando fui passear na rua Santa Eficiência, em São Paulo. Mas tem muitas lojas que atendem pela Internet e envia pelo correio . Você não precisa se preocupar com o modelo do alto falante. Qualquer um pequeno, desses de radinho de pilhas servirá.
          Cláudio

          1. 0

            OK Claudio, obrigado por responder…E quanto ao valor do capacitorde 47uF/25V, o que trabalha com o buzzer, será que aumentando o valor dele não ganharei mais volume???

          2. 0

            Olá Batmonstro!
            Eu acredito que não vai dar muita diferença. Se fosse sons graves (de baixa frequência) daria bastante, mas o apito produzido está em médias e altas. Mas experimente, quem sabe seja o suficiente para você.
            Cláudio

  3. 0

    Boa tarde, eu acharia melhor na minha aplicação se eu abrisse a porta e ele tocasse sem parar, claro se você tivesse disposto a a fazer as alterações pois eu não entendo nada de programação.Mas assim já está òtimo.
    Obrigado amigo por ter revizado o esquema.

  4. 0

    Ola amigo eu fiz o teste eu liguei os dois resistores no vcc dai a placa parou de funcionar, dai passei o resistor da chave para gnd dai a placa funcionou pelo interruptor de porta mas ligando a ingniçao ele nao para de tocar.Mais uma pergunta teria como mudar o programa para ele tocar sem parar?

    Obrigado

    1. 0

      Olá Flavio!
      Já alterei os arquivos no post com a montagem correta do resistor ao +vcc. Testei em protoboard e agora está ok. O objetivo da montagem é dar breves toques para alertar que a lanterna está ligada, logo ao abrir a porta. Em alguns casos, precisamos deixar a porta do carro aberta ( e a noite, com lanternas ligadas). O fato de dar alguns toques e parar irá evitar a irritação dos passageiros. Não entendi porque quer deixar direto?
      Cláudio

  5. 0

    Olá Larios gostaria de uma ajuda eu fiz alerta lanterna mas quando eu alimento ele, ele ja começa a tocar e os comandos chave ligada e porta aberta nao funcionam, o diodo da chave de contato nao seria ao contrario? mas espero retorno.
    Obrigado

    1. 0

      Olá Flavio! O diodo está correto, mas o resistor de 4k7 de ambos os diodos parecem que deveriam ser ligados ao vcc e não ao gnd. Poderia, por favor, fazer o teste?
      Claudio

  6. 0

    :mrgreen: Olá Claudio, tive esta experiencia esta semana, e não e realmente agradavel. pos bem ja providenciei a montagem deste alarme e que por sinal não fica atras de nenhum aviso sonoro de carros que vem de fabrica, parabens ai pela ideia. Aqui ja esta funcionando no meu carro, fiz penas alterações para suprir as minhas necessidades mas o conteudo do som se manteve e é agradavel em vista do famoso BUZZER. inte mais

Comments are closed.