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.
Tags:
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.
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.
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 ,
Faltaram algumas informações. Qual a distância entre esses Arduinos ?
Existem paredes entre eles? Pode ser cabo ou Wireless?
Sobre RS485 (acho que pode ser usada nesse caso):
https://arduino-info.wikispaces.com/RS485-Modules
https://arduino-info.wikispaces.com/SoftwareSerialRS485Example
http://labdegaragem.com/forum/topics/rs485-2
http://labdegaragem.com/forum/topics/como-usar-comunicacao-rs485-no...
Mais sofisticada - CAN BUS :
http://wiki.seeedstudio.com/CAN-BUS_Shield_V1.2/
https://www.cooking-hacks.com/documentation/tutorials/can-bus-modul...
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".
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
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.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por