AJUDA TEÓRICA - CONTROLE REMOTO + COMUNICAÇÃO SEM FIO E/OU SPI/UART/I2C

Boa tarde Garagistas.

Estou criando um projeto que irá ter um controle remoto e um receptor. Segue alguns detalhes:

CONTROLE -  Terá uns 40 botões e um joystick (dois potenciômetros). Pode ocorrer de dois ou três botões serem apertados juntos. O controle também receberá dados de temperatura quando solicitado e apresentar no LCD Nokia 5110.

RECEPTOR - Recebe o sinal sem fio e será conectado há uns 15 Arduinos, onde cada um tem uma função diferenciada.

Dúvida: no caso do receptor receber dois botões apertados, uma ação para o  Arduino - A e outra no Arduino - B (slaves). Com qual protocolo consigo operar funções em Slaves distinto, SPI, I2C ou UART ou nenhum deles ?

Sei que tenho um longo caminho de estudo pela frente e queria ajuda para me guiar no melhor ou mais eficiente caminho. Uma das premissas é tempo de reação, pois o tempo do botão apertado deve ser o menor possível entre o slave executar a função. 

Exibições: 121

Responder esta

Respostas a este tópico

cara a meu ver vc precisa de um master primeiro pra controlar todos ai não vai importar o protocolo!!! 

Então Edy, é nessa ideia de um master comandando os outros, a questão é por qual protocolo de comunicação eu poderia mandar duas informações no mesmo barramento para diferentes slaves.

É que o pouco que sei, penso só ser possível passar uma informação por vez no barramento. 

Se confirmar, ai to lascado mesmo.

Profbus - PA ou DP não severia ?

Dê uma lida: http://www.smar.com/brasil/profibus

Boa tarde H Bruno.

Então, eu fui ler sobre e já vi outra aplicação para o Profbus, mas o que preciso requer algo simples.
É um controle sem fio, que envia os comandos para um Master e esse envia comandos a outros Arduinos. No caso os Slaves vão acionar leds ou motores de passo. Coisa bem simples.

Mas valeu pelo link, pois salvei ele na minha pasta de automação residencial pois está muito bem escrito e contém muita informação relevante. 

Pelo que deu para entender o que vc pretende - confirme ou redesenhe... para um entendimento.

Bom dia H Bruno.

Pensei no controle sendo um Slave, por isso redesenhei. 

O meu projeto é montar um brinque usando LEGO. Estou montando um palco de show, cujo a intenção é apertar no controle os botões e no palco acionar a iluminação.

Anexos
Cada um vai dar um palpite sobre o que conhece.
Eu acho que uma rede RS485 será uma boa, pois pode ligar até 255 dispositivos todos em paralelo na rede. É configurar para enviar o endereço é o comando desejado cada vez que apertar um botão. Ao pressionar dois botões juntos, tem que tratar para enviar o primeiro comando em seguida o segundo comando, já que a comunicar é serial, mas o acionamento será bem rápido.

Boa tarde Andre.
Não conheço rede RS485, mas vou estudar o assunto.
Sobre o acionamento, imagino que por se tratar de um único barramento, será uma informação primeiro e a outra depois e como vou fazer ainda não sei kkkkkk.  Tenho um longo caminho pela frente.
Valeu pela indicação.

Bom dia José.

Realmente esqueci de mencionar a distância, mas ela é pequena. Coisa de 30 a 40 cm no máximo entre master/slave.

A maior premissa do meu projeto é velocidade de acionamento. Ao apertar o botão no controle, o comando chegue o mais rápido possível ao salve selecionado. Eu estagnei nessa parte pois agora fico pra estudar qual seria o melhor protocolo de comunicação entre eles, mas estou inclinado ao I2C.

Estou criando um brinquedo que é um palco de LEGO (como de show). Tenho múltiplos leds, motores, onde o Master seria o receptor do sinal do controle. Ao apertar um botão, o Master envia através de um barramento o comando para o Slave selecionado, cujo ele faz o tratamento da função. Pra ficar menos abstrato, vou mostrar uma foto do que seria o palco.

Antes de tudo, agradeço a todos pelo tempo em ajudar o "próximo".

Anexos

Boa tarde, 

Imaginei que fosse um projeto de indústria ! 

Assim fica mais fácil para a gente entender o que pretende . 

Nesse caso pode usar I2C mesmo. Ou até SPI (mais rápido) . 

O que pretende controlar ?  Somente Leds e motores? Não precisa de tanto Arduino.

Seria possível usar extensor de portas ? I2C ou SPI ?

MCP23017 - i2c 16 input/output port expander

https://www.adafruit.com/product/732

Adafruit 16-Channel 12-bit PWM/Servo Shield - I2C interface

https://www.adafruit.com/product/1411

Boa noite José.

Conversei com um professor e ele indicou usar SPI, até por ser mais simples a programação. Tinha tentado comunicar com esse protocolo antes sem sucesso, mas vou retornar a ele.

Sobre a quantidade de Arduino, tem uma parte do projeto que envolve 20 motores de passo funcionando ao mesmo tempo. Isso é, nessa parte tenho que ter processo individual do código para funcionamento correto. Como todas os caminhos apresentados por você até agora estão sendo valiosos, vai que tem um shield que eu ainda não descobri, já irá ajudar muito.

Valeu.

RSS

Destaques

Registre-se no
Lab de Garagem
Clicando aqui

Convide um
amigo para fazer
parte

curso gratis de arduino

© 2018   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço