CONTROLE SEU PORTÃO OU FECHADURA ELETRÔNICA POR CELULAR (SOMENTE PELO SOM) – COM PIC 12F675 (REF108)

0

Gostaria de usar seu celular, apenas como teclado, para poder digitar senha de acesso em sua casa? Sem pagar nenhuma ligação? Então você está convidado a ler este artigo…

Além do aumento do crime e a necessidade de termos que usar dispositivos eletrônicos para nossa segurança, também temos o problema do ‘vandalismo’.
Quem já, passeando pela rua de manhã, não observou orelhões depredados, latas de lixo derrubadas, interfones destroçados, pendurados seus cacos por um fio,etc. A montagem proposta atende esta necessidade, por usar apenas uma pequena abertura para um microfone e outra para a saída de som do disco piezoelétrico. Pode ser usado uma chapa reforçada, o que reduz a zero a ação de vândalos nesta fechadura.
Veja o esquema abaixo:

O circuito é composto por um circuito integrado MT8870DE, capaz de decifrar os sinais DTMF provenientes de um microfone de eletreto miniatura. A seguir, o sinal decodificado vai para o PIC 12f675 via 5 pinos, em formato hexadecimal, sendo o pino (STD) que informa quando o sinal da saída é valido. Usar sons DTMF para acionar dispositivos não é novo. Existem muitos artigos similares, com circuitos discretos. Apenas que foi usado um microcontrolador para facilitar as coisas. O PIC foi gravado com um ASM adaptado do artigo ‘FECHADURA ELÉTRICA COM SENHA (CODE LOCK) SEM DISPLAY – COM PIC 12F675’, alterando a forma de captação dos digitos de um teclado de telefone para o valor hexadecimal fornecido pelo MT8870D.
Na hora de compilar o arquivo ASM, é possível escolher entre saída pulsada ou saída continua. O microcontrolador também pode ser alterado, entre outras coisas.
A senha padrão inicial é ‘012345’ e pode ser alterada por se digitar a senha comando ‘*74123’, em seguida, digite a senha padrão, depois a nova senha, e de novo, confirme a nova senha ( mais detalhes, veja o artigo ‘FECHADURA ELÉTRICA COM SENHA (CODE LOCK) SEM DISPLAY – COM PIC 12F675’).

A figura abaixo mostra o uso do equipamento junto a um portão:


Para usar, basta aproximar o celular do microfone e digitar a senha (distância máxima de 10 cm). A cada dígito apertado no celular, deverá ser ouvido um bip no disco piezo elétrico. Caso não ouça, repita o dígito. A placa poderá ficar distante do microfone, desde que se use fio blindado (malha transada) para interligar. Poderá ser usado um transformador de 110 volts para 12v , retificadores e capacitores de filtro. Os 5 volts são regulados por um ci 7805, de forma usual.
Obs. Esta montagem foi testada apenas em protoboard, sendo uma montagem didática apenas. Esta sendo fornecido o arquivo ASM, o qual poderá sofrer modificações conforme a necessidade do hobista.

Segue abaixo, um vídeo caseiro, onde pode-se ver o protoboard com os componentes montados. Foi acrescentados 4 leds nos pins Q1 a Q4 ( pinos 11 a 13) do ci MT8870 para visualizar o sinal quando se aperta as teclas do celular próximo ao microfone. Observe que a cada tecla apertada se ouve um ‘bip’ em resposta. Ao apertar a senha padrão ‘012345’, percebe-se que o led ligado na saída pisca (saída em modo pulsada), indicando a abertura da fechadura. Os fios adicionais a esquerda, são os usados pelo gravador de pic, de onde provêm também a alimentação. (Obs. O tec-tec de fundo é de um velho relógio de parede, muito barulhento por sinal!)

You need to install or upgrade Flash Player to view this content, install or upgrade by clicking here.

Manuais:
PIC12f675
MT8870DE

Segue abaixo o arquivo ASM:

SENHULAR_ASM

Segue o arquivo HEX:

SENHULAR_HEX

Em 04/03/2015 foi postado esta versão que permite alterar o modo de saída também para ‘retenção’, ou seja, a cada acerto de senha alternará a saída entre ligado e desligado:

SENHULAR_RET

Curiosidades:
A luta pelo meio ambiente — êxitos e fracassos
Telefone celular — amigo ou inimigo?
Um universo cheio de surpresas
O som da neve
O tele-sexo é inofensivo?
Use a tecnologia de modo respeitoso e econômico
Faça bom uso de sua curiosidade
Quem fez primeiro?
O que aprendemos dos projetos da natureza?
Carros – no presente e no passado
O sistema de ‘spray’ do besouro
Ouvindo sons do espaço

Outros assuntos:
Três coisas que o dinheiro não pode comprar
Aprenda a perdoar
Prisioneiro muda sua vida – uma história entre muitas
Como criar filhos responsáveis
Como administrar o seu dinheiro
Ensine valores morais a seus filhos
Ensine seus filhos bons principios com atividades de colorir
Como posso ter ânimo para exercitar
Como posso controlar meu peso?
Entrevista com um bioquímico
Adolescentes- O que fazer se estou sofrendo bullying?
Como evitar ferir com palavras?
Como tratar seu cônjuge com respeito?

Até o próximo artigo!!!

0

40 comentários sobre “CONTROLE SEU PORTÃO OU FECHADURA ELETRÔNICA POR CELULAR (SOMENTE PELO SOM) – COM PIC 12F675 (REF108)

  1. 0

    bom dia lario: gostaria de saber, se há possibilidade mudar este codigo, apenas para 4 digitos? e como fazer isto? obrigado pelo apoio.

    1. 0

      Olá José Luiz!
      Esta montagem foi feita em assembly, e apesar de ser possível a alteração da senha de 6 para 4 dígitos envolverá muita mudança no código. Infelizmente, não estou dispondo de tempo para fazer este tipo de alteração , pois necessitaria montar o circuito no protoboard para acompanhar o funcionamento.
      Cláudio

  2. 1

    Ola Claudio,primeiramente quero te dar os parabens pela sua atitude de abrir seus codigos fonte desse jeito.
    Em segundo lugar gostaria de tirar algumas duvidas sobre este projeto. A sua atualização do dia 04/03/2015 não é mais necessario escolher a opção via softwere antes da compilação?
    Sou um grande fã do pic e estou tentando fazer algumas”brincadeiras” aqui.
    abraços.

    1. 0

      Olá Sidnei! Obrigado por seu comentário apreciativo. A atualização apenas acrescentou a opção de inverter a saída a cada acerto da senha. Pode ser configurável nas opções de usuário por se comentar/descomentar as opções. Temos acionamento continuo, pulsado e retenção. O hex anexo na pasta já está em modo ‘retenção’.
      Cláudio

  3. 0

    Olá Claudio, montei o circuito acima mas substitui o pic por um arduíno, e agora estou tendo problemas com o microfone (o microfone está muito sensível captando todos os sons e enviando sinais errados pro arduíno, mas quando eu faço som com o celular ele não identifica corretamente), preciso montar um circuito amplificador para ele ou algo do tipo?

    1. 0

      Ola Gaby! Quanto a circuitos usando Arduino, não é a ‘minha praia’. Mas ‘suponho’ que você deve ter reescrito o código assembler para funcionar com Arduino. Se assim o for, verifique primeiro se o circuito responde corretamente aos tons, injetando o sinal direto na entrada do mt 8870 (pino 2), desligando o microfone temporariamente. Se estiver funcionando, tente reduzir o ganho do amplificador de entrada (o BC547), colocando um resistor no emissor do transistor (200 ohms a 2k, o que funcionar melhor). Agora, se você está usando o Arduino para detectar as frequências, sem o mt8870, terá que consultar o forum do pessoal do Arduino para obter sugestões que possam lhe ajudar.
      Cláudio

  4. 0

    olá Claudio Bom dia. como controlar o rele de forma que reconhecido o código o rele aciona e fica acionado até um próximo reconhecimento do mesmo código e desligar o relé .

    1. 0

      Olá Angelo!
      Poderá tentar fazer estas modificações e depois recompilar no Mplab para obter o novo hex.

      substitua todas as menções de:

      CLRF GPIO

      por:

      MOVFW GPIO
      ANDLW 0x01 ;apaga tudo menos a saída do rele
      MOVWF GPIO

      Na porção de código abaixo:

      ;=================================================================================================
      ; ACIONAMENTO DO RELE DA FECHADURA
      ;=================================================================================================
      ; ROTINA DE ACIONAMENTO DA FECHADURA
      ACIONA_FECHADURA
      MOVLW NUMERO_DE_PULSOS
      MOVWF TEMP
      RET77
      BSF SAIDA
      CALL DELAY_CLEC_CLEC
      IFDEF SAIDA_PULSADA ;DETERMINA SE SAIDA CONTINUA
      BCF SAIDA ;OU SERÁ PULSADA
      ENDIF
      CALL DELAY_CLEC_CLEC
      DECFSZ TEMP,F
      GOTO RET77
      BCF SAIDA
      RETURN
      ;—————————————-
      substitua ela toda por:

      ;=================================================================================================
      ; ACIONAMENTO DO RELE DA FECHADURA (MODO RETENÇÃO)
      ;=================================================================================================
      ; ROTINA DE ACIONAMENTO DA FECHADURA
      ACIONA_FECHADURA
      BTFSS SAIDA ;TESTA SE LIGADA
      GOTO LIGAR
      BSF SAIDA ;ESTA LIGADA, IRÁ DESLIGAR
      GOTO SEGUEJ8_
      BSF SAIDA ;ESTAVA DESLIGADA, IRÁ LIGAR
      SEGUEJ8_
      RETURN
      ;————————————————

      Divirta-se!!!

      Cláudio

  5. 0

    Boa tarde Claudio como faço para deixar o rele sem temporização ,no caso acionado direto e so desligar quando desligar o circuito. obrigado.

    1. 0

      Olá Valter!
      Você pode optar pelo método sem alterar o programa do pic por usar um rele com duplo contato, fazendo o rele ‘colar’ quando for acionado. Ou pode alterar o programa e recompilar para obter o novo hex. Para isso deverá procurar a seguinte seção de código:

      ;=================================================================================================
      ; ACIONAMENTO DO RELE DA FECHADURA
      ;=================================================================================================
      ; ROTINA DE ACIONAMENTO DA FECHADURA
      ACIONA_FECHADURA
      MOVLW NUMERO_DE_PULSOS
      MOVWF TEMP
      RET77
      BSF SAIDA
      CALL DELAY_CLEC_CLEC
      IFDEF SAIDA_PULSADA ;DETERMINA SE SAIDA CONTINUA
      BCF SAIDA ;OU SERÁ PULSADA
      ENDIF
      CALL DELAY_CLEC_CLEC
      DECFSZ TEMP,F
      GOTO RET77
      BCF SAIDA
      RETURN
      ;——————————————

      e substituí-la por :

      ;=================================================================================================
      ; ACIONAMENTO DO RELE DA FECHADURA
      ;=================================================================================================
      ; ROTINA DE ACIONAMENTO DA FECHADURA
      ACIONA_FECHADURA
      BSF SAIDA
      RETURN
      ;—————————————————————-
      Desta forma, desligará somente com um ‘reset’ ou desligando a alimentação .
      Cláudio

        1. 0

          Olá Valter! Você compilou o arquivo com as novas modificações no Mplab para obter um novo hex , e com ele grava-lo no pic?
          Cláudio

          1. 0

            Olá Valter!
            Não tive oportunidade de montar o circuito, mas poderá alterar mais uma linha no que já foi alterado:
            DE :
            ; ACIONAMENTO DO RELE DA FECHADURA
            ;=================================================================================================
            ; ROTINA DE ACIONAMENTO DA FECHADURA
            ACIONA_FECHADURA
            BSF SAIDA
            RETURN

            PARA
            ; ACIONAMENTO DO RELE DA FECHADURA
            ;=================================================================================================
            ; ROTINA DE ACIONAMENTO DA FECHADURA
            ACIONA_FECHADURA
            BSF SAIDA
            GOTO $-1
            ;=================================================================================================
            Isto deverá funcionar, desligando somente quando cortar a alimentação ou RESET.

            Cláudio

    1. 0

      Olá Valter! Creio que poderá usar sem problemas, pois pelo datasheet correspondem as pinagens.
      Cláudio

  6. 0

    Boa nooite Cláudio. Queria saber si e preciso programa o pic 12f675 para ser usado no mt 8870. Ou si eu ja posso usar ele apos a compra ja no circuito do mt 8870.

    1. 0

      Olá Vladimir! Quando você adquiri um PIC, não importa o modelo, ele vem em estado ‘virgem’, sem nenhuma gravação em sua memória Flash. Antes de usar, precisará carregar o arquivo ‘.hex’ em sua memória Flash usando um carregador apropriado. Poderá construir um simples programador citado neste blog, caso não tenha um. Ele pode ser feito de forma provisória, no próprio protoboard que você talvez use para testes. Ou poderá ser feito de forma definitiva em uma plaquinha de circuito impresso, para usar em outras montagens futuras que você fará. Leia o artigo ‘ FAÇA UM SIMPLES PROGRAMADOR DE PIC (MICROCHIP)’ para monta-lo. Também leia o artigo ‘COMO COMPILAR OS ARQUIVOS ASM FORNECIDOS NESTE BLOG, JUNTO COM O MPLAB_IDE’ para usar outros recursos. Também seria interessante ver tutoriais de como gravar PIC’s na Internet, pois temos muitos colegas que ensinam bem esta arte. Garanto que com o programador em mãos, o programa Winpic 800 rodando no PC, você carrega o programa em 3 segundos no máximo (bem rápido). Espero que tenha sido de ajuda.
      Cláudio

    1. 0

      Olá Gaby! Quando o circuito aciona o rele, seus contatos ligam a voltagem para a bobina dentro da fechadura elétrica, de tensão geralmente de 12 volts. Você deve providenciar um transformador que forneça esta tensão para a fechadura e para a alimentação do circuito. Basicamente, é um circuito série em que a tensão sai da fonte e passa pelos contatos do rele do circuito, vai para a fechadura e dai retorna para a fonte de alimentação. Algumas fechaduras aceitam corrente alternada e outras somente continua, tendo que usar diodos retificadores e capacitores de filtro. Tem fechaduras com bobinas para 127 Vac, trabalhando direto na rede, via os contatos do rele do circuito. Verifique junto ao fabricante as especificações da fechadura que deseja usar. Lembrando que o circuito capita os sons ‘DTMF’ gerados pelo celular, decodifica, compara com a senha gravada e libera ou não a saída para o rele ligar.
      Claudio

  7. 0

    bom dia claudio . parabéns por todos esse projetos ,montei esse projeto mais gostaria de deixar ele em modo continuo eu nao estou conseguindo se não for pedir demais, você poderia me auxiliar desde ja agardeço.

    1. 0

      Olá Garcia! Obrigado pelo seu comentário apreciativo!Para deixar em modo continuo a saída basta comentar a linha, conforme abaixo, localizada logo no começo do arquivo asm, e em seguida, recompilar no Mplab-Ide:
      ;———————————————————————————————————-
      ;COMENTE SE DESEJAR SAIDA EM MODO CONTINUO
      ;#DEFINE SAIDA_PULSADA ;SAIDA PULSADA ;<————————comente esta linha por colocar ';' no começo da linha e recompile no Mplab_Ide
      ;———————————————————————————————————-
      NUMERO_DE_PULSOS EQU .30 ;QUANTIDADE DE ACIONAMENTO RÁPIDOS (PROTEÇÃO DA BOBINA DA FECHADURA)
      ;==========================================================================================================

      Claudio

    1. 0

      Olá José! Obrigado pelo comentário apreciativo. Na realidade, a ideia de usar tons para controlar aparelhos já é antiga. Não tenho mérito nisto! Adicionalmente, é importante levar em conta as limitações do sistema proposto, conforme já comentado neste blog.
      Claudio

  8. 0

    Ola Claudio Bom dia! ficou bacana esta ideia,da para fazer a transmissao via bluetooth com um modulo bluetooth serial? ficaria nota 10 cara
    um abraço

  9. 0

    Amigo o mais impressionante as vezes não é a ideia em si mas a qualidade com que ela é desenvolvida e principalmente o quanto vc tem se esforçado com sua arte em desenho para ilustrar os projetos , cada vez me surpreendo com seus desenho rsrsrs , brincadeiras a parte otimo projeto me imagino podendo transmitir os tons do dtmf e em uma receptor amplificar para tonar o sistema com maior alcance , agora o numero de digitos é limitado ou pode ser aumentados ?
    assim como pode ser reconhecido o audio do dtmf teria alguma maneira de reconhecer outro tipo de audio , outra coisa não sei bem se seria uma falha pois não testei mas se for feito o uso de uma gravador de audio tornaria o sistema algo copiavel certo , só imagino isso pelo fato de ter a distancia maxima de uns 10 cm acredito que por maior segurança o meio de trasnmissão é bem protegido , mas em questão de segurança não podemos afirmar total segurança , eu não confiaria minha vida em um sistema de alame pois com as falhas de queda de luz e outro incovenientes um a central poderia falhar , mas seria legal para incluir em sua central de alarme este sistema . obrigado mais uma vez pela sua ideias

    1. 0

      Olá Liliano! (risos!) Você está bem humorado hoje, hen! Realmente, diz o ditado que ‘ uma imagem vale mais que mil palavras’ e não precisa ter muitos ‘pixels’ ou alta definição. Se você tiver filhos pequenos em idade pré-escolar, notará que seus ‘garranchos coloridos’ conseguem transmitir idéias com facilidade. Mas, representações parece não ser o meu ‘forte’. Quanto a gravar os toques , sim, isto é possível. Mas os tx com 433mhz podem também ser gravados (ht6p20b) com um um equipamento (exceto hopping code). O conceito de ‘plena segurança’ não existe. Existe somente a ‘sensação de segurança’. Quanto mais cheio de implementações tem o sistema mais ‘parece ser seguro’. A verdade é que os meliantes não arrombam mais a porta, mas fazem ‘você’ abrir a porta. Fico feliz com seus comentários ‘bem humorados’ que alegra este blog.
      Cláudio

  10. 0

    😀 Olá Claudio, aproveitando a ideia do amigo Cicero, seria legal comandar saidas por dtmf em uma linha telefonica, vc liga para o ramal ou telefone, com uma quantidade de toques o aparelho conecta e espera digitar um senha para receber o comando e em seguida digita o comando ex. 001 saida do pic liga, 002 desliga a saida e assim em diante, no caso teria que ser no 16f628 que da para usar pelo menos 8 saidas, seria legal pois tem no mercado estes equipamento para ser controlado a distancia pelo telefone. Valeu ai e um abraço e mais uma vez parabens pelos os projetos que são de grande valia para nos…

  11. 0

    Olar amigo Claudio! parabéns pelo esse projeto Maravilho, só uma sugestão, vc com o seu conhecimento
    deveria criar um controle DTMF desses com um PIC maior como o PIC 16F628A com 10 canais para controle a distancia por exemplo,,,

    1. 0

      Olá Cicero! Como funcionaria o acionamento? Só por proximidade ou você se refere a controlar equipamentos via linha telefonica?
      Cláudio

      1. 0

        Olar amigo Claudio! tirando o mic de eletreto e colocando um potenciometro de 50k para regular a amplitude do audio poderá usar um cabo P2 na saida de audio do celular e ligar no potenciometro poderia dar certo?

        1. 0

          Olá Cicero! Creio que deva funcionar. Mas a idéia de colocar um microfone é justamente dispensar o uso de uma ligação via fio, mas sim pela proximidade.
          Cláudio

  12. 0

    tenho uma ideia para um novo projeto : a maioria das pessoas que vejo aqui se interessa mais em circuito sem fio , mas nenhum controla servo motores , que poderia ser usado em muitas coisas como por exemplo : carrinho de controle remoto , robôs , braço mecânico , controle de posição de câmera de vigilância , entre muitas outras coisas .acho que muitos iriam gostar . no transmissor poderia usar potenciômetro para definir a posição do servo . poderia ser 2 ou 3 canais com servos e outros canais com comandos normais ( pulso ou retenção ) . fica ai uma ideia . um abraço.

  13. 0

    olá claudio , cada vez mais você me surpreende . não me leve a mal mas vou ter que montar para acreditar . rsrs . mas pode ser qualquer celular de qualquer operadora ???

    1. 0

      Olá Michael! A operadora não importa, porque usa apenas o som que a tecla faz ao pressiona-la. Tem que configurar seu celular para volume alto , aumentando o alcance.
      Claudio

      1. 0

        bom dia claudio . show , já vi funcionando , não que eu duvidasse mas pensava que era impossível fazer isso ( usar o som da tecla do celular para acionar algo ) meus parabéns.

Os comentários estão fechados.