Módulo de comunicação wireless

Boa noite galera,

Estou procurando um módulo de comunicação wireless que melhor se adapta à minha necessidade...

Desisti de vez de usar os módulos RF 433mhz. Um motivo é que o alcance deixa um pouco a desejar e outro (principal motivo) é que ele dá conflito com o PWM que preciso usar na minha aplicação.

Tava pensando então ou em módulo bluetooth ou no Transceiver NRF24L01 de 2.4GHz.

O bluetooth até seria uma boa opção, pois ele envia e recebe dados, ou seja, ele "conversa" mesmo com outro módulo, porém o alcance ainda não é o ideal, então estou seriamente pensando no nRF24L01 mesmo, mas me bateu uma dúvida...

A comunicação entre os módulos é só uma via tipo só um fala e os outros somente escutam(tipo os modulos RF 433mhz) ou eles podem realmente se comunicar enviando e recebendo dados, ou seja, enviando uma "pergunta" e recebendo uma "resposta", por exemplo, um módulo envia um comando solicitando a hora e outro responde com a hora atual??? Ou o master envia um comando pra um slave solicitando a temperatura e o slave responde com a temperatura do ambiente... Bom, acho que entendeu, né? hehehe

Muito obrigado!

Sim, se não me engano esses módulos são bidireccionais. No entanto deve preocupar-se com a forma como é feita a comunicação. Por exemplo, se tiver 2 sensores que devem comunicar os seus valores para uma unidade central como será a comunicação? Quando os sensores tiverem os valores disponíveis comunicam? Ou a unidade central pergunta a um dos sensores e este responde, e seguidamente pergunta ao outro e este responde, e assim sucessivamente?

O primeiro caso poderia não funcionar, porque os dois sensores poderiam ter os valores disponíveis ao mesmo tempo e assim falar ao mesmo tempo, e dessa forma a unidade central não entender.

O segundo caso, pode não funcionar para modos de baixo consumo, em que os sensores estão alimentados a pilhas (ou baterias), em que se têm constantemente que estar "à escuta" e à espera que a unidade central faça uma pergunta podem consumir muita bateria e assim limitar a sua autonomia.

Possivelmente as bibliotecas que existem ara estes módulos já têm estas questões pensadas, apenas estou a chamar a atenção, para que esteja atento na altura de procurar a melhor biblioteca. No seu caso, também penso que não vai ter estes problemas, isto é, se o seu projecto for apenas acender as luzes RGB (não tenho bem a certeza, mas penso que era essa a questão que levantava no outro post).

Por exemplo, se tiver 2 sensores que devem comunicar os seus valores para uma unidade central como será a comunicação? Quando os sensores tiverem os valores disponíveis comunicam? Ou a unidade central pergunta a um dos sensores e este responde, e seguidamente pergunta ao outro e este responde, e assim sucessivamente?

A comunicaçao com os nrf é bidirecional mas nao full-duplex.Nesse tipo de cenario o slave até podia enviar a leitura do sensor pro master visto que cada modulo nrf tem 5 pipes.Quer isto dizer que o master pode escutar 5 slaves e receber dados de 5 dispositivos em redor dele.Quando o nrf recebe algo é activado uma interrupçao interna ou externa que podes usar para te alertar que recebeste algo e entao leres os dados.Agora nao estou certo se tambem te indica qual o pipe onde recebeu os dados ...
Nota no entanto que o factor distancia tambem é critico nos nrf.Apesar de operarem nos 2.4Ghz como os acess points normais a potencia de transmissao deles nao é muito boa.Ja estudei um pouco estes modulos, funcionam mas a distancia e a penetraçao nas paredes é fraca.Comparativamente os modulos a 433Mhz contra os nrf que operam a 2.4Ghz, os de 433Mhz devem ter melhor desempenho em distancia visto que o comprimento de onda é maior e como tal conseguem atravessar melhor obstaculos que o nrf.
Nos meus nrf consegui melhorar o sinal soldando um fio na antena onboard do modulo e obtive melhores desempenhos

HugoPT:
Quando o nrf recebe algo é activado uma interrupçao interna ou externa que podes usar para te alertar que recebeste algo e entao leres os dados.Agora nao estou certo se tambem te indica qual o pipe onde recebeu os dados ...

Tenho ideia que sim. Uma das minhas experiencias com estes bichinhos era colocar dois nos a enviar para um central e ele sabia de que pipe recebeu os dados. Na altura implementei um contador por no, ascendente num e descendente noutro, para poder comparar.

O grande problema da comunicacao duplex (dois nos falam e ouvem) e mesmo o facto que tens de garantir que um no esta a ouvir quando o outro esta a falar. Eu ainda nao me debrucei sobre isso pois a minha aplicacao nao tem muita utilidade para isso, mas foi um dos problemas que reparei nos primeiros testes que fiz.

So la para dia 4 e que vou ter acesso ao meu computador la de casa, mas nessa altura poderei colocar aqui o codigo que tenho com 3 nos.

Galera, primeiramente obrigado pelas informações e sugestões. Por isto que eu gosto bastante deste forum, pq diferente de outros que já usei, este a galera se esforça para ajudar os mais "noobs" que nem eu... Valeu mesmo!!!

Eu estou aprendendo (sozinho com ajuda de vocês) automação residencial com arduino. Minha mãe é uma senhora idosa (79 anos) e também é cadeirante. Nossa casa não é adaptada para este tipo de situação, então eu quero apenas dar um pouco mais de qualidade de vida a ela. Não temos dinheiro para contratar uma empresa para fazer este tipo de automação, então resolvi entrar neste ramo para ajudá-la automatizando algumas coisas no quarto dela.

Então estou aberto à receber idéias de novos módulos, blz?

Então, vou abrir o jogo e explicar +/- o que quero fazer...

Haverá um módulo que será responsável pela leitura do ambiente, onde este colherá, em princípio apenas informação sobre temperatura, humidade e iluminação do quarto da mãe e passará estas informações para o master. Ele fará isto de hora em hora, porém o master tmb pode pedir estas informações antes de completar o ciclo, caso haja presença humana no quarto.

Trabalhar com aparelhos que usam controle remoto infravermelho (televisão e ar condicionado só tem este aparelhos no quarto da mãe) será tarefa de outro módulo.

Interruptor inteligente será outro módulo, que receberá sinais wireless para ligar e desligar a lampada. Este módulo tmb pode responder se a lampada está ligada ou desligada conforme o Master perguntar pq este interruptor terá um botão físico na parede e terá que informar para o Master que ele foi ligado ou desligado pelo meio físico.

Em princípio, o Master será um Raspberry Pi interfaciado por um Arduino Mega.

Nossa, foi longa a descrição!!! hehehehe

Vocês poderiam me ajudar nesta automação???

Grande abraço...

E como pensas fazer o interface ao utilizador?
Pagina web, app IOS, Aplicaçao android..?

Em princípio, o Master será um Raspberry Pi interfaciado por um Arduino Mega.

Porque é que não é apenas o Pi? Para que é que é preciso o Mega?

Eu posso estar enganado... mas nao vejo necessidade de 3 modulos + um pi num unico quarto...

luisilva:

Em princípio, o Master será um Raspberry Pi interfaciado por um Arduino Mega.

Porque é que não é apenas o Pi? Para que é que é preciso o Mega?

Blz luisilva??? Pq eu ainda não sei trabalhar com o PI para ligar e fazer funcionar o módulo nRF24L01. Além do mais, por enquanto eu só tenho o Arduino Mega, ainda não comprei o raspberry...

Tava até pensando em trocar o raspberry pelo ethernet shield, visto que o raspberry iria apenas armazenar os comandos dos controles remotos (TV e Ar Condicionado) e servir tmb como um servidor, para poder monitorar o quarto da minha mãe pela internet (temperatura, humidade, iluminação e presença) além de poder ligar alguma lampada, TV e/ou AR (tmb pela net). Se o mega tiver memória suficiente para armazenar os principais códigos dos 2 controles remotos (TV e AR) só um ethernet Shield será o suficiente...

bubulindo:
Eu posso estar enganado... mas nao vejo necessidade de 3 modulos + um pi num unico quarto...

Blz bubulindo??? Sobre o PI, eu respondi acima pro luisilva... Sobre os demais módulos, um será o interruptor para a lampada (substituirá o interruptor normal e ficará embutido dentro da parede. O segundo será o módulo que monitorá o ambiente. Este tmb pode comandar os aparelhos por Infra Vermelho... O terceiro será o master que ficará no meu quarto ligado à internet... :slight_smile:

Então galera, minha melhor opção será o uso do transceiver nRF24L01 mesmo?

Grande abraço...