Esta es una idea con la que he estado jugando durante un tiempo y quería obtener una opinión. Cuando escuché por primera vez sobre CAN-FD, pensé que sería la respuesta a este problema. Sin embargo, la mayoría de los microcontroladores de rango medio no tienen soporte para CAN-FD (LPC546 excluido). El STM32H7 tiene soporte, pero el costo de ese microcontrolador es demasiado alto para la mayoría de las aplicaciones. Hay algunos dispositivos como el TCAN4550 y la versión Microchip que son bastante buenos, pero no tan flexibles.
Con un transceptor RS-485 y un iCE40 u otro FPGA se puede hacer un sistema de transceptor personalizado. La idea sería conectar un microcontrolador sobre SPI o UART a la FPGA. El FPGA manejaría el protocolo real, que sería similar a CAN.
Las ventajas de un sistema de este tipo son:
Mis preguntas son:
Podría ser un excelente protocolo de código abierto que sin duda estaría dispuesto a esforzarme en desarrollar.
Estoy preparando un protocolo basado en RS485 para la automatización de edificios; maestro único, 250 kbps. Nada más se ajusta a mis necesidades. Me permite crear los pequeños sensores/actuadores de bajo costo que necesito. Reinventar la rueda puede estar bien, en mi opinión.
La capa física del bus CAN admite colisiones, lo que es esencial para admitir varios maestros. La capa física RS485 no estaba diseñada para manejar colisiones, pero los controladores y receptores más recientes se comportan correctamente en condiciones de falla, por lo que podría hacer que funcione. Pero, ¿ha considerado usar un transceptor CAN-FD para su protocolo personalizado?
Es posible que pueda crear algo similar a su concepto de FPGA dedicando un MCU ARM Cortex razonablemente rápido. Podría ser más fácil de desarrollar, bien podría ser más barato en la producción. El resultado puede ser más fácil de trabajar para otros.
Finalmente, mencionas 48Mbps. ¿Tenía la impresión de que tanto CAN-FD como RS485 alcanzan un máximo de aproximadamente 10 Mbps?
jaskij
jaskij
Meozaá
Meozaá
jaskij
Lundin
Pedro Mortensen
Meozaá