protocolo CAN: cómo comenzar con la interfaz CAN con el microcontrolador [cerrado]

0

Quiero comunicarme con VFD (unidad de frecuencia variable) a través del protocolo CAN abierto.

Nunca he usado CAN antes. Entonces, ¿alguien puede guiarme desde dónde debo comenzar? Cualquier enlace o sugerencia realmente sería de gran ayuda.

Estaría usando dsPic / pic24 microcontrolador. Entonces, ¿hay bibliotecas preescritas que pueden hacer que mi diseño sea más fácil?

¿También alguna sugerencia para elegir un controlador correcto?

Sólo busco una dirección correcta para evitar perder el tiempo, ya que leer demasiados tutoriales también es peligroso.

gracias

    
pregunta skg

1 respuesta

4

En primer lugar, CAN es la capa de hardware y CANopen es un protocolo que se ejecuta sobre eso. Necesitará saber en detalle cómo funcionan tanto CAN como CANopen.

Luego elija una MCU que tenga un controlador CAN incorporado. Esto le ahorrará mucho tiempo y costos: evite utilizar controladores CAN externos.

Luego, debes averiguar qué tipo de implementación CANopen utiliza el dispositivo. CANopen tiene varios sub-estándares para varias aplicaciones, conocidos como "perfiles de dispositivos". El dispositivo podría estar usando uno de los perfiles de dispositivo estandarizados o podría estar usando uno personalizado.

Dependiendo de sus requisitos y de lo que haya en el bus, es posible que pueda enviar / recibir los mensajes conocidos y codificados que se necesitan. Si desea que su MCU actúe como un dispositivo CANopen completo y compatible con los estándares, entonces esa no es una tarea trivial. La solución sensata entonces es conseguir una pila de protocolo CANopen prefabricada, ya sea comercial o quizás la gratuita CANFestival .

Tenga en cuenta que incluso si encuentra una pila con un puerto para su MCU específica, implementarla para que se lleve bien con el resto de su aplicación generalmente no es una tarea trivial. Si no sabe nada de la CAN, y esta es una exposición individual, prepárese para un proyecto largo que podría durar al menos un año, probablemente más que eso.

    
respondido por el Lundin

Lea otras preguntas en las etiquetas