Canal acíclico
Vista general
AVISO

Si accede a objetos mapeados en el área de E/S mediante escritura a través del canal acíclico, sus valores se volverán a sobrescribir con el siguiente ciclo. Por ello, los datos mapeados en el área de E/S no deben escribirse a través del canal acíclico.
El canal acíclico permite ejecutar acíclicamente comandos de lectura y escritura. Para ello, se han implementado rangos de datos para la comunicación acíclica en el área de entrada/salida del módulo de función. Este rango incluye datos de salida de 8 bytes y datos de entrada de 8 bytes. Tienen la siguiente asignación:
Solicitud |
| Respuesta |
|---|---|---|
Datos de salida
|
→ ←
| Datos de entrada
|
CMD | IDLE→ |
| Comando→ |
| IDLE→ | |
Estado: |
| ←IDLE |
| ←Comando |
| ←IDLE |
CMD - Comando
Code | Nombre | Descripción |
|---|---|---|
0x00 | IDLE | Establece el funcionamiento en vacío. Con este comando puede solicitar el estado de espera para un nuevo comando una vez devuelta la ejecución del comando mediante STATUS. |
0x11 | READ_ONCE | Lectura de un objeto de datos Con este comando puede solicitar los datos una vez después de que el comando haya sido detectado. |
0x21 | WRITE_ONCE | Lectura de un objeto de datos Con este comando se escriben los datos solo una vez después de que el comando haya sido detectado. |
SUBIDX - Subíndice: subíndice en el directorio de objetos
IDX0 / IDX1 - Índice: índice en el directorio de objetos
DATA0 – DATA3 - Datos: Datos que se deben transferir
STATUS - estado
Code | Nombre | Descripción |
|---|---|---|
0x00 | IDLE | Funcionamiento en vacío - Esperando comandos |
0x14 | READ_ONCE | Se ha detectado el comando READ_ONCE, los datos son válidos. |
0x24 | WRITE_ONCE | Se ha detectado el comando WRITE_ONCE, se han aceptado los datos. |
0x81 | READ_NOT_EXIST | Fallo - Acceso de lectura - Datos no disponibles No se ha ejecutado el comando. |
0x91 | WRITE_NOT_EXIST | Fallo - Acceso de escritura - Datos no disponibles No se ha ejecutado el comando. |
0x92 | WRITE_RNG_ERR | Fallo - Acceso de escritura - Campo de datos sobrepasado No se ha ejecutado el comando. |
0x93 | WRITE_RDO_ERR | Fallo - Acceso de escritura - Los datos son de solo lectura No se ha ejecutado el comando. |
0x94 | WRITE_WPR_ERR | Fallo - Acceso de escritura - Los datos están protegidos contra escritura No se ha ejecutado el comando. |
0x99 | ACYC_COM_ERR | Fallo durante la comunicación acíclica No se ha ejecutado el comando. |