Veamos la función de simulador maestro CANopen del conversor USB-CAN.
Podemos hacer clic a la izquierda en "Buscar estación esclava" para escanear todos los nodos esclavos CANopen en el bus CAN. También puede añadir manualmente una estación esclava CANopen. La estación ya añadida se mostrará como se indica a continuación. El usuario puede hacer doble clic en el número de nodo especificado para activar la interfaz para comunicarse con la estación esclava.
La función de estación maestra CANopen convierte el dispositivo USBCAN en una tarjeta maestra CANopen y accede a la red CANopen. ECANTools tiene una variedad de funciones de estación maestra CANopen de uso común. Por ejemplo, NMT(Network Management), SYNC(synchronous protocol), EMERGENCY(mensaje urgente), PDO(process data object), SDO(service data object), NODE GUARDING(protección de nodo).
La siguiente tabla enumera los códigos funcionales y los rangos de ID de trama, que se corresponden con los tipos de trama comunes de CANopen.
Tipo de mensaje | Código de función | Rango COB-ID(Hex) |
NMT | 0000 | 000h |
SYNC | 0001 | 080h |
EMERGENCIA | 0001 | 081h-0FFh |
TIEMPO | 0010 | 100h |
PDO1(transmitir) | 0011 | 181h-1FFh |
PDO1(recibir) | 0100 | 201h-27Fh |
PDO2(transmitir) | 0101 | 281h-2FFh |
PDO2(recibir) | 0110 | 301h-37Fh |
PDO3(transmitir) | 0111 | 381h-3FFh |
PDO3(recibir) | 1000 | 401h-47Fh |
PDO4(transmitir) | 1001 | 481h-4FFh |
PDO4(recibir) | 1010 | 501h-57Fh |
SDO(transmisión) | 1011 | 581h-5FFh |
SDO(recibir) | 1100 | 601h-67Fh |
Control de errores NMT | 1110 | 701h-77Fh |
1 comando NMT
El comando NMT proporciona gestión de red (como inicialización, inicio y parada de nodos, detección de nodos fallidos).
El usuario puede utilizar el comando NMT para cambiar el estado de funcionamiento del nodo esclavo.
Arrancar nodo remoto - Pone el nodo en estado de operación
Parar nodo remoto - Pone el nodo en estado de parada
Entrar en estado preoperativo: coloca el nodo en estado preoperativo.
Restablecer nodo: restablece el nodo
Restablecer comunicación--Ajusta la comunicación de restablecimiento del nodo
2 Mensaje SYNC
SYNC es el mensaje síncrono enviado por la estación maestra. Todas las estaciones que han sincronizado PDO se comunican con la estación maestra basándose en el mensaje SYNC.
El usuario puede enviar cíclicamente mensajes SYNC a través de las ECANTools.
3 Mensaje de EMERGENCIA
ECANTools puede recibir mensajes de EMERGENCIA del nodo de la estación esclava. El mensaje es enviado por un nodo esclavo en estado de emergencia. La función master CANopen del ECANTools puede recibir y procesar este mensaje de EMERGENCIA.
4 PDO (Objeto de datos de proceso)
Los nodos CANopen utilizan PDO para transferir datos, que se utiliza principalmente para transmitir datos en tiempo real.
PDO, cuyo nombre completo es objeto de datos de proceso, pertenece a los datos de proceso con transmisión unidireccional. El nodo receptor no necesita responder al mensaje CAN confirmado.
Hay 4 pares de PDO de transmisión y recepción en ECANTools, que son TPDO/RPDO.
5 SDO (Objeto de datos de servicio)
La función SDO del módulo maestro CANopen se divide en SDO transmisor y SDO receptor. La función SDO en ECANTools permite a los usuarios comunicarse con la estación esclava mediante la edición de índices y subíndices.
6 NODOS DE PROTECCIÓN
Hay dos formas de implementar la función de guardia de nodo en ECANTools. La estación maestra envía el comando automáticamente para preguntar por el estado del nodo esclavo (Node Guarding) y el nodo esclavo transmite su estado periódicamente en el heartbeat (Heartbeat).
ECANTools también puede simular manualmente datos CANopen editando mensajes personalizados.
El usuario puede enviar datos directamente a la estación esclava CANopen escribiendo la función
códigos, ID de nodo de las estaciones esclavas y datos.
El código de la función correspondiente se muestra en la siguiente tabla:
--Para configurar PDO 0x1800+n
--COB-ID es 0x387
--PDO siempre activa la transmisión
-Debe contener datos: datos X(2bytes), datos Y(4bytes)
En el orden siguiente
-datos X definidos en el índice 0x6000, subíndice 03
-datos Y definidos en el índice 0x2010, subíndice 21
1- índice 1800+n, subíndice 01: escribir COBID(4bytes)
2- índice 1800+n, subíndice 02: escribir byte de transporte "t"(1byte)
t=1 a 0xF0: PDO se transmitirá si recibe "t" veces SYNC.
t=FD : transferencia tras recibir la solicitud PDO(rtr=1)
t=FF: el nodo transmite PDO automáticamente según el evento
3- índice 1A00+n: un mapeo que define los n primeros datos
subíndice 0: el número de datos escritos en PDO (1byte). En este caso, escriba "2".
subíndice 1: define dónde buscar el primer dato y el tamaño a escribir (8bytes)
El formato es: índice (2 bytes) - subíndice (1 byte) - tamaño en bits (1 byte)
En este caso, escriba "60000310"
subíndice 2: define dónde buscar el segundo dato y el tamaño a escribir (8bytes)
En este caso, escriba "20102120″.
Configuración nodo 5 PDO 1802 en cada uno de los 3 SYNC transmisión, el envío de SDO (s) debe ser
605 23 02 18 01 00 00 8703
605 2F 02 18 02 03 00 00 00
605 2F 02 1A 00 02 00 00 00
605 23 02 1A 01 10 03 00 60
605 23 02 1A 02 20 21 10 20