Supondo que não posso usar tecnologias sem fio, como LoRa , LTE-M ou SigFox no ambiente para a instalação, preciso usar um protocolo de sensor com fio para se comunicar com o gateway instalado remotamente em um edifício.
O cabo pode estar a até 20m do gateway e, idealmente, comprarei uma solução confiável que não seja muito cara. Seria excelente se o sensor fosse compatível com CE, mas não parece haver uma opção de baixo custo (<£ 20), por exemplo, solar .
Portanto, os requisitos são:
- Pode se conectar a 10 ou mais dispositivos
- Distância máxima de pelo menos 20m
- Preço inferior a £ 20 para sensor (es) de temperatura / umidade / lux (luminosidade)
Existem muitas opções, como SPI, I2C, RS485, Onewire e CAN. O protocolo que selecionamos determinará o sensor que selecionamos.
O protocolo Onewire da Maxim (Dallas) parece ideal, mas ainda há uma gama limitada de sensores (ao dizer isso, poderíamos usar a ponte máxima )
Qual é o melhor protocolo com fio para os requisitos listados acima?
Respostas:
Eu iria com RS485 ou CAN, porque com ônibus longos, muito barulho pode ser percebido. Eles são os mais resistentes ao ruído, pois usam linhas de dados diferenciais e distorcidas.
O RS485 suporta distâncias de até ~ 1.200 metros, com velocidade garantida de 100 Kb / s. Max 10 Mb / s com distâncias menores. É um barramento multiponto com até 32 drivers e 32 receptores. (Um driver ativo por vez.)
O CAN também pode ser utilizado em mais de 20 metros. Deste documento .
Para repetir meu comentário, o I2C está fora de questão por causa das longas distâncias. A capacitância do barramento seria muito alta. Ele foi projetado para distâncias curtas a bordo.
Quanto ao SPI, aqui está outro documento sobre a extensão do barramento SPI para comunicação de longa distância, mas pode ser complicado. Então, eu ficaria com CAN ou RS485.
Ambos são bastante comuns, portanto, encontrar sensores não seria um problema da IMO.
Também existem sensores com interface CAN, mas o RS485 é mais comum, talvez seja o mais barato e o mais fácil.
fonte