FAÇA UM SIMPLES ALARME RESIDENCIAL C/ SENSORES SEM FIO – COM CONTROLE REMOTO E PIC 12F675 (REF154)

Gostaria de montar um simples alarme para sua casa? Que seja relativamente fácil e barato? Com controle remoto para ligar e desligar? E com possibilidade de usar sensores sem fios nas portas/janelas, além de sensor de presença sem fio? Leia mais…

Veja o esquema abaixo:

Esta montagem é um aperfeiçoamento do ‘Alarme Easy Home’ já publicado neste blog. O melhoramento principal é o de podermos aprender também sensores sem fios, comos os que ficam em portas e janelas, bem como o sensor de presença. Também, a situação on/off e disparo, ficam salvos em espaço na EEprom. Foi acrescentado mais um botão, para realizar o aprendizado dos sensores sem fio.
A parte de recepção de sinais RF foi mantida igual, assim como o programa em ‘C’ usado na detenção de tais sinais.
Assim, alterando uma linha de código, poderemos optar por um dos 4 modelos de circuito integrado que possa existir no controle remoto adquirido (os mais comuns, mas existem muitos!). São eles: ht6p20b, hcs200…301, pt2240b, pt2262. (Nota: Use sensores sem fio e controles remotos (chaveirinhos) com o mesmo tipo de circuito integrado).
Para funcionar, após a montagem e gravação do pic com a versão desejada de firmware, teremos que ‘aprender’ o(s) botão (ões) do controle remoto. Como fazer isto? Basta apertar o botão ‘aprender controles’ e soltar. Acenderá o ‘led learn’. Em seguida, aperte o botão do controle que deseja gravar. Imediatamente após o acionamento, deverá apagar o ‘led learn’, confirmando assim a gravação. Poderá gravar um ou mais botões individualmente. Muitos gravam apenas um e usam o outro para acionar outra aplicação (como o abrir/fechar de um portão, por exemplo). Poderá aprender até 5 controles remotos (um para cada membro da casa, por exemplo).
Para gravar sensores, repita a operação usando o botão ‘aprender sensores’. Aperte este botão momentanêamente e acione o sensor sem fio que deseje aprender. Alguns sensores de presença, ao ligar a alimentação, passa a enviar um sinal para aprendizado. Outros tem um ‘Jumper’ interno para transmitir direto na fase de programação. Já os magnéticos, basta afastar o imã do sensor, para que envie um sinal.
Caso ocorra algum erro, pode-se apagar a EEprom apertando e mantendo apertado o botão ‘aprender controle’ até que comece a piscar o ‘led learn’.
Então, solte o botão. Será apagado tanto controles como sensores, de uma única vez. Depois, poderá repetir a operação de aprendizado de sensores e controles remotos.
Terminado o processo de aprendizagem de controles remotos e sensores, podemos então acionar o controle para testar o funcionamento do alarme.
Ao apertar o botão do controle remoto, deverá ser ouvido 1 toque da sirene e o led monitor deverá piscar lentamente. Nesta situação, o alarme foi ligado. Outro aperto do botão do controle fará que desligue o alarme, sendo ouvido 2 toques de sirene e apagando o led monitor de on/off. Neste caso, o alarme foi desligado.
O sensor com fio, deste alarme, é feito por ligar vários reed switch em série. Estes devem ser instalados acima de portas e janelas. Caso não use esta parte, coloque um ‘Jumper’ mantendo ligados estes 2 fios.Quando se abre um porta ou janela, deverá afastar o imã permanente do reed, interrompendo assim a passagem de corrente elétrica, fazendo o alarme disparar. O número deles não importa, desde que sejam ligados em série e bem instalados, para que vibração causada por vento, ou mesmo mau contatos, não venham a gerar falsos disparos.
Para a recepção do sinal de RF, foi usado um receptor comercial de 433mhz ( ou outra frequência que seja a mesma dos controles remotos ‘chaveirinhos’ adquiridos).
O tempo de desligamento foi ajustado para 5 minutos, mas poderá ser mudado no programa, alterando a constante vista abaixo:

byte const TMAX_SIRENE = 8*(5);//sirene ligada (tempo em min. entre parenteses)

Para acionar a saída foi usado um rele de 12 volts, do tipo miniatura. Mas se desejar, poderá ser substituido por um transistor de potencia e acionar uma sirene eletronica diretamente.
A sirene eletronica pode ser de qualquer modelo ou tom. A alimentação pode ser feita de forma convencional, com transformador + retificadores + capacitores + regulador 7805, ou usar um adaptador de parede de 12 volts continuos. Fontes chaveadas de 12 volts são também bem-vindas.
Deve ser previsto uma bateria de 12 volts para alimentar o circuito em caso de falta de energia elétrica ou o corte dos fios por um ‘meliante’.

Foi compilado versões hex para ht6p20b, pt2262, pt2240b e hcs, prontas para uso.
Obs. Testado Ht6p20b, outras apenas simulados. Para obter as várias opções de configuração, escolha as opções no arquivo ‘c’ e recompile usando como sugestão, o compilador C da CCS v3.200.

Segue a pasta zipada com todos arquivos, sendo atualizado os arquivos com nova versão em 30/11/2014 :

Alarme_Easy_Sensor_v4

Para a placa de circuito impresso, veja os comentários abaixo, com links disponibilizado pelo colaborador ‘Preda_0078’, de sua montagem.

Curiosidades:
De onde vieram as ‘instruções’?
Pontos que flutuam diante dos olhos?
Conheça melhor os seus cabelos
Um vírus com que as mulheres devem se preocupar
O abuso do álcool e a saúde
Existem formas de vida realmente simples?
Mel: um doce remédio
Kimchi — A comida apimentada favorita dos coreanos
Pressão alta: prevenção e controle
Por que o mar é salgado?
Conceito equilibrado sobre animais de estimação
O que é preciso para adestrar um elefante
Jóias e pedras preciosas
‘Uma terra que manava leite e mel’
Por que envelhecemos?
O que revela a visão do invisível?

Outros assuntos:
Como fazer as pazes?
Como posso me dar bem com meu professor?
Como controlar seu estresse
Quando seu casamento não é o que você esperava
Recuperar a confiança no casamento
Como acabar com a tática do silêncio
Como ser feliz no casamento?
Como ser um bom ouvinte
Como lidar com as dívidas
Como resolver problemas no casamento
Aprenda a perdoar
Como lidar com os sogros
Como criar filhos responsáveis
Como administrar o seu dinheiro
Ensine valores morais a seus filhos
Como evitar ferir com palavras?
Como tratar seu cônjuge com respeito?

Até o próximo artigo!!!

50 comments on “FAÇA UM SIMPLES ALARME RESIDENCIAL C/ SENSORES SEM FIO – COM CONTROLE REMOTO E PIC 12F675 (REF154)

  1. Boma dia.Claudio Larios,primeiramente ,quero deseja a você tudo de bom e muita paz e seus dias,esta fazendo muitas pessoas felizes e realizadas,como eu estou,gostaria muito de sua ajuda em usar seu projeto do alarme é tudo que desejo ,agradeço..Gostaria de usar este seu alarme e comandar ele pelo teclado do telefone da minha casa ou de um cliente,,,,,é possível.
    FAÇA UM SIMPLES ALARME RESIDENCIAL C/ SENSORES SEM FIO – COM CONTROLE REMOTO E PIC 12F675 (REF154)

    1. Olá Ferreira!
      Este alarme publicado não tem este recurso que deseja. Também não é possível implementa-lo por não dispor suficiente espaço de memória necessários.
      Cláudio

  2. Olá Larios,
    Comprei um programador picburner, igual ao jdm, e baixei o Winpic800 v.367, não sei configurar ele, para este e outros projetos seus, eu não quero usar proteções, pois desejo usar o mesmo pic para montar outros projetos, então; onde se configura isto?.
    Obrigada.
    Milene
    .

    1. Olá Milene!
      Para usar o winpic800 abra o programa e clique em settings , depois em hardware, escolha Jdm e com1 . Ligue o seu programador picburner a porta serial db9. Selecione o pic e abra um arquivo hex a ser gravado. Clique em device, program all ou clique no atalho com desenho de ci. A proteção do pic é feito na palavra de configuração, e nos hex que posto não são bloqueados. Leia o manual do programador que adquiriu e veja no YouTube que tem vídeos sobre o assunto.
      Cláudio

      1. Boa Noite Larios,
        Já efetuei a gravação, é simples mesmo, porém após
        gravado, colocado na board, o led learn liga ao pressionar mas nada é gravado, uso todos controles tx ht6p20b, escolhi o hex certo na pasta HT6P, removi o rx 433, coloquei atravéz de resistor de 4k7 direto na porta 2 pic um encoder ht6p20b que uso como teste, tb nada de gravar, alguma dica a seguir?.
        Obrigada.
        Milene
        .

        1. Olá Milene!
          Talvez, você tenha perdido o byte de calibração do pic. Quando apagamos um pic deste tipo, temos que primeiro salvar ele e anotar. O Winpic costuma salvar, mas se houver erro na hora de gravar pode ser perdido. Para saber, basta ler o conteúdo do pic e olhar no ultimo endereço se tem um valor começando com 0x34xx. A falta dele faz o pic entrar em loop e não funciona.
          Cláudio

          1. Olá Larios!
            Solicionado o problema;
            1- Realmente apaguei o bit de calibração na pressa.

            2- O Gravador estava com soquete oxidado dentro de alguns furos torneados, troquei por outro.
            4- Fonte chaveada gerava expúrias e loqueava atuação do pic, sempre usei esta fonte, e nunca tive problemas, mas para uso em pic, e protoboard, não é confiável, bastou trocar por uma linear com Lm317 ajustável e: Sucesso!!!!.
            Montei em placa pcb, com as entradas e saidas com bornes pci, e ao testar red switch, o alarme não disparava, resolvi adicionando um resistor de 100k borne red onde vai 470r ao pino 5 pic, ao + b de 5v, resolvendo o disparo.

            Larios, como seria uma rotina apenas para pic 629 e 675 para gravar e recuperar pics
            com bit apagado?.

            Obrigada.

            Milene
            .

  3. Boa noite Cláudio,
    Tenho 42 anos e sou um amante de eletrônica desde meus 7 anos, adoro trabalhar com microcontroladores, tenho alguns projetos e muitas ideias e sempre estou procurando por novidades na internet, mas nunca encontrei um site como o seu quero te parabenizar pelo excelente trabalho realizado, seus códigos são pequenos, eficientes e utilizam todos os recursos existentes em cada microcontrolador, muito bom mesmo, eu gostaria também de saber se você não ministra cursos de C, mas especificamente CCS, pois ainda tenho algumas dificuldades com o C, caso não ministre gostaria ainda de saber se tem apostilas que possa compartilhar ou mesmo vender, pois quando eu estiver codificando com 50% da qualidade dos seus códigos já estarei realizado.
    Muita saúde e Paz.
    Luis Barcellos

    1. Olá Luis!
      Quero agradecer o seu elogio sincero ao trabalho deste blog. Eu não ministro curso de “C”, pois como você, sou apenas um hobista autodidata nesta área, que desde a infância gostei de eletricidade e depois eletrônica, entre outras coisas. Gosto de trabalhar com pics pequenos porque eles são um verdadeiro desafio para criar soluções em compartilhamento de pinos e tamanho de código. Na internet temos muitos tutoriais de como programar em “C”, em especial no YouTube. Poderá fazer vários deles e tirar de cada um o que tem de melhor. Com respeito a eficiência em reduzir código, ajuda muito você conhecer bem programação em assembly. Porque digo isto? Porque quando você compila em “C”, existe várias maneiras de obter o mesmo resultado. Mas qual rotina escolher? Aí entra o arquivo ‘List” gerado pelo compilar C. Nele poderá ver como foi montado a rotina e quais instruções do pic foi usada. Então, você faz um programa teste com as varias formas e olha no list qual ficou com menos linhas. Está é uma maneira de reduzir o tamanho. Temos também o uso de rotinas repetidas. Coloque elas em forma de uma subrotina que será chamada a cada vez que for necessária, economizando linhas de código (mas aumenta níveis do Stack que no pic’s 12f/16f são 8 ). Quando for fazer divisão/multiplicação evitar usar ponto flutuante e sim inteiros. Se você ver os artigos e estudar o código verá algumas coisa não muito usuais, mas que são justificadas na questão do tamanho do código. Também procure ver como outros programadores encontraram um solução para um determinado problema. Existem muitos fóruns que podem ser interessante acompanhar.
      Desejo que você consiga seus objetivos!

      ATT.
      Cláudio

Comments are closed.

Back To Top