Bom dia pessoal,

Estou começando a montar um sistema de automação residencial e quero utilizar esses 3 caras ai. Seguindo este tutorial, consegui fazer funcionar.

Mas o quero é algo um pouco mais complicado (eu acho!). Utilzarei o raspberry como central e os arduinos como nós. Quando uma pessoa acessasse o raspberry pelo navegador, seria enviado informações para os arduinos.

E também terá interruptores touch nos arduinos. Ai quando alguém acionar o interruptor, o arduino manda informação para o raspberry, que muda o estado daquele interruptor no navegador.

Já consigo fazer a transmissão do raspberry para os arduinos. O raspberry envia uma informação para o arduino, que manda de volta pro raspberry indicando que a ação foi realizada.

Também consegui que o raspberry fique "ouvindo" qualquer informação que venha dos arduinos. Mas esse listener do raspberry fica consumindo quase 100% da cpu. Não sei até quanto isso é prejudicial ao raspberry.

O que eu fiz foi assim: criei um scanner que fica ouvindo e esperando alguma informação dos arduinos. Quando alguem acessa o raspberry pelo navegador e executa alguma ação, eu mato o processo do scanner e ativo o sender. Quando o sender confirma (ou não) o recebimento, eu executo novamente o scanner. Essa foi a forma que consegui fazer.

Vocês tem alguma experiência com isso? Acham que isso é a forma correta de se fazer essa comunicação?

PS.: desculpa pelo texto longo! É que queria explicar direitinho a situação.

Exibições: 1200

Responder esta

Respostas a este tópico

Posso sim Luis.. aos poucos vou colocando mais informações e imagens.

Cara eu to fazendo um projeto similar a esse teu, a difeença é que eu utilizo i2c. Pq a ideia é poder conectar até 100 arduinos. O que serial inviavel com serial ou GPIO visto a limitação no numero de portas programaveis. Preciso fazer o RPI "escutar os arduinos" o que tá sendo um desafio grande. Mas eu gostaria de trocar umas informações contigo, quem sabe a gente não se ajuda. 

Opa Flávio,

Dei uma parada no projeto, mas gostaria de trocar informações, ai quem sabe posso voltar com o projeto e possamos nos ajudar!

Cara eu to utilizando uma porta GPIO do RPI pra servir de sentinela. Mantenho o Pullup nela e quando uma arduino zerar essa porta, o RPI faz uma varredura perguntando quem precisa de algo e qual a prioridade. O negocio é fazer o arduino zerar e depois retornar ao estado neutro de antes. Pq com o analogWrite ele seta 0 na PWM, e fica zero pra sempre. Preciso que volte para o RPI sair da interrupção

Ola Renato... tambem sou iniciante na area e tambem, estou tentado fazer praticamente a mesma coisa que voce porem nem se quer conseguir fazer o arduino se comunicar o raspberry, conseguir q 7 arduinos enviassem dados para 1 outro arduino, porem nao conseguir q o raspberry recebece nada, voce poderia fazer um tutorial de como vc conseguiu ou da umas dicas, estou usando python para programar.

Grato.

Desculpa Renato pensei que vc tinha utilizado um NRF24L01 para fazer a comunicação... É oq estou usando, quando coloco 2 arduinos para conversarem eles funcionam mas não consigo fazer um Arduino conversar com o raspberry pi2 via radio (NRF24l01+)

RSS

Destaques

Registre-se no
Lab de Garagem
Clicando aqui

Convide um
amigo para fazer
parte

curso gratis de arduino

© 2019   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço