¿Protocolo de red ampliable entre dispositivos?

Actualmente estoy trabajando en un proyecto en el que necesito instalar varios dispositivos periféricos en la red junto con un maestro. Este sistema total tiene alguna aplicación industrial. Necesito que la red sea ampliable, ya que puede haber adición o sustracción de dispositivos de la red. El dispositivo puede fallar, por lo que será necesario reemplazarlo. Todos los dispositivos periféricos son bastante grandes y cubrirán un área de alrededor de 2 pies X 3 pies, dejando atrás la distancia mínima de puerto a puerto de comunicación de al menos 3 pies. Ahora, he pensado en SPI, I2C, CAN Bus, redes LAN. Tengo algunas dudas en mi mente para seleccionar entre ellos. Por favor considérenme novato en el campo de la comunicación y ayúdenme a seleccionar el mejor.

SPI: Ya he rechazado el protocolo porque mi requisito es la comunicación externa/entre dispositivos. También necesito comunicación bidireccional, lo que podría inundar el dispositivo maestro con un montón de cableado CS/SS y desordenarlo en todos los aspectos.

I2C: Me parece prometedor, pero si considera la longitud de la red, dudo que funcione correctamente. La velocidad de la red no es el gran criterio hasta que cae por debajo de 100 kBPS.

CAN Bus: Totalmente confundido y no encontré mucha documentación con MCU AVR. Busco su ayuda en esto en serio.

LAN alámbrica: Buena opción, se puede implementar donde los sistemas se mantienen de cerca. pero cuando se trata de un escenario en el que no tiene ningún control sobre la cantidad de dispositivos, eso dificulta la prestación del servicio. Principalmente, mantener los registros de IP cuando reemplace el dispositivo será un dolor de cabeza para el operador.

Ya he implementado la comunicación WiFi entre dispositivos industriales para mi último proyecto, pero tengo problemas de desconexión aleatoria debido a límites de hardware.

Estoy esperando aquí alguna orientación para seleccionar el protocolo.

Por cierto: el corazón de todos mis periféricos es el MCU ATmega32U4 y el dispositivo maestro será una PC.

Ohhh.... Casi he olvidado MODBUS RTU.... Déjame pensar en eso también

Respuestas (1)

Está mezclando algunas capas de la pila de red.

  • Capa física: I2C, SPI, Ethernet PHY Detalles de implementación física (longitud del bus, impedancia)
  • Capa de acceso a medios: formato de marco I2C, pines de selección de chip SPI, capa Ethernet MAC
  • Gestión de red: conexión y desconexión de clientes, DHCP, etc.

Esos protocolos varían desde muy simples hasta muy complejos y la elección realmente depende de sus requisitos y limitaciones.

El concepto de capas le permite elegir una solución óptima para cada parte de la pila de red. En teoría, puede ejecutar un servicio similar a DHCP a través de un enlace I2C.

Gracias @Lior Billia, creo que he distinguido claramente las pilas por capas físicas y he mencionado algunos de los inconvenientes de aplicarlas en mi sistema. Estoy de acuerdo con usted acerca de DHCP sobre I2C, ya que puede configurar la dirección mediante pines IO duros. Por ahora voy a trabajar con I2C y publicaré los resultados aquí pronto. Media, mientras que otros comentarios también son bienvenidos.