Dúvida: É possível a comunicação de um arduino com outro?


#1

Olá amigos,
Estou desenvolvendo um protótipo para um trabalho acadêmico, o objetivo é detectar quantas vagas livres ou ocupadas, há em um estacionamento através de sensores ultra-sônicos localizados nas respectivas vagas, o arduino coleta os dados e expõe em um display de LCD 16x2, até ai tudo bem, consegui fazer com que funcione bem, mas há um problema o número de vagas que consigo monitorar é extremamente pequeno, pois o sensor utiliza duas portas do arduino, mesmo que eu utilize o mega ainda não consigo atender a muitas vagas, digamos que colocasse apenas os sensores no mega e utilizasse o monitor serial dele para acompanhar as leituras, eu conseguiria apenas monitorar 28 vagas.
Digamos que precisasse monitorar 100 vagas, tendo o limite de 28 por arduino, eu poderia dividir esse estacionamento em setores e em cada setor um arduino ficaria responsável, e cada um enviaria os dados coletados a um único arduino, para que este efetuasse a comunicação com o display e ficasse acessível para monitoramento. É possível essa comunicação? Se não de qual outra maneira posso estar realizando esse procedimento? e mesmo que seja possível há alguma maneira mais eficiente ou mais fácil para este processo?

Desde já agradeço a atenção.


#2

Usar mais Arduinos seria uma opção mais cara, apesar de ser perfeitamente possível fazer chaining com Arduinos ou qualquer outra opção no mercado, inclusive estão produzindo derivado do Arduino chamado Chainduino que foi desenvolvido justamente para resolver essa problemática, mas a campanha de crowdfunding dele já acabou.

Acho que a opção mais interessante para a sua problemática é utilizar expansores de portas, recomendo um expansor 16-bit i2c da Microchips chamado MCP23017, ele expande 16 portas e, como é i2c você pode fazer chaining com 7 deles aumentando 112 portas para cada i2c disponível, ou seja, se usar um produto que tenha 2 i2c disponíveis, conseguirá 224 portas, fora as do MCU.