domingo, 19 de janeiro de 2014

Módulo Receptor com Interruptor Comum


Na minha postagem anterior, falei como fiz o Módulo Receptor integrado a um interruptor touchscreen e confessei que o tamanho ainda é um problema, devido não caber dentro de uma caixa 4x2 de interruptores comuns embutido na parede. Estou com algumas idéias que podem não resolver esse problema, mas que podem amenizá-lo (caso funcione, estarei disponibilizando aqui no blog). Por enquanto, resolvi construir o plano B dessa solução, que seria uma versão do Módulo Receptor integrado a um interruptor comum. Se você viu minhas primeiras postagens sobre esse módulo, sabe do que estou falando, eu planejei mais de uma alternativa possível para implementação dele, de modo que eu pudesse utilizar o que mais me agradasse.

Relé com receptor RF 433Mhz embarcado

















Utilizando o componente acima (comprei na AliExpress ao preço de U$ 8,36), pude dispensar arduíno, bateria e receptor (já vem embutido) e assim garantir que dessa vez seja possível instalar dentro da caixa de interruptores, já que o Módulo Receptor resume-se a apenas um módulo relé. Uma desvantagem é o fato de não ser possível saber o estado das lâmpadas (ligada/desligada) quando estas forem acionadas diretamente no interruptor sem usar a aplicação no tablet. Outra desvantagem é que esse componente possui apenas um único canal de acionamento, o que implica dizer que se eu precisar acionar duas lâmpadas de forma independente, precisarei de duas unidades deles, ou encontrar um similar que já possua dois canais.
Esses relés funcionam com a própria alimentação de 220V AC e vem acompanhado de um controle remoto RF 433Mhz com codificador SC2260.

Controle remoto que acompanha o Relé

















Para fazer o "pareamento" entre o relé e o controle remoto, aperta-se um botão Learning Key do relé e em seguida aperta-se o botão do controle remoto. Se o led do relé piscar rápido, significa que o código do controle foi gravado e assim a comunicação entre eles passa a funcionar. Essas funcionalidades já vêm de fábrica.

Para testar se o relé e o controle remoto estavam funcionando direitinho, fiz uma instalação utilizando a mesma gambiarra de experiências anteriores. 

Ligação dos fios da rede elétrica ao relé (utilizando uma gambiarra para testes)







































Observe que o fio fase está ligado a dois pontos opostos do relé, um dos pontos alimenta o próprio relé, o outro ponto faz parte do chaveamento para o retorno da lâmpada quando ele for acionado. Achei muito legal esse tipo de módulo porque ele não precisa de baterias para alimentação e dessa forma, posso embutir na parede e esquecer que existe um módulo relé ali dentro.

Abaixo segue vídeo com o teste feito utilizando o controle remoto:

 


O interessante disso tudo é que durante os testes, o alcançe foi tão bom que consegui ligar a lâmpada a partir do cômodo mais distante (lâmpada na sala, controle remoto no último quarto), mesmo esse controle sendo um transmissor RF 433Mhz (a última vez que testei transmissores deste tipo foi muito decepcionante).

Depois de comprovado o funcionamento, procurei decodificar o sinal RF enviado  pelo controle remoto, mas não obtive sucesso. Talvez funcione melhor caso eu utilize um receptor com tecnologia semelhante ao módulo relé (SC2260/PT2270), afinal de contas, o sinal é enviado depois de codificado exatamente para evitar interferências de outros aparelhos.

Já que a decodificação do sinal foi descartada, me restou "hackear" o controle remoto, transformando-o em um módulo transmissor interligado diretamente ao arduíno.


Controle remoto RF 433mhz hackeado













Controle remoto RF 433Mhz hackeado





































Identifiquei qual barramento produzia passagem de corrente para o codificador quando o botão do controle era apertado, em seguida soldei a ponta de um fio nesse barramento e a outra ponta do mesmo fio conectei a um pino digital do arduíno. Para alimentação do controle remoto, retirei a pequena pilha de 9v e conectei os pólos negativo e positivo aos respectivos pinos GND e 5V também do arduíno (a menor tensão não impedia o controle remoto de funcionar).

Controle remoto conectado a um Arduíno Uno






















Ao enviar um sinal HIGH para o pino digital no arduíno, significava a transmissão de um pulso de corrente para o barramento do controle remoto, equiparando-se a um clique do seu botão.

Voltada a atenção para o Módulo Receptor, interliguei o componente a um interruptor comum para fazer um teste mais completo. Mas atenção, chamo de interruptor comum por não ser touchscreen, mas é preciso que seja um interruptor do tipo PARALELO, ele vem com três pontos para conexão dos fios.

Módulo Receptor interligado a um interruptor paralelo



































Para um melhor entendimento sobre a conexão desses fios, abaixo segue um esquema mal desenhado, porém mais "limpo".

Esquema de conexão entre o Módulo Receptor e o interruptor paralelo


Codifiquei o arduíno para enviar o sinal para o controle remoto e testei a ligação de uma lâmpada, onde pude acendê-la de duas formas: através do notebook e da forma tradicional apertando o interruptor (como mostra o vídeo logo abaixo).




Finalizado os testes com os equipamentos, só me restava agora tentar instalar em um interruptor do meu próprio apartamento, assim não haveria mais dúvidas sobre sua viabilidade.

Veja foto abaixo de como ficou essa instalação:

Instalação do Módulo Receptor na parede










































Feita a instalação, com tudo já embutido na parede e ligado em paralelo ao interruptor, novamente utilizei o notebook para simular o tablet, afinal eu ainda não tenho o software do tablet pronto e só vou fazê-lo depois que todos os módulos estiverem funcionando perfeitamente.

O vídeo abaixo mostra o módulo funcionando a pleno vapor:





Bom, acho que não esqueci de contar nada, isso é tudo, um plano B para o módulo receptor, lembrando mais uma vez que essa solução não permite que o tablet saiba o estado real das lâmpadas (ligada/desligada) caso alguém utilize o próprio interruptor para ligar ou desligar.

A gente se vê em breve com mais novidades, obrigado mais uma vez pela visita. Até lá...

(Atualizado em 23/11/2016) - Iremos explorar em breve um módulo interessante de ser utilizado nesses projetos (ESP8266), ele é pequeno, pode fazer a comunicação wifi entre os vários pontos da casa e seu preço é bem mais em conta que muitos outros módulos wifi encontrados no mercado. E mais, é possível utilizá-lo sem o Arduíno, programando os controles necessários diretamente nele como se fosse um Arduíno.

Receba grátis todos os códigos-fontes se inscrevendo em nosso canal




quarta-feira, 8 de janeiro de 2014

Módulo Receptor Utilizando Sensor Touchscreen

Os experimentos realizados até agora me deram bagagem para começar a montagem do primeiro módulo (lembre-se que são 3 módulos distintos). Este módulo tem a função de ligar/desligar as lâmpadas, é conectado ao interruptor e forneçe informações ao Módulo de Controle Principal via wireless. Estou falando do Módulo Receptor !

Em postagens anteriores, mostrei várias possibilidades para esse módulo em questão, uma das versões utilizaria apenas um relé especial (chinês) com receptor RF-433Mhz embutido ligado diretamente na rede 220V, conectado paralelamente ao interruptor comum. No entanto estou tendo dificuldades em decodificar o controle remoto que acompanha esses relés.

Com isso, trabalhei meu primeiro Módulo Receptor integrado ao interruptor touchscreen criado na postagem anterior.

Na verdade, quase todos os componentes deste módulo já foram utilizados nos testes com o interruptor touchscreen e o que fiz agora foi basicamente trocar a placa Arduíno Uno por um Arduíno Pro Mini e acrescentar um módulo wireless ao conjunto, além de compactar tudo em uma placa de circuito impresso.

Uma visão geral do Módulo Receptor e sua integração direta via cabo com os demais meios externos é mais ou menos assim:

Módulo Receptor e suas integrações













Para elaborar a placa de circuito impresso, utilizei o próprio Fritzing, software que já comentei antes neste blog e que também venho utilizando para desenhar os esquemas de montagem:


Módulo Receptor: esquema de montagem (visão protoboard)



















Na biblioteca do Fritzing não encontrei todos os componentes necessários para o desenho, então substituí por outros parecidos, já que eu não estava disposto a criá-los, como por exemplo, esse receptor RF-433Mhz com 8 pinos, o que eu tenho possui apenas 4 (e mais 1 para antena caso prefira), então deixei os outros 4 pinos do desenho sem uso e ignorei na hora de imprimir a placa. Para mim o importante era constar os pinos do circuito nas posições e quantidades corretas.

Para quem ainda não usou o Fritzing eu explico: Ele gera três visões do esquema, uma é a que foi mostrada anteriormente, que chama-se "protoboard", as outras duas são "esquemático" e "PCB" (Printed Circuit Board). Essas visões são alternadas apenas clicando nos seus repectivos botões, mas as coisas nem sempre são tão fáceis quanto parece, foi preciso eu mexer bastante na visão gerada porque haviam muitos barramentos passando por cima do outro e o auto roteamento desses barramentos considerou por padrão um circuito de dupla face (eu queria circuito impresso apenas em um dos lados), então levei um tempinho bem considerável para chegar a esse resultado final abaixo:

Módulo Receptor: esquema de montagem (visão PCB)




















Veja que existem alguns pinos fora da placa, esses são aqueles quatro pinos do receptor que desconsiderei (conforme falei ainda há pouco).

Exportando a visão PCB para PDF (também existe essa opção), pude imprimir a placa de circuito impresso em papel para utilizá-la como molde durante sua confecção:

Módulo Receptor: PCB impressa


Quando exportamos para PDF, são geradas várias páginas com visões diferentes do mesmo circuito. A que utilizei representava a face de baixo espelhada (os barramentos ficam embaixo e os componentes em cima da placa).

Em seguida, chequei se os pontos estavam conforme planejado:

Análise da distribuição dos componentes ao longo da placa impressa




















Percebi que pela localização dos componentes, ainda seria possível reduzir o tamanho da placa, então reduzi distâncias entre os barramentos e a impressão final ficou assim:


Componentes que compõem o Módulo Receptor

























Pela comparação com o tamanho da moeda, pode-se ter uma idéia do tamanho da placa. Ela deve ser o menor possível porque ficará embutida na parede juntamente com o relé e a fonte de alimentação de energia.

Encerrada toda a fase de projeto, começei a parte prática, então a lista de itens para a construção do Módulo Receptor ficou assim:
  • Resistores 300 ohms
  • Resistores 5M ohms (1M2, 10M, isso depende, falei na postagem anterior).
  • Capacitores 100pF
  • Placa Arduíno Pró Mini
  • Receptor RF-433Mhz
  • Placa de circuito impresso

Para construir a placa de circuito impresso foi preciso os seguintes materiais:

Material para construção da placa de circuito impresso

















  • Placa de fenolite face simples
  • Percloreto de ferro
  • Lixa fina
  • Cortador de placa
  • Furador de placa
  • Caneta de ponta porosa
  • Régua

Felizmente para simplificar a procura, parte desses materiais podem ser comprados em kits prontos nas lojas especializadas em eletrônica a um preço camarada, o meu kit custou aproximadamente R$ 25,00 e ainda ganhei luvas de látex de brinde. 

Existem maneiras diferentes de criar uma placa de circuito impresso, pesquisando na internet você vai encontrar vasto conteúdo sobre esse assunto. Considero o método que utilizei o mais simples e atendeu suficientemente bem à minha necessidade. Os passos foram os seguintes:

1.Primeiro fiz a impressão da PCB numa impressora jato de tinta (foto mostrada anteriormente), em seguida, recortei e colei essa impressão em cima da placa de fenolite utilizando fita adesiva.


PCB impressa em papel e colado em placa de fenolite

















2.Perfurei todos os pontos utilizando a furadeira que veio no kit.

Furando os pontos marcados na PCB

















3.Após perfurar todos os orifícios, retirei o papel impresso da placa de fenolite. Desconsiderei alguns pontos desenhados referente aos pinos do Arduíno porque não serão utilizados, assim evitei maior quantidade de pontos de solda e abri caminho para os barramentos passarem.

Retirando o molde de papel após furar todos os pontos

















4.Em seguida, raspei a placa com palha de aço e utilizando uma caneta de ponta porosa (também veio no kit), desenhei os barramentos unindo todos os pontos, lembrando de pintar as bordas desses pontos em círculos.

Desenhando os barramentos





















Você pode utilizar régua para traçar as linhas com mais precisão, mas deve prestar bastante atenção para não traçar com falhas, caso contrário o barramento poderá não cumprir sua função.

Barramento feito com caneta de ponta porosa


























5.Após todos os barramentos desenhados, preparei a solução de percloreto de ferro (também vem no kit, inclusive com as instruções de preparo) e mergulhei a placa nela por aproximadamente 20 minutos. 

Solução de Percloreto de Ferro corroendo a PCB




















A solução corroeu toda área de cobre que não estava protegida pela tinta da caneta, deixando apenas os barramentos.

Placa após corrosão do cobre





















6.Concluída a corrosão, esfreguei os barramentos com uma palha de aço, retirando a tinta da caneta e deixando exposto o barramento em cobre, dando forma final da placa de circuito impresso.

Resultado da placa após retirar a tinta do barramento


















7.Cortei as bordas da placa para deixá-la no tamanho certo utilizando o cortador que também veio no kit.

Cortando a PCB no tamanho ideal



8.E finalmente soldei os componentes, concluindo a fabricação do primeiro Módulo Receptor do meu projeto de automação residencial (em termos de hardware).


Placa de circuito impreso do módulo ligada ao interruptor touchscreen


Esta placa ainda poderia sofrer uma segunda redução de tamanho, mas antes mesmo de fazer isso, fiquei insatisfeito com o alcance do receptor RF-433Mhz integrado nela.
Já percebeu que fiz besteira ? Fui "desgostar" de um componente depois da placa pronta, isso é ruim, não faça isso em casa, primeiro teste seus componentes individualmente e tenha certeza de que serão eles os escolhidos antes de criar uma placa para acomodá-lo.

Para substituir o receptor RF-433Mhz por outro componente de melhor alcance, segui mais uma vez as dicas do meu amigo +José Antonio Leal de Farias (Jalf) e passei a utilizar um transceiver NRF24l01 2.4Ghz:

Módulo NRF24L01 2.4Ghz















Além do alcance, uma outra vantagem é que, por ser um transceiver, posso utilizar esse componente para consultar o Módulo Receptor e saber o estado dos interruptores, ou seja, além de enviar comandos, recebo informações pois os transceivers se comportam como transmissor e receptor ao mesmo tempo.

Justificada e motivada a utilização do NRF24l01, começei tudo de novo, desde a elaboração do esquema da PCB até sua confecção final, pelo fato deste transceiver utilizar pinos específicos do Arduíno.

Para não ser repetitivo, basta dizer que refiz todos os passos explicados anteriormente, chegando a seguinte placa:

PCB do Módulo Receptor em nova versão

















 Após soldagem dos componentes e feita a fiação com o interruptor touchscreen, o resultado foi esse:


PCB do Módulo Receptor conectada aos componentes externos



















Módulo Receptor acondicionado dentro de uma patola
























Coloquei tudo dentro de uma patola de 52 x 85 x 123 mm (altura x largura x comprimento) e percebi que vai ser um grande desafio reduzir o módulo inteiro de forma que caiba dentro de uma caixa padrão de interruptor (4x2). Por enquanto vou utilizar essa versão que pode ser "feiamente" mantida na parte externa da parede, até que me venha mais inspiração.

Em termos de software, refatorei o código do Módulo Receptor de modo que possa interagir com o notebook (que por enquanto faz o papel do Módulo de Controle Principal), utilizando o transceiver como meio de comunicação. 
Implementei funções para ligar/desligar lâmpadas remotamente, bem como configurar a sensibilidade dos interruptores em relação ao toque do dedo. Caso você tenha interesse no código, se inscreva informando seu e-mail no formulário do final desta postagem. Não disponibilizei aqui porque está ficando muito longo e iria ocupar espaço desnecessariamente.

Enfim, os dois vídeos abaixo mostram o resultado final. O primeiro com um teste da ligação remota das lâmpadas e o segundo com a configuração da sensibilidade dos interruptores.

Vídeo - Ligando/Desligando lâmpadas utilizando o notebook

















Perceba que um dos interruptores ainda está sensível demais, o que me levou ao teste seguinte,  mostrado logo abaixo.


Vídeo - Configurando a sensibilidade do interruptor touchscreen



















Os próximos passos em relação ao Módulo Receptor será tentar reduzí-lo de tamanho. Também tentarei fazer uma versão diferente, conectado a interruptores comuns (caso eu consiga decodificar o controle remoto dos relés que recebi), o que der melhores resultados será o meu escolhido. Antes disso, vou me concentrar no Módulo de Controle Principal.
(Atualizado em 23/11/2016) - Hoje em dia, um módulo interessante de ser explorado nesses projetos é o ESP8266, ele é pequeno, pode fazer a comunicação wifi entre os vários pontos da casa e seu preço é bem mais em conta que muitos outros módulos wifi encontrados no mercado. E mais, é possível utilizá-lo sem o Arduíno, programando os controles necessários diretamente nele como se fosse um Arduíno. Irei montar uma versão desse projeto utilizando ele muito em breve.

Receba grátis todos os códigos-fontes se inscrevendo em nosso canal