ALERTA SONORO DE LANTERNAS LIGADAS COM PIC 12F629

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 idéia de fazer um pequeno circuitinho , 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 transitores em par complementar podem ser suprimidas se for usado um auto-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:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
*************************************************************************

;                                                         Alerta.asm

;             PROJETO : ALERTA  DE LANTERNA LIGADA

;              AUTOR:  C. 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<P12F629.INC> ;    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 comentários sobre “ALERTA SONORO DE LANTERNAS LIGADAS COM PIC 12F629

  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

Os comentários estão fechados.