FAÇA UM CONTROLE REMOTO DE 5 CANAIS (RF)- COM PIC 12F675 (REF 156)

Os controles remotos tipo chaveirinho permite usar apenas 2 ou 3 botões de acionamento. E se você deseja 5 botões?

Neste caso, terá que fazer seu próprio chaveirinho. Uma boa alternativa é usar um pequeno Pic 12f675 de 8 pinos, relativamente barato, para produzir o protocolo de transmissão para um tx comercial de 433mhz (miniatura). Veja o Esquema abaixo:

Com 5 chaves dactilares, e alguns resistores, podem ser facilmente acondicionados em uma pequena caixa plastica, escolhida a gosto pelo hobista. Poderá ser alimentado com uma bateria de 12 volts, reduzindo-se a tensão por meio de um ci regulador do tipo 7805. Ou pode-se usar 4 pilhas de 1,5 volts, com um diodo em série para reduzir a nivel seguro de operação.
O protocolo transmite 4 bytes, sendo 2 bytes de um número serial qualquer, a ser escolhido pelo hobista, e que deverá ser usado tanto no tx como no rx. Neste caso, foi usado o numero 0x89ab. O próximo byte é uma cópia da gpio, mostrando a condição das chaves dactilares. E finalmente o último byte é a somatória dos 3 primeiros, servindo de conferência para a integridade da transmissão.
No receptor, foi previsto a escolha de modo pulso ou retenção pelo usuário, alterando de forma individual, por canal. O mesmo pode ser dito se queremos saída em modo normal ou invertida. Basta alterarmos estas definições por comentar (//) ou descomentar a opção desejada e em seguida, recompilar o arquivo C. Na pasta fornecida abaixo, temos um hex pronto para modo normal e retenção em todos os canais. O hex para o tx não sofre mudanças com as alterações de modo pulso/retenção ou mesmo modo normal/retenção, sendo sempre o mesmo.
No esquema do receptor foi usado reles nas saídas, para controlar cargas, mas nada impede usar apenas transistores de potencia para controlar diretamente pequenos motores ou conjuntos de leds, bem como outras cargas desejadas. Para uso com cargas AC, convém manter os reles, isolando assim o circuito das cargas.
Obs. Esta montagem foi feita unicamente em placa de protoboard, sendo sujeita a bugs ainda não detectados. Esta sendo fornecido os arquivos que poderão ser alterados conforme a necessidade dos hobistas.

Segue pasta com os arquivos desta montagem:

CR_5C_675

Poderá ver também o artigo ‘CONTROLE REMOTO 8 CANAIS ON/OFF – PIC 16F628A’, para 8 canais.

Em 18/12/2014, foi postado esta nova versão de receptor, que testa por 2 recepções corretas antes de acionar saídas as saídas (medida para evitar falsos acionamentos em áreas com muita interferências):

cr_5c_675_v2_

Manuais:

Pic 12f675

Curiosidades:

Mestres medievais da medicina
Mestres medievais da mecânica
O coletor solar da asa da borboleta
Será que a Bíblia está de acordo com a ciência?
Ainda há tempo para salvar o planeta?
Como vencer a estafa
Uma visita a Camarões
Os sensores do besouro
Como posso lidar com o estresse?
Você acredita que já viveu antes?

Outros assuntos:
Como se livrar do ressentimento
Como ensinar seu filho a usar a internet com segurança
Por que rejeitar a pornografia?
Como ser feliz no casamento?
Quando seu casamento não é o que você esperava
Como resolver diferenças no casamento
Como recuperar a confiança no casamento
Quando um dos cônjuges tem necessidades especiais
Aprenda a perdoar
Como acabar com a tática do silêncio
Como criar filhos responsáveis
Como administrar o seu dinheiro
Como posso controlar meu peso?
Como evitar ferir com palavras?
Como tratar seu cônjuge com respeito?

Até o próximo artigo!!!

81 comments on “FAÇA UM CONTROLE REMOTO DE 5 CANAIS (RF)- COM PIC 12F675 (REF 156)

  1. Oi, obrigado por seu trabalho duro, você faz coisas muito interessantes.
    Megustaria se você pode me ajudar a que eu tenho que colocar que as instruções para as saídas são cronometrados cerca de 20 segundos.
    Obrigado.
    Boas festas.

    1. Olá Juane!
      Esta implementação no código atual fica difícil, pois necessita ter tempos mais precisos, talvez fazendo uso de um timer interno para garantir o tempo correto.
      Cláudio

      1. olar craudio qual programa voce usou para copiar os arquivos c preciso recopiar esses arquivos para modo de retençao estou usando o mplabx e ccs mais nao to conseguindo configurar os bits

        1. Olá José Carlos!
          Use o compilador C da CCS. Na opção de usuário, descomente a saída para modo retenção (retire o ‘//’ da frente da linha) e recompiler para obter o novo arquivo .hex.
          Claudio

          1. Olá José Carlos!
            Creio que você tem algumas opções do que poderá fazer:
            1) Usar outro pic, com o valor de calibração intacto.
            2) Usar um valor aproximado para funcionar o circuito, colocando no último endereço da flash um valor como 0x34fc (sempre começa com 0x34xx).
            3) Descobrir o valor correto e recolocar no pic na hora de programar o .hex. Leia o artigo ‘COMO CALIBRAR A FREQUÊNCIA DO OSCILADOR INTERNO DO PIC 12F675/629 (DIDÁTICO)’..
            Cláudio

  2. Olá Claudio, aprecio muito o seu blog, vc esta de parabéns pela iniciativa de divulgar seus conhecimentos.
    Utilizo o aprendizado como hobby e estou tentando terminar esta montagem mas estou tendo dificuldades. Fiz algumas mudanças no código e compilei no MpLab X, Simulei no Proteus e depois parti p\ protobard, tudo funcionando bem até alimentar o transmissor com outra fonte de alimentação. Ou seja,os comandos só são interpretados pelo Pic quando são alimentados pela mesma fonte (carregador ou bateria).
    Poderia me dar uma dica do que esta acontecendo? Como disse, sou hobista e tenho pouca esperiência. Desde já agradeço pela atenção e novamente parabens.

    1. Olá Paulo!
      Obrigado por sua expressão de apreço pelo trabalho deste blog. Quanto ao que você mencionou, parece um tanto estranho. Se na mesma fonte funciona, mas separando não, então eu chego a conclusão que há algo de errado em uma das fontes. Confira as polaridades , se não está trocando o ‘+’ pelo ‘ -‘ .
      Certifique que, no caso de usar bateria de 9 volts para o TX, você reduza a tensão para 5 volts usando um regulador 7805, mais uns capacitores de filtro de 100uf por exemplo. Ligue também um capacitor de 100 a 220 nf nos pinos 1 e 8, do pic. No caso do receptor, não sei se está usando rele de 5 volts ou 12 volts. Mas se for de 12 v, certifique de filtrar bem a alimentação com capacitores de alto valor (1000uf) e depois reduzir para 5 volts para alimentar o pic receptor, usando também um regulador 7805 e capacitor de 100 uf neste vcc.
      Confira as ligações, por muitos erros são descuidos simples, como curtocircuitar terminais de resistores no protoboard ou esquecer de ligar determinados pontos do circuito.
      Sucesso na sua montagem!

      Cláudio

      1. Olá Claudio,
        Obrigado pela resposta e tbm pela rapidez. Quanto ao enuciado, antes de recorrer a sua ‘consultoria’ eu li varias vezes suas sugestões e tbm os comentários, porque a aprendi muita coisa com as duvidas dos colegas, e os detalhes que vc citou foram observados sim. Estava pensando se por usar o osc interno e o byte de configuração com valor 3480, que se ñ me engano atua diretamente na presição de tempo do pic, se a mudança de fonte estaria interferindo na sincronia dos bits enviados. Os módulos estão em protos separados, se forem alimentados pela mesma fonte funciona e se separar (Já tentei trocar as fontes e os pics), o módulo receptor recebe mas o pic ñ processa os dados enviados como se a informação estivesse truncada ou corrompida. Tem fundamento minha duvida?
        Um abraço!

        Paulo.

        1. Olá Paulo!
          Não acredito que seja a frequência do oscilador interno. Se fosse, juntos também daria problema. Você colocou uma antena de 15 cm de fio no tx e outra no rx? As frequências do tx e do rx são iguais? Você mediu se efetivamente tem 5 volts nos dois vcc’s separados? Quanto a transmissão, se esta ocorrendo bem do tx para o rx em separado, coloque um osciloscópio para ver a forma de onda. Se não tiver, coloque um disco piezoelétrico na saída do rx ao gnd e acione o tx. Se tiver um ruído característicos então não é problema de transmissão. Mas se a forma de onda estiver estranha ou o ruído no piezo estiver ‘falhando’, pode ser uma falha no casamento das frequências do par tx/rx (ou falta de antenas).
          Cláudio

  3. Olá Claudio, venho seguindo seus projetos, e são fantásticos. Montei este circuito para ter mais conhecimento, estou tendo problemas em relação ao sinal. Ao acionar o sinal de um canal acaba acionado todos eles. O que eu poderia ter feito errado ?
    Obrigado.

    1. Olá Thsl!
      Antes de mais nada, por favor, confira as ligações, em especial as que ligam a saídas aos transistores e reles. Tente recarregar os hex de novo nos pic. Pode ter ocorrido alguma falha de gravação.
      Cláudio

      1. Olá Claudio, primeiramente obrigado pela atenção. Irei fazer estes procedimentos para averiguar possíveis erros tanto das ligações e arquivo hex. So para te explicar estou usando para programar o Chip este GRAVADOR DE PIC USB K150. De repente possar ser alguma configuração dele.

        Thiago L.
        Abraço

        1. Olá THSL!
          Quanto ao seu programador, já não posso dizer nada, pois não trabalhei ainda com ele. Tente ver o manual para ver este problema de configurações que talvez possa esta ocorrendo.
          Cláudio

          1. Olá Claudio,

            Feito. Fiz todos os procedimentos citados acima e o sistema está OK. Provavelmente um problema elétrico, pois programei o pic e continuou igual, depois montei novamente todo o conjunto e OK funcionando os 5 canais independentes. Aproveitando já vou pedir mais coisas. Supondo que eu utilize dois sistemas iguais a este em uma área muito próxima, iremos ter interferência correto ? Teria como por um código de codificação para cada aparelho ?

            Obrigado

          2. Olá THSL!
            Que bom que finalizou sua montagem com sucesso! Quanto a questão de interferência, ela se dará em virtude de se estar usando a mesma frequência nos conjuntos. Use um com 433mhz e outro com 315 mhz que irá resolver o problema. Mesmo modificando o código, se os 2 forem acionados ao mesmo tempo e usando a mesma frequência nos conjuntos, não irá funcionar, mas gerará mau funcionamento.
            Cláudio

          3. Perfeito. Hoje fiz a montagem na placa funcionou super bem. Bom então para ter mais canais o ideal e ter modulos de frequência diferente. Proximo projeto e com pic 16f628a que quero fazer e com mais canais. Obrigado por enquanto com o auxilio. Voce tem algum canal no YouTube? Abraço

          4. Ola THSL!
            Muito bom! Espero que seja bem sucedido também em seu próximo projeto! Eu não tenho canal no YouTube, sendo este blog o único meio que uso para repassar a outros o que consigo nos experimentos.
            Obrigado
            Cláudio

          5. Olá Clauudio,

            Dentro starei acompanhando por este meio todos os projetos. Dentro do possível estarei acompanhando e montando alguns projetos que acho muito interessante. Sabe né engenheiro adora ficar mexendo nas coisas.

            Abração e sucesso.

  4. Boa Tarde Claudio

    montei o receptor e controle e funcionou bem mas não estou conseguindo fazer ele funcionar com a retenção tentei compilar mas não deu certo será que vc conseguiria o hex para retenção
    obrigado

    1. Olá Walker!
      Como ele está funcionando agora? Pulso? Invertido?
      Ao recompilar, você lembrou de configurar o ‘modo de atuação’ por comentar as linhas indicadas no programa, usando // no inicio da linha?
      Qual a mensagem que o compilador apresenta?
      Fico no aguardo…
      Cláudio

Comments are closed.

Back To Top