Pregunta

  1. ¿Es probable que la tarjeta de interfaz CAN se instale como un puerto COM?

  2. ¿Cómo divido un mensaje para enviarlo como marcos separados? ¿Qué pasa con el ensamblaje de datos de múltiples marcos recibidos en un mensaje? ¿Es esta una preocupación válida?

  3. ¿Qué es la pila CANopen? Si ya tengo una API para comunicarme con puertos seriales, ¿puedo hacer que mi programa lea / envíe mensajes CANopen sin la pila CANopen? ¿Qué tiene que hacer exactamente mi programa?

  4. ¿Cuál es la forma ideal / correcta de implementar el diccionario de objetos (OD) en el software?

(Situación actual: tengo que escribir un programa Java para interpretar mensajes CANopen. Debido a ciertas circunstancias, no puedo tener en mis manos el hardware CAN).

(Esta es la continuación de la serie de Stack & nbsp; Preguntas de desbordamiento que publiqué la semana pasada en Java y CANopen .)

¿Fue útil?

Solución

  1. Eso depende de su tarjeta de interfaz. Pero lo más probable es que no sea un puerto COM, pero obtendrá un archivo DLL que ha exportado funciones para acceder a la tarjeta (la mayoría de las interfaces CAN disponibles se conectan a su PC a través del puerto USB). Pero no se preocupe: aunque no es un estándar oficial, la mayoría de esos archivos DLL utilizan las mismas funciones para que pueda intercambiar su interfaz CAN con otra de otro fabricante sin problemas.

  2. Es muy raro enviar tantos datos a través del bus CAN que hay que dividirlos en varias tramas. Pero si es absolutamente necesario, debe hacerlo usted mismo.

  3. Una pila CANopen es una biblioteca que proporciona funciones de nivel superior para su uso. Se encarga de todo lo que CANopen requiere (por ejemplo, latidos del corazón) para que no tenga que hacerlo usted mismo. Una buena pila también se encarga de múltiples cuadros (2). Lamentablemente, estas pilas no están disponibles a bajo precio, pero en mi humilde opinión, valen la pena.

  4. La mayoría de las implementaciones usan una estructura, ya sea en ROM o RAM, dependiendo de si el OD se puede modificar o no. Pero una buena pila CANopen también se encarga de esto por usted.

Otros consejos

3) Si bien una pila comercial de CANopen es sin duda una buena idea, aún es posible leer / enviar mensajes CANopen sin usar uno.

No sabemos cuál es el propósito de su aplicación. Pero un ejemplo en el que probablemente estaría bien sin una pila CANopen es si ya tiene un bus CANopen en funcionamiento con nodos maestros y esclavos y solo desea escuchar un mensaje en particular. Otro ejemplo podría ser si está escribiendo una pequeña configuración o utilidad de prueba con un conjunto pequeño y bien definido de mensajes que se están utilizando. En tales casos, una pila CANopen comercial en toda regla podría ser una exageración.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top