10.05.2013 Views

ProWORX 32 Biblioteca de bloques de Ladder Logic

ProWORX 32 Biblioteca de bloques de Ladder Logic

ProWORX 32 Biblioteca de bloques de Ladder Logic

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

31007526.00<br />

<strong>ProWORX</strong> <strong>32</strong><br />

<strong>Biblioteca</strong> <strong>de</strong> <strong>bloques</strong> <strong>de</strong><br />

Lad<strong>de</strong>r <strong>Logic</strong><br />

12/2006<br />

www.telemecanique.com


Tabla <strong>de</strong> materias<br />

Información <strong>de</strong> seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . .xxvii<br />

Acerca <strong>de</strong> este libro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxix<br />

Parte I Información general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1<br />

Capítulo 1 Instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3<br />

Asignación <strong>de</strong> parámetros <strong>de</strong> las instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . 3<br />

Capítulo 2 Grupos <strong>de</strong> instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5<br />

Grupos <strong>de</strong> instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6<br />

Funciones ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7<br />

Instrucciones <strong>de</strong> Counters y Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8<br />

Instrucciones <strong>de</strong> Fast I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9<br />

Loadable DX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10<br />

Instrucciones <strong>de</strong> Math . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11<br />

Instrucciones <strong>de</strong> Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13<br />

Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14<br />

Instrucciones <strong>de</strong> Move . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15<br />

Skips/Specials. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16<br />

Instrucciones <strong>de</strong> Special . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17<br />

Coils, Contacts e Interconnects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18<br />

Capítulo 3 Control <strong>de</strong> bucle cerrado/valores analógicos . . . . . . . . . . . . .19<br />

Control <strong>de</strong> bucle cerrado/valores analógicos . . . . . . . . . . . . . . . . . . . . . . . . . . . 20<br />

Subfunciones <strong>de</strong> PCFL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21<br />

Ejemplo <strong>de</strong> PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25<br />

Ejemplo <strong>de</strong> control <strong>de</strong> nivel con PID2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28<br />

Capítulo 4 Formateo <strong>de</strong> mensajes para operaciones<br />

READ/WRIT <strong>de</strong> ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31<br />

Mensajes formateados para operaciones ASCII READ/WRIT . . . . . . . . . . . . . . <strong>32</strong><br />

Especificaciones <strong>de</strong> formato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33<br />

Consi<strong>de</strong>raciones especiales <strong>de</strong> instalación para formato <strong>de</strong> señales <strong>de</strong><br />

control/vigilancia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36<br />

iii


iv<br />

Capítulo 5 Bobinas, contactos e interconexiones . . . . . . . . . . . . . . . . . . 39<br />

Coils. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40<br />

Contacts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42<br />

Interconnects (Shorts) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44<br />

Capítulo 6 Gestión <strong>de</strong> interrupt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45<br />

Capítulo 7 Gestión <strong>de</strong> subrutinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47<br />

Capítulo 8 Instalación <strong>de</strong> DX Loadables . . . . . . . . . . . . . . . . . . . . . . . . . . 49<br />

Parte II Descripción <strong>de</strong> instrucciones (A a D) . . . . . . . . . . . . . . .51<br />

Capítulo 9 1X3X - Simulación <strong>de</strong> entrada. . . . . . . . . . . . . . . . . . . . . . . . . . 53<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55<br />

Capítulo 10 AD16: Suma <strong>de</strong> 16 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59<br />

Capítulo 11 ADD: Suma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63<br />

Capítulo 12 Y: Y lógico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69<br />

Capítulo 13 BCD: Código binario a binario . . . . . . . . . . . . . . . . . . . . . . . . . 71<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73<br />

Capítulo 14 BLKM: Mover bloque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77<br />

Capítulo 15 BLKT: Bloque a tabla. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82<br />

Capítulo 16 BMDI: Mover bloque con interrupts bloqueados . . . . . . . . . . 83<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85


Capítulo 17 BROT: Rotación <strong>de</strong> bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .87<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90<br />

Capítulo 18 CALL: Activación <strong>de</strong> función DX inmediata o retardada . . . .91<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96<br />

Capítulo 19 CANT - Interpretar bobinas, contactos, temporizadores,<br />

contadores y el bloque SUB . . . . . . . . . . . . . . . . . . . . . . . . . . .99<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103<br />

Capítulo 20 CCPF – Configurar perfil <strong>de</strong> leva con instrumentos<br />

<strong>de</strong> variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .107<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109<br />

Capítulo 21 CCPV - Configurar perfil <strong>de</strong> leva con incrementos<br />

<strong>de</strong> variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113<br />

Capítulo 22 CFGC - Configurar coor<strong>de</strong>nada establecida . . . . . . . . . . . . .115<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117<br />

Capítulo 23 CFGF - Configurar seguidor establecido . . . . . . . . . . . . . . . .119<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121<br />

Capítulo 24 CFGI - Configurar eje imaginario . . . . . . . . . . . . . . . . . . . . . .123<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125<br />

Capítulo 25 CFGR – Configurar eje remoto . . . . . . . . . . . . . . . . . . . . . . . .127<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129<br />

Capítulo 26 CFGS – Configurar eje SERCOS . . . . . . . . . . . . . . . . . . . . . . .131<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1<strong>32</strong><br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133<br />

v


vi<br />

Capítulo 27 CHS: Configuración <strong>de</strong> Hot Standby . . . . . . . . . . . . . . . . . . 135<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139<br />

Capítulo 28 CKSM: Suma <strong>de</strong> control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147<br />

Capítulo 29 CMPR: Comparar registro. . . . . . . . . . . . . . . . . . . . . . . . . . . . 149<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152<br />

Capítulo 30 Bobinas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154<br />

Directrices generales <strong>de</strong> uso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155<br />

Capítulo 31 COMM - Función <strong>de</strong> comunicación ASCII . . . . . . . . . . . . . . . 157<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159<br />

Capítulo <strong>32</strong> COMP: Complementar una matriz . . . . . . . . . . . . . . . . . . . . . 161<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165<br />

Capítulo 33 Contactos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169<br />

Capítulo 34 CONV - Convertir datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173<br />

Capítulo 35 CTIF - Contador, temporizador y función interrupt . . . . . . . 175<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178<br />

Capítulo 36 DCTR: Contador regresivo . . . . . . . . . . . . . . . . . . . . . . . . . . . 183<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185


Capítulo 37 DIOH: Estado <strong>de</strong> E/S distribuidas . . . . . . . . . . . . . . . . . . . . . .187<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191<br />

Capítulo 38 DISA - Control binario bloqueado . . . . . . . . . . . . . . . . . . . . . .193<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195<br />

Capítulo 39 DIV: División . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .197<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199<br />

Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201<br />

Capítulo 40 DLOG: Registro <strong>de</strong> datos <strong>de</strong>l soporte <strong>de</strong> lectura/<br />

escritura PCMCIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .203<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207<br />

Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209<br />

Capítulo 41 DMTH - Matemática <strong>de</strong> doble precisión . . . . . . . . . . . . . . . . .211<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213<br />

Capítulo 42 DRUM: Secuenciador <strong>de</strong> DRUM . . . . . . . . . . . . . . . . . . . . . . .219<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223<br />

Capítulo 43 DV16: División <strong>de</strong> 16 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . .225<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227<br />

Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229<br />

Parte III Descripción <strong>de</strong> instrucciones (E) . . . . . . . . . . . . . . . . . 231<br />

Capítulo 44 EARS - Sistema <strong>de</strong> registro <strong>de</strong> eventos/alarmas. . . . . . . . . .233<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237<br />

Capítulo 45 EMTH: Matemática extendida . . . . . . . . . . . . . . . . . . . . . . . . .241<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244<br />

Funciones <strong>de</strong> EMTH con coma flotante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246<br />

vii


viii<br />

Capítulo 46 EMTH-ADDDP: Adición <strong>de</strong> doble precisión. . . . . . . . . . . . . . 247<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251<br />

Capítulo 47 EMTH-ADDFP: Adición <strong>de</strong> coma flotante . . . . . . . . . . . . . . . 253<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257<br />

Capítulo 48 EMTH-ADDIF: Adición <strong>de</strong> entero + coma flotante. . . . . . . . . 259<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263<br />

Capítulo 49 EMTH-ANLOG: Algoritmo <strong>de</strong> base 10 . . . . . . . . . . . . . . . . . . 265<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269<br />

Capítulo 50 EMTH-ARCOS: Arcocoseno <strong>de</strong> coma flotante <strong>de</strong><br />

un ángulo (en radianes) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275<br />

Capítulo 51 EMTH-ARSIN: Arcoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281<br />

Capítulo 52 EMTH-ARTAN: Arcotangente <strong>de</strong> coma flotante <strong>de</strong><br />

un ángulo (en radianes) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287<br />

Capítulo 53 EMTH-CHSIN: Cambio <strong>de</strong> signo <strong>de</strong> un número con coma<br />

flotante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293


Capítulo 54 EMTH-CMPFP: Comparar flotantes. . . . . . . . . . . . . . . . . . . . .295<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299<br />

Capítulo 55 EMTH-CMPIF: Comparar entero y coma flotante. . . . . . . . . .301<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305<br />

Capítulo 56 EMTH-CNVDR: Conversión <strong>de</strong> coma flotante<br />

<strong>de</strong> grados a radianes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .307<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311<br />

Capítulo 57 EMTH-CNVFI: Conversión <strong>de</strong> coma flotante a entero . . . . . .313<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317<br />

Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318<br />

Capítulo 58 EMTH-CNVIF: Conversión <strong>de</strong> entero a coma flotante . . . . . .319<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . <strong>32</strong>0<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . <strong>32</strong>1<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . <strong>32</strong>3<br />

Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . <strong>32</strong>4<br />

Capítulo 59 EMTH-CNVRD: Conversión <strong>de</strong> coma flotante <strong>de</strong> radianes<br />

a grados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .<strong>32</strong>5<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . <strong>32</strong>6<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . <strong>32</strong>7<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . <strong>32</strong>9<br />

Capítulo 60 EMTH-COS: Coseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .331<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3<strong>32</strong><br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335<br />

Capítulo 61 EMTH-DIVDP: División <strong>de</strong> doble precisión . . . . . . . . . . . . . .337<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341<br />

Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342<br />

ix


x<br />

Capítulo 62 EMTH-DIVFI: Coma flotante dividida por entero. . . . . . . . . . 343<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347<br />

Capítulo 63 EMTH-DIVFP: División <strong>de</strong> coma flotante . . . . . . . . . . . . . . . . 349<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353<br />

Capítulo 64 EMTH-DIVIF: Entero dividido por coma flotante . . . . . . . . . 355<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359<br />

Capítulo 65 EMTH-ERLOG: Registro <strong>de</strong> errores <strong>de</strong> coma flotante . . . . . 361<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362<br />

Representación: EMTH - ERLOG - Matemática <strong>de</strong> coma flotante -<br />

Registro <strong>de</strong> errores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365<br />

Capítulo 66 EMTH-EXP: Función exponencial <strong>de</strong> coma flotante. . . . . . . 367<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371<br />

Capítulo 67 EMTH-LNFP: Logaritmo natural <strong>de</strong> coma flotante . . . . . . . . 373<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377<br />

Capítulo 68 EMTH-LOG: Logaritmo <strong>de</strong> base 10. . . . . . . . . . . . . . . . . . . . . 379<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383<br />

Capítulo 69 EMTH-LOGFP: Logaritmo común <strong>de</strong> coma flotante . . . . . . . 385<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389<br />

Capítulo 70 EMTH-MULDP: Multiplicación <strong>de</strong> doble precisión . . . . . . . . 391<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395


Capítulo 71 EMTH-MULFP: Multiplicación con coma flotante . . . . . . . . .397<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401<br />

Capítulo 72 EMTH-MULIF: Multiplicación <strong>de</strong> entero x coma flotante. . . .403<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407<br />

Capítulo 73 EMTH-PI: Cargar el valor <strong>de</strong> coma flotante <strong>de</strong> "Pi" . . . . . . . .409<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413<br />

Capítulo 74 EMTH-POW: Elevar un número con coma flotante a una<br />

potencia entera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .415<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416<br />

Representación: EMTH - POW - Elevar un número con coma flotante<br />

a una potencia entera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419<br />

Capítulo 75 EMTH-SINE: Seno <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .421<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422<br />

Representación: EMTH - SINE - Matemática <strong>de</strong> coma flotante -<br />

Seno <strong>de</strong> un ángulo (en radianes) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425<br />

Capítulo 76 EMTH-SQRFP: Raíz cuadrada con coma flotante . . . . . . . . .427<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431<br />

Capítulo 77 EMTH-SQRT: Raíz cuadrada con coma flotante . . . . . . . . . .433<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437<br />

Capítulo 78 EMTH-SQRTP: Raíz cuadrada <strong>de</strong> proceso . . . . . . . . . . . . . . .439<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443<br />

Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444<br />

xi


xii<br />

Capítulo 79 EMTH-SUBDP: Resta <strong>de</strong> doble precisión . . . . . . . . . . . . . . . 445<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446<br />

Representación: EMTH - SUBDP - Matemática <strong>de</strong> doble precisión -<br />

Substracción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449<br />

Capítulo 80 EMTH-SUBFI: Resta <strong>de</strong> coma flotante menos entero. . . . . . 451<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455<br />

Capítulo 81 EMTH-SUBFP: Resta con coma flotante . . . . . . . . . . . . . . . . 457<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461<br />

Capítulo 82 EMTH-SUBIF: Resta <strong>de</strong> entero menos coma flotante. . . . . . 463<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467<br />

Capítulo 83 EMTH-TAN: Tangente con coma flotante <strong>de</strong> un ángulo<br />

(en radianes). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473<br />

Capítulo 84 ESI: Soporte <strong>de</strong>l módulo ESI . . . . . . . . . . . . . . . . . . . . . . . . . 475<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478<br />

READ ASCII Message (subfunción 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481<br />

WRITE ASCII Message (subfunción 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485<br />

GET DATA (subfunción 3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486<br />

PUT DATA (Subfunción 4). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488<br />

ABORT (entrada intermedia activada). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492<br />

Errores <strong>de</strong> ejecución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493<br />

Capítulo 85 EUCA: Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas . . . . . . . . 495<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499<br />

Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 501


Parte IV Descripción <strong>de</strong> instrucciones (F a N) . . . . . . . . . . . . . . 507<br />

Capítulo 86 FIN: Primera entrada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .509<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512<br />

Capítulo 87 FOUT: Primera salida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .513<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517<br />

Capítulo 88 FTOI: De coma flotante a entero . . . . . . . . . . . . . . . . . . . . . . .519<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521<br />

Capítulo 89 GD92 - Bloque <strong>de</strong> funciones <strong>de</strong>l flujo <strong>de</strong> gas. . . . . . . . . . . . .523<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525<br />

Descripción <strong>de</strong> parámetros - Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527<br />

Descripción <strong>de</strong> parámetros - Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533<br />

Descripción <strong>de</strong> parámetros - Salidas opcionales . . . . . . . . . . . . . . . . . . . . . . . 534<br />

Capítulo 90 Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas<br />

GFNX AGA n.º 3 ‘85 y NX19 ‘68 . . . . . . . . . . . . . . . . . . . . . . . .535<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537<br />

Descripción <strong>de</strong> parámetros - Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539<br />

Descripción <strong>de</strong> parámetros - Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 546<br />

Descripción <strong>de</strong> parámetros - Salidas opcionales . . . . . . . . . . . . . . . . . . . . . . . 547<br />

Capítulo 91 Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método en<br />

bruto GG92 AGA n.º 3 1992 . . . . . . . . . . . . . . . . . . . . . . . . . . .549<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551<br />

Descripción <strong>de</strong> parámetros - Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553<br />

Descripción <strong>de</strong> parámetros - Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558<br />

Descripción <strong>de</strong> parámetros - Salidas opcionales . . . . . . . . . . . . . . . . . . . . . . . 559<br />

Capítulo 92 Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método <strong>de</strong>tallado<br />

GM92 AGA n.º 3 y n.º 8 1992 . . . . . . . . . . . . . . . . . . . . . . . . . .561<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563<br />

Descripción <strong>de</strong> parámetros - Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565<br />

Descripción <strong>de</strong> parámetros - Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571<br />

Descripción <strong>de</strong> parámetros - Salidas opcionales . . . . . . . . . . . . . . . . . . . . . . . 572<br />

xiii


xiv<br />

Capítulo 93 Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas<br />

G392 AGA n.º 3 1992 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 574<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575<br />

Descripción <strong>de</strong> parámetros - Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577<br />

Descripción <strong>de</strong> parámetros - Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582<br />

Descripción <strong>de</strong> parámetros - Salidas opcionales. . . . . . . . . . . . . . . . . . . . . . . . 583<br />

Capítulo 94 HLTH: Matrices <strong>de</strong> historia y estado . . . . . . . . . . . . . . . . . . . 585<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 586<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589<br />

Asiento superior <strong>de</strong> la <strong>de</strong>scripción <strong>de</strong> parámetros (matriz <strong>de</strong> historia) . . . . . . . 590<br />

Asiento intermedio <strong>de</strong> la <strong>de</strong>scripción <strong>de</strong> parámetros (matriz <strong>de</strong> estado) . . . . . . 595<br />

Asiento inferior <strong>de</strong> la <strong>de</strong>scripción <strong>de</strong> parámetros (longitud). . . . . . . . . . . . . . . . 599<br />

Capítulo 95 HSBY - Hot Standby. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 602<br />

Representación: HSBY - Hot Standby. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603<br />

Descripción <strong>de</strong> parámetros - Nodo superior . . . . . . . . . . . . . . . . . . . . . . . . . . . 605<br />

Descripción <strong>de</strong> parámetros - Nodo intermedio: HSBY - Hot Standby . . . . . . . . 606<br />

Capítulo 96 IBKR: Lectura indirecta <strong>de</strong> bloque . . . . . . . . . . . . . . . . . . . . . 607<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608<br />

Representación: IBKR - Lectura indirecta <strong>de</strong> bloque. . . . . . . . . . . . . . . . . . . . . 609<br />

Capítulo 97 IBKW: Escritura indirecta <strong>de</strong> bloque . . . . . . . . . . . . . . . . . . . 611<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 612<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613<br />

Capítulo 98 ICMP: Comparación <strong>de</strong> entrada . . . . . . . . . . . . . . . . . . . . . . . 615<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 616<br />

Representación: ICMP - Comparación <strong>de</strong> entrada . . . . . . . . . . . . . . . . . . . . . . 617<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 619<br />

Bloques DRUM/ICMP en cascada. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621<br />

Capítulo 99 ID: Bloquear interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626<br />

Capítulo 100 IE: Habilitar interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630


Capítulo 101 IMIO: E/S inmediatas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .631<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6<strong>32</strong><br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 633<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635<br />

Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637<br />

Capítulo 102 IMOD: Instrucción <strong>de</strong>l módulo <strong>de</strong> interrupt . . . . . . . . . . . . . .639<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643<br />

Capítulo 103 INDX - Movimiento incremental inmediato. . . . . . . . . . . . . . .649<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 650<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651<br />

Capítulo 104 ITMR: Temporizador <strong>de</strong> interrupt . . . . . . . . . . . . . . . . . . . . . .653<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 655<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657<br />

Capítulo 105 ITOF: De entero a coma flotante . . . . . . . . . . . . . . . . . . . . . . .659<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 660<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661<br />

Capítulo 106 JOGS - Movimiento JOG . . . . . . . . . . . . . . . . . . . . . . . . . . . . .663<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665<br />

Capítulo 107 JSR: Saltar a subrutina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .667<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 669<br />

Capítulo 108 LAB: Etiqueta <strong>de</strong> una subrutina . . . . . . . . . . . . . . . . . . . . . . .671<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 673<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674<br />

Capítulo 109 LOAD: Cargar flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .675<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 677<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 678<br />

Capítulo 110 MAP3: Transacción MAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . .679<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 680<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 682<br />

xv


xvi<br />

Capítulo 111 MATH – Operaciones con enteros . . . . . . . . . . . . . . . . . . . . . 687<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 688<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 689<br />

Capítulo 112 MBIT: Modificar bit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 697<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699<br />

Capítulo 113 MBUS: Transacción MBUS . . . . . . . . . . . . . . . . . . . . . . . . . . . 701<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 702<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 703<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 705<br />

Función MBUS para obtener estadísticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 707<br />

Capítulo 114 MMFB - Bloque <strong>de</strong> bits Modicon Motion Framework . . . . . . 711<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 712<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 713<br />

Capítulo 115 MMFE - Subrutina <strong>de</strong> parámetros extendida <strong>de</strong><br />

Modicon Motion Framework . . . . . . . . . . . . . . . . . . . . . . . . . . 715<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 717<br />

Capítulo 116 MMFI - Bloque <strong>de</strong> inicialización <strong>de</strong> Modicon Motion<br />

Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 719<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721<br />

Capítulo 117 MMFS - Bloque <strong>de</strong> subrutinas <strong>de</strong> Modicon Motion<br />

Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727<br />

Capítulo 118 MOVE - Movimiento absoluto . . . . . . . . . . . . . . . . . . . . . . . . . 729<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 730<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 731<br />

Capítulo 119 MRTM: Módulo <strong>de</strong> transferencia multirregistro . . . . . . . . . . 733<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 737<br />

Capítulo 120 MSPX (Seriplex) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 739<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 740<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 741


Capítulo 121 MSTR: Maestro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .743<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 744<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 748<br />

Operación MSTR <strong>de</strong> escritura. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 752<br />

Operación MSTR <strong>de</strong> lectura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 754<br />

Operación MSTR <strong>de</strong> obtención <strong>de</strong> estadísticas locales . . . . . . . . . . . . . . . . . . 756<br />

Operación MSTR <strong>de</strong> borrado <strong>de</strong> estadísticas locales. . . . . . . . . . . . . . . . . . . . 758<br />

Operación MSTR <strong>de</strong> escritura <strong>de</strong> datos globales . . . . . . . . . . . . . . . . . . . . . . . 760<br />

Operación MSTR <strong>de</strong> lectura <strong>de</strong> datos globales. . . . . . . . . . . . . . . . . . . . . . . . . 761<br />

Operación MSTR <strong>de</strong> obtención <strong>de</strong> estadísticas remotas . . . . . . . . . . . . . . . . . 762<br />

Operación MSTR <strong>de</strong> borrado <strong>de</strong> estadísticas remotas . . . . . . . . . . . . . . . . . . . 764<br />

Operación MSTR <strong>de</strong> estado funcional <strong>de</strong> Peer Cop . . . . . . . . . . . . . . . . . . . . . 766<br />

Operación MSTR <strong>de</strong> reinicio <strong>de</strong> módulo opcional. . . . . . . . . . . . . . . . . . . . . . . 769<br />

Operación MSTR <strong>de</strong> lectura <strong>de</strong> CTE<br />

(tabla <strong>de</strong> extensión <strong>de</strong> configuración) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 770<br />

Operación MSTR <strong>de</strong> escritura en CTE<br />

(tabla <strong>de</strong> extensión <strong>de</strong> configuración) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 772<br />

Estadísticas <strong>de</strong> red Modbus Plus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 774<br />

Estadísticas Ethernet TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 779<br />

Errores <strong>de</strong> ejecución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 780<br />

Códigos <strong>de</strong> error Modbus Plus y Ethernet SY/MAX . . . . . . . . . . . . . . . . . . . . . 781<br />

Códigos <strong>de</strong> error específicos <strong>de</strong> SY/MAX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 783<br />

Códigos <strong>de</strong> error Ethernet TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 785<br />

Códigos <strong>de</strong> error CTE para Ethernet SY/MAX y TCP/IP. . . . . . . . . . . . . . . . . . 788<br />

Capítulo 122 MU16: Multiplicación <strong>de</strong> 16 bits . . . . . . . . . . . . . . . . . . . . . . .789<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 790<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 791<br />

Capítulo 123 MUL: Multiplicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .793<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 794<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795<br />

Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 797<br />

Capítulo 124 NBIT: Control <strong>de</strong> bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .799<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 800<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801<br />

Capítulo 125 NCBT: Bit normalmente cerrado . . . . . . . . . . . . . . . . . . . . . . .803<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 804<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 805<br />

Capítulo 126 NOBT: Bit normalmente abierto . . . . . . . . . . . . . . . . . . . . . . .807<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 808<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 809<br />

xvii


xviii<br />

Capítulo 127 NOL: Módulo opcional <strong>de</strong> red para Lonworks . . . . . . . . . . . 811<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 812<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 813<br />

Descripción <strong>de</strong>tallada. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 815<br />

Parte V Descripción <strong>de</strong> instrucciones (O a Q) . . . . . . . . . . . . . .817<br />

Capítulo 128 O: O lógica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 819<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 820<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 821<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 823<br />

Capítulo 129 PCFL: <strong>Biblioteca</strong> <strong>de</strong> funciones <strong>de</strong> control <strong>de</strong> procesos . . . 825<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 826<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 827<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 828<br />

Capítulo 130 PCFL-AIN: Entrada analógica . . . . . . . . . . . . . . . . . . . . . . . . . 833<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 834<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 836<br />

Capítulo 131 PCFL-ALARM: Administrador central <strong>de</strong> alarmas . . . . . . . . 839<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 840<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 841<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 842<br />

Capítulo 1<strong>32</strong> PCFL-AOUT: Salida analógica . . . . . . . . . . . . . . . . . . . . . . . . 845<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 846<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 847<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 848<br />

Capítulo 133 PCFL-AVER:<br />

Cálculo <strong>de</strong>l promedio <strong>de</strong> entradas pon<strong>de</strong>radas . . . . . . . . . . 849<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 850<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 851<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 852<br />

Capítulo 134 PCFL-CALC: Fórmula preestablecida calculada . . . . . . . . . 855<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 856<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 857<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 858<br />

Capítulo 135 PCFL-DELAY: Cola <strong>de</strong> retardo . . . . . . . . . . . . . . . . . . . . . . . . 861<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 862<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 863<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 864


Capítulo 136 PCFL-EQN: Calculadora <strong>de</strong> ecuaciones formateadas . . . . .865<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 866<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 867<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 868<br />

Capítulo 137 PCFL-INTEG: Integrar entrada en un intervalo<br />

especificado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .871<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 872<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 873<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 874<br />

Capítulo 138 PCFL-KPID: PID no interactiva <strong>de</strong> ISA expandida . . . . . . . . .875<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 876<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 877<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 878<br />

Capítulo 139 PCFL-LIMIT: Limitador para la entrada <strong>de</strong> valor real . . . . . .883<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 884<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 886<br />

Capítulo 140 PCFL-LIMV: Limitador <strong>de</strong> velocidad para cambios en<br />

la entrada <strong>de</strong> valor real. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .887<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 888<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 889<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890<br />

Capítulo 141 PCFL-LKUP: Tabla <strong>de</strong> búsqueda. . . . . . . . . . . . . . . . . . . . . . .891<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 892<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 893<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 894<br />

Capítulo 142 PCFL-LLAG: Filtro diferenciador o <strong>de</strong> retardo<br />

<strong>de</strong> primer or<strong>de</strong>n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .897<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 898<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 899<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 900<br />

Capítulo 143 PCFL-MODE: Establecer la entrada en modalidad<br />

automática o manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .901<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 902<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 903<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904<br />

xix


xx<br />

Capítulo 144 PCFL-ONOFF: Valores ON/OFF para banda muerta. . . . . . . 905<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 906<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 907<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908<br />

Capítulo 145 PCFL-PI: PI no interactivo <strong>de</strong> ISA. . . . . . . . . . . . . . . . . . . . . . 911<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 912<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 913<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 914<br />

Capítulo 146 PCFL-PID: Algoritmos PID . . . . . . . . . . . . . . . . . . . . . . . . . . . 917<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 918<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 919<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 920<br />

Capítulo 147 PCFL-RAMP: Rampa para el valor <strong>de</strong> consigna con<br />

una tasa <strong>de</strong> crecimiento constante . . . . . . . . . . . . . . . . . . . . 923<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 924<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 925<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926<br />

Capítulo 148 PCFL-RATE: Cálculo <strong>de</strong> la tasa diferencial durante<br />

un periodo específico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 929<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 930<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 931<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9<strong>32</strong><br />

Capítulo 149 PCFL-RATIO: Controlador <strong>de</strong> ratio para cuatro<br />

estaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 933<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 934<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 935<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936<br />

Capítulo 150 PCFL-RMPLN: Rampa logarítmica para el valor<br />

<strong>de</strong> consigna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 937<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 938<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 940<br />

Capítulo 151 PCFL-SEL: Selección <strong>de</strong> entrada . . . . . . . . . . . . . . . . . . . . . . 941<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 942<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 943<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944


Capítulo 152 PCFL-TOTAL: Totalizador para flujo dosificado . . . . . . . . . .947<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 948<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 949<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 950<br />

Capítulo 153 PEER: Transacción PEER . . . . . . . . . . . . . . . . . . . . . . . . . . . .953<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 954<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 955<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957<br />

Capítulo 154 PID2: Proporcional integral <strong>de</strong>rivada . . . . . . . . . . . . . . . . . . .959<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 960<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 961<br />

Descripción <strong>de</strong>tallada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 966<br />

Errores <strong>de</strong> ejecución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 971<br />

Parte VI Descripción <strong>de</strong> instrucciones (R a Z) . . . . . . . . . . . . . . 973<br />

Capítulo 155 R --> T: De registro a tabla. . . . . . . . . . . . . . . . . . . . . . . . . . . .975<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 976<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 977<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 979<br />

Capítulo 156 RBIT: Restablecer bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .981<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 982<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 983<br />

Capítulo 157 READ: Lectura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .985<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 986<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 987<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 989<br />

Capítulo 158 RET: Retorno <strong>de</strong>s<strong>de</strong> una subrutina . . . . . . . . . . . . . . . . . . . .991<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 992<br />

Representación: RET - Retorno a lógica programada . . . . . . . . . . . . . . . . . . . 993<br />

Capítulo 159 RTTI - De registro a tabla <strong>de</strong> entrada . . . . . . . . . . . . . . . . . . .995<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 996<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997<br />

Capítulo 160 RTTO - De registro a tabla <strong>de</strong> salida . . . . . . . . . . . . . . . . . . . .999<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1000<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1001<br />

xxi


xxii<br />

Capítulo 161 RTU - Unidad remota <strong>de</strong> terminal . . . . . . . . . . . . . . . . . . . . . 1003<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1004<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1005<br />

Capítulo 162 SAVE: Guardar flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1009<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1010<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1011<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1012<br />

Capítulo 163 SBIT: Establecer bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1013<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1015<br />

Capítulo 164 SCIF: Interfases <strong>de</strong> control secuencial . . . . . . . . . . . . . . . . 1017<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1018<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1019<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1021<br />

Capítulo 165 SENS: Detección . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1023<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1024<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1025<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027<br />

Capítulo 166 Conexiones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1029<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1030<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1031<br />

Capítulo 167 SKP – Saltar re<strong>de</strong>s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1033<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1034<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1035<br />

Capítulo 168 SRCH: Buscar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1037<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1038<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1039<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1041<br />

Capítulo 169 STAT: Estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1043<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1044<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1045<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1047<br />

Descripción <strong>de</strong> la tabla <strong>de</strong> estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1048<br />

Estado <strong>de</strong>l PLC: palabras 1 -11 <strong>de</strong> Quantum y Momemtum . . . . . . . . . . . . . . 1052<br />

Estado funcional <strong>de</strong> módulo <strong>de</strong> E/S: palabras 12 - 20 para Momentum . . . . . 1057<br />

Estado funcional <strong>de</strong> módulo <strong>de</strong> E/S: palabras 12 - 171 para Quantum. . . . . . 1059<br />

Estado <strong>de</strong> comunicaciones: palabras 172 - 277 para Quantum . . . . . . . . . . . 1061<br />

Estado <strong>de</strong>l PLC: palabras 1 - 11 para Compact TSX y Atrium . . . . . . . . . . . . 1066<br />

Estado funcional <strong>de</strong> módulo <strong>de</strong> E/S: palabras 12 -15 para Compact TSX . . . 1069


Estado <strong>de</strong> funcionamiento global y estado <strong>de</strong> reintentos <strong>de</strong> comunicaciones:<br />

palabras 182 a 184 para Compact TSX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1070<br />

Capítulo 170 SU16: Resta <strong>de</strong> 16 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1071<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1072<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1073<br />

Capítulo 171 SUB: Resta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1075<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1076<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1077<br />

Capítulo 172 SWAP - Permutación <strong>de</strong> bit VME. . . . . . . . . . . . . . . . . . . . . .1079<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1080<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1081<br />

Capítulo 173 TTR - De tabla a registro . . . . . . . . . . . . . . . . . . . . . . . . . . . .1083<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1084<br />

Representación: TTR - De tabla a registro . . . . . . . . . . . . . . . . . . . . . . . . . . . 1085<br />

Capítulo 174 T --> R <strong>de</strong> tabla a registro. . . . . . . . . . . . . . . . . . . . . . . . . . . .1087<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1088<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1089<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1091<br />

Capítulo 175 T --> T: De tabla a tabla . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1093<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1094<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1095<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1097<br />

Capítulo 176 Temporizador T.01: Temporizador <strong>de</strong> centésimas<br />

<strong>de</strong> segundo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1099<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1100<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1101<br />

Capítulo 177 Temporizador T0.1: Temporizador <strong>de</strong> décimas<br />

<strong>de</strong> segundo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1103<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1104<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1105<br />

Capítulo 178 Temporizador T1.0: Temporizador <strong>de</strong> segundos. . . . . . . . .1107<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1108<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1109<br />

Capítulo 179 Temporizador T1MS: Temporizador <strong>de</strong> milisegundos . . . .1111<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1112<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1113<br />

Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1115<br />

xxiii


xxiv<br />

Capítulo 180 TBLK: De tabla a bloque . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1117<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1118<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1119<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1121<br />

Capítulo 181 TEST: Prueba <strong>de</strong> dos valores . . . . . . . . . . . . . . . . . . . . . . . . 1123<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1124<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1125<br />

Capítulo 182 UCTR: Contador progresivo . . . . . . . . . . . . . . . . . . . . . . . . . 1127<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1128<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1129<br />

Capítulo 183 VMER - Lectura <strong>de</strong> VME . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1131<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11<strong>32</strong><br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1133<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1135<br />

Capítulo 184 VMEW - Escritura <strong>de</strong> VME . . . . . . . . . . . . . . . . . . . . . . . . . . . 1137<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1138<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1139<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1141<br />

Capítulo 185 WRIT: Escritura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1143<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1144<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1145<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1147<br />

Capítulo 186 XMIT - Transmisión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1149<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1150<br />

Funciones Modbus XMIT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1151<br />

Capítulo 187 Bloque <strong>de</strong> comunicación XMIT. . . . . . . . . . . . . . . . . . . . . . . 1157<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1158<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1159<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1161<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1166<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1168<br />

Capítulo 188 Bloque <strong>de</strong> estado <strong>de</strong>l puerto XMIT . . . . . . . . . . . . . . . . . . . . 1169<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1170<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1171<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1173<br />

Capítulo 189 Bloque <strong>de</strong> conversión XMIT . . . . . . . . . . . . . . . . . . . . . . . . . 1177<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1178<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1179<br />

Descripción <strong>de</strong> parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1181


Capítulo 190 XMRD: Lectura <strong>de</strong> memoria extendida . . . . . . . . . . . . . . . . .1185<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1186<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1187<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1189<br />

Capítulo 191 XMWT: Escritura en memoria extendida . . . . . . . . . . . . . . .1191<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1192<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1193<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1195<br />

Capítulo 192 XOR: O exclusiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1197<br />

Descripción breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1198<br />

Representación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1199<br />

Descripción <strong>de</strong> los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1201<br />

Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mcciii<br />

Índice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mccxxvii<br />

xxv


xxvi


Información importante<br />

Información <strong>de</strong> seguridad<br />

AVISO Lea atentamente estas instrucciones y observe el equipo para familiarizarse con el<br />

dispositivo antes <strong>de</strong> instalarlo, utilizarlo o realizar su mantenimiento. Los mensajes<br />

especiales que se ofrecen a continuación pue<strong>de</strong>n aparecer a lo largo <strong>de</strong> la<br />

documentación o en el equipo para advertir <strong>de</strong> peligros potenciales o para ofrecer<br />

información que aclare o simplifique los distintos procedimientos.<br />

La inclusión <strong>de</strong> este icono en una etiqueta <strong>de</strong> peligro o advertencia indica<br />

un riesgo <strong>de</strong> <strong>de</strong>scarga eléctrica, que pue<strong>de</strong> provocar daños personales si<br />

no se siguen las instrucciones.<br />

Éste es el icono <strong>de</strong> alerta <strong>de</strong> seguridad. Se utiliza para advertir <strong>de</strong> posibles<br />

riesgos <strong>de</strong> daños personales. Observe todos los mensajes que siguen a<br />

este icono para evitar posibles daños personales o incluso la muerte.<br />

PELIGRO<br />

PELIGRO indica una situación inminente <strong>de</strong> peligro que, si no se evita,<br />

provocará lesiones graves o incluso la muerte.<br />

ADVERTENCIA<br />

ADVERTENCIA indica una posible situación <strong>de</strong> peligro que, si no se evita, pue<strong>de</strong><br />

provocar daños en el equipo, lesiones graves o incluso la muerte.<br />

AVISO<br />

AVISO indica una posible situación <strong>de</strong> peligro que, si no se evita, pue<strong>de</strong> provocar<br />

lesiones o daños en el equipo.<br />

31007526 12/2006 xxvii<br />

§


Información <strong>de</strong> seguridad<br />

TENGA EN<br />

CUENTA<br />

Sólo el personal <strong>de</strong> servicio cualificado podrá instalar, utilizar, reparar y mantener<br />

el equipo eléctrico. Schnei<strong>de</strong>r Electric no asume las responsabilida<strong>de</strong>s que<br />

pudieran surgir como consecuencia <strong>de</strong> la utilización <strong>de</strong> este material.<br />

© 2006 Schnei<strong>de</strong>r Electric. Todos los <strong>de</strong>rechos reservados.<br />

xxviii 31007526 12/2006


Presentación<br />

Acerca <strong>de</strong> este libro<br />

Objeto Esta documentación ayudará a configurar las instrucciones <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong> <strong>de</strong><br />

<strong>ProWORX</strong> <strong>32</strong>.<br />

Campo <strong>de</strong><br />

aplicación<br />

Documentos<br />

relacionados<br />

Comentarios <strong>de</strong>l<br />

usuario<br />

Esta documentación es válida para <strong>ProWORX</strong> <strong>32</strong> con Microsoft Windows 98,<br />

Microsoft Windows 2000 y Microsoft Windows NT 4.x.<br />

Nota: Para obtener notas adicionales actualizadas, consulte el archivo Read Me<br />

<strong>de</strong> <strong>ProWORX</strong> <strong>32</strong>.<br />

Título Reference<br />

Number<br />

Manual <strong>de</strong>l usuario <strong>de</strong>l bloque <strong>de</strong> funciones XMIT 840 USE 113<br />

Manual para la planificación e instalación <strong>de</strong> Hot Standby <strong>de</strong> Quantum 840 USE 106<br />

Manual para la planificación y la instalación <strong>de</strong> la red Modbus Plus 890 USE 100<br />

Manual <strong>de</strong>l usuario <strong>de</strong>l módulo <strong>de</strong> interfase Quantum 140 ESI 062 10 ASCII 840 USE 108<br />

Manual <strong>de</strong>l usuario <strong>de</strong>l controlador <strong>de</strong> interfase <strong>de</strong> la red Modicon<br />

S980 MAP 3.0<br />

GM-MAP3-001<br />

Envíe sus comentarios a la dirección electrónica techpub@schnei<strong>de</strong>r-electric.com<br />

31007526 12/2006 xxix


Acerca <strong>de</strong> este libro<br />

xxx 31007526 12/2006


Introducción<br />

Información general<br />

Presentación En esta sección encontrará información general sobre grupos <strong>de</strong> instrucciones y su<br />

utilización.<br />

Contenido Esta parte contiene los siguientes capítulos:<br />

Capítulo Nombre <strong>de</strong>l capítulo Página<br />

1 Instrucciones 3<br />

2 Grupos <strong>de</strong> instrucciones 5<br />

3 Control <strong>de</strong> bucle cerrado/valores analógicos 19<br />

4 Formateo <strong>de</strong> mensajes para operaciones READ/WRIT <strong>de</strong> ASCII 31<br />

5 Bobinas, contactos e interconexiones 39<br />

6 Gestión <strong>de</strong> interrupt 45<br />

7 Gestión <strong>de</strong> subrutinas 47<br />

8 Instalación <strong>de</strong> DX Loadables 49<br />

31007526 12/2006 1<br />

I


Información general<br />

2 31007526 12/2006


Instrucciones<br />

Asignación <strong>de</strong> parámetros <strong>de</strong> las instrucciones<br />

Generalida<strong>de</strong>s En la programación para controles eléctricos un usuario realiza instrucciones<br />

operacionales codificadas en forma <strong>de</strong> objetos visuales que se disponen en una<br />

estructura reconocible <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong>. Los objetos que diseña el usuario con el<br />

programa se convierten durante el proceso <strong>de</strong> <strong>de</strong>scarga en códigos operacionales<br />

comprensibles para el or<strong>de</strong>nador. Estos códigos se <strong>de</strong>scodifican en la CPU y son<br />

procesados por las funciones <strong>de</strong> firmware <strong>de</strong> los controladores para llevar a cabo<br />

una instrucción <strong>de</strong> control <strong>de</strong>terminada.<br />

Cada instrucción se compone <strong>de</strong> una operación, <strong>de</strong> los asientos necesarios para<br />

realizarla y <strong>de</strong> las entradas y salidas.<br />

Asignación <strong>de</strong><br />

parámetros<br />

Asignación <strong>de</strong> parámetros con la instrucción DV16 a modo <strong>de</strong> ejemplo.<br />

Instruction<br />

Inputs Operation No<strong>de</strong>s Outputs<br />

Top input<br />

Middle input<br />

Bottom input<br />

e.g. DV16<br />

top no<strong>de</strong><br />

middle no<strong>de</strong><br />

DV16<br />

bottom no<strong>de</strong><br />

Top output<br />

Middle output<br />

Bottom output<br />

31007526 12/2006 3<br />

1


Instrucciones<br />

Operación La operación <strong>de</strong>termina qué función <strong>de</strong>berá ejecutar la instrucción, por ejemplo,<br />

mover registros, operaciones <strong>de</strong> conversión, etc.<br />

Asientos,<br />

entradas y<br />

salidas<br />

Los asientos y las entradas y salidas <strong>de</strong>terminan con qué se ejecutará la operación.<br />

4 31007526 12/2006


Presentación<br />

Grupos <strong>de</strong> instrucciones<br />

Introducción En este capítulo, encontrará una <strong>de</strong>scripción general <strong>de</strong> los grupos <strong>de</strong><br />

instrucciones.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

31007526 12/2006 5<br />

2<br />

Apartado Página<br />

Grupos <strong>de</strong> instrucciones 6<br />

Funciones ASCII 7<br />

Instrucciones <strong>de</strong> Counters y Timers 8<br />

Instrucciones <strong>de</strong> Fast I/O 9<br />

Loadable DX 10<br />

Instrucciones <strong>de</strong> Math 11<br />

Instrucciones <strong>de</strong> Matrix 13<br />

Miscellaneous 14<br />

Instrucciones <strong>de</strong> Move 15<br />

Skips/Specials 16<br />

Instrucciones <strong>de</strong> Special 17<br />

Coils, Contacts e Interconnects 18


Grupos <strong>de</strong> instrucciones<br />

Grupos <strong>de</strong> instrucciones<br />

Generalida<strong>de</strong>s Todas las instrucciones se encuadran en uno <strong>de</strong> los siguientes grupos.<br />

ASCII Functions (véase p. 7)<br />

Counters/Timers (véase p. 8)<br />

Fast I/O Instructions (véase p. 9)<br />

Loadable DX (véase p. 10)<br />

Math (véase p. 11)<br />

Matrix (véase p. 13)<br />

Miscellaneous (véase p. 14)<br />

Move (véase p. 15)<br />

Skips/Specials (véase p. 16)<br />

Special (véase p. 17)<br />

Coils, Contacts and Interconnects (véase p. 18)<br />

6 31007526 12/2006


Funciones ASCII<br />

Funciones ASCII Este grupo incluye las siguientes instrucciones.<br />

Grupos <strong>de</strong> instrucciones<br />

Instrucción Significado Disponible en la familia <strong>de</strong> PLC<br />

Quantum Compact Momentum Atrium<br />

READ Leer mensajes ASCII sí no no no<br />

WRIT Escribir mensajes ASCII sí no no no<br />

Los PLC que trabajan con mensajes ASCII utilizan instrucciones <strong>de</strong>nominadas<br />

READ y WRIT para gestionar el envío <strong>de</strong> mensajes a los dispositivos <strong>de</strong><br />

visualización y la recepción <strong>de</strong> mensajes proce<strong>de</strong>ntes <strong>de</strong> los dispositivos <strong>de</strong><br />

entrada. Estas instrucciones proporcionan las rutinas necesarias para la<br />

comunicación entre la tabla <strong>de</strong> mensajes ASCII <strong>de</strong> la memoria <strong>de</strong> sistema <strong>de</strong>l PLC<br />

y un módulo <strong>de</strong> interfase en las estaciones <strong>de</strong> E/S remotas.<br />

Encontrará más información en p. 31.<br />

31007526 12/2006 7


Grupos <strong>de</strong> instrucciones<br />

Instrucciones <strong>de</strong> Counters y Timers<br />

Instrucciones <strong>de</strong><br />

Counters y<br />

Timers<br />

La tabla muestra las instrucciones <strong>de</strong> Counters y Timers.<br />

Instrucción Significado Disponible en la familia <strong>de</strong> PLC<br />

Quantum Compact Momentum Atrium<br />

UCTR Conteo progresivo <strong>de</strong> 0 a<br />

un valor preestablecido<br />

sí sí sí sí<br />

DCTR Conteo regresivo <strong>de</strong> un<br />

valor preestablecido a 0<br />

T1.0 Temporizador que<br />

incrementa en segundos<br />

T0.1 Temporizador que<br />

incrementa en décimas <strong>de</strong><br />

segundo<br />

T.01 Temporizador que<br />

incrementa en centésimas<br />

<strong>de</strong> segundo<br />

T1MS Temporizador que<br />

incrementa en un<br />

milisegundo<br />

sí sí sí sí<br />

sí sí sí sí<br />

sí sí sí sí<br />

sí sí sí sí<br />

sí<br />

(Consulte<br />

la nota.)<br />

sí sí sí<br />

Nota: La instrucción T1MS sólo se encuentra disponible en los PLC B984-102,<br />

Micro 311, 411, 512 y 612, y Quantum 424 02.<br />

8 31007526 12/2006


Instrucciones <strong>de</strong> Fast I/O<br />

Instrucciones <strong>de</strong><br />

Fast I/O<br />

Grupos <strong>de</strong> instrucciones<br />

Las siguientes instrucciones han sido diseñadas para una serie <strong>de</strong> funciones<br />

conocidas generalmente como actualización <strong>de</strong> Fast I/O.<br />

Instrucción Significado Disponible en la familia <strong>de</strong> PLC<br />

Quantum Compact Momentum Atrium<br />

BMDI Movimiento <strong>de</strong> bloque con<br />

interrupts bloqueados<br />

sí sí no sí<br />

ID Bloqueo <strong>de</strong> interrupt sí sí no sí<br />

IE Habilitación <strong>de</strong> interrupt sí sí no sí<br />

IMIO Instrucción <strong>de</strong> E/S<br />

inmediatas<br />

sí sí no sí<br />

IMOD Instrucción <strong>de</strong>l módulo <strong>de</strong><br />

interrupt<br />

ITMR Interrupt <strong>de</strong>l temporizador<br />

<strong>de</strong> intervalo<br />

Para obtener más información, consulte p. 45.<br />

sí no no sí<br />

no sí no sí<br />

Nota: Las instrucciones <strong>de</strong> Fast I/O sólo estarán disponibles <strong>de</strong>spués <strong>de</strong><br />

configurar una CPU sin ampliación.<br />

31007526 12/2006 9


Grupos <strong>de</strong> instrucciones<br />

Loadable DX<br />

Loadable DX Este grupo incluye las siguientes instrucciones.<br />

Instrucción Significado Disponible en la familia <strong>de</strong> PLC<br />

Quantum Compact Momentum Atrium<br />

CHS Hot Standby (Quantum) sí no no no<br />

DRUM Secuenciador DRUM sí sí no sí<br />

ESI Soporte <strong>de</strong>l módulo ESI<br />

140 ESI 062 10<br />

sí no no no<br />

EUCA Conversión <strong>de</strong> unida<strong>de</strong>s<br />

físicas y alarmas<br />

HLTH Matrices <strong>de</strong> historia y<br />

estado<br />

Para obtener más información, consulte p. 49.<br />

sí sí no sí<br />

sí sí no sí<br />

ICMP Comparación <strong>de</strong> entrada sí sí no sí<br />

MAP3 Transacción MAP 3 no no no no<br />

MBUS Transacción MBUS no no no no<br />

MRTM Módulo <strong>de</strong> transferencia<br />

multirregistro<br />

sí sí no sí<br />

NOL Transferir al/<strong>de</strong>l módulo<br />

NOL<br />

sí no no no<br />

PEER Transacción PEER no no no no<br />

XMIT Modalidad maestro<br />

RS 2<strong>32</strong><br />

sí sí sí no<br />

10 31007526 12/2006


Instrucciones <strong>de</strong> Math<br />

Instrucciones <strong>de</strong><br />

Math<br />

Instrucciones<br />

basadas en<br />

enteros<br />

Instrucciones <strong>de</strong><br />

comparación<br />

Grupos <strong>de</strong> instrucciones<br />

Hay dos grupos <strong>de</strong> instrucciones que permiten trabajar con operaciones<br />

matemáticas básicas. El primer grupo compren<strong>de</strong> cuatro instrucciones basadas en<br />

números enteros: ADD, SUB, MUL y DIV.<br />

El segundo grupo contiene cinco instrucciones <strong>de</strong> comparación, AD16, SU16,<br />

TEST, MU16 y DV16, que admiten comparaciones y cálculos matemáticos <strong>de</strong> 16<br />

bits con o sin signo.<br />

Hay tres instrucciones adicionales, ITOF, FTOI y BCD, para convertir el formato <strong>de</strong><br />

los valores numéricos (<strong>de</strong> entero a coma flotante, <strong>de</strong> coma flotante a entero, <strong>de</strong><br />

binario a BCD y <strong>de</strong> BCD a binario). Las operaciones <strong>de</strong> conversión son útiles en las<br />

matemáticas expandidas.<br />

Esta parte <strong>de</strong>l grupo incluye las siguientes instrucciones.<br />

Instrucción Significado Disponible en la familia <strong>de</strong> PLC<br />

Quantum Compact Momentum Atrium<br />

ADD Suma sí sí sí sí<br />

DIV División sí sí sí sí<br />

MUL Multiplicación sí sí sí sí<br />

SUB Resta sí sí sí sí<br />

Esta parte <strong>de</strong>l grupo incluye las siguientes instrucciones.<br />

Instrucción Significado Disponible en la familia <strong>de</strong> PLC<br />

Quantum Compact Momentum Atrium<br />

AD16 Suma <strong>de</strong> 16 bits sí sí sí sí<br />

DV16 División <strong>de</strong> 16 bits sí sí sí sí<br />

MU16 Multiplicación <strong>de</strong> 16 bits sí sí sí sí<br />

SU16 Resta <strong>de</strong> 16 bits sí sí sí sí<br />

TEST Prueba <strong>de</strong> dos valores sí sí sí sí<br />

31007526 12/2006 11


Grupos <strong>de</strong> instrucciones<br />

Conversión <strong>de</strong><br />

formato<br />

Esta parte <strong>de</strong>l grupo incluye las siguientes instrucciones.<br />

Instrucción Significado Disponible en la familia <strong>de</strong> PLC<br />

Quantum Compact Momentum Atrium<br />

BCD Conversión <strong>de</strong> binario a<br />

código binario o viceversa<br />

sí sí sí sí<br />

FTOI Conversión <strong>de</strong> coma<br />

flotante a número entero<br />

ITOF Conversión <strong>de</strong> número<br />

entero a coma flotante<br />

sí sí sí sí<br />

sí sí sí sí<br />

12 31007526 12/2006


Instrucciones <strong>de</strong> Matrix<br />

Instrucciones <strong>de</strong><br />

Matrix<br />

Grupos <strong>de</strong> instrucciones<br />

Una matriz es una secuencia <strong>de</strong> bits <strong>de</strong> datos formada por registros o palabras<br />

consecutivas <strong>de</strong> 16 bits que proce<strong>de</strong>n <strong>de</strong> tablas. Las funciones matriciales DX<br />

operan en mo<strong>de</strong>los <strong>de</strong> bits <strong>de</strong>ntro <strong>de</strong> tablas.<br />

Al igual que las instrucciones <strong>de</strong> Move, la longitud mínima <strong>de</strong> la tabla es 1 y la<br />

máxima <strong>de</strong>pen<strong>de</strong> <strong>de</strong>l tipo <strong>de</strong> instrucción utilizada y <strong>de</strong>l tamaño <strong>de</strong> la CPU (24 bits)<br />

<strong>de</strong>l PLC.<br />

En las tablas también se pue<strong>de</strong>n introducir grupos <strong>de</strong> 16 registros binarios. El<br />

número <strong>de</strong> referencia utilizado es el primer registro binario <strong>de</strong>l grupo, los otros 15<br />

están implícitos. El número <strong>de</strong>l primer registro binario <strong>de</strong>be ser <strong>de</strong>l primero <strong>de</strong> 16,<br />

tipo 000001, 100001, 000017, 100017, 000033, 100033, etc.<br />

Este grupo incluye las siguientes instrucciones.<br />

Instrucción Significado Disponible en la familia <strong>de</strong> PLC<br />

Quantum Compact Momentum Atrium<br />

Y Y lógico sí sí sí sí<br />

BROT Rotar bits sí sí sí sí<br />

CMPR Comparar registro sí sí sí sí<br />

COMP Complementar una matriz sí sí sí sí<br />

MBIT Modificar un bit sí sí sí sí<br />

NBIT Control <strong>de</strong> bits sí sí no sí<br />

NCBT Bit normalmente abierto sí sí no sí<br />

NOBT Bit normalmente cerrado sí sí no sí<br />

O O lógico sí sí sí sí<br />

RBIT Restablecer bit sí sí no sí<br />

SBIT Establecer bit sí sí no sí<br />

SENS Detectar sí sí sí sí<br />

XOR O exclusiva sí sí sí sí<br />

31007526 12/2006 13


Grupos <strong>de</strong> instrucciones<br />

Miscellaneous<br />

Miscellaneous Este grupo incluye las siguientes instrucciones.<br />

Instrucción Significado Disponible en la familia <strong>de</strong> PLC<br />

Quantum Compact Momentum Atrium<br />

CKSM Suma <strong>de</strong> control sí sí sí sí<br />

DLOG Registro <strong>de</strong> datos para el<br />

soporte <strong>de</strong> lectura/<br />

escritura PCMCIA<br />

no sí no no<br />

EMTH Funciones <strong>de</strong> matemática<br />

extendida<br />

LOAD Cargar flash sí<br />

(sólo CPU<br />

434 12/<br />

534 14)<br />

sí sí sí sí<br />

sí sí<br />

(sólo CCC<br />

960 x0/<br />

980 x0)<br />

MSTR Maestro sí sí sí sí<br />

SAVE Guardar flash sí<br />

(sólo CPU<br />

434 12/<br />

534 14)<br />

SCIF Interfases <strong>de</strong> control<br />

secuencial<br />

XMRD Lectura <strong>de</strong> memoria<br />

extendida<br />

XMWT Escritura en memoria<br />

extendida<br />

sí sí<br />

(sólo CCC<br />

960 x0/<br />

980 x0)<br />

sí sí no sí<br />

sí no no sí<br />

14 31007526 12/2006<br />

no<br />

no<br />

sí no no sí


Instrucciones <strong>de</strong> Move<br />

Instrucciones <strong>de</strong><br />

Move<br />

Este grupo incluye las siguientes instrucciones.<br />

Grupos <strong>de</strong> instrucciones<br />

Instrucción Significado Disponible en la familia <strong>de</strong> PLC<br />

Quantum Compact Momentum Atrium<br />

BLKM Mover bloque sí sí sí sí<br />

BLKT Mover tabla a bloque sí sí sí sí<br />

FIN Primera entrada sí sí sí sí<br />

FOUT Primera salida sí sí sí sí<br />

IBKR Lectura indirecta <strong>de</strong><br />

bloque<br />

sí sí no sí<br />

IBKW Escritura indirecta en<br />

bloque<br />

sí sí no sí<br />

R → T Mover registro a tabla sí sí sí sí<br />

SRCH Buscar tabla sí sí sí sí<br />

T → R Mover tabla a registro sí sí sí sí<br />

T → T Mover tabla a tabla sí sí sí sí<br />

TBLK Mover tabla a bloque sí sí sí sí<br />

31007526 12/2006 15


Grupos <strong>de</strong> instrucciones<br />

Skips/Specials<br />

Skips/Specials Este grupo incluye las siguientes instrucciones.<br />

Instrucción Significado Disponible en la familia <strong>de</strong> PLC<br />

Quantum Compact Momentum Atrium<br />

JSR Salto a una subrutina sí sí sí sí<br />

LAB Etiqueta <strong>de</strong> una subrutina sí sí sí sí<br />

RET Retorno <strong>de</strong>s<strong>de</strong> una<br />

subrutina<br />

sí sí sí sí<br />

SKPC Saltar (constante) sí sí sí sí<br />

SKPR Saltar (registro) sí sí sí sí<br />

La instrucción SKP es estándar en todos los PLC. Debe utilizarse con precaución.<br />

PELIGRO<br />

SALTO DE E/S NO INTENCIONADO<br />

Tenga cuidado al utilizar la instrucción SKP•. Si, <strong>de</strong> forma inadvertida, se salta (o<br />

no) alguna entrada o salida que normalmente ejerce un control, pue<strong>de</strong>n correrse<br />

riesgos personales y materiales.<br />

Si no se respetan estas instrucciones, se producirán graves daños<br />

corporales o la muerte.<br />

16 31007526 12/2006


Instrucciones <strong>de</strong> Special<br />

Instrucciones <strong>de</strong><br />

Special<br />

Grupos <strong>de</strong> instrucciones<br />

Estas instrucciones se utilizan en situaciones especiales para medir eventos<br />

estadísticos <strong>de</strong> todo el sistema lógico o crear situaciones especiales <strong>de</strong> control <strong>de</strong><br />

bucle.<br />

Este grupo incluye las siguientes instrucciones.<br />

Instrucción Significado Disponible en la familia <strong>de</strong> PLC<br />

Quantum Compact Momentum Atrium<br />

DIOH Estado funcional <strong>de</strong> E/S<br />

distribuidas<br />

sí no no sí<br />

PCFL <strong>Biblioteca</strong> <strong>de</strong> funciones <strong>de</strong><br />

control <strong>de</strong> procesos<br />

PID2 Proporcional-integral<strong>de</strong>rivada<br />

sí sí no sí<br />

sí sí sí sí<br />

STAT Estado sí sí sí sí<br />

31007526 12/2006 17


Grupos <strong>de</strong> instrucciones<br />

Coils, Contacts e Interconnects<br />

Coils, Contacts e<br />

Interconnects<br />

Todas las familias <strong>de</strong> PLC disponen <strong>de</strong> bobinas, contactos e interconexiones.<br />

bobina normal,<br />

bobina retentiva <strong>de</strong> memoria o con retención,<br />

contacto normalmente abierto (N.A.),<br />

contacto normalmente cerrado (N.C.),<br />

contacto <strong>de</strong> transición positiva (T.P.),<br />

contacto <strong>de</strong> transición negativa (T.N.),<br />

conexión horizontal y<br />

conexión vertical.<br />

18 31007526 12/2006


Presentación<br />

Control <strong>de</strong> bucle cerrado/<br />

valores analógicos<br />

Introducción En este capítulo encontrará información general sobre la configuración <strong>de</strong>l control<br />

<strong>de</strong> <strong>de</strong> bucle cerrado y la utilización <strong>de</strong> valores analógicos.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

31007526 12/2006 19<br />

3<br />

Apartado Página<br />

Control <strong>de</strong> bucle cerrado/valores analógicos 20<br />

Subfunciones <strong>de</strong> PCFL 21<br />

Ejemplo <strong>de</strong> PID 25<br />

Ejemplo <strong>de</strong> control <strong>de</strong> nivel con PID2 28


Control <strong>de</strong> bucle cerrado/valores analógicos<br />

Control <strong>de</strong> bucle cerrado/valores analógicos<br />

General En un sistema <strong>de</strong> control <strong>de</strong> regulación <strong>de</strong> bucle cerrado, cualquier <strong>de</strong>sviación<br />

respecto <strong>de</strong>l estado i<strong>de</strong>al <strong>de</strong>l proceso se mi<strong>de</strong>, analiza y ajusta para intentar obtener<br />

y mantener un nivel <strong>de</strong> error cero en el estado <strong>de</strong>l proceso. El conjunto <strong>de</strong><br />

instrucciones avanzadas incluye un bloque <strong>de</strong> funciones proporcional-integral<strong>de</strong>rivada<br />

<strong>de</strong>nominado PID2, que permite establecer un control <strong>de</strong> bucle cerrado (o<br />

realimentación negativa) en Lad<strong>de</strong>r <strong>Logic</strong>.<br />

Definición <strong>de</strong><br />

variable <strong>de</strong> valor<br />

<strong>de</strong> consigna y <strong>de</strong><br />

proceso<br />

El punto <strong>de</strong> control <strong>de</strong>seado (error cero), que se <strong>de</strong>fine en el bloque PID2, se<br />

<strong>de</strong>nomina valor <strong>de</strong> consigna (SP). La medición condicional efectuada con respecto<br />

al valor <strong>de</strong> consigna se <strong>de</strong>nomina variable <strong>de</strong> proceso (PV). La diferencia entre SP<br />

y PV es la <strong>de</strong>sviación o error (E). E se introduce en un cálculo <strong>de</strong> control cuyo<br />

resultado es una variable manipulada (Mv) que se utiliza para ajustar el proceso <strong>de</strong><br />

forma que PV = SP (y, por tanto, E = 0).<br />

dispositivo<br />

final <strong>de</strong> control<br />

Mv<br />

(salida)<br />

proceso<br />

cálculo<br />

<strong>de</strong> control<br />

transmisor<br />

<strong>de</strong> procesos<br />

20 31007526 12/2006<br />

E<br />

_<br />

+<br />

PV<br />

PV (entrada)<br />

SP


Subfunciones <strong>de</strong> PCFL<br />

Control <strong>de</strong> bucle cerrado/valores analógicos<br />

General La instrucción PCFL permite acce<strong>de</strong>r a una biblioteca <strong>de</strong> funciones <strong>de</strong> control <strong>de</strong><br />

procesos utilizando valores analógicos.<br />

Cálculos<br />

avanzados<br />

Procesamiento<br />

<strong>de</strong> señales<br />

Control <strong>de</strong><br />

regulación<br />

Las operaciones PCFL se encuadran en tres categorías principales:<br />

cálculos avanzados,<br />

procesamiento <strong>de</strong> señales y<br />

control <strong>de</strong> regulación.<br />

Los cálculos avanzados tienen una utilidad matemática general y no están limitados<br />

a las aplicaciones <strong>de</strong> control <strong>de</strong> procesos. Con los cálculos avanzados se pue<strong>de</strong>n<br />

crear algoritmos personalizados <strong>de</strong> procesamiento <strong>de</strong> señales, <strong>de</strong>rivar estados <strong>de</strong>l<br />

proceso controlado, <strong>de</strong>rivar medidas estadísticas <strong>de</strong>l proceso, etc.<br />

Las rutinas matemáticas simples ya se han indicado en la instrucción EMTH. La<br />

función <strong>de</strong> cálculo incluida en PCFL consiste en una calculadora textual <strong>de</strong><br />

ecuaciones para escribir ecuaciones personalizadas en lugar <strong>de</strong> programar una<br />

serie <strong>de</strong> operaciones matemáticas una a una.<br />

Las funciones <strong>de</strong> procesamiento <strong>de</strong> señales se utilizan para manipular procesos y<br />

señales <strong>de</strong> procesos <strong>de</strong>rivadas. Para ello utilizan diferentes métodos: linealizar la<br />

señal, filtrarla, retardarla o modificarla <strong>de</strong> alguna otra forma. Esta categoría incluiría<br />

funciones como entrada/salida analógica, limitadores, filtro diferenciador o <strong>de</strong><br />

retardo y generadores <strong>de</strong> rampa.<br />

Las funciones <strong>de</strong> regulación efectúan un control <strong>de</strong> bucle cerrado en diversas<br />

aplicaciones. Normalmente, se trata <strong>de</strong> un bucle <strong>de</strong> control <strong>de</strong> alimentación<br />

negativa <strong>de</strong> PID (proporcional integral <strong>de</strong>rivada). Las funciones PID en PCFL tienen<br />

diversos grados <strong>de</strong> funcionalidad. La función PID tiene la misma funcionalidad<br />

general que la instrucción PID2 pero utiliza matemática <strong>de</strong> coma flotante y<br />

representa algunas opciones <strong>de</strong> forma diferente. PID es útil en los casos en los que<br />

la instrucción PID2 no es apropiada <strong>de</strong>bido a circunstancias numéricas, como el<br />

redon<strong>de</strong>o.<br />

31007526 12/2006 21


Control <strong>de</strong> bucle cerrado/valores analógicos<br />

Explicación <strong>de</strong><br />

los elementos <strong>de</strong><br />

fórmula<br />

Ecuaciones<br />

generales<br />

Significado <strong>de</strong> los elementos <strong>de</strong> fórmula en las siguientes fórmulas:<br />

Elementos <strong>de</strong> fórmula Significado<br />

Y Salida <strong>de</strong> variable manipulada<br />

YP Parte proporcional <strong>de</strong>l cálculo<br />

YI Parte integral <strong>de</strong>l cálculo<br />

YD Parte <strong>de</strong>rivada <strong>de</strong>l cálculo<br />

Bias Constante añadida a la entrada<br />

BT Registro <strong>de</strong> transferencia sin perturbaciones<br />

SP Valor <strong>de</strong> consigna<br />

KP Ganancia proporcional<br />

Dt Tiempo <strong>de</strong>s<strong>de</strong> el último ciclo<br />

TI Constante <strong>de</strong> tiempo <strong>de</strong> integral<br />

TD Constante <strong>de</strong> tiempo <strong>de</strong>rivado<br />

TD1 Tiempo <strong>de</strong> retardo diferencial<br />

XD Término <strong>de</strong> error, <strong>de</strong>sviación<br />

XD_1 Término <strong>de</strong> error anterior<br />

X Entrada <strong>de</strong> proceso<br />

X_1 Entrada <strong>de</strong> proceso anterior<br />

Las siguientes ecuaciones generales son válidas.<br />

Ecuación Condición/Requisito<br />

Y = YP+ YI+ YD+ BIAS<br />

Bit integral activo<br />

Y = YP+ YD+ BIAS+ BT<br />

Bit integral inactivo<br />

Yhigh ≤ Y≤ Ylow Límites superior/inferior<br />

con<br />

YP, YI, YD = f( XD)<br />

XD = SP – X± ( GRZ × ( 1 – KGRZ)<br />

)<br />

XD =<br />

SP – X<br />

Reducción <strong>de</strong> ganancia<br />

Zona <strong>de</strong> reducción <strong>de</strong> ganancia sin utilizar<br />

22 31007526 12/2006


Cálculos<br />

proporcionales<br />

Las siguientes ecuaciones son válidas.<br />

Cálculo integral Las siguientes ecuaciones son válidas.<br />

Cálculo <strong>de</strong>rivado Las siguientes ecuaciones son válidas.<br />

Control <strong>de</strong> bucle cerrado/valores analógicos<br />

Ecuación Condición/Requisito<br />

YP = KP × XD<br />

Bit proporcional activo<br />

YP = 0<br />

Ecuación Condición/Requisito<br />

YI YI KP<br />

Bit integral activo<br />

Δt<br />

-----<br />

XD_1 XD<br />

TI<br />

+<br />

= + × × ------------------------------<br />

2<br />

YI = 0<br />

Ecuación Condición/Requisito<br />

DXD = X_1 – X<br />

Derivada base o variable <strong>de</strong> proceso (PV)<br />

DXD = XD – X_1<br />

YD =<br />

(<br />

-------------------------------------------------------------------------------------<br />

TD1 × YD)<br />

+ ( TD × KP × DXD)<br />

Δt+ TD1<br />

YD =<br />

0<br />

Bit <strong>de</strong>rivado activo<br />

31007526 12/2006 23


Control <strong>de</strong> bucle cerrado/valores analógicos<br />

Diagrama <strong>de</strong><br />

estructura<br />

valor <strong>de</strong> consigna<br />

SP<br />

a)<br />

b)<br />

c)<br />

+<br />

_<br />

entrada<br />

<strong>de</strong> control<br />

X(n)<br />

integral<br />

TI<br />

<strong>de</strong>rivada<br />

TD<br />

proporcional<br />

1<br />

0<br />

1<br />

0<br />

1 = proporción activa<br />

P+I+D<br />

contribuciones<br />

selección <strong>de</strong> modalidad<br />

restablecimiento <strong>de</strong> contención<br />

ganancia<br />

- ganancia<br />

<strong>de</strong>sviación <strong>de</strong> control<br />

0<br />

b)<br />

1<br />

1 = integral activa<br />

0<br />

1<br />

1<br />

0 c)<br />

1 = <strong>de</strong>rivada activa<br />

24 31007526 12/2006<br />

+<br />

conexión <strong>de</strong> suma<br />

límites <strong>de</strong> contención<br />

alto<br />

bajo<br />

a)<br />

0 = <strong>de</strong>rivada base en XD<br />

1 = <strong>de</strong>rivada base en X<br />

modalida<strong>de</strong>s <strong>de</strong><br />

funcionamiento<br />

Parada<br />

automática/<br />

manual<br />

salida<br />

<strong>de</strong> control<br />

Y (n)


Ejemplo <strong>de</strong> PID<br />

Control <strong>de</strong> bucle cerrado/valores analógicos<br />

Descripción Este ejemplo explica cómo configurar un bucle PID típico mediante la función PID<br />

<strong>de</strong> PCFL. El cálculo empieza con la función AIN, que toma una entrada bruta<br />

simulada para hacer que la salida se encuentre aproximadamente entre 20 y 22 si<br />

la escala <strong>de</strong> unida<strong>de</strong>s físicas está establecida entre 0 y 100.<br />

Diagrama 984LL<br />

000100<br />

# 3<br />

T0.1<br />

400185<br />

AIN<br />

400100<br />

PCFL<br />

# 14<br />

LKUP<br />

400120<br />

PCFL<br />

# 39<br />

La variable <strong>de</strong> proceso, <strong>de</strong>spués <strong>de</strong> un periodo <strong>de</strong> tiempo, <strong>de</strong>be parecerse a la<br />

siguiente gráfica.<br />

22<br />

20<br />

400112<br />

400120<br />

BLKM<br />

# 2<br />

valor <strong>de</strong> la variable <strong>de</strong> proceso<br />

400157<br />

400200<br />

BLKM<br />

# 2<br />

31007526 12/2006 25<br />

RAMP<br />

400160<br />

PCFL<br />

# 14<br />

400172<br />

400190<br />

BLKM<br />

# 2<br />

MODE<br />

400190<br />

PCFL<br />

# 8<br />

400196<br />

400206<br />

BLKM<br />

# 2<br />

PID<br />

400200<br />

PCFL<br />

# 44<br />

400242<br />

400250<br />

BLKM<br />

# 2<br />

tiempo<br />

AOUT<br />

400250<br />

PCFL<br />

# 9<br />

000100


Control <strong>de</strong> bucle cerrado/valores analógicos<br />

Lad<strong>de</strong>r <strong>Logic</strong> <strong>de</strong>l<br />

PID principal<br />

Proceso<br />

simulado<br />

La salida AIN se mueve en bloque a la función LKUP, que se utiliza para escalar la<br />

señal <strong>de</strong> entrada. Esto se hace porque el sensor <strong>de</strong> entrada no proporciona lecturas<br />

altamente lineales; el resultado es una señal lineal i<strong>de</strong>al.<br />

Siete puntos <strong>de</strong>finidos<br />

en la tabla <strong>de</strong> búsqueda<br />

100<br />

80<br />

60<br />

50<br />

40<br />

20<br />

0<br />

*<br />

20<br />

*<br />

40<br />

*<br />

50<br />

*<br />

60<br />

*<br />

80<br />

*<br />

100<br />

señal linealizada<br />

entrada real<br />

entrada<br />

La salida <strong>de</strong> la tabla <strong>de</strong> linealización por interpolación se mueve en bloque a la<br />

función PID. RAMP se utiliza para controlar el ascenso (o <strong>de</strong>scenso) <strong>de</strong>l valor <strong>de</strong><br />

consigna <strong>de</strong>l controlador PID en lo que se refiere a la pendiente <strong>de</strong> rampa y al<br />

intervalo <strong>de</strong> resolución. En ete ejemplo, el valor <strong>de</strong> consigna se establece en otra<br />

sección lógica para simular una configuración remota. La función MODE se sitúa<br />

<strong>de</strong>trás <strong>de</strong> RAMP, para po<strong>de</strong>r así cambiar entre el valor <strong>de</strong> consigna generado por<br />

RAMP y un valor manual.<br />

La función PID controla el proceso simulado por esta lógica [valor en 400.100:<br />

878(<strong>de</strong>c.)]<br />

000103<br />

000103<br />

# 3<br />

T0.1<br />

400188<br />

400242<br />

400260<br />

BLKM<br />

# 1<br />

LLAG<br />

400260<br />

PCFL<br />

# 20<br />

400278<br />

400280<br />

BLKM<br />

# 1<br />

LLAG<br />

400280<br />

PCFL<br />

# 20<br />

400298<br />

400300<br />

BLKM<br />

DELAY<br />

400300<br />

26 31007526 12/2006<br />

# 1<br />

PCFL<br />

# <strong>32</strong><br />

400330<br />

400340<br />

BLKM<br />

# 1<br />

AOUT<br />

400340<br />

PCFL<br />

# 9<br />

400348<br />

400100<br />

BLKM<br />

# 1<br />

000103


Control <strong>de</strong> bucle cerrado/valores analógicos<br />

El simulador <strong>de</strong> procesos está formado por dos funciones LLAG que actúan como<br />

filtro y entrada <strong>de</strong> una cola DELAY, que también es un bloque <strong>de</strong> funciones <strong>de</strong><br />

PCFL. Esta disposición es lo equivalente a un proceso <strong>de</strong> segundo or<strong>de</strong>n con<br />

tiempo muerto.<br />

Los intervalos <strong>de</strong> resolución para los filtros LLAG no afectan a la dinámica <strong>de</strong>l<br />

proceso y se han elegido para conseguir actualizaciones rápidas. El intervalo <strong>de</strong><br />

solución <strong>de</strong> la cola DELAY se establece en 1.000 ms con un retardo <strong>de</strong> cinco<br />

intervalos, es <strong>de</strong>cir, 5 s. Cada filtro LLAG dispone <strong>de</strong> tiempos <strong>de</strong> avance <strong>de</strong> 4 s y <strong>de</strong><br />

tiempos <strong>de</strong> retardo <strong>de</strong> 10 s. La ganancia por cada uno es 1,0.<br />

En términos <strong>de</strong> regulación <strong>de</strong>l proceso, la función <strong>de</strong> transferencia se pue<strong>de</strong><br />

expresar como:<br />

Gp( S)<br />

( 4S + 1)<br />

( 4S + 1)e<br />

5S –<br />

= ----------------------------------------------------<br />

( 10S + 1)<br />

( 10S + 1)<br />

La función AOUT sólo se utiliza para convertir el valor simulado <strong>de</strong> control <strong>de</strong> salida<br />

<strong>de</strong>l proceso en un rango <strong>de</strong> 0 a 4.095, lo cual simula un dispositivo <strong>de</strong> campo. Esta<br />

señal entera se utiliza como la entrada <strong>de</strong>l proceso en la primera red.<br />

Parámetros PID El controlador PID está ajustado para controlar este proceso a 20,0, mediante el<br />

método <strong>de</strong> ajuste Ziegler-Nichols. La ganancia <strong>de</strong>l controlador resultante es 2,16;<br />

esto equivale a una banda proporcional <strong>de</strong>l 46,3 %.<br />

El tiempo <strong>de</strong> integración está ajustado a 12,5 s/repetición (4,8 repeticiones/min).<br />

Inicialmente, el tiempo diferencial es 3 s; <strong>de</strong>spués, se reduce a 0,3 s para<br />

<strong>de</strong>sacentuar el efecto diferencial.<br />

Después <strong>de</strong> PID, se utiliza una función AOUT. Ésta condiciona la salida <strong>de</strong> control<br />

<strong>de</strong> PID escalando la señal <strong>de</strong> nuevo a un entero que se utilizará como valor <strong>de</strong><br />

control.<br />

Todo el bucle <strong>de</strong> control está precedido por un temporizador <strong>de</strong> 0,1 s. El intervalo<br />

<strong>de</strong> resolución <strong>de</strong> <strong>de</strong>stino para todo el bucle es 1 s, al igual que el ciclo entero. Sin<br />

embargo, no es necesario ejecutar en cada ciclo las funciones que no <strong>de</strong>pen<strong>de</strong>n <strong>de</strong>l<br />

tiempo (AIN, LKUP, MODE y AOUT). Para reducir el impacto <strong>de</strong>l tiempo <strong>de</strong> ciclo,<br />

estas funciones están programadas para ejecutarse con menor frecuencia. El<br />

ejemplo tiene un ciclo <strong>de</strong> bucle <strong>de</strong> 3 s, lo que reduce consi<strong>de</strong>rablemente el tiempo<br />

<strong>de</strong> ciclo medio.<br />

Nota: Es importante conocer el impacto <strong>de</strong> ciclo máximo. Al programar otros<br />

bucles, probablemente no <strong>de</strong>seará que se ejecuten todos los bucles en el mismo<br />

ciclo.<br />

31007526 12/2006 27


Control <strong>de</strong> bucle cerrado/valores analógicos<br />

Ejemplo <strong>de</strong> control <strong>de</strong> nivel con PID2<br />

Descripción A continuación se muestra un diagrama <strong>de</strong> flujo simplificado para un separador <strong>de</strong><br />

entrada en una planta <strong>de</strong> procesamiento <strong>de</strong> gas. El flujo <strong>de</strong> entrada consta <strong>de</strong> dos<br />

fases: líquido y gas.<br />

entrada <strong>de</strong><br />

planta<br />

LC<br />

1<br />

I/P<br />

1<br />

bloque <strong>de</strong> entrada<br />

FCV<br />

LT<br />

1<br />

ventilación <strong>de</strong> entrada<br />

LT-1 4 ... Transmisor <strong>de</strong> nivel <strong>de</strong> 4 a 20 mA<br />

I/P-1 4 ... Convertidor <strong>de</strong> corriente a neumático <strong>de</strong> 4 a 20 mA<br />

LV-1 Válvula <strong>de</strong> control, CERRADA en caso <strong>de</strong> fallo<br />

LSH-1 Conmutador <strong>de</strong> nivel superior, normalmente cerrado<br />

LSL-1 Conmutador <strong>de</strong> nivel inferior, normalmente abierto<br />

LC-1 Controlador <strong>de</strong> nivel<br />

I/P-1 Mv para controlar el flujo que va al tanque T-1<br />

ventilación<br />

El líquido sale <strong>de</strong>l tanque para mantener un nivel constante. El objetivo <strong>de</strong>l control<br />

es precisamente mantener un nivel constante en el separador. Las fases <strong>de</strong>ben<br />

separarse antes <strong>de</strong>l procesamiento; <strong>de</strong> ello se encarga el separador <strong>de</strong> entrada,<br />

PV-1. Si el controlador <strong>de</strong> nivel, LC-1, falla al realizar su trabajo, el separador <strong>de</strong><br />

entrada podría llenarse, haciendo que los líquidos entren en contacto con el flujo <strong>de</strong><br />

gas; esta situación podría dañar seriamente algunos dispositivos como, por<br />

ejemplo, compresores <strong>de</strong> gas.<br />

28 31007526 12/2006<br />

LSH<br />

1<br />

LSL<br />

1<br />

PV-1<br />

FC<br />

caída<br />

LV<br />

gas<br />

con<strong>de</strong>nsación


Diagrama Lad<strong>de</strong>r<br />

<strong>Logic</strong><br />

Contenido <strong>de</strong> los<br />

registros<br />

Registro Contenido<br />

numérico<br />

Control <strong>de</strong> bucle cerrado/valores analógicos<br />

El nivel se controla por medio <strong>de</strong>l dispositivo LC-1, un controlador Quantum<br />

conectado a un módulo <strong>de</strong> entrada analógica; I/P-1 está conectado a un módulo <strong>de</strong><br />

salida analógica. Es posible ejecutar el bucle <strong>de</strong> control con la siguiente 984LL:<br />

000101<br />

300001<br />

#0<br />

SUB<br />

400113<br />

400100<br />

400200<br />

PID2<br />

# 30<br />

400102<br />

#0<br />

SUB<br />

400500<br />

000102<br />

000103<br />

El primer bloque SUB se utiliza para mover la entrada analógica <strong>de</strong>s<strong>de</strong> LT-1 al<br />

registro <strong>de</strong> entrada analógico <strong>de</strong>l PID2, 40113. El segundo bloque SUB se utiliza<br />

para mover la Mv <strong>de</strong> salida <strong>de</strong>l PID2 a la salida I/P-1 <strong>de</strong> la asignación <strong>de</strong> E/S. La<br />

bobina 00101 se utiliza para cambiar el bucle <strong>de</strong> modalidad automática a manual,<br />

si así se <strong>de</strong>sea. Para la modalidad automática, <strong>de</strong>be estar en la posición activo.<br />

Determine el valor <strong>de</strong> consigna en mm para la proporción <strong>de</strong> entrada (unida<strong>de</strong>s<br />

físicas). El rango total <strong>de</strong> entradas será 0...4.000 mm (para valores analógicos<br />

brutos 0...4.095). Especifique el contenido <strong>de</strong> los registros <strong>de</strong>l nodo superior en el<br />

bloque PID2 como se indica a continuación.<br />

Significado<br />

<strong>de</strong>l contenido<br />

Comentarios<br />

400100 PV escalada (mm) PID2 se encarga <strong>de</strong> escribirlo<br />

400101 2000 SP escalado (mm) Establecido inicialmente en 2.000 mm (mitad).<br />

400102 0000 Salida <strong>de</strong> bucle (04.095 PID2 se encarga <strong>de</strong> escribirlo; manténgalo en 0 por<br />

razones <strong>de</strong> seguridad<br />

400103 3500 Valor <strong>de</strong> consigna <strong>de</strong> alarma alto Si el nivel sobrepasa 3.500 mm, la bobina 000102<br />

(mm)<br />

se activa<br />

400104 1000 Valor <strong>de</strong> consigna <strong>de</strong> alarma bajo Si el nivel baja <strong>de</strong> 1.000 mm, la bobina 000103 se<br />

(mm)<br />

activa<br />

31007526 12/2006 29


Control <strong>de</strong> bucle cerrado/valores analógicos<br />

Registro Contenido<br />

numérico<br />

Significado<br />

<strong>de</strong>l contenido<br />

400105 0100 PB (%) El valor real <strong>de</strong>pen<strong>de</strong> <strong>de</strong> la dinámica <strong>de</strong>l proceso<br />

400106 0500 Constante integral (5,00 repeticiones<br />

por minuto)<br />

El valor real <strong>de</strong>pen<strong>de</strong> <strong>de</strong> la dinámica <strong>de</strong>l proceso<br />

400107 0000 Constante <strong>de</strong> tiempo <strong>de</strong> registro (por<br />

minuto)<br />

Si se establece en 0, la modalidad diferencial se<br />

<strong>de</strong>sactiva<br />

400108 0000 Bias (04.095) Se establece en 0, ya que disponemos <strong>de</strong> un<br />

término integral<br />

400109 4095 Límite superior <strong>de</strong> windup (04.095) Normalmente está establecido en el máximo<br />

400110 0000 Límite inferior <strong>de</strong> windup (04.095) Normalmente está establecido en el mínimo<br />

400111 4000 Rango físico superior (mm) Valor escalado <strong>de</strong> la variable <strong>de</strong> proceso cuando la<br />

entrada bruta está en 4.095.<br />

400112 0000 Rango físico inferior (mm) Valor escalado <strong>de</strong> la variable <strong>de</strong> proceso cuando la<br />

entrada bruta está en 0<br />

400113 Medición <strong>de</strong> valor analógico bruto (<strong>de</strong><br />

0 a 4.095)<br />

400114 0000 Offset al registro <strong>de</strong>l contador <strong>de</strong><br />

bucles<br />

400115 0000 Número máximo <strong>de</strong> bucles<br />

ejecutados por ciclo<br />

Copia <strong>de</strong> la entrada <strong>de</strong>s<strong>de</strong> el registro <strong>de</strong>l módulo <strong>de</strong><br />

entrada analógica (300001) realizada por el primer<br />

SUB.<br />

El valor cero <strong>de</strong>sactiva esta función.<br />

Normalmente no se utiliza<br />

Consulte el registro 400114<br />

400116 0102 Pointer a la realimentación <strong>de</strong> reinicio Si lo <strong>de</strong>ja en cero, la función PID2 suministra <strong>de</strong><br />

forma automática un pointer al registro <strong>de</strong> salida <strong>de</strong><br />

bucle. Si se pue<strong>de</strong> cambiar la salida real (400500)<br />

<strong>de</strong>s<strong>de</strong> el valor proporcionado por PID2, habrá que<br />

establecer este registro en 500 (400500) para<br />

po<strong>de</strong>r calcular la integral <strong>de</strong> forma correcta.<br />

400117 4095 Limitación <strong>de</strong> salida superior (<strong>de</strong><br />

0 a 4.095)<br />

Normalmente está establecido en el máximo<br />

400118 0000 Limitación <strong>de</strong> salida inferior (<strong>de</strong><br />

0 a 4.095)<br />

400119 0015 Constante <strong>de</strong> limitación <strong>de</strong> ganancia<br />

<strong>de</strong> crecimiento (<strong>de</strong> 2 a 30)<br />

Comentarios<br />

Normalmente está establecido en el mínimo<br />

Normalmente está establecido en 15. El valor real<br />

<strong>de</strong>pen<strong>de</strong> <strong>de</strong>l ruido que afecte a la señal. Puesto que<br />

no estamos utilizando la modalidad diferencial, esto<br />

no tiene efecto en PID2.<br />

400120 0000 Pointer a la entrada <strong>de</strong> seguimiento Sólo se utiliza si se usa la función PRELOAD. Si no<br />

se usa esta función, normalmente será cero.<br />

El bloque PID2 se encarga <strong>de</strong> establecer todos los valores <strong>de</strong> los registros <strong>de</strong>l<br />

bloque <strong>de</strong> <strong>de</strong>stino 400200.<br />

30 31007526 12/2006


Presentación<br />

Formateo <strong>de</strong> mensajes para<br />

operaciones READ/WRIT <strong>de</strong> ASCII<br />

Introducción En este capítulo encontrará información general sobre cómo formatear mensajes<br />

para operaciones READ/WRIT <strong>de</strong> ASCII.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

31007526 12/2006 31<br />

4<br />

Apartado Página<br />

Mensajes formateados para operaciones ASCII READ/WRIT <strong>32</strong><br />

Especificaciones <strong>de</strong> formato 33<br />

Consi<strong>de</strong>raciones especiales <strong>de</strong> instalación para formato <strong>de</strong> señales <strong>de</strong><br />

control/vigilancia<br />

36


Formateo <strong>de</strong> mensajes para operaciones READ/WRIT <strong>de</strong> ASCII<br />

Mensajes formateados para operaciones ASCII READ/WRIT<br />

Generalida<strong>de</strong>s Los mensajes ASCII utilizados en las instrucciones READ y WRIT se pue<strong>de</strong>n crear<br />

por medio <strong>de</strong>l software <strong>de</strong> panel, utilizando las especificaciones <strong>de</strong> formato que se<br />

<strong>de</strong>scriben a continuación. Las especificaciones <strong>de</strong> formato son símbolos <strong>de</strong><br />

caracteres que indican.<br />

Los caracteres ASCII utilizados en el mensaje<br />

El contenido <strong>de</strong>l registro visualizado en formato <strong>de</strong> caracteres ASCII<br />

El contenido <strong>de</strong>l registro visualizado en formato hexa<strong>de</strong>cimal<br />

El contenido <strong>de</strong>l registro visualizado en formato entero<br />

Llamadas <strong>de</strong> la subrutina para ejecutar otros formatos <strong>de</strong> mensaje<br />

Vista general <strong>de</strong><br />

especificaciones<br />

<strong>de</strong><br />

formato<br />

Se pue<strong>de</strong>n utilizar las siguientes especificaciones <strong>de</strong> formato.<br />

Especificación Significado<br />

/ Retorno ASCII (CR) y cambio <strong>de</strong> línea (LF)<br />

" " Cercamiento para el código <strong>de</strong> control octal<br />

‘ ´ Cercamiento para caracteres <strong>de</strong> texto ASCII<br />

X Indicador <strong>de</strong> espacio<br />

() Se repite el contenido <strong>de</strong> los paréntesis<br />

I Entero<br />

L Ceros no significativos<br />

A Alfanumérico<br />

O Octal<br />

B Binario<br />

H Hexa<strong>de</strong>cimal<br />

<strong>32</strong> 31007526 12/2006


Especificaciones <strong>de</strong> formato<br />

Especificación<br />

<strong>de</strong> formato /<br />

Especificación<br />

<strong>de</strong> formato " "<br />

Especificación<br />

<strong>de</strong> formato ‘ ´<br />

Especificación<br />

<strong>de</strong> formato X<br />

Retorno ASCII (CR) y cambio <strong>de</strong> línea (LF).<br />

Cercamiento para el código <strong>de</strong> control octal.<br />

Cercamiento para caracteres <strong>de</strong> texto ASCII.<br />

Formateo <strong>de</strong> mensajes para operaciones READ/WRIT <strong>de</strong> ASCII<br />

Ancho <strong>de</strong> campo Ninguno (pre<strong>de</strong>terminado a 1).<br />

Prefijo Ninguno (pre<strong>de</strong>terminado a 1).<br />

Formato <strong>de</strong> entrada Salidas CR, LF; no se aceptan caracteres ASCII.<br />

Formato <strong>de</strong> salida Salidas CR, LF.<br />

Ancho <strong>de</strong> campo Tres dígitos cercados por comillas dobles.<br />

Prefijo Ninguno.<br />

Formato <strong>de</strong> entrada Acepta tres caracteres <strong>de</strong> control octal.<br />

Formato <strong>de</strong> salida Emite tres caracteres <strong>de</strong> control octal.<br />

Ancho <strong>de</strong> campo 1 a 128 caracteres.<br />

Prefijo Ninguno (pre<strong>de</strong>terminado a 1).<br />

Formato <strong>de</strong> entrada Recibe el número <strong>de</strong> caracteres imprimibles en mayúscula/<br />

minúscula especificado en el ancho <strong>de</strong> campo.<br />

Formato <strong>de</strong> salida Transmite el número <strong>de</strong> caracteres imprimibles en mayúscula/<br />

minúscula especificado en el ancho <strong>de</strong> campo.<br />

Indicador <strong>de</strong> espacio; por ejemplo, 14X indica 14 espacios vacíos hacia la<br />

izquierda <strong>de</strong>s<strong>de</strong> el punto en que tiene lugar la especificación.<br />

Ancho <strong>de</strong> campo Ninguno (pre<strong>de</strong>terminado a 1).<br />

Prefijo 1 a 99 espacios.<br />

Formato <strong>de</strong> entrada Recibe el número <strong>de</strong> espacios especificado.<br />

Formato <strong>de</strong> salida Transmite el número <strong>de</strong> espacios especificado.<br />

31007526 12/2006 33


Formateo <strong>de</strong> mensajes para operaciones READ/WRIT <strong>de</strong> ASCII<br />

Especificación<br />

<strong>de</strong> formato ( )<br />

Especificación<br />

<strong>de</strong> formato I<br />

Especificación<br />

<strong>de</strong> formato L<br />

Especificación<br />

<strong>de</strong> formato A<br />

Repite el contenido <strong>de</strong> los paréntesis; por ejemplo, 2 (4X, I5) indica una<br />

repetición <strong>de</strong> 4X, I5 dos veces.<br />

Ancho <strong>de</strong> campo Ninguno.<br />

Prefijo 1 a 255.<br />

Formato <strong>de</strong> entrada Repite las especificaciones <strong>de</strong> formato entre paréntesis el número<br />

<strong>de</strong> veces especificado por el prefijo.<br />

Formato <strong>de</strong> salida Repite las especificaciones <strong>de</strong> formato entre paréntesis el número<br />

<strong>de</strong> veces especificado por el prefijo.<br />

Entero; por ejemplo, I5 especifica cinco caracteres enteros.<br />

Ancho <strong>de</strong> campo 1 a 8 caracteres.<br />

Prefijo 1 a 99.<br />

Formato <strong>de</strong> entrada Acepta caracteres ASCII <strong>de</strong> 0 a 9. Si no se satisface el ancho <strong>de</strong><br />

campo, los caracteres más significativos <strong>de</strong>l campo se completarán<br />

con ceros.<br />

Formato <strong>de</strong> salida Transmite caracteres ASCII <strong>de</strong> 0 a 9. Si no se satisface el ancho <strong>de</strong><br />

campo, los caracteres más significativos <strong>de</strong>l campo se completarán<br />

con ceros. El campo <strong>de</strong> <strong>de</strong>sbor<strong>de</strong> está formado por asteriscos.<br />

Ceros no significativos; por ejemplo, L5 especifica cinco ceros no significativos.<br />

Ancho <strong>de</strong> campo 1 a 8 caracteres.<br />

Prefijo 1 a 99.<br />

Formato <strong>de</strong> entrada Acepta caracteres ASCII <strong>de</strong> 0 a 9. Si no se satisface el ancho <strong>de</strong><br />

campo, los caracteres más significativos <strong>de</strong>l campo se completarán<br />

con ceros.<br />

Formato <strong>de</strong> salida Transmite caracteres ASCII <strong>de</strong> 0 a 9. Si no se satisface el ancho <strong>de</strong><br />

campo, los caracteres más significativos <strong>de</strong>l campo se completarán<br />

con ceros. El campo <strong>de</strong> <strong>de</strong>sbor<strong>de</strong> está formado por asteriscos.<br />

Alfanumérico; por ejemplo, A27 especifica 27 caracteres alfanuméricos, no se<br />

admiten sufijos.<br />

Ancho <strong>de</strong> campo Ninguno (pre<strong>de</strong>terminado a 1).<br />

Prefijo 1 a 99.<br />

Formato <strong>de</strong> entrada Acepta cualquier carácter <strong>de</strong> 8 bits excepto <strong>de</strong>limitadores<br />

reservados como CR, LF, ESC, RET o SUPR.<br />

Formato <strong>de</strong> salida Transmite cualquier carácter <strong>de</strong> 8 bits.<br />

34 31007526 12/2006


Especificación<br />

<strong>de</strong> formato O<br />

Especificación<br />

<strong>de</strong> formato B<br />

Especificación<br />

<strong>de</strong> formato H<br />

Formateo <strong>de</strong> mensajes para operaciones READ/WRIT <strong>de</strong> ASCII<br />

Octal; por ejemplo, O2 especifica dos caracteres octales.<br />

Ancho <strong>de</strong> campo 1 a 6 caracteres.<br />

Prefijo 1 a 99.<br />

Formato <strong>de</strong> entrada Acepta caracteres ASCII <strong>de</strong> 0 a 7. Si no se satisface el ancho <strong>de</strong><br />

campo, los caracteres más significativos se completarán con ceros.<br />

Formato <strong>de</strong> salida Transmite caracteres ASCII <strong>de</strong> 0 a 7. Si no se satisface el ancho <strong>de</strong><br />

campo, los caracteres más significativos se completarán con ceros.<br />

No hay indicadores <strong>de</strong> <strong>de</strong>sbor<strong>de</strong>.<br />

Binario; por ejemplo, B4 especifica cuatro caracteres binarios.<br />

Ancho <strong>de</strong> campo 1 a 16 caracteres.<br />

Prefijo 1 a 99.<br />

Formato <strong>de</strong> entrada Acepta caracteres ASCII 0 y 1. Si no se satisface el ancho <strong>de</strong><br />

campo, los caracteres más significativos se completarán con ceros.<br />

Formato <strong>de</strong> salida Transmite caracteres ASCII 0 y 1. Si no se satisface el ancho <strong>de</strong><br />

campo, los caracteres más significativos se completarán con ceros.<br />

No hay indicadores <strong>de</strong> <strong>de</strong>sbor<strong>de</strong>.<br />

Hexa<strong>de</strong>cimal; por ejemplo, H2 especifica dos caracteres hexa<strong>de</strong>cimales.<br />

Ancho <strong>de</strong> campo 1 a 4 caracteres.<br />

Prefijo 1 a 99.<br />

Formato <strong>de</strong> entrada Acepta caracteres ASCII <strong>de</strong> 0 a 9 y <strong>de</strong> A a F. Si no se satisface el<br />

ancho <strong>de</strong> campo, los caracteres más significativos se completarán<br />

con ceros.<br />

Formato <strong>de</strong> salida Transmite caracteres ASCII <strong>de</strong> 0 a 9 y <strong>de</strong> A a F. Si no se satisface<br />

el ancho <strong>de</strong> campo, los caracteres más significativos se<br />

completarán con ceros. No hay indicadores <strong>de</strong> <strong>de</strong>sbor<strong>de</strong>.<br />

31007526 12/2006 35


Formateo <strong>de</strong> mensajes para operaciones READ/WRIT <strong>de</strong> ASCII<br />

Consi<strong>de</strong>raciones especiales <strong>de</strong> instalación para formato <strong>de</strong> señales <strong>de</strong> control/<br />

vigilancia<br />

Generalida<strong>de</strong>s Para controlar y supervisar las señales utilizadas en la comunicación por mensajes,<br />

especifique el código 1002 en el primer registro <strong>de</strong>l bloque <strong>de</strong> control (el registro que<br />

aparece en el asiento superior). Mediante este formato podrá controlar las líneas<br />

RTS y CTS en el puerto que se utilice para la transmisión <strong>de</strong> mensajes.<br />

Palabra <strong>de</strong> la<br />

máscara <strong>de</strong><br />

control<br />

Nota: En este formato, sólo se pue<strong>de</strong> utilizar el puerto local para la transmisión <strong>de</strong><br />

mensajes, es <strong>de</strong>cir, un PLC primario no podrá supervisar o controlar las señales<br />

<strong>de</strong> un puerto secundario. Por lo tanto, el número <strong>de</strong> puerto especificado en el<br />

quinto asiento implícito <strong>de</strong>l bloque <strong>de</strong> control siempre <strong>de</strong>berá ser 1.<br />

Los tres primeros registros <strong>de</strong>l bloque <strong>de</strong> datos (el registro visualizado y el primer y<br />

segundo implícitos <strong>de</strong>l asiento intermedio) tienen un contenido pre<strong>de</strong>terminado.<br />

Registro Contenido<br />

Visualizado Guarda la palabra <strong>de</strong> la máscara <strong>de</strong> control<br />

Primer implícito Guarda la palabra <strong>de</strong> datos <strong>de</strong> control<br />

Segundo implícito Guarda la palabra <strong>de</strong> estado<br />

Estos tres registros <strong>de</strong>l bloque <strong>de</strong> datos son necesarios para este formato y, en<br />

consecuencia, el rango permitido para los valores <strong>de</strong> longitud (especificado en el<br />

asiento inferior) será <strong>de</strong> 3 a 255.<br />

Utilización <strong>de</strong> la palabra.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = se pue<strong>de</strong> utilizar el puerto<br />

0 = no se pue<strong>de</strong> utilizar el puerto<br />

2 - 15 No utilizados<br />

16 1 = controlar RTS<br />

0 = no controlar RTS<br />

36 31007526 12/2006


Palabra <strong>de</strong> datos<br />

<strong>de</strong> control<br />

Palabra <strong>de</strong><br />

estado<br />

Utilización <strong>de</strong> la palabra.<br />

Bit Función<br />

1 1 = utilizar puerto<br />

0 = <strong>de</strong>volver puerto<br />

2 - 15 No utilizados<br />

16 1 = activar RTS<br />

0 = <strong>de</strong>sactivar RTS<br />

Utilización <strong>de</strong> la palabra.<br />

Formateo <strong>de</strong> mensajes para operaciones READ/WRIT <strong>de</strong> ASCII<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = puerto utilizado<br />

2 1 = puerto activo como slave Modbus<br />

3 - 13 No utilizados<br />

14 1 = DSR activo<br />

15 1 = CTS activo<br />

16 1 = RTS activo<br />

31007526 12/2006 37


Formateo <strong>de</strong> mensajes para operaciones READ/WRIT <strong>de</strong> ASCII<br />

38 31007526 12/2006


Presentación<br />

Bobinas, contactos e<br />

interconexiones<br />

Introducción En este capítulo encontrará información sobre bobinas, contactos e<br />

interconexiones, también <strong>de</strong>nominadas conexiones. Los datos <strong>de</strong> todos los<br />

elementos <strong>de</strong>l conjunto <strong>de</strong> instrucciones <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong> se enumeran en or<strong>de</strong>n<br />

alfabético.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

31007526 12/2006 39<br />

5<br />

Apartado Página<br />

Coils 40<br />

Contacts 42<br />

Interconnects (Shorts) 44


Bobinas, contactos e interconexiones<br />

Coils<br />

Definición <strong>de</strong><br />

bobina<br />

Una bobina es una salida binaria que se activa y <strong>de</strong>sactiva según el flujo <strong>de</strong> señal<br />

en el programa lógico. Una bobina simple se vincula con una referencia 0x <strong>de</strong> la<br />

memoria <strong>de</strong> señal <strong>de</strong>l PLC. Debido a que los valores <strong>de</strong> salida se actualizan en la<br />

memoria <strong>de</strong> señal <strong>de</strong>l PLC, se pue<strong>de</strong> usar una bobina <strong>de</strong> forma interna en el<br />

programa lógico, o <strong>de</strong> forma externa a través <strong>de</strong> la asignación <strong>de</strong> E/S con una<br />

unidad <strong>de</strong> salida binaria en el sistema <strong>de</strong> control. Cuando una bobina esté activa,<br />

transferirá señal a un circuito <strong>de</strong> salida binaria o cambiará el estado <strong>de</strong> un contacto<br />

<strong>de</strong> relé interno <strong>de</strong> la memoria <strong>de</strong> señal.<br />

Existen dos tipos <strong>de</strong> bobinas.<br />

Bobinas normales<br />

Bobinas retentivas <strong>de</strong> memoria o con retención<br />

40 31007526 12/2006


Bobina normal<br />

Bobinas, contactos e interconexiones<br />

Forzado <strong>de</strong> bobinas<br />

Cuando se <strong>de</strong>sactiva una entrada binaria (1x), las señales proce<strong>de</strong>ntes <strong>de</strong>l sensor <strong>de</strong><br />

entrada asociado no tienen control sobre su estado activo/inactivo. Cuando se <strong>de</strong>sactiva una<br />

salida binaria (0x), el ciclo lógico <strong>de</strong>l PLC no tiene control sobre el estado activo/inactivo <strong>de</strong><br />

la salida. Después <strong>de</strong> <strong>de</strong>sactivar una entrada o salida binaria, podrá cambiar su estado<br />

activo o inactivo con el comando Forzar.<br />

Existe una excepción importante cuando se <strong>de</strong>sactivan las bobinas. Las instrucciones <strong>de</strong><br />

movimiento <strong>de</strong> datos y matriz <strong>de</strong> datos, que utilizan bobinas en sus asientos <strong>de</strong> <strong>de</strong>stino,<br />

reconocen el estado activo/inactivo actual <strong>de</strong> todas las bobinas <strong>de</strong> ese asiento, estén o no<br />

<strong>de</strong>sactivadas. Si espera que una bobina <strong>de</strong>sactivada siga en ese estado en una instrucción<br />

<strong>de</strong> este tipo, pue<strong>de</strong> provocar efectos inesperados o no <strong>de</strong>seados en su aplicación.<br />

Cuando se haya <strong>de</strong>sactivado una bobina o contacto <strong>de</strong> relé, podrá cambiar su estado<br />

usando el comando Force ON o Force OFF. Las bobinas o relés habilitados no podrán ser<br />

forzados.<br />

Si no se respetan estas precauciones pue<strong>de</strong>n producirse graves lesiones, daños<br />

materiales o incluso la muerte.<br />

Una bobina normal es una salida binaria que se muestra como una referencia 0x.<br />

Una bobina normal se encuentra activa o inactiva, <strong>de</strong>pendiendo <strong>de</strong>l flujo <strong>de</strong> señal<br />

en el programa.<br />

Una red <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong> pue<strong>de</strong> contener hasta siete bobinas, no más <strong>de</strong> una por<br />

fila. Cuando se ubique una bobina en una fila, no podrán aparecer otros elementos<br />

lógicos o asientos <strong>de</strong> instrucciones a la <strong>de</strong>recha <strong>de</strong> la posición <strong>de</strong> ejecución <strong>de</strong><br />

lógica que ocupa la bobina en esa fila. Las bobinas son los únicos elementos <strong>de</strong><br />

Lad<strong>de</strong>r <strong>Logic</strong> que se pue<strong>de</strong>n insertar en la columna 11 <strong>de</strong> una red.<br />

Para <strong>de</strong>finir una referencia binaria para la bobina, selecciónela en el editor y haga<br />

clic para abrir un cuadro <strong>de</strong> diálogo llamado Coil.<br />

Símbolo<br />

Bobina retentiva Si se activa una bobina retentiva (con retención) cuando el PLC pier<strong>de</strong> su<br />

alimentación, la bobina volverá en el mismo estado durante un ciclo al restablecer<br />

la alimentación.<br />

Para <strong>de</strong>finir una referencia binaria para la bobina, selecciónela en el editor y haga<br />

clic para abrir un cuadro <strong>de</strong> diálogo llamado Retentative coil (latch).<br />

Símbolo<br />

L<br />

ADVERTENCIA<br />

31007526 12/2006 41


Bobinas, contactos e interconexiones<br />

Contacts<br />

Definición <strong>de</strong><br />

contactos<br />

Contacto normal<br />

abierto<br />

Contacto normal<br />

cerrado<br />

Los contactos se utilizan para transferir o inhibir el flujo <strong>de</strong> señal en un programa <strong>de</strong><br />

Lad<strong>de</strong>r <strong>Logic</strong>. Son valores binarios, es <strong>de</strong>cir, cada uno requiere un punto <strong>de</strong> E/S en<br />

Lad<strong>de</strong>r <strong>Logic</strong>. Un contacto simple pue<strong>de</strong> vincularse a un número <strong>de</strong> referencia 0x o<br />

1x en la memoria <strong>de</strong> señal <strong>de</strong>l PLC, en cuyo caso cada contacto ocuparía un asiento<br />

en la red en escalera.<br />

Hay cuatro clases <strong>de</strong> contactos.<br />

Contactos <strong>de</strong> tipo normal abierto (N.O.)<br />

Contactos <strong>de</strong> tipo normal cerrado (N.C.)<br />

Contactos <strong>de</strong> <strong>de</strong>tección <strong>de</strong> transición positiva (P.T.)<br />

Contactos <strong>de</strong> <strong>de</strong>tección <strong>de</strong> transición negativa (N.T.)<br />

Un contacto normal abierto (NO) transfiere señal cuando está activo.<br />

Si <strong>de</strong>sea <strong>de</strong>finir una referencia binaria para un contacto normal abierto, selecciónelo<br />

en el editor y haga clic para abrir un diálogo llamado Normally open contact.<br />

Símbolo<br />

Un contacto normal cerrado (NC) transfiere señal cuando se encuentra inactivo.<br />

Si <strong>de</strong>sea <strong>de</strong>finir una referencia binaria para el contacto normal cerrado, haga doble<br />

clic sobre él en el asiento <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong> para abrir un diálogo llamado Normally<br />

closed contact.<br />

Símbolo<br />

42 31007526 12/2006


Contacto <strong>de</strong><br />

<strong>de</strong>tección <strong>de</strong><br />

transición<br />

positiva<br />

Contacto <strong>de</strong><br />

<strong>de</strong>tección <strong>de</strong><br />

transición<br />

negativa<br />

Bobinas, contactos e interconexiones<br />

Un contacto <strong>de</strong> <strong>de</strong>tección transición positiva (PT) sólo transfiere señal durante un<br />

ciclo al pasar <strong>de</strong> activo a inactivo.<br />

Si <strong>de</strong>sea <strong>de</strong>finir una referencia binaria para un contacto <strong>de</strong> <strong>de</strong>tección <strong>de</strong> transición<br />

positiva, selecciónelo en el editor y haga clic para abrir un diálogo llamado<br />

Positive transition contact.<br />

Símbolo<br />

Un contacto <strong>de</strong> <strong>de</strong>tección <strong>de</strong> transición negativa (NT) sólo transfiere señal durante<br />

un ciclo al pasar <strong>de</strong> activo a inactivo.<br />

Si <strong>de</strong>sea <strong>de</strong>finir una referencia binaria para un contacto <strong>de</strong> <strong>de</strong>tección <strong>de</strong> transición<br />

negativa, selecciónelo en el editor y haga clic para abrir un diálogo llamado<br />

Contact negative transition.<br />

Símbolo<br />

31007526 12/2006 43


Bobinas, contactos e interconexiones<br />

Interconnects (Shorts)<br />

Definición <strong>de</strong><br />

interconexión<br />

(conexión)<br />

Conexión<br />

horizontal<br />

Conexión<br />

vertical<br />

Las conexiones (shorts) son simples uniones mediante líneas rectas entre<br />

contactos e instrucciones en una red <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong>. Las conexiones pue<strong>de</strong>n<br />

insertarse en una red <strong>de</strong> forma horizontal o vertical.<br />

Hay dos clases <strong>de</strong> conexiones.<br />

Conexión horizontal<br />

Conexión vertical<br />

Una conexión es una unión en línea recta entre contactos y asientos <strong>de</strong> una<br />

instrucción a través <strong>de</strong> la cual se pue<strong>de</strong> controlar el flujo <strong>de</strong> señal.<br />

Una conexión horizontal se utiliza para exten<strong>de</strong>r la lógica a una fila <strong>de</strong> una red sin<br />

interrumpir el flujo <strong>de</strong> señal. Cada conexión horizontal ocupa un asiento en la red y<br />

utiliza una palabra <strong>de</strong> la memoria <strong>de</strong>l PLC.<br />

Símbolo<br />

Una conexión vertical conecta asientos o contactos <strong>de</strong> una instrucción colocados<br />

uno por encima <strong>de</strong>l otro en una columna. Las conexiones verticales también pue<strong>de</strong>n<br />

conectar entradas o salidas <strong>de</strong> una instrucción para crear condiciones <strong>de</strong>l tipo "o"<br />

(OR). Al unir dos contactos mediante una conexión vertical, se transferirá señal<br />

cuando uno o ambos contactos reciban esa señal.<br />

La conexión vertical es única en dos direcciones.<br />

Pue<strong>de</strong> coexistir en un asiento <strong>de</strong> red con otro elemento o valor <strong>de</strong> asiento.<br />

No consume memoria <strong>de</strong>l PLC.<br />

Símbolo<br />

44 31007526 12/2006


Utilización <strong>de</strong> interrupt<br />

Prestaciones<br />

relacionadas con<br />

interrupt<br />

Tiempo <strong>de</strong><br />

retardo <strong>de</strong><br />

interrupt<br />

Priorida<strong>de</strong>s <strong>de</strong><br />

interrupt<br />

Gestión <strong>de</strong> interrupt<br />

31007526 12/2006 45<br />

6<br />

Las instrucciones relacionadas con interrupt funcionan con una administración <strong>de</strong>l<br />

sistema mínima. Las prestaciones <strong>de</strong> las instrucciones relacionadas con interrupt<br />

son especialmente importantes. El uso <strong>de</strong> una instrucción <strong>de</strong> interrupt <strong>de</strong><br />

temporizador <strong>de</strong> intervalo (ITMR) permite añadir alre<strong>de</strong>dor <strong>de</strong> un 6% al tiempo <strong>de</strong><br />

ciclo <strong>de</strong> la Lad<strong>de</strong>r <strong>Logic</strong> administrada; este aumento no incluye el tiempo necesario<br />

para ejecutar la subrutina <strong>de</strong> procesado <strong>de</strong> interrupt.<br />

La siguiente tabla muestra los tiempos <strong>de</strong> retardo máximo y mínimo <strong>de</strong> interrupt que<br />

se pue<strong>de</strong>n esperar.<br />

Administración <strong>de</strong>l sistema<br />

<strong>de</strong> ITMR<br />

Sin tarea pendiente 60 ms/ms<br />

Tiempo <strong>de</strong> respuesta Mínimo 98 ms<br />

Máximo durante la ejecución lógica y la recepción<br />

<strong>de</strong> comandos Modbus<br />

400 ms<br />

Administración <strong>de</strong>l sistema total (sin contar el tiempo normal <strong>de</strong> ejecución lógica) 155 ms<br />

Para estos tiempos <strong>de</strong> retardo sólo se asume un interrupt cada vez.<br />

El PLC utiliza las siguientes reglas para <strong>de</strong>cidir qué rutina <strong>de</strong> procesado <strong>de</strong> interrupt<br />

va a ejecutar en caso <strong>de</strong> que se reciban a la vez varios interrupts.<br />

Un interrupt generado por un módulo <strong>de</strong> interrupt tiene mayor prioridad que otro<br />

generado por un temporizador.<br />

Los interrupts proce<strong>de</strong>ntes <strong>de</strong> módulos en los slots más bajos <strong>de</strong>l bastidor local<br />

tienen prioridad sobre interrupts <strong>de</strong>s<strong>de</strong> módulos <strong>de</strong> los slots más altos.<br />

Si el PLC está ejecutando una subrutina <strong>de</strong> procesado <strong>de</strong> interrupt cuando se recibe<br />

un interrupt <strong>de</strong> mayor prioridad, la rutina actual <strong>de</strong> procesado <strong>de</strong> interrupt se<br />

completará antes <strong>de</strong> que comience la nueva rutina.


Gestión <strong>de</strong> interrupt<br />

Instrucciones<br />

que no se<br />

pue<strong>de</strong>n utilizar<br />

en una rutina <strong>de</strong><br />

procesado <strong>de</strong><br />

interrupt<br />

Interrupt con<br />

BMDI/ID/IE<br />

Las siguientes instrucciones (no reentrantes) <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong> no se pue<strong>de</strong>n utilizar<br />

<strong>de</strong>ntro <strong>de</strong> una subrutina <strong>de</strong> procesado <strong>de</strong> interrupt.<br />

MSTR<br />

READ / WRIT<br />

PCFL / EMTH<br />

Temporizadores T1.0, T0.1, T.01 y T1MS (no establecerán el bit <strong>de</strong> error 2,<br />

resultados <strong>de</strong>l temporizador no válidos)<br />

Re<strong>de</strong>s <strong>de</strong> ecuación<br />

Instrucciones cargables <strong>de</strong> usuario (no establecerán el bit <strong>de</strong> error 2)<br />

Si se aplica alguna <strong>de</strong> estas instrucciones en una rutina <strong>de</strong> procesado <strong>de</strong> interrupt,<br />

la subrutina se interrumpirá, se activará la salida <strong>de</strong> error <strong>de</strong> la instrucción ITMR o<br />

IMOD que generó el interrupt y se establecerá el bit 2 en el registro <strong>de</strong> estado.<br />

Existen tres instrucciones <strong>de</strong> control <strong>de</strong> interrupt con o sin máscara para proteger<br />

datos en Lad<strong>de</strong>r <strong>Logic</strong> normal (administrada) y en la lógica <strong>de</strong> subrutina <strong>de</strong> interrupt<br />

(no administrada). Se trata <strong>de</strong> las instrucciones Bloquear interrupt (ID), Habilitar<br />

interrupt (IE) y Mover bloque con interrupts bloqueados (BMDI).<br />

Si se ejecuta un interrupt en el intervalo <strong>de</strong> tiempo entre la ejecución <strong>de</strong> la<br />

instrucción ID y la siguiente instrucción IE, el interrupt se almacenará en un búfer.<br />

La ejecución <strong>de</strong> un interrupt almacenado en un búfer tiene lugar mientras se ejecuta<br />

la instrucción IE. Si se producen dos o más interrupts <strong>de</strong>l mismo tipo entre la<br />

ejecución <strong>de</strong> ID e IE, se establecerá el bit <strong>de</strong> error <strong>de</strong> <strong>de</strong>sbor<strong>de</strong> <strong>de</strong>l interrupt con<br />

máscara, y la subrutina iniciada por el interrupt sólo se ejecutará una vez.<br />

La instrucción BMDI pue<strong>de</strong> utilizarse para enmascarar un interrupt generado por un<br />

temporizador o por E/S locales, realizar un movimiento <strong>de</strong> datos en bloque y, a<br />

continuación, <strong>de</strong>senmascarar el interrupt. Permite el intercambio <strong>de</strong> un bloque <strong>de</strong><br />

datos, ya sea <strong>de</strong>ntro <strong>de</strong> la subrutina o en una o más ubicaciones <strong>de</strong>l programa<br />

lógico administrado.<br />

La instrucción BMDI pue<strong>de</strong> utilizarse para reducir el tiempo entre la activación y el<br />

bloqueo <strong>de</strong> interrupts. Por ejemplo, la instrucción BMDI pue<strong>de</strong> usarse para proteger<br />

los datos que utiliza la rutina <strong>de</strong> procesado <strong>de</strong> interrupt cuando Modbus, Modbus<br />

Plus, Peer Cop o las E/S distribuidas (DIO) actualizan o leen los datos.<br />

46 31007526 12/2006


Utilización <strong>de</strong> subrutinas<br />

Gestión <strong>de</strong> subrutinas<br />

Método JSR/LAB El siguiente ejemplo muestra un conjunto <strong>de</strong> tres re<strong>de</strong>s <strong>de</strong> lógica <strong>de</strong> aplicación, la<br />

última <strong>de</strong> las cuales se utiliza para una subrutina <strong>de</strong> conteo progresivo. El segmento<br />

<strong>32</strong> se ha eliminado <strong>de</strong> la tabla <strong>de</strong> secuencia <strong>de</strong> ciclos <strong>de</strong>l administrador <strong>de</strong><br />

segmentos.<br />

Scheduled <strong>Logic</strong> Flow<br />

Segment 001<br />

Network 00001<br />

Network 00002<br />

10001<br />

Segment 002<br />

Network 00001<br />

00001<br />

JSR<br />

00001<br />

Segment 0<strong>32</strong><br />

Network 00001<br />

31007526 12/2006 47<br />

LAB<br />

00001<br />

Subroutine Segment<br />

40256<br />

00001<br />

ADD<br />

40256<br />

40256<br />

00010<br />

SUB<br />

40999<br />

40256<br />

40256<br />

SUB<br />

40256<br />

00001<br />

JSR<br />

00001<br />

RET<br />

00001<br />

7


Gestión <strong>de</strong> subrutinas<br />

Si la entrada 100001 al bloque JSR <strong>de</strong> la red 2 <strong>de</strong>l segmento 1 pasa <strong>de</strong> activo<br />

a inactivo, el ciclo lógico saltará a la subrutina nº 1 contenida en la red 1 <strong>de</strong>l<br />

segmento <strong>32</strong>.<br />

La subrutina se ejecutará a sí misma internamente diez veces, proceso que cuenta<br />

el bloque ADD. Los nueve primeros bucles terminarán con el bloque JSR en la<br />

subrutina (red 1 <strong>de</strong>l segmento 2), volviendo a enviar el ciclo al bloque LAB. Al<br />

completarse el décimo bucle, el bloque RET volverá a enviar el ciclo lógico a la<br />

lógica administrada <strong>de</strong>l asiento JSR contenido en la red 2 <strong>de</strong>l segmento 1.<br />

48 31007526 12/2006


Instalación <strong>de</strong> DX Loadables<br />

Instalación <strong>de</strong> instrucciones cargables DX<br />

Cómo instalar las<br />

instrucciones<br />

cargables DX<br />

31007526 12/2006 49<br />

8<br />

Las instrucciones cargables DX sólo estarán disponibles si han sido instaladas. Con<br />

la instalación <strong>de</strong>l software Concept, las instrucciones cargables DX se ubicarán en<br />

el disco duro. Después, <strong>de</strong>berá expandir e instalar <strong>de</strong>l siguiente modo las<br />

instrucciones cargables que <strong>de</strong>see utilizar.<br />

Paso Acción<br />

1 Abrir el configurador con el comando <strong>de</strong> menú Project → Configurator.<br />

2 Abrir el cuadro <strong>de</strong> diálogo Loadables mediante Configure → Loadables...<br />

3 Pulsar el botón <strong>de</strong> comando Unpack... para abrir el cuadro <strong>de</strong> diálogo estándar<br />

<strong>de</strong> Windows Unpack Loadable File, don<strong>de</strong> se pue<strong>de</strong>n seleccionar las<br />

instrucciones cargables <strong>de</strong> archivos múltiples (instrucciones cargables DX).<br />

Seleccionar el archivo cargable necesario y hacer clic en el botón OK para<br />

insertarlo en el cuadro <strong>de</strong> lista Available:.<br />

4 Pulsar el botón <strong>de</strong> comando Install=> para instalar la instrucción cargable<br />

seleccionada en el cuadro <strong>de</strong> lista Available:. La instrucción cargable instalada<br />

aparecerá en el cuadro <strong>de</strong> lista Installed:.<br />

5 Pulsar el botón <strong>de</strong> comando Edit... para abrir el cuadro <strong>de</strong> diálogo Loadable<br />

Instruction Configuration. Cambiar el código operacional en caso<br />

necesario o aceptar el pre<strong>de</strong>terminado. Podrá asignar un código operacional a las<br />

instrucciones cargables en el cuadro <strong>de</strong> lista Opco<strong>de</strong> para habilitar el acceso al<br />

programa <strong>de</strong> aplicación por medio <strong>de</strong> este código. Los códigos operacionales que<br />

ya estén asignados a una instrucción cargable estarán i<strong>de</strong>ntificados con un *.<br />

Hacer clic en el botón OK.<br />

6 Hacer clic en el botón OK <strong>de</strong>l cuadro <strong>de</strong> diálogo Loadables.<br />

El contador <strong>de</strong> la configuración <strong>de</strong> instrucciones cargables quedará ajustado. La<br />

instrucción cargable instalada estará disponible para la programación en el menú<br />

Objects → List Instructions → DX Loadable.


Instalación <strong>de</strong> DX Loadables<br />

50 31007526 12/2006


Presentación<br />

Descripción <strong>de</strong> instrucciones<br />

(A a D)<br />

31007526 12/2006 51<br />

II<br />

Introducción En esta sección aparecen <strong>de</strong>scripciones <strong>de</strong> instrucciones or<strong>de</strong>nadas alfabéticamente<br />

<strong>de</strong> la A a la D.<br />

Contenido Esta parte contiene los siguientes capítulos:<br />

Capítulo Nombre <strong>de</strong>l capítulo Página<br />

9 1X3X - Simulación <strong>de</strong> entrada 53<br />

10 AD16: Suma <strong>de</strong> 16 bits 57<br />

11 ADD: Suma 61<br />

12 Y: Y lógico 65<br />

13 BCD: Código binario a binario 71<br />

14 BLKM: Mover bloque 75<br />

15 BLKT: Bloque a tabla 79<br />

16 BMDI: Mover bloque con interrupts bloqueados 83<br />

17 BROT: Rotación <strong>de</strong> bits 87<br />

18 CALL: Activación <strong>de</strong> función DX inmediata o retardada 91<br />

19 CANT - Interpretar bobinas, contactos, temporizadores,<br />

contadores y el bloque SUB<br />

99<br />

20 CCPF – Configurar perfil <strong>de</strong> leva con instrumentos <strong>de</strong> variables 107<br />

21 CCPV - Configurar perfil <strong>de</strong> leva con incrementos <strong>de</strong> variables 111<br />

22 CFGC - Configurar coor<strong>de</strong>nada establecida 115<br />

23 CFGF - Configurar seguidor establecido 119<br />

24 CFGI - Configurar eje imaginario 123<br />

25 CFGR – Configurar eje remoto 127<br />

26 CFGS – Configurar eje SERCOS 131<br />

27 CHS: Configuración <strong>de</strong> Hot Standby 135


Descripción <strong>de</strong> instrucciones (A a D)<br />

Capítulo Nombre <strong>de</strong>l capítulo Página<br />

28 CKSM: Suma <strong>de</strong> control 143<br />

29 CMPR: Comparar registro 149<br />

30 Bobinas 153<br />

31 COMM - Función <strong>de</strong> comunicación ASCII 157<br />

<strong>32</strong> COMP: Complementar una matriz 161<br />

33 Contactos 167<br />

34 CONV - Convertir datos 171<br />

35 CTIF - Contador, temporizador y función interrupt 175<br />

36 DCTR: Contador regresivo 183<br />

37 DIOH: Estado <strong>de</strong> E/S distribuidas 187<br />

38 DISA - Control binario bloqueado 193<br />

39 DIV: División 197<br />

40 DLOG: Registro <strong>de</strong> datos <strong>de</strong>l soporte <strong>de</strong> lectura/escritura<br />

PCMCIA<br />

203<br />

41 DMTH - Matemática <strong>de</strong> doble precisión 211<br />

42 DRUM: Secuenciador <strong>de</strong> DRUM 219<br />

43 DV16: División <strong>de</strong> 16 bits 225<br />

52 31007526 12/2006


Presentación<br />

1X3X - Simulación <strong>de</strong> entrada<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción 1X3X.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

31007526 12/2006 53<br />

9<br />

Apartado Página<br />

Descripción breve 54<br />

Representación 55


1X3X - Simulación <strong>de</strong> entrada<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

La instrucción <strong>de</strong> simulación <strong>de</strong> entrada proporciona un método sencillo para<br />

simular los valores <strong>de</strong> datos <strong>de</strong> entrada 1xxxx y 3xxx. Este bloque es similar a Mover<br />

bloque, la instrucción BLKM. Cuando la entrada <strong>de</strong> control recibe alimentación, la<br />

tabla <strong>de</strong> fuente se copia en la <strong>de</strong> <strong>de</strong>stino (entrada).<br />

54 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

tabla <strong>de</strong><br />

<strong>de</strong>stino<br />

Longitud <strong>de</strong> la tabla:<br />

1–100<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Tabla <strong>de</strong><br />

<strong>de</strong>stino<br />

(nodo superior)<br />

Tabla <strong>de</strong> fuente<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

tabla <strong>de</strong><br />

fuente<br />

longitud <strong>de</strong><br />

1X3X<br />

Tipo <strong>de</strong><br />

datos<br />

0x, 1x Ninguno<br />

1x, 3x INT<br />

Significado<br />

1X3X - Simulación <strong>de</strong> entrada<br />

4x INT Contiene la fuente que se va a mover al<br />

<strong>de</strong>stino.<br />

INT (Longitud: NNN si 3X)<br />

Longitud: 16* si 4x<br />

Salida superior 0x Ninguno Transfiere alimentación cuando la entrada<br />

superior la recibe.<br />

31007526 12/2006 55


1X3X - Simulación <strong>de</strong> entrada<br />

56 31007526 12/2006


Presentación<br />

AD16: Suma <strong>de</strong> 16 bits<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción AD16.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

10<br />

Apartado Página<br />

Descripción breve 58<br />

Representación 59<br />

31007526 12/2006 57


AD16: Suma <strong>de</strong> 16 bits<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

La instrucción AD16 suma 16 bits con o sin signo al valor 1 (su nodo superior) y al<br />

valor 2 (su nodo intermedio), y luego coloca la suma en un registro en espera 4x <strong>de</strong>l<br />

nodo inferior.<br />

58 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control finalización correcta<br />

valor 1<br />

valor máximo<br />

65.535<br />

valor máximo<br />

65.535<br />

valor con signo<br />

valor 2<br />

suma<br />

AD16<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia <strong>de</strong><br />

memoria <strong>de</strong><br />

señal<br />

Tipo <strong>de</strong><br />

datos<br />

AD16: Suma <strong>de</strong> 16 bits<br />

<strong>de</strong>sbor<strong>de</strong><br />

sin signo = 65.535<br />

con signo = <strong>32</strong>.767 ó < -<strong>32</strong>.768<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = suma valor 1 y valor 2.<br />

Entrada inferior 0x, 1x Ninguno ON = operación con signo<br />

OFF = operación sin signo<br />

Valor 1<br />

(nodo superior)<br />

Valor 2<br />

(nodo intermedio)<br />

Suma<br />

(nodo inferior)<br />

3x, 4x INT, UINT Sumando, pue<strong>de</strong> mostrarse <strong>de</strong> forma<br />

explícita como número entero (rango<br />

165.535) o almacenarse en un registro.<br />

3x, 4x INT, UINT Sumando, pue<strong>de</strong> mostrarse <strong>de</strong> forma<br />

explícita como número entero (rango<br />

165.535) o almacenarse en un registro.<br />

4x INT, UINT Suma <strong>de</strong> adición <strong>de</strong> 16 bits.<br />

Salida superior 0x Ninguno ON = finalización satisfactoria <strong>de</strong> la<br />

operación.<br />

Salida inferior 0x Ninguno ON = <strong>de</strong>sbor<strong>de</strong> en la suma.<br />

31007526 12/2006 59


AD16: Suma <strong>de</strong> 16 bits<br />

60 31007526 12/2006


Presentación<br />

ADD: Suma<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción ADD.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

11<br />

Apartado Página<br />

Descripción breve 62<br />

Representación 63<br />

31007526 12/2006 61


ADD: Suma<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

La instrucción ADD suma el valor 1 sin signo (su asiento superior) al valor 2 sin<br />

signo (su asiento intermedio), y luego guarda la suma en un registro <strong>de</strong> salida <strong>de</strong>l<br />

asiento inferior.<br />

62 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control <strong>de</strong>sbor<strong>de</strong><br />

Valores máximos:<br />

999 - PLC <strong>de</strong> 16 bits<br />

9.999 - PLC <strong>de</strong> 24 bits<br />

65.535 - PLC 785L<br />

valor 1<br />

valor 2<br />

suma<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor 1<br />

(nodo superior)<br />

Valor 2<br />

(nodo<br />

intermedio)<br />

Suma<br />

(nodo inferior)<br />

ADD: Suma<br />

31007526 12/2006 63<br />

ADD<br />

Tipo <strong>de</strong><br />

datos<br />

suma > 999 - PLC <strong>de</strong> 16 bits<br />

suma > 9.999 - PLC <strong>de</strong> 24 bits<br />

65.535 - PLC 785L<br />

Significado<br />

0x, 1x Ninguno ON = suma valor 1 y valor 2.<br />

3x, 4x INT, UINT Suma > 999 - PLC <strong>de</strong> 16 bits.<br />

Suma > 9.999 - PLC <strong>de</strong> 24 bits.<br />

65.535 - PLC 785L<br />

3x, 4x INT, UINT Suma > 999 - PLC <strong>de</strong> 16 bits.<br />

Suma > 9.999 - PLC <strong>de</strong> 24 bits.<br />

65.535 - PLC 785L<br />

4x INT, UINT Suma<br />

Salida superior 0x Ninguno ON = <strong>de</strong>sbor<strong>de</strong> en la suma.<br />

Suma > 999 en PLC <strong>de</strong> 16 bits.<br />

Suma > 9.999 en PLC <strong>de</strong> 24 bits.<br />

65.535 en PLC 785L.


ADD: Suma<br />

64 31007526 12/2006


Presentación<br />

Y: Y lógico<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción Y.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

12<br />

Apartado Página<br />

Descripción breve 66<br />

Representación 67<br />

Descripción <strong>de</strong> los parámetros 69<br />

31007526 12/2006 65


Y: Y lógico<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

La instrucción Y realiza una operación booleana Y en los mo<strong>de</strong>los <strong>de</strong> bits <strong>de</strong> las<br />

matrices <strong>de</strong> fuente y <strong>de</strong> <strong>de</strong>stino.<br />

El mo<strong>de</strong>lo <strong>de</strong> bits en el que se ha ejecutado la instrucción Y se envía a continuación<br />

a la matriz <strong>de</strong> <strong>de</strong>stino, <strong>de</strong> modo que se sobrescriben los contenidos anteriores.<br />

bits <strong>de</strong><br />

fuente<br />

0 1 1 0<br />

Y<br />

0 0<br />

Y<br />

0 0<br />

1 1<br />

BOBINAS BLOQUEADAS<br />

Antes <strong>de</strong> utilizar la instrucción Y, compruebe que no hay bobinas bloqueadas. Y<br />

sobrescribirá las bobinas bloqueadas <strong>de</strong>ntro <strong>de</strong> la matriz <strong>de</strong> <strong>de</strong>stino sin<br />

habilitarlas. Esto pue<strong>de</strong> provocar daños personales si una bobina ha <strong>de</strong>sactivado<br />

una operación <strong>de</strong>bido a causas <strong>de</strong> mantenimiento o reparación, puesto que el<br />

estado <strong>de</strong> la bobina pue<strong>de</strong> cambiar mediante la operación Y.<br />

Si no se respetan estas precauciones pue<strong>de</strong>n producirse graves lesiones,<br />

daños materiales o incluso la muerte.<br />

66 31007526 12/2006<br />

Y<br />

Y<br />

1 0<br />

bits <strong>de</strong><br />

<strong>de</strong>stino<br />

ADVERTENCIA


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

matriz <strong>de</strong><br />

fuente<br />

Longitud: 1–100 registros<br />

(<strong>de</strong> 16 a 1.600 bits)<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia <strong>de</strong><br />

memoria <strong>de</strong><br />

señal<br />

matriz <strong>de</strong><br />

<strong>de</strong>stino<br />

longitud <strong>de</strong><br />

Y: Y lógico<br />

31007526 12/2006 67<br />

AND<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Entrada superior 0x, 1x Ninguno Inicia la instrucción AND.<br />

Matriz <strong>de</strong> fuente<br />

(nodo superior)<br />

Matriz <strong>de</strong> <strong>de</strong>stino<br />

(nodo intermedio)<br />

Longitud<br />

(nodo inferior)<br />

0x, 1x, 3x, 4x BOOL,<br />

WORD<br />

0x, 4x BOOL,<br />

WORD<br />

Primera referencia en la matriz <strong>de</strong> fuente.<br />

Primera referencia en la matriz <strong>de</strong> <strong>de</strong>stino.<br />

INT, UINT Longitud <strong>de</strong> la matriz; rango <strong>de</strong> 1 a 100.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.


Y: Y lógico<br />

Ejemplo <strong>de</strong> AND Cuando el contacto 10.001 transfiere señal, la matriz <strong>de</strong> fuente formada por el<br />

mo<strong>de</strong>lo <strong>de</strong> bits en los registros 40.600 y 40.601 recibe la instrucción AND con la<br />

matriz <strong>de</strong> <strong>de</strong>stino formada por el mo<strong>de</strong>lo <strong>de</strong> bits en los registros 40.604 y 40.605,<br />

<strong>de</strong> modo que sobrescribe el mo<strong>de</strong>lo <strong>de</strong> bits anterior en la matriz <strong>de</strong> <strong>de</strong>stino.<br />

10.001<br />

40.600<br />

40.604<br />

AND<br />

00002<br />

matriz <strong>de</strong> fuente<br />

40.600 = 1111111100000000 40.601 = 1111111100000000<br />

Matriz <strong>de</strong> <strong>de</strong>stino original<br />

40.604 = 1111111111111111 40.605 = 0000000000000000<br />

Matriz <strong>de</strong> <strong>de</strong>stino con la instrucción AND<br />

40.604 = 1111111100000000 40.605 = 0000000000000000<br />

Nota: Si <strong>de</strong>sea guardar el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> <strong>de</strong>stino original <strong>de</strong> los registros<br />

40.604 y 40.605, copie la información en otra tabla con la instrucción BLKM antes<br />

<strong>de</strong> llevar a cabo la operación AND.<br />

68 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Longitud<br />

<strong>de</strong> la matriz<br />

(asiento inferior)<br />

Y: Y lógico<br />

El número entero introducido en el asiento inferior especifica la longitud <strong>de</strong> la matriz,<br />

es <strong>de</strong>cir, el número <strong>de</strong> registros o palabras <strong>de</strong> 16 bits que hay en las dos matrices.<br />

La longitud máxima <strong>de</strong>be estar comprendida entre 1 y 100. Una longitud <strong>de</strong> 2 indica<br />

que se aplicará la instrucción AND a <strong>32</strong> bits en cada matriz.<br />

31007526 12/2006 69


Y: Y lógico<br />

70 31007526 12/2006


Presentación<br />

BCD: Código binario a binario<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción BCD.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

13<br />

Apartado Página<br />

Descripción breve 72<br />

Representación 73<br />

31007526 12/2006 71


BCD: Código binario a binario<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción BCD se pue<strong>de</strong> utilizar para convertir un valor binario en un valor<br />

<strong>de</strong>cimal codificado en binario (BCD) o un valor BCD en uno binario. El tipo <strong>de</strong><br />

conversión que se va a realizar está controlado por el estado <strong>de</strong>l asiento inferior.<br />

72 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

binario/BCD<br />

ON = <strong>de</strong> BCD a binario<br />

OFF = <strong>de</strong> binario a BCD.<br />

registro <strong>de</strong><br />

fuente<br />

registro <strong>de</strong><br />

<strong>de</strong>stino<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

activa<br />

BCD: Código binario a binario<br />

31007526 12/2006 73<br />

BCD<br />

n.º 1<br />

Tipo <strong>de</strong><br />

datos<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la conversión.<br />

Entrada inferior 0x, 1x Ninguno ON = BCD → conversión binaria.<br />

OFF = binario → conversión BCD.<br />

Registro <strong>de</strong> fuente<br />

(nodo superior)<br />

Registro <strong>de</strong> <strong>de</strong>stino<br />

(nodo intermedio)<br />

#1<br />

(nodo inferior)<br />

3x, 4x INT, UINT Registro <strong>de</strong> fuente don<strong>de</strong> se guarda el<br />

valor numérico que se va a convertir.<br />

4x INT, UINT Registro <strong>de</strong> <strong>de</strong>stino al que se va a enviar<br />

el valor numérico una vez convertido.<br />

INT, UINT Valor constante, no se pue<strong>de</strong> modificar.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida inferior 0x Ninguno ON = error en la operación <strong>de</strong> conversión.


BCD: Código binario a binario<br />

74 31007526 12/2006


Presentación<br />

BLKM: Mover bloque<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción BLKM.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

14<br />

Apartado Página<br />

Descripción breve 76<br />

Representación 77<br />

31007526 12/2006 75


BLKM: Mover bloque<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

La instrucción BLKM (mover bloque) copia el contenido completo <strong>de</strong> la tabla <strong>de</strong><br />

fuente en una tabla <strong>de</strong> <strong>de</strong>stino en un ciclo.<br />

ADVERTENCIA<br />

BOBINAS BLOQUEADAS<br />

Antes <strong>de</strong> utilizar la instrucción BLKM, compruebe que no hay bobinas bloqueadas.<br />

BLKM sobrescribirá las bobinas bloqueadas <strong>de</strong>ntro <strong>de</strong> una tabla <strong>de</strong> <strong>de</strong>stino sin<br />

habilitarlas. Esto pue<strong>de</strong> provocar daños si se ha bloqueado una bobina para su<br />

reparación o mantenimiento, ya que el estado <strong>de</strong> la bobina pue<strong>de</strong> cambiar como<br />

resultado <strong>de</strong> una instrucción BLKM.<br />

Si no se respetan estas precauciones pue<strong>de</strong>n producirse graves lesiones,<br />

daños materiales o incluso la muerte.<br />

76 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

tabla <strong>de</strong> registros o <strong>de</strong><br />

ubicaciones <strong>de</strong> 16 bits<br />

tabla <strong>de</strong> registros o <strong>de</strong><br />

ubicaciones <strong>de</strong> 16 bits<br />

Longitud: 1–100 registros<br />

(<strong>de</strong> 16 a 1.600 bits)<br />

tabla <strong>de</strong><br />

fuente<br />

tabla <strong>de</strong><br />

<strong>de</strong>stino<br />

longitud <strong>de</strong><br />

la tabla<br />

BLKM<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

BLKM: Mover bloque<br />

Entrada superior 0x, 1x Ninguno ON = inicia el movimiento <strong>de</strong> bloque.<br />

Tabla <strong>de</strong> fuente<br />

(nodo superior)<br />

Tabla <strong>de</strong> <strong>de</strong>stino<br />

(nodo intermedio)<br />

Longitud <strong>de</strong> tabla<br />

(nodo inferior)<br />

0x, 1x, 3x, 4x ANY_BIT Tabla <strong>de</strong> fuente cuyo contenido se va a<br />

copiar al movimiento <strong>de</strong> bloque.<br />

0x, 4x ANY_BIT Tabla <strong>de</strong> <strong>de</strong>stino en la que se va a copiar<br />

el contenido <strong>de</strong> la tabla <strong>de</strong> fuente al<br />

movimiento <strong>de</strong> bloque.<br />

INT, UINT Tamaño <strong>de</strong> la tabla (número <strong>de</strong> registros o<br />

palabras <strong>de</strong> 16 bits) para las tablas <strong>de</strong><br />

fuente y <strong>de</strong>stino; ambas son <strong>de</strong> la misma<br />

longitud.<br />

Rango: 1...100<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

31007526 12/2006 77


BLKM: Mover bloque<br />

78 31007526 12/2006


Presentación<br />

BLKT: Bloque a tabla<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción BLKT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

15<br />

Apartado Página<br />

Descripción breve 80<br />

Representación 81<br />

Descripción <strong>de</strong> los parámetros 82<br />

31007526 12/2006 79


BLKT: Bloque a tabla<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

La instrucción BLKT (<strong>de</strong> bloque a tabla) combina las funciones <strong>de</strong> R→T y BLKM en<br />

una sola instrucción. En un ciclo, pue<strong>de</strong> copiar datos <strong>de</strong> un bloque <strong>de</strong> fuente en un<br />

bloque <strong>de</strong> <strong>de</strong>stino <strong>de</strong> una tabla. El bloque <strong>de</strong> fuente tiene una longitud fija. El bloque<br />

<strong>de</strong>ntro <strong>de</strong> la tabla será <strong>de</strong> la misma longitud, pero la longitud total <strong>de</strong> la tabla sólo<br />

estará limitada por el número <strong>de</strong> registros <strong>de</strong> la configuración <strong>de</strong>l sistema.<br />

ADVERTENCIA<br />

CORRUPCIÓN DEL REGISTRO 4x<br />

Utilice la lógica externa junto con la entrada intermedia o inferior para llevar el valor<br />

situado en el pointer a un rango seguro. BLKT es una potente instrucción que<br />

pue<strong>de</strong> dañar todos los registros 4x <strong>de</strong>l PLC con datos copiados <strong>de</strong>l bloque <strong>de</strong><br />

fuente.<br />

Si no se respetan estas precauciones pue<strong>de</strong>n producirse graves lesiones,<br />

daños materiales o incluso la muerte.<br />

80 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control movimiento completado<br />

bloque <strong>de</strong><br />

fuente<br />

<strong>de</strong>tener pointer<br />

restablecer pointer<br />

Longitud: 1–100<br />

registros<br />

(<strong>de</strong> 16 a 1.600 bits)<br />

pointer<br />

longitud <strong>de</strong><br />

bloque<br />

BLKT<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

BLKT: Bloque a tabla<br />

31007526 12/2006 81<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = inicia el movimiento <strong>de</strong> DX.<br />

Entrada intermedia 0x, 1x Ninguno ON = <strong>de</strong>tiene el pointer.<br />

Entrada inferior 0x, 1x Ninguno ON = pone el pointer a cero.<br />

Bloque <strong>de</strong> fuente 4x BYTE, Primer registro en espera <strong>de</strong>l bloque <strong>de</strong><br />

(nodo superior)<br />

WORD registros contiguos cuyo contenido se va a<br />

copiar en un bloque <strong>de</strong> registros <strong>de</strong> la<br />

tabla <strong>de</strong> <strong>de</strong>stino.<br />

Pointer<br />

4x BYTE, Pointer para la tabla <strong>de</strong> <strong>de</strong>stino.<br />

(nodo intermedio)<br />

WORD<br />

Longitud <strong>de</strong> bloque<br />

(nodo inferior)<br />

INT, UINT Longitud <strong>de</strong> bloque (número <strong>de</strong> registros<br />

4x) <strong>de</strong> los <strong>bloques</strong> <strong>de</strong> fuente y <strong>de</strong> <strong>de</strong>stino.<br />

Rango: 1...100<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida intermedia 0x Ninguno ON = error/el movimiento no es posible.


BLKT: Bloque a tabla<br />

Descripción <strong>de</strong> los parámetros<br />

Entradas<br />

intermedia<br />

e inferior<br />

Pointer (asiento<br />

intermedio)<br />

Las entradas intermedia e inferior se pue<strong>de</strong>n utilizar para controlar el pointer <strong>de</strong><br />

modo que los datos <strong>de</strong> origen no se copien en registros necesarios para otros<br />

propósitos en el programa lógico.<br />

Cuando la entrada intermedia esté activa, el valor en el registro <strong>de</strong>l pointer se<br />

congelará mientras continúe la operación BLKT. Esto hará que los nuevos datos<br />

que se están copiando en el <strong>de</strong>stino sobrescriban los datos <strong>de</strong>l bloque copiados en<br />

el ciclo <strong>de</strong> programa anterior.<br />

Si la entrada inferior está activa, el valor <strong>de</strong>l registro <strong>de</strong>l pointer se pondrá a cero.<br />

Esto hará que la operación BLKT copie los datos <strong>de</strong> origen en el primer bloque <strong>de</strong><br />

registros <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino.<br />

El registro 4x introducido en el asiento intermedio será el pointer a la tabla <strong>de</strong><br />

<strong>de</strong>stino. El primer registro <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino es el registro que va<br />

inmediatamente <strong>de</strong>spués <strong>de</strong>l pointer, es <strong>de</strong>cir, si el registro <strong>de</strong>l pointer es 400107,<br />

el primer registro <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino será 400108.<br />

Nota: La tabla <strong>de</strong> <strong>de</strong>stino se ha dividido en una serie <strong>de</strong> <strong>bloques</strong> <strong>de</strong> registros, cada<br />

uno <strong>de</strong> los cuales tiene la misma longitud que el bloque <strong>de</strong> fuente. Por ello, el<br />

tamaño <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino será un múltiplo <strong>de</strong> la longitud <strong>de</strong>l bloque <strong>de</strong> fuente,<br />

pero su tamaño total no estará <strong>de</strong>finido específicamente en la instrucción. Si no se<br />

controla, la tabla <strong>de</strong> <strong>de</strong>stino podría consumir todos los registros 4x disponibles en<br />

la configuración <strong>de</strong>l PLC.<br />

El valor guardado en el registro <strong>de</strong>l pointer indica dón<strong>de</strong> se comenzarán a copiar los<br />

datos <strong>de</strong> origen en la tabla <strong>de</strong> <strong>de</strong>stino. Este valor especifica el número <strong>de</strong> bloque<br />

<strong>de</strong>ntro <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino.<br />

82 31007526 12/2006


Presentación<br />

BMDI: Mover bloque con<br />

interrupts bloqueados<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción BMDI.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

16<br />

Apartado Página<br />

Descripción breve 84<br />

Representación 85<br />

31007526 12/2006 83


BMDI: Mover bloque con interrupts bloqueados<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

La instrucción BMDI enmascara el interrupt, inicia una operación <strong>de</strong> movimiento <strong>de</strong><br />

bloque (BLKM) y, a continuación, <strong>de</strong>senmascara los interrupts.<br />

84 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

tabla <strong>de</strong> registros o <strong>de</strong><br />

ubicaciones <strong>de</strong> 16 bits<br />

tabla <strong>de</strong> registros o <strong>de</strong><br />

ubicaciones <strong>de</strong> 16 bits<br />

Longitud: 1–100 registros<br />

(<strong>de</strong> 16 a 1.600 bits)<br />

tabla <strong>de</strong><br />

fuente<br />

tabla <strong>de</strong><br />

<strong>de</strong>stino<br />

longitud <strong>de</strong><br />

la tabla<br />

BMDI<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia <strong>de</strong><br />

memoria <strong>de</strong><br />

señal<br />

Tipo <strong>de</strong><br />

datos<br />

BMDI: Mover bloque con interrupts bloqueados<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = enmascara los interrupts, inicia un<br />

movimiento <strong>de</strong> bloque y, a continuación,<br />

<strong>de</strong>senmascara los interrupts.<br />

Tabla <strong>de</strong> fuente<br />

(nodo superior)<br />

Tabla <strong>de</strong> <strong>de</strong>stino<br />

(nodo intermedio)<br />

Longitud <strong>de</strong> tabla<br />

(nodo inferior)<br />

0x, 1x, 3x, 4x INT, UINT,<br />

WORD<br />

0x, 4x INT, UINT,<br />

WORD<br />

Tabla <strong>de</strong> fuente cuyo contenido se va a<br />

copiar al movimiento <strong>de</strong> bloque.<br />

Tabla <strong>de</strong> <strong>de</strong>stino en la que se va a copiar<br />

el contenido <strong>de</strong> la tabla <strong>de</strong> fuente al<br />

movimiento <strong>de</strong> bloque.<br />

INT, UINT Valor entero que especifica el tamaño <strong>de</strong><br />

la tabla, es <strong>de</strong>cir, la cantidad <strong>de</strong> registros<br />

que hay en las tablas <strong>de</strong> fuente y <strong>de</strong>stino<br />

(son <strong>de</strong> la misma longitud).<br />

Rango: 1...100<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

31007526 12/2006 85


BMDI: Mover bloque con interrupts bloqueados<br />

86 31007526 12/2006


Presentación<br />

BROT: Rotación <strong>de</strong> bits<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción BROT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

17<br />

Apartado Página<br />

Descripción breve 88<br />

Representación 89<br />

Descripción <strong>de</strong> los parámetros 90<br />

31007526 12/2006 87


BROT: Rotación <strong>de</strong> bits<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

La instrucción BROT (rotación <strong>de</strong> bits) <strong>de</strong>splaza el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> una matriz <strong>de</strong><br />

fuente y, a continuación, lleva el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong>splazado a una matriz <strong>de</strong> <strong>de</strong>stino.<br />

El mo<strong>de</strong>lo <strong>de</strong> bits se <strong>de</strong>splaza una posición a <strong>de</strong>recha o izquierda por cada ciclo.<br />

ADVERTENCIA<br />

BOBINAS BLOQUEADAS<br />

Antes <strong>de</strong> utilizar la instrucción BROT, compruebe que no hay bobinas bloqueadas.<br />

BROT sobrescribirá cualquier bobina bloqueada <strong>de</strong>ntro <strong>de</strong> una matriz <strong>de</strong> <strong>de</strong>stino<br />

sin haberla habilitado. Esto pue<strong>de</strong> causar daños si se ha <strong>de</strong>sactivado una bobina<br />

para su reparación o mantenimiento y BROT cambia inesperadamente el estado<br />

<strong>de</strong> la bobina.<br />

Si no se respetan estas precauciones pue<strong>de</strong>n producirse graves lesiones,<br />

daños materiales o incluso la muerte.<br />

88 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

matriz <strong>de</strong><br />

fuente<br />

dirección (izquierda/<br />

<strong>de</strong>recha)<br />

<strong>de</strong>splazar/rotar<br />

Longitud: 1–100 registros<br />

(<strong>de</strong> 16 a 1.600 bits)<br />

matriz <strong>de</strong><br />

<strong>de</strong>stino<br />

longitud <strong>de</strong><br />

BROT<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia <strong>de</strong><br />

memoria <strong>de</strong><br />

señal<br />

Tipo <strong>de</strong><br />

datos<br />

<strong>de</strong>tectar bit (ON/OFF)<br />

Significado<br />

BROT: Rotación <strong>de</strong> bits<br />

Entrada superior 0x, 1x Ninguno ON = <strong>de</strong>splaza una posición el mo<strong>de</strong>lo <strong>de</strong> bits<br />

<strong>de</strong> la matriz <strong>de</strong> fuente.<br />

Entrada intermedia 0x, 1x Ninguno ON = <strong>de</strong>splazamiento a la izquierda.<br />

OFF = <strong>de</strong>splazamiento a la <strong>de</strong>recha.<br />

Entrada inferior 0x, 1x Ninguno OFF = el bit <strong>de</strong> salida se cae <strong>de</strong> la matriz <strong>de</strong><br />

<strong>de</strong>stino.<br />

ON = el bit <strong>de</strong> salida vuelve al principio <strong>de</strong> la<br />

matriz <strong>de</strong> <strong>de</strong>stino.<br />

Matriz <strong>de</strong> fuente<br />

(nodo superior)<br />

Matriz <strong>de</strong> <strong>de</strong>stino<br />

(nodo intermedio)<br />

Longitud<br />

(nodo inferior)<br />

0x, 1x, 3x, 4x ANY_BIT Primera referencia en la matriz <strong>de</strong> fuente, es<br />

<strong>de</strong>cir, en la matriz cuyo mo<strong>de</strong>lo <strong>de</strong> bits se<br />

<strong>de</strong>splazará.<br />

0x, 4x ANY_BIT Primera referencia en la matriz <strong>de</strong> <strong>de</strong>stino, es<br />

<strong>de</strong>cir, en la matriz que muestra el mo<strong>de</strong>lo <strong>de</strong><br />

bits <strong>de</strong>splazado.<br />

0x INT,<br />

UINT<br />

Longitud <strong>de</strong> la matriz; rango: 1...100<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida intermedia 0x Ninguno OFF = el bit <strong>de</strong> salida es 0.<br />

ON = el bit <strong>de</strong> salida es 1.<br />

31007526 12/2006 89


BROT: Rotación <strong>de</strong> bits<br />

Descripción <strong>de</strong> los parámetros<br />

Longitud<br />

<strong>de</strong> la matriz<br />

(asiento inferior)<br />

Resultado <strong>de</strong>l<br />

<strong>de</strong>splazamiento<br />

(salida<br />

intermedia)<br />

El valor entero que se ha introducido en el asiento inferior especifica la longitud <strong>de</strong><br />

la matriz, es <strong>de</strong>cir, el número <strong>de</strong> registros o palabras <strong>de</strong> 16 bits <strong>de</strong> cada una <strong>de</strong> las<br />

dos matrices. Las matrices <strong>de</strong> fuente y <strong>de</strong> <strong>de</strong>stino tienen la misma longitud. La<br />

longitud <strong>de</strong> la matriz pue<strong>de</strong> ir <strong>de</strong> 1 a 100. Por ejemplo, una longitud <strong>de</strong> matriz <strong>de</strong> 100<br />

indica 1.600 ubicaciones <strong>de</strong> bits.<br />

La salida intermedia indica el sentido <strong>de</strong>l bit que sale <strong>de</strong> la matriz <strong>de</strong> fuente (el bit<br />

más a la izquierda o más a la <strong>de</strong>recha) como resultado <strong>de</strong>l <strong>de</strong>splazamiento.<br />

90 31007526 12/2006


PRESENTACIÓN<br />

CALL: Activación <strong>de</strong> función DX<br />

inmediata o retardada<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción CALL.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

18<br />

Apartado Página<br />

Descripción breve 92<br />

Representación 93<br />

Representación 96<br />

31007526 12/2006 91


CALL: Activación <strong>de</strong> función DX<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

La instrucción CALL activa una función DX inmediata o retardada <strong>de</strong>s<strong>de</strong> una<br />

biblioteca <strong>de</strong> funciones <strong>de</strong>finidas por códigos <strong>de</strong> función. El coprocesador copia los<br />

datos y el código <strong>de</strong> función en su memoria local, procesa los datos y <strong>de</strong>vuelve los<br />

resultados a la memoria <strong>de</strong>l controlador.<br />

Códigos <strong>de</strong> función:<br />

0–499: DX inmediatas/retardadas <strong>de</strong>l usuario.<br />

500–9.999: DX inmediatas/retardadas <strong>de</strong>l sistema.<br />

Los dos MSB <strong>de</strong>l registro superior son los números <strong>de</strong> coprocesador en un sistema<br />

<strong>de</strong> coprocesadores múltiples.<br />

92 31007526 12/2006


Representación<br />

Descripción<br />

general<br />

CALL: Activación <strong>de</strong> función DX<br />

El contenido <strong>de</strong> esta sección se aplica específicamente a la función DX inmediata<br />

<strong>de</strong> la instrucción CALL.<br />

Símbolo Representación <strong>de</strong> la instrucción para una función DX CALL inmediata<br />

entrada <strong>de</strong> control completa<br />

código <strong>de</strong><br />

función<br />

explorar llamada<br />

Longitud: 1–255<br />

codigo<br />

fuente<br />

longitud <strong>de</strong><br />

CALL<br />

31007526 12/2006 93<br />

error


CALL: Activación <strong>de</strong> función DX<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción para una función DX CALL<br />

inmediata.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno En estado activo inicia la instrucción CALL.<br />

Entrada inferior 0x, 1x Ninguno La entrada al nodo inferior se utiliza con una<br />

función DX inmediata para seguir<br />

explorando la instrucción,<br />

in<strong>de</strong>pendientemente <strong>de</strong>l estado que tenga la<br />

entrada superior.<br />

La siguiente tabla, <strong>de</strong>nominada Funciones<br />

DX inmediatas, muestra una lista <strong>de</strong> los<br />

códigos, sus nombres y sus funciones.<br />

Valor<br />

(nodo superior)<br />

Registro<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

0x, 3x INT, UINT El nodo superior se utiliza para especificar el<br />

código <strong>de</strong> función que se va a ejecutar.<br />

Pue<strong>de</strong> introducirse <strong>de</strong> forma explícita como<br />

una constante o como un valor en un registro<br />

en espera 4xxxx. Los códigos pue<strong>de</strong>n estar<br />

incluidos en dos rangos:<br />

Los códigos <strong>de</strong> 0 a 499 se utilizan para<br />

funciones DX <strong>de</strong>finidas el usuario.<br />

Los códigos <strong>de</strong> 500 a 9.999 se utilizan<br />

para funciones DX <strong>de</strong> sistema.<br />

Ambos tipos <strong>de</strong> códigos, <strong>de</strong>finidos por el<br />

usuario y por el sistema, se aplican tanto a<br />

las funciones inmediatas como a las<br />

retardadas. Schnei<strong>de</strong>r Electric se encarga<br />

<strong>de</strong> suministrar todos estos códigos.<br />

4x INT, UINT El registro 4xxxx <strong>de</strong>l nodo intermedio es el<br />

primero <strong>de</strong> un bloque <strong>de</strong> registros que se va<br />

a pasar al coprocesador para procesarse.<br />

INT, UINT El número <strong>de</strong> registros <strong>de</strong>l bloque se <strong>de</strong>fine<br />

en el nodo inferior.<br />

Salida superior 0x Ninguno Se encuentra en estado activo cuando la<br />

función se completa correctamente.<br />

Salida inferior 0x Ninguno La salida <strong>de</strong>l nodo inferior se activará si se<br />

<strong>de</strong>tecta un error en la función.<br />

94 31007526 12/2006


Funciones DX<br />

inmediatas<br />

En esta tabla se recogen las funciones DX inmediatas.<br />

CALL: Activación <strong>de</strong> función DX<br />

Nombre Código Función<br />

f_config 500 Obtener datos <strong>de</strong> configuración <strong>de</strong>l coprocesador<br />

f_2md_fl 501 Convertir un entero con dos registros en una coma flotante <strong>de</strong> 64<br />

bits<br />

f_fl_2md 502 Convertir una coma flotante en un entero con dos registros<br />

f_4md_fl 503 Convertir un entero con cuatro registros en una coma flotante<br />

f_fl_4md 504 Convertir una coma flotante en un entero con cuatro registros<br />

f_1md_fl 505 Convertir un entero con un registro en una coma flotante<br />

f_fl_1m 506 Convertir una coma flotante en un entero con un registro<br />

f_exp 507 Función exponencial<br />

f_log 508 Logaritmo natural<br />

f_log10 509 Logaritmo en base 10<br />

f_pow 510 Elevar a una potencia<br />

f_sqrt 511 Raíz cuadrada<br />

f_cos 512 Coseno<br />

f_sin 513 Seno<br />

f_tan 514 Tangente<br />

f_atan 515 Arcotangente x<br />

f_atan2 516 Arcotangente y/x<br />

f_asin 517 Arcoseno<br />

f_acos 518 Arcocoseno<br />

f_add 519 Añadir<br />

f_sub 520 Restar<br />

f_mult 521 Multiplicar<br />

f_div 522 Dividir<br />

f_<strong>de</strong>g_rad 523 Convertir grados en radianes<br />

f_rad_<strong>de</strong>g 524 Convertir radianes en grados<br />

f_swap 525 Permutar posiciones <strong>de</strong> bytes en un registro<br />

f_comp 526 Comparación <strong>de</strong> coma flotante<br />

f_dbwrite 527 Escribir base <strong>de</strong> datos <strong>de</strong> registros <strong>de</strong>l coprocesador <strong>de</strong>s<strong>de</strong> el<br />

PLC<br />

f_dbread 528 Leer base <strong>de</strong> datos <strong>de</strong> registros <strong>de</strong>l coprocesador <strong>de</strong>s<strong>de</strong> el PLC<br />

31007526 12/2006 95


CALL: Activación <strong>de</strong> función DX<br />

Representación<br />

Descripción<br />

general<br />

El contenido <strong>de</strong> esta sección se aplica específicamente a la función DX retardada<br />

<strong>de</strong> la instrucción CALL.<br />

Símbolo Representación <strong>de</strong> la instrucción para una función DX CALL retardada.<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control completa<br />

código <strong>de</strong><br />

función<br />

modalidad <strong>de</strong> DX<br />

retardada<br />

seleccionada<br />

Longitud: 1–255<br />

tabla <strong>de</strong><br />

fuente<br />

CALL<br />

longitud<br />

activa<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción para una función DX CALL<br />

retardada.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

96 31007526 12/2006<br />

error<br />

0x, 1x Ninguno ON inicia la instrucción CALL.<br />

0x, 1x Ninguno La instrucción llama a una función DX retardada<br />

cuando se habilita la entrada al nodo intermedio.<br />

La siguiente tabla, <strong>de</strong>nominada Funciones DX<br />

retardadas, muestra una lista <strong>de</strong> los códigos, sus<br />

nombres y sus funciones.


Funciones DX<br />

retardadas<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Valor<br />

(nodo<br />

superior)<br />

Registro<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Salida<br />

inferior<br />

Tipo <strong>de</strong><br />

datos<br />

0x, 3x INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

INT,<br />

UINT<br />

Significado<br />

En esta tabla se recogen las funciones DX retardadas.<br />

CALL: Activación <strong>de</strong> función DX<br />

El nodo superior se utiliza para especificar el código<br />

<strong>de</strong> función que se va a ejecutar. Pue<strong>de</strong> introducirse<br />

<strong>de</strong> forma explícita como una constante o como un<br />

valor en un registro en espera 4xxxx. Los códigos<br />

pue<strong>de</strong>n estar incluidos en dos rangos:<br />

Los códigos <strong>de</strong> 0 a 499 se utilizan para funciones<br />

DX <strong>de</strong>finidas por el usuario.<br />

Los códigos <strong>de</strong> 500 a 9.999 se utilizan para<br />

funciones DX <strong>de</strong> sistema.<br />

Ambos tipos <strong>de</strong> códigos, <strong>de</strong>finidos por el usuario y por<br />

el sistema, se aplican tanto a las funciones<br />

inmediatas como a las retardadas. Schnei<strong>de</strong>r Electric<br />

se encarga <strong>de</strong> suministrar todos estos códigos.<br />

El registro 4xxxx <strong>de</strong>l nodo intermedio es el primero <strong>de</strong><br />

un bloque <strong>de</strong> registros que se va a pasar al<br />

coprocesador para procesarse.<br />

El número <strong>de</strong> registros <strong>de</strong>l bloque se <strong>de</strong>fine en el nodo<br />

inferior.<br />

0x Ninguno ON cuando la función se completa correctamente.<br />

0x Ninguno La salida <strong>de</strong>l nodo intermedio, que se utiliza sólo con<br />

las funciones DX retardadas, se activa para indicar<br />

que la función está en proceso.<br />

0x Ninguno La salida <strong>de</strong>l nodo inferior se activará si se <strong>de</strong>tecta un<br />

error en la función.<br />

Nombre Código Función<br />

f_config 500 Obtener datos <strong>de</strong> configuración <strong>de</strong>l coprocesador<br />

f_d_dbwr 501 Escribir base <strong>de</strong> datos <strong>de</strong> registros <strong>de</strong>l coprocesador <strong>de</strong>s<strong>de</strong> el PLC<br />

f_d_dbrd 502 Leer base <strong>de</strong> datos <strong>de</strong> registros <strong>de</strong>l coprocesador <strong>de</strong>s<strong>de</strong> el PLC<br />

f_dgets 515 Ejecutar dgets() en línea <strong>de</strong> comandos<br />

f_dputs 516 Ejecutar dputs() en línea <strong>de</strong> comandos<br />

f_sprintf 518 Generar una ca<strong>de</strong>na <strong>de</strong> caracteres<br />

f_sscanf 519 Interpretar una ca<strong>de</strong>na <strong>de</strong> caracteres<br />

f_egets 520 Función gets() IEEE-488<br />

f_eputs 521 Función puts() IEEE-488<br />

f_ectl 522 Función <strong>de</strong> control <strong>de</strong> errores IEEE-488<br />

31007526 12/2006 97


CALL: Activación <strong>de</strong> función DX<br />

98 31007526 12/2006


Presentación<br />

CANT - Interpretar bobinas,<br />

contactos, temporizadores,<br />

contadores y el bloque SUB<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción CANT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

19<br />

Apartado Página<br />

Descripción breve 100<br />

Representación 101<br />

Descripción <strong>de</strong> parámetros 103<br />

31007526 12/2006 99


CANT - Interpretar bobinas, contactos, temporizadores, contadores y el bloque SUB<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

Este bloque <strong>de</strong> funciones cargables DX, durante la inicialización <strong>de</strong> un contacto <strong>de</strong><br />

activación, analiza Lad<strong>de</strong>r <strong>Logic</strong> para extraer la columna específica y los ID <strong>de</strong><br />

contacto correspondientes don<strong>de</strong> se ha <strong>de</strong>tenido el flujo <strong>de</strong> alimentación. El bloque<br />

CANT contiene 20 registros. Se utiliza un bloque MSTR para exportar datos <strong>de</strong> los<br />

20 registros <strong>de</strong> CANT a un PC que esté ejecutando el programa Action Monitor.<br />

El bloque CANT se utiliza concretamente para interpretar bobinas, contactos,<br />

temporizadores, contadores y el bloque SUB. No pue<strong>de</strong> utilizar ningún otro tipo <strong>de</strong><br />

instrucciones <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong> en una red. De lo contrario, recibirá resultados<br />

incorrectos. Sin embargo, en caso <strong>de</strong> que <strong>de</strong>ba utilizar una <strong>de</strong> las instrucciones <strong>de</strong><br />

Lad<strong>de</strong>r <strong>Logic</strong>, pue<strong>de</strong> situarlas en una red in<strong>de</strong>pendiente vinculada a una bobina<br />

referenciada a la red que contenga el bloque CANT.<br />

Nota: Sólo los PLC 984 y <strong>de</strong> lógica Quantum <strong>de</strong> 24 bits son compatibles con el<br />

bloque <strong>de</strong> funciones cargables DX. Los controladores <strong>de</strong> 16 bits no funcionarán<br />

con este bloque concreto.<br />

100 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Contacto <strong>de</strong> acción 3<br />

Contacto <strong>de</strong> acción 2<br />

Contacto <strong>de</strong> acción 1<br />

CANT - Interpretar bobinas, contactos, temporizadores, contadores<br />

N.° <strong>de</strong><br />

registro<br />

Registro <strong>de</strong><br />

datos<br />

Retardo<br />

CANT<br />

31007526 12/2006 101


CANT - Interpretar bobinas, contactos, temporizadores, contadores y el bloque SUB<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Entrada superior 0x, 1x Ninguno Contacto <strong>de</strong> acción 3<br />

Consulte la nota que se encuentra más<br />

abajo.<br />

Entrada<br />

intermedia<br />

0x, 1x Ninguno Contacto <strong>de</strong> acción 2<br />

Consulte la nota que se encuentra más<br />

abajo.<br />

Entrada inferior 0x, 1x Ninguno Contacto <strong>de</strong> acción 1<br />

Consulte la nota que se encuentra más<br />

abajo.<br />

N.° <strong>de</strong> registro<br />

Nodo superior<br />

Registro <strong>de</strong> datos<br />

Nodo intermedio<br />

Retardo<br />

Nodo inferior<br />

4x INT, UINT Cada bloque CANT contiene a su vez un<br />

bloque <strong>de</strong> diez registros <strong>de</strong> configuración,<br />

que rellenará automáticamente con datos<br />

internos.<br />

4x INT, UINT Este nodo es el inicio <strong>de</strong> los registros <strong>de</strong><br />

datos <strong>de</strong> salida 4x.<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte la sección p. 103.)<br />

INT, UINT Valor <strong>de</strong>l temporizador <strong>de</strong> retardo con<br />

incrementos <strong>de</strong> 10 ms. El valor 1 se<br />

establece como inactivo.<br />

Nota: Cuando se activa alguna <strong>de</strong> las entradas anteriores, el bloque <strong>de</strong> función<br />

CANT comienza a ejecutar la rutina. El nodo inferior especifica un tiempo <strong>de</strong><br />

retardo en incrementos <strong>de</strong> 10 ms, que el bloque utiliza para retrasar el inicio <strong>de</strong><br />

ejecución <strong>de</strong> la rutina.<br />

102 31007526 12/2006


Descripción <strong>de</strong> parámetros<br />

Tabla <strong>de</strong><br />

registros <strong>de</strong><br />

datos <strong>de</strong> salida<br />

(nodo<br />

intermedio)<br />

Registro <strong>de</strong><br />

datos <strong>de</strong> salida<br />

CANT - Interpretar bobinas, contactos, temporizadores, contadores<br />

Descripción (Propósito)<br />

4x Contiene la dirección <strong>de</strong>l número <strong>de</strong> bobina «CANT in use flag» (instrucción<br />

CANT en uso).<br />

La bobina pue<strong>de</strong> programarse con NO POWER CONNECTED FROM THE<br />

LEFT en la última red <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong>.<br />

4x + 01 Número <strong>de</strong> versión CANT en formato hexa<strong>de</strong>cimal (por ejemplo, 0105 para<br />

v1.05).<br />

4x + 02 Byte <strong>de</strong> mayor valor = Flags operacionales internos.<br />

Byte <strong>de</strong> menor valor = dirección <strong>de</strong> un PLC MB+.<br />

4x + 03 Número <strong>de</strong> bobina <strong>de</strong> salida (variable <strong>de</strong>pendiente <strong>de</strong>l estado <strong>de</strong>l bloque).<br />

4x + 04 ID <strong>de</strong> la bobina o <strong>de</strong>l contacto <strong>de</strong>l activador.<br />

Bit 15 → 0 - si es una bobina; 1 - si es un contacto.<br />

Bit 14-00 → número <strong>de</strong> contacto o bobina (basado en 1).<br />

4x + 05 12 bits <strong>de</strong> mayor valor = número <strong>de</strong> red don<strong>de</strong> falla la lógica (basado en 1).<br />

4 bits <strong>de</strong> menor valor = número <strong>de</strong> columna don<strong>de</strong> falla la lógica (basado<br />

en 1).<br />

4x + 06 Escalón n.º 1:<br />

Byte <strong>de</strong> mayor valor = estado <strong>de</strong> nodo.<br />

Byte <strong>de</strong> menor valor = tipo <strong>de</strong> nodo (código operativo <strong>de</strong> la base <strong>de</strong> datos<br />

<strong>de</strong> nodos).<br />

4x + 07 Escalón n.º 1: número <strong>de</strong> contacto (basado en 1).<br />

4x + 08 Escalón n.º 2: consulte 4x + 06.<br />

4x + 09 Escalón n.º 2: consulte 4x + 07.<br />

4x + 10 Escalón n.º 3: consulte 4x + 06.<br />

4x + 11 Escalón n.º 3: consulte 4x + 07.<br />

4x + 12 Escalón n.º 4: consulte 4x + 06.<br />

4x + 13 Escalón n.º 4: consulte 4x + 07.<br />

4x + 14 Escalón n.º 5: consulte 4x + 06.<br />

4x + 15 Escalón n.º 5: consulte 4x + 07.<br />

4x + 16 Escalón n.º 6: consulte 4x + 06.<br />

4x + 17 Escalón n.º 6: consulte 4x + 07.<br />

4x + 18 Escalón n.º 7: consulte 4x + 06.<br />

4x + 19 Escalón n.º 7: consulte 4x + 07.<br />

31007526 12/2006 103


CANT - Interpretar bobinas, contactos, temporizadores, contadores y el bloque SUB<br />

Programación Cada red pue<strong>de</strong> contener sólo un bloque COIL y CANT, que pue<strong>de</strong> situarse en la<br />

columna 10 y en la fila 5. La columna 9 situada en el escalón BOTTOM contiene la<br />

entrada <strong>de</strong> alimentación para los activadores (contactos <strong>de</strong> acción) al bloque CANT<br />

que proporcionará más espacio para la programación <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong>.<br />

Configuración<br />

<strong>de</strong> nodo <strong>de</strong><br />

Lad<strong>de</strong>r <strong>Logic</strong><br />

Nota: Esto no se encuentra en la parte superior <strong>de</strong>l bloque como suce<strong>de</strong><br />

habitualmente con los <strong>bloques</strong> DX.<br />

En cualquiera <strong>de</strong> las posiciones <strong>de</strong> fila disponibles 5, 6 ó 7, pue<strong>de</strong> tener hasta tres<br />

activadores que <strong>de</strong>ben pertenecer al tipo tradicional <strong>de</strong> cada [P] o [N].El número <strong>de</strong><br />

nodo <strong>de</strong> bloque CANT será 22 por <strong>de</strong>fecto (hexa<strong>de</strong>cimal) y no se cambiará.<br />

fila 6<br />

fila 7<br />

]P[<br />

]P[<br />

]P[<br />

4xxxx<br />

4xxxx<br />

CANT<br />

1<br />

columna 10<br />

] [ ] [ ( )<br />

inicio <strong>de</strong> 10 registros <strong>de</strong><br />

configuración exclusivos<br />

inicio <strong>de</strong> bloque <strong>de</strong> registro<br />

<strong>de</strong> salida común<br />

valor <strong>de</strong> temporizador <strong>de</strong><br />

retardo en Φms<br />

(el valor 1 está inactivo)<br />

104 31007526 12/2006


Configuración <strong>de</strong><br />

datos <strong>de</strong><br />

escritura MSTR<br />

Configuración <strong>de</strong><br />

MSTR.<br />

CANT - Interpretar bobinas, contactos, temporizadores, contadores<br />

El propósito <strong>de</strong>l bloque MSTR es enviar los 20 registros 4x CANT a un PC basado<br />

en el programa Action Monitor. Esta transmisión <strong>de</strong> registros se realiza utilizando<br />

Modbus Plus o Modbus Ethernet TCP/IP.<br />

Ejemplo:<br />

Registros <strong>de</strong> control <strong>de</strong> estadísticas MSTR.<br />

Registro Valor Descripción<br />

400121 1 Función para escribir datos.<br />

400122 ? Registro <strong>de</strong> errores MSTR.<br />

400123 20 N.º <strong>de</strong> registros <strong>de</strong> datos para enviar.<br />

400124 40001 Inicio <strong>de</strong> registros <strong>de</strong> datos.<br />

400125 22 Dirección <strong>de</strong> MB+ <strong>de</strong> <strong>de</strong>stino.<br />

400126 1 Enca<strong>de</strong>namiento MB+.<br />

400127 0 Enca<strong>de</strong>namiento MB+.<br />

400128 0 Enca<strong>de</strong>namiento MB+.<br />

400129 0 Enca<strong>de</strong>namiento MB+.<br />

Nota: Es necesario programar un bloque MSTR para cada dirección <strong>de</strong> recepción<br />

(PC) en caso <strong>de</strong> que <strong>de</strong>see transmitir datos a varios PC que ejecuten Action<br />

Monitor.<br />

]P[<br />

1530<br />

40121<br />

40001<br />

MSTR<br />

20<br />

- ( ) -<br />

1530<br />

registros <strong>de</strong> control<br />

MSTR<br />

(por ej., 40121)<br />

base <strong>de</strong> registro <strong>de</strong><br />

salida CANT (por ej.,<br />

40001)<br />

20 registros que se van<br />

a escribir<br />


CANT - Interpretar bobinas, contactos, temporizadores, contadores y el bloque SUB<br />

106 31007526 12/2006


Presentación<br />

CCPF – Configurar perfil <strong>de</strong> leva<br />

con instrumentos <strong>de</strong> variables<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción CCPF.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

20<br />

Apartado Página<br />

Descripción breve 108<br />

Representación 109<br />

31007526 12/2006 107


CCPF<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

Tipo <strong>de</strong><br />

perfil <strong>de</strong> leva<br />

Información<br />

relacionada<br />

El bloque <strong>de</strong> funciones CCPF configura un perfil <strong>de</strong> leva con incrementos <strong>de</strong><br />

maestro fijos. Un perfil <strong>de</strong> leva indica la posición <strong>de</strong> un eje seguidor con respecto a<br />

una <strong>de</strong>terminada posición <strong>de</strong>l eje maestro. El perfil <strong>de</strong> leva es una tabla con las<br />

coor<strong>de</strong>nadas <strong>de</strong> las posiciones <strong>de</strong>l maestro y <strong>de</strong>l seguidor. Los puntos <strong>de</strong> posición<br />

que no se encuentren explícitamente en la tabla se obtendrán mediante la<br />

interpolación <strong>de</strong> los puntos dados. Se admiten interpolaciones cúbicas y lineales.<br />

El tipo <strong>de</strong> perfil <strong>de</strong> leva se emplea para ejecutar levas electrónicas en el controlador<br />

<strong>de</strong> movimiento. Las levas electrónicas facilitan la programación <strong>de</strong> movimientos<br />

complejos. Se pue<strong>de</strong>n utilizar en aplicaciones <strong>de</strong> bobinado, en aplicaciones <strong>de</strong><br />

corte en el aire, en máquinas <strong>de</strong> termoformación, en prensas y en muchas otras<br />

situaciones <strong>de</strong> control complejas.<br />

Nota: Se pue<strong>de</strong> volver a ejecutar un módulo <strong>de</strong> configuración <strong>de</strong> perfil <strong>de</strong> leva para<br />

modificar dicho perfil. Se producirá un error CMD_NOT_ALLOWED, si un conjunto<br />

<strong>de</strong> seguidores ya utiliza el perfil <strong>de</strong> leva y se activa el seguimiento.<br />

Consulte el archivo Instrucciones cargables MMFStart para <strong>ProWORX</strong> <strong>32</strong> en la<br />

carpeta Programs\Lib\Quantum <strong>de</strong>l CD <strong>de</strong> instalación <strong>de</strong> <strong>ProWORX</strong> <strong>32</strong> para<br />

obtener información más <strong>de</strong>tallada acerca <strong>de</strong>l uso <strong>de</strong> las instrucciones cargables <strong>de</strong><br />

movimiento.<br />

108 31007526 12/2006


Representación<br />

Símbolo El siguiente diagrama muestra una representación <strong>de</strong> la instrucción.<br />

Descripción <strong>de</strong><br />

parámetros<br />

ON inicia la config.<br />

sin utilizar<br />

sin utilizar<br />

configuración ejecutada<br />

sin errores<br />

En la tabla siguiente se <strong>de</strong>scriben los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

MMFSTART<br />

registro 4X<br />

dirección <strong>de</strong>l<br />

bloque <strong>de</strong> la<br />

tabla<br />

longitud <strong>de</strong> la<br />

tabla (18)<br />

Tipo <strong>de</strong><br />

datos<br />

CCPF<br />

configuración ejecutada con<br />

error (consulte el registro <strong>de</strong> errores)<br />

Significado<br />

longitud <strong>de</strong> tabla incorrecta<br />

0x Ninguno ON inicia la función <strong>de</strong> configuración. Cuando<br />

esta entrada se <strong>de</strong>sactiva, la función vuelve a<br />

cero y se pue<strong>de</strong> iniciar <strong>de</strong> nuevo.<br />

Nodo superior 4x INT, UINT Dirección <strong>de</strong> la tabla <strong>de</strong> comunicación <strong>de</strong> registro<br />

MMFSTART 200. Suele ser 401001. Esta<br />

dirección se pue<strong>de</strong> configurar mediante la<br />

modificación <strong>de</strong>l archivo MMFSTART.CFG<br />

<strong>de</strong>s<strong>de</strong> el controlador SERCOS <strong>de</strong> QUANTUM.<br />

Nodo<br />

intermedio<br />

4x INT, UINT Este registro hace referencia a un módulo <strong>de</strong><br />

registros que <strong>de</strong>fine todos los argumentos y<br />

<strong>de</strong>voluciones <strong>de</strong> una llamada <strong>de</strong> subrutina<br />

genérica. Los dos últimos registros se <strong>de</strong>stinan<br />

al control <strong>de</strong> estado.<br />

Nodo inferior 4x INT El valor entero introducido en el nodo inferior<br />

especifica la longitud <strong>de</strong> la tabla. En ese caso, el<br />

número <strong>de</strong> registros en la tabla ha <strong>de</strong> ser 18.<br />

31007526 12/2006 109


CCPF<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Registros En la tabla siguiente se muestran los registros.<br />

0x Ninguno Se activa cuando la llamada <strong>de</strong> configuración <strong>de</strong><br />

leva ha finalizado <strong>de</strong> forma correcta.<br />

0x Ninguno Se encien<strong>de</strong> cuando la llamada <strong>de</strong> configuración<br />

<strong>de</strong> leva ha finalizado y se ha generado un código<br />

<strong>de</strong> error en el registro 4xxx15.<br />

Salida inferior 0x Ninguno Se activa cuando la longitud <strong>de</strong>l registro no se<br />

<strong>de</strong>fine como 18.<br />

Registro Tipo <strong>de</strong> datos Descripción<br />

4xxxxx Corto El ID <strong>de</strong>l perfil <strong>de</strong> leva que se va a configurar.<br />

4xxxx1 Corto El número <strong>de</strong> puntos <strong>de</strong> la tabla <strong>de</strong> leva.<br />

4xxxx2 Sin signo Tipo <strong>de</strong> interpolación: Lineal = 1 o Cúbica = 2<br />

4xxxx4 Sin signo Unida<strong>de</strong>s <strong>de</strong> posición <strong>de</strong>l maestro (Rev, Grad, etc.)<br />

4xxxx6 Coma flotante Primera posición <strong>de</strong>l maestro<br />

4xxxx8 Coma flotante Incremento fijo <strong>de</strong> la posición <strong>de</strong>l maestro<br />

4xxx10 Sin signo Unida<strong>de</strong>s <strong>de</strong> posición <strong>de</strong>l seguidor (Pulg, Rev, etc.)<br />

4xxx12 Coma flotante Pointer <strong>de</strong>l primer registro <strong>de</strong> la tabla <strong>de</strong> leva <strong>de</strong>l seguidor<br />

4xxx14 Bloque <strong>de</strong> Pointer <strong>de</strong> la dirección <strong>de</strong>l bloque <strong>de</strong> configuración <strong>de</strong> la<br />

registros leva<br />

4xxx15 Corto Código <strong>de</strong> error generado por el bloque <strong>de</strong> configuración<br />

4xxx16 Corto Número <strong>de</strong> estado <strong>de</strong> funcionamiento actual<br />

4xxx17 Corto Conteo <strong>de</strong> entrada <strong>de</strong> estado actual<br />

110 31007526 12/2006


Presentación<br />

CCPV - Configurar perfil <strong>de</strong> leva<br />

con incrementos <strong>de</strong> variables<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción CCPV.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

21<br />

Apartado Página<br />

Descripción breve 112<br />

Representación 113<br />

31007526 12/2006 111


CCPV<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

Información<br />

relacionada<br />

El bloque <strong>de</strong> funciones CCPV configura un perfil <strong>de</strong> leva con incrementos <strong>de</strong><br />

maestro <strong>de</strong> variables. Un perfil <strong>de</strong> leva indica la posición <strong>de</strong> un eje seguidor con<br />

respecto a una <strong>de</strong>terminada posición <strong>de</strong>l eje maestro. El perfil <strong>de</strong> leva es una tabla<br />

con las coor<strong>de</strong>nadas <strong>de</strong> las posiciones <strong>de</strong>l maestro y <strong>de</strong>l seguidor. Los puntos <strong>de</strong><br />

posición que no se encuentren explícitamente en la tabla se obtendrán mediante la<br />

interpolación <strong>de</strong> los puntos dados. Se admiten interpolaciones cúbicas y lineales.<br />

Consulte p. 108 para obtener más información acerca <strong>de</strong>l tipo <strong>de</strong> perfil <strong>de</strong> leva.<br />

Consulte el archivo Instrucciones cargables MMFStart para <strong>ProWORX</strong> <strong>32</strong> en la<br />

carpeta Programs\Lib\Quantum <strong>de</strong>l CD <strong>de</strong> instalación <strong>de</strong> <strong>ProWORX</strong> <strong>32</strong> para<br />

obtener información más <strong>de</strong>tallada acerca <strong>de</strong>l uso <strong>de</strong> las instrucciones cargables <strong>de</strong><br />

movimiento.<br />

112 31007526 12/2006


Representación<br />

Símbolo El siguiente diagrama muestra una representación <strong>de</strong> la instrucción CCPV.<br />

Descripción <strong>de</strong><br />

parámetros<br />

ON inicia la leva<br />

configuración<br />

sin utilizar<br />

sin utilizar<br />

En la tabla siguiente se <strong>de</strong>scriben los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

MMFSTART<br />

registro 4X<br />

dirección <strong>de</strong>l<br />

bloque <strong>de</strong> la<br />

tabla<br />

longitud <strong>de</strong> la<br />

tabla (16)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

CCPV<br />

configuración <strong>de</strong> leva ejecutada<br />

sin errores<br />

config. ejecutada con errores<br />

(consulte el registro <strong>de</strong> errores)<br />

longitud <strong>de</strong> tabla incorrecta<br />

0x Ninguno ON inicia la función <strong>de</strong> configuración. Cuando<br />

esta entrada se <strong>de</strong>sactiva, la función vuelve a<br />

cero y se pue<strong>de</strong> iniciar <strong>de</strong> nuevo.<br />

Nodo superior 4x INT, UINT Dirección <strong>de</strong> la tabla <strong>de</strong> comunicación <strong>de</strong><br />

registro MMFSTART 200. Suele ser 401001.<br />

Esta dirección se pue<strong>de</strong> configurar mediante<br />

la modificación <strong>de</strong>l archivo MMFSTART.CFG<br />

<strong>de</strong>s<strong>de</strong> el controlador SERCOS <strong>de</strong> QUANTUM.<br />

Nodo<br />

intermedio<br />

4x INT, UINT Este registro hace referencia a un módulo <strong>de</strong><br />

registros que <strong>de</strong>fine todos los argumentos y<br />

<strong>de</strong>voluciones <strong>de</strong> una llamada <strong>de</strong> subrutina<br />

genérica. Los dos últimos registros se<br />

<strong>de</strong>stinan al control <strong>de</strong> estado.<br />

Nodo inferior 4x INT El valor entero introducido en el nodo inferior<br />

especifica la longitud <strong>de</strong> la tabla. En ese caso,<br />

el número <strong>de</strong> registros en la tabla ha <strong>de</strong> ser 16.<br />

31007526 12/2006 113


CCPV<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Salida superior 0x Ninguno Se activa cuando la llamada <strong>de</strong> configuración<br />

<strong>de</strong> leva ha finalizado <strong>de</strong> forma correcta.<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x Ninguno Se encien<strong>de</strong> cuando la llamada <strong>de</strong><br />

configuración <strong>de</strong> leva ha finalizado y se ha<br />

generado un código <strong>de</strong> error en el registro<br />

4xxx13.<br />

Salida inferior 0x Ninguno Se activa cuando la longitud <strong>de</strong>l registro no se<br />

<strong>de</strong>fine como 16.<br />

Registros En la tabla siguiente se <strong>de</strong>scriben los registros <strong>de</strong> la instrucción.<br />

Registro Tipo <strong>de</strong> datos Descripción<br />

4xxxxx Corto El ID <strong>de</strong>l perfil <strong>de</strong> leva que se va a configurar.<br />

4xxxx1 Corto El número <strong>de</strong> puntos <strong>de</strong> la tabla <strong>de</strong> leva.<br />

4xxxx2 Sin signo Tipo <strong>de</strong> interpolación: Lineal = 1 o Cúbica = 2<br />

4xxxx4 Sin signo Unida<strong>de</strong>s <strong>de</strong> posición <strong>de</strong>l maestro (Rev, Grad, etc.)<br />

4xxxx6 Coma flotante Pointer <strong>de</strong>l primer registro <strong>de</strong> la tabla <strong>de</strong> leva <strong>de</strong>l master<br />

4xxxx8 Sin signo Unida<strong>de</strong>s <strong>de</strong> posición <strong>de</strong>l seguidor (Pulg, Rev, etc.)<br />

4xxx10 Coma flotante Pointer <strong>de</strong>l primer registro <strong>de</strong> la tabla <strong>de</strong> leva <strong>de</strong>l<br />

seguidor<br />

4xxx12 Bloque <strong>de</strong> Pointer <strong>de</strong>l primer registro <strong>de</strong>l bloque <strong>de</strong> configuración <strong>de</strong><br />

registros<br />

leva<br />

4xxx13 Corto Código <strong>de</strong> error generado por el bloque <strong>de</strong> configuración<br />

4xxx14 Corto Número <strong>de</strong> estado <strong>de</strong> funcionamiento actual<br />

4xxx15 Corto Conteo <strong>de</strong> entrada <strong>de</strong> estado actual<br />

114 31007526 12/2006


Presentación<br />

CFGC - Configurar<br />

coor<strong>de</strong>nada establecida<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción CFGC.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

22<br />

Apartado Página<br />

Descripción breve 116<br />

Representación 117<br />

31007526 12/2006 115


CFGC<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

Información<br />

relacionada<br />

El bloque <strong>de</strong> funciones CFGC configura una coor<strong>de</strong>nada establecida. Cada eje <strong>de</strong><br />

movimiento tiene un conjunto <strong>de</strong> parámetros <strong>de</strong> movimiento que se <strong>de</strong>ben<br />

configurar antes <strong>de</strong> utilizar el objeto <strong>de</strong>l eje <strong>de</strong> movimiento. La función <strong>de</strong><br />

configuración ofrece el valor pre<strong>de</strong>terminado para estos parámetros. Los valores<br />

pre<strong>de</strong>terminados se colocan en un módulo <strong>de</strong> registros en espera en un or<strong>de</strong>n<br />

<strong>de</strong>terminado.<br />

Consulte el archivo Instrucciones cargables MMFStart para <strong>ProWORX</strong> <strong>32</strong> en la<br />

carpeta Programs\Lib\Quantum <strong>de</strong>l CD <strong>de</strong> instalación <strong>de</strong> <strong>ProWORX</strong> <strong>32</strong> para<br />

obtener información más <strong>de</strong>tallada acerca <strong>de</strong>l uso <strong>de</strong> las instrucciones cargables <strong>de</strong><br />

movimiento.<br />

116 31007526 12/2006


Representación<br />

Símbolo El siguiente diagrama muestra una representación <strong>de</strong> la instrucción CFGC.<br />

Descripción <strong>de</strong><br />

parámetros<br />

ON inicia<br />

la configuración<br />

sin utilizar<br />

sin utilizar<br />

En la tabla siguiente se <strong>de</strong>scriben los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

MMFSTART<br />

registro 4X<br />

dirección <strong>de</strong>l<br />

bloque <strong>de</strong> la<br />

tabla<br />

longitud <strong>de</strong> la<br />

tabla (13)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

CFGC<br />

configuración <strong>de</strong> leva ejecutada<br />

sin errores<br />

config. ejecutada con errores<br />

(consulte el registro <strong>de</strong> errores)<br />

longitud <strong>de</strong> tabla incorrecta<br />

0x Ninguno ON inicia la función <strong>de</strong> configuración. Cuando<br />

esta entrada se <strong>de</strong>sactiva, la función vuelve a<br />

cero y se pue<strong>de</strong> iniciar <strong>de</strong> nuevo.<br />

Nodo superior 4x INT,<br />

UINT<br />

Nodo<br />

intermedio<br />

4x INT,<br />

UINT<br />

Dirección <strong>de</strong> la tabla <strong>de</strong> comunicación <strong>de</strong><br />

registro MMFSTART 200. Suele ser 401001.<br />

Esta dirección se pue<strong>de</strong> configurar mediante la<br />

modificación <strong>de</strong>l archivo MMFSTART.CFG<br />

<strong>de</strong>s<strong>de</strong> el controlador SERCOS <strong>de</strong> QUANTUM.<br />

Este registro hace referencia a un módulo <strong>de</strong><br />

registros que <strong>de</strong>fine todos los argumentos y<br />

<strong>de</strong>voluciones <strong>de</strong> una llamada <strong>de</strong> subrutina<br />

genérica. Los dos últimos registros se <strong>de</strong>stinan<br />

al control <strong>de</strong> estado.<br />

Nodo inferior 4x INT El valor entero introducido en el nodo inferior<br />

especifica la longitud <strong>de</strong> la tabla. En ese caso, el<br />

número <strong>de</strong> registros en la tabla ha <strong>de</strong> ser 13.<br />

31007526 12/2006 117


CFGC<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Salida superior 0x Ninguno Se activa cuando la llamada <strong>de</strong> configuración <strong>de</strong><br />

leva ha finalizado <strong>de</strong> forma correcta.<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x Ninguno Se encien<strong>de</strong> cuando la llamada <strong>de</strong> configuración<br />

<strong>de</strong> leva ha finalizado y se ha generado un código<br />

<strong>de</strong> error en el registro 4xxx10.<br />

Salida inferior 0x Ninguno Se activa cuando la longitud <strong>de</strong>l registro no se<br />

<strong>de</strong>fine como 13.<br />

Registros En la tabla siguiente se <strong>de</strong>scriben los registros <strong>de</strong> la instrucción.<br />

Registro Tipo <strong>de</strong> datos Descripción<br />

4xxxxx Corto ID <strong>de</strong>l eje <strong>de</strong> la coor<strong>de</strong>nada establecida que se va a configurar.<br />

4xxxx1 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx2 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx3 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx4 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx5 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx6 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx7 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx8 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx9 Bloque <strong>de</strong><br />

registros<br />

Pointer <strong>de</strong> la dirección <strong>de</strong> registro <strong>de</strong>l módulo <strong>de</strong> configuración.<br />

4xxx10 Corto Código <strong>de</strong> error generado por el bloque <strong>de</strong> configuración<br />

4xxx11 Corto Número <strong>de</strong> estado <strong>de</strong> funcionamiento actual<br />

4xxx12 Corto Conteo <strong>de</strong> entrada <strong>de</strong> estado actual<br />

118 31007526 12/2006


Presentación<br />

CFGF -<br />

Configurar seguidor establecido<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción CFGF.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

23<br />

Apartado Página<br />

Descripción breve 120<br />

Representación 121<br />

31007526 12/2006 119


CFGF<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

Información<br />

relacionada<br />

El bloque <strong>de</strong> funciones CFGF configura un seguidor establecido. Cada eje <strong>de</strong><br />

movimiento tiene un conjunto <strong>de</strong> parámetros <strong>de</strong> movimiento que se <strong>de</strong>ben<br />

configurar antes <strong>de</strong> utilizar el objeto <strong>de</strong>l eje <strong>de</strong> movimiento. La función <strong>de</strong><br />

configuración ofrece el valor pre<strong>de</strong>terminado para estos parámetros. Los valores<br />

pre<strong>de</strong>terminados se colocan en un módulo <strong>de</strong> registros en espera en un or<strong>de</strong>n<br />

<strong>de</strong>terminado.<br />

Consulte el archivo Instrucciones cargables MMFStart para <strong>ProWORX</strong> <strong>32</strong> en la<br />

carpeta Programs\Lib\Quantum <strong>de</strong>l CD <strong>de</strong> instalación <strong>de</strong> <strong>ProWORX</strong> <strong>32</strong> para<br />

obtener información más <strong>de</strong>tallada acerca <strong>de</strong>l uso <strong>de</strong> las instrucciones cargables <strong>de</strong><br />

movimiento.<br />

120 31007526 12/2006


Representación<br />

Símbolo El siguiente diagrama muestra una representación <strong>de</strong> la instrucción CFGF.<br />

Descripción <strong>de</strong><br />

parámetros<br />

ON inicia<br />

la configuración<br />

sin utilizar<br />

sin utilizar<br />

config. ejecutada<br />

sin errores<br />

En la tabla siguiente se <strong>de</strong>scriben los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

MMFSTART<br />

registro 4X<br />

dirección <strong>de</strong>l<br />

bloque <strong>de</strong> la<br />

tabla<br />

longitud <strong>de</strong> la<br />

tabla (14)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

CFGF<br />

config. ejecutada con errores<br />

(consulte el registro <strong>de</strong> errores)<br />

longitud <strong>de</strong> tabla incorrecta<br />

0x Ninguno ON inicia la función <strong>de</strong> configuración. Cuando esta<br />

entrada se <strong>de</strong>sactiva, la función vuelve a cero y se<br />

pue<strong>de</strong> iniciar <strong>de</strong> nuevo.<br />

Nodo superior 4x INT,<br />

UINT<br />

Nodo<br />

intermedio<br />

4x INT,<br />

UINT<br />

Dirección <strong>de</strong> la tabla <strong>de</strong> comunicación <strong>de</strong> registro<br />

MMFSTART 200. Suele ser 401001. Esta<br />

dirección se pue<strong>de</strong> configurar mediante la<br />

modificación <strong>de</strong>l archivo MMFSTART.CFG <strong>de</strong>s<strong>de</strong><br />

el controlador SERCOS <strong>de</strong> QUANTUM.<br />

Este registro hace referencia a un módulo <strong>de</strong><br />

registros que <strong>de</strong>fine todos los argumentos <strong>de</strong> la<br />

configuración. Los dos últimos registros se<br />

<strong>de</strong>stinan al control <strong>de</strong> estado.<br />

Nodo inferior 4x INT El valor entero introducido en el nodo inferior<br />

especifica la longitud <strong>de</strong> la tabla. En ese caso, el<br />

número <strong>de</strong> registros en la tabla ha <strong>de</strong> ser 14.<br />

31007526 12/2006 121


CFGF<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x Ninguno Se activa cuando la llamada <strong>de</strong> configuración <strong>de</strong><br />

leva ha finalizado <strong>de</strong> forma correcta.<br />

0x Ninguno Se encien<strong>de</strong> cuando la llamada <strong>de</strong> subrutina ha<br />

finalizado y se ha generado un código <strong>de</strong> error en<br />

el registro 4xxx11.<br />

Salida inferior 4x Ninguno Se activa cuando la longitud <strong>de</strong>l registro no se<br />

<strong>de</strong>fine como 14.<br />

Registros En la tabla siguiente se <strong>de</strong>scriben los registros <strong>de</strong> la instrucción.<br />

Registro Tipo <strong>de</strong> datos Descripción<br />

4xxxxx Corto ID <strong>de</strong>l eje <strong>de</strong>l seguidor establecido que se va a configurar.<br />

4xxxx1 Corto ID <strong>de</strong> eje <strong>de</strong>l eje maestro <strong>de</strong>l seguidor establecido.<br />

4xxxx2 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx3 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx4 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx5 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx6 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx7 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx8 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxxx9 Corto ID <strong>de</strong>l eje <strong>de</strong>l miembro <strong>de</strong>l eje que se va a incluir en el conjunto.<br />

4xxx10 Bloque <strong>de</strong><br />

registros<br />

Pointer <strong>de</strong> la dirección <strong>de</strong> registro <strong>de</strong>l módulo <strong>de</strong> configuración.<br />

4xxx11 Corto Código <strong>de</strong> error generado por el bloque <strong>de</strong> configuración<br />

4xxx12 Corto Número <strong>de</strong> estado <strong>de</strong> funcionamiento actual<br />

4xxx13 Corto Conteo <strong>de</strong> entrada <strong>de</strong> estado actual<br />

122 31007526 12/2006


Presentación<br />

CFGI - Configurar eje imaginario<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción CFGI.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

24<br />

Apartado Página<br />

Descripción breve 124<br />

Representación 125<br />

31007526 12/2006 123


CFGI<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

Información<br />

relacionada<br />

El bloque <strong>de</strong> funciones CFGI configura un eje imaginario. Cada eje <strong>de</strong> movimiento<br />

tiene un conjunto <strong>de</strong> parámetros <strong>de</strong> movimiento que se <strong>de</strong>be configurar antes <strong>de</strong><br />

utilizar el objeto <strong>de</strong>l eje <strong>de</strong> movimiento. La función <strong>de</strong> configuración ofrece el valor<br />

pre<strong>de</strong>terminado para estos parámetros. Los valores pre<strong>de</strong>terminados se colocan en<br />

un módulo <strong>de</strong> registros en espera en un or<strong>de</strong>n <strong>de</strong>terminado.<br />

Consulte el archivo Instrucciones cargables MMFStart para <strong>ProWORX</strong> <strong>32</strong> en la<br />

carpeta Programs\Lib\Quantum <strong>de</strong>l CD <strong>de</strong> instalación <strong>de</strong> <strong>ProWORX</strong> <strong>32</strong> para<br />

obtener información más <strong>de</strong>tallada acerca <strong>de</strong>l uso <strong>de</strong> las instrucciones cargables <strong>de</strong><br />

movimiento.<br />

124 31007526 12/2006


Representación<br />

Símbolo El siguiente diagrama muestra una instrucción CFGI.<br />

Descripción <strong>de</strong><br />

parámetros<br />

ON inicia<br />

la configuración<br />

sin utilizar<br />

sin utilizar<br />

config. ejecutada<br />

sin errores<br />

En la tabla siguiente se <strong>de</strong>scriben los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

MMFSTART<br />

registro 4X<br />

dirección <strong>de</strong>l<br />

bloque <strong>de</strong> la<br />

tabla<br />

longitud <strong>de</strong> la<br />

tabla (20)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

CFGI<br />

config. ejecutada con errores<br />

(consulte el registro <strong>de</strong> errores)<br />

longitud <strong>de</strong> tabla incorrecta<br />

0x Ninguno ON inicia la función <strong>de</strong> configuración. Cuando<br />

esta entrada se <strong>de</strong>sactiva, la función vuelve a<br />

cero y se pue<strong>de</strong> iniciar <strong>de</strong> nuevo.<br />

Nodo superior 4x INT,<br />

UINT<br />

Nodo<br />

intermedio<br />

4x INT,<br />

UINT<br />

Dirección <strong>de</strong> la tabla <strong>de</strong> comunicación <strong>de</strong> registro<br />

MMFSTART 200. Suele ser 401001. Esta<br />

dirección se pue<strong>de</strong> configurar mediante la<br />

modificación <strong>de</strong>l archivo MMFSTART.CFG<br />

<strong>de</strong>s<strong>de</strong> el controlador SERCOS <strong>de</strong> QUANTUM.<br />

Este registro hace referencia a un módulo <strong>de</strong><br />

registros que <strong>de</strong>fine todos los argumentos <strong>de</strong> la<br />

configuración. Los dos últimos registros se<br />

<strong>de</strong>stinan al control <strong>de</strong> estado.<br />

Nodo inferior 4x INT El valor entero introducido en el nodo inferior<br />

especifica la longitud <strong>de</strong> la tabla. En ese caso, el<br />

número <strong>de</strong> registros en la tabla ha <strong>de</strong> ser 20.<br />

31007526 12/2006 125


CFGI<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Salida superior 0x Ninguno Se activa cuando la llamada <strong>de</strong> configuración <strong>de</strong><br />

leva ha finalizado <strong>de</strong> forma correcta.<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x Ninguno Se encien<strong>de</strong> cuando la llamada <strong>de</strong> subrutina ha<br />

finalizado y se ha generado un código <strong>de</strong> error en<br />

el registro 4xxx17.<br />

Salida inferior 0x Ninguno Se activa cuando la longitud <strong>de</strong>l registro no se<br />

<strong>de</strong>fine como 20.<br />

Registros En la tabla siguiente se <strong>de</strong>scriben los registros <strong>de</strong> la instrucción.<br />

Registro Tipo <strong>de</strong> datos Descripción<br />

4xxxxx Corto ID <strong>de</strong> eje <strong>de</strong>l eje imaginario que se va a configurar.<br />

4xxxx1 Sin signo Unida<strong>de</strong>s <strong>de</strong> velocidad <strong>de</strong>l eje.<br />

4xxxx2 Coma flotante Numerador <strong>de</strong>l ratio <strong>de</strong>l equipo.<br />

4xxxx4 Coma flotante Denominador <strong>de</strong>l ratio <strong>de</strong>l equipo1 4xxxx6 Coma flotante Límite <strong>de</strong> posición positivo (opcional).<br />

4xxxx8 Coma flotante Límite <strong>de</strong> posición negativo (opcional).<br />

4xxx10 Coma flotante Límite <strong>de</strong> velocidad (opcional).<br />

4xxx12 Coma flotante Aceleración pre<strong>de</strong>terminada (opcional).<br />

4xxx14 Coma flotante Deceleración pre<strong>de</strong>terminada (opcional).<br />

4xxx16 Bloque <strong>de</strong><br />

registros<br />

Pointer <strong>de</strong> registro <strong>de</strong>l eje <strong>de</strong>l bloque <strong>de</strong> configuración.<br />

4xxx17 Corto Código <strong>de</strong> error generado por el bloque <strong>de</strong> configuración<br />

4xxx18 Corto Número <strong>de</strong> estado <strong>de</strong> funcionamiento actual<br />

4xxx19 Corto Conteo <strong>de</strong> entrada <strong>de</strong> estado actual<br />

1 Las unida<strong>de</strong>s asociadas a este valor son revoluciones <strong>de</strong>l regulador. Normalmente, el<br />

regulador está unido <strong>de</strong> forma directa al eje <strong>de</strong>l motor y, por lo tanto, este parámetro <strong>de</strong>fine<br />

las revoluciones <strong>de</strong>l motor necesarias para generar el traslado físico <strong>de</strong>finido por el<br />

numerador.<br />

126 31007526 12/2006


Presentación<br />

CFGR – Configurar eje remoto<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción CFGR.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

25<br />

Apartado Página<br />

Descripción breve 128<br />

Representación 129<br />

31007526 12/2006 127


CFGR<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

Información<br />

relacionada<br />

El bloque <strong>de</strong> funciones CFGR configura un eje remoto. Cada eje <strong>de</strong> movimiento<br />

tiene un conjunto <strong>de</strong> parámetros <strong>de</strong> movimiento que se <strong>de</strong>be configurar antes <strong>de</strong><br />

utilizar el objeto <strong>de</strong>l eje <strong>de</strong> movimiento. La función <strong>de</strong> configuración ofrece el valor<br />

pre<strong>de</strong>terminado para estos parámetros. Los valores pre<strong>de</strong>terminados se colocan en<br />

un módulo <strong>de</strong> registros en espera en un or<strong>de</strong>n <strong>de</strong>terminado.<br />

Consulte el archivo Instrucciones cargables MMFStart para <strong>ProWORX</strong> <strong>32</strong> en la<br />

carpeta Programs\Lib\Quantum <strong>de</strong>l CD <strong>de</strong> instalación <strong>de</strong> <strong>ProWORX</strong> <strong>32</strong> para<br />

obtener información más <strong>de</strong>tallada acerca <strong>de</strong>l uso <strong>de</strong> las instrucciones cargables <strong>de</strong><br />

movimiento.<br />

128 31007526 12/2006


Representación<br />

Símbolo El siguiente diagrama muestra una representación <strong>de</strong> la instrucción CFGR.<br />

Descripción <strong>de</strong><br />

parámetros<br />

ON inicia<br />

la configuración<br />

sin utilizar<br />

sin utilizar<br />

config. ejecutada<br />

sin errores<br />

En la tabla siguiente se <strong>de</strong>scriben los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

MMFSTART<br />

registro 4X<br />

dirección <strong>de</strong>l<br />

bloque <strong>de</strong> la<br />

tabla<br />

longitud <strong>de</strong> la<br />

tabla (13)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

CFGR<br />

config. ejecutada con errores<br />

(consulte el registro <strong>de</strong> errores)<br />

longitud <strong>de</strong> tabla incorrecta<br />

Entrada superior 0x Ninguno ON inicia la función <strong>de</strong> configuración. Cuando<br />

esta entrada se <strong>de</strong>sactiva, la función vuelve a<br />

cero y se pue<strong>de</strong> iniciar <strong>de</strong> nuevo.<br />

Nodo superior 4x INT,<br />

UINT<br />

Nodo intermedio 4x INT,<br />

UINT<br />

Dirección <strong>de</strong> la tabla <strong>de</strong> comunicación <strong>de</strong><br />

registro MMFSTART 200. Suele ser 401001.<br />

Esta dirección se pue<strong>de</strong> configurar mediante la<br />

modificación <strong>de</strong>l archivo MMFSTART.CFG<br />

<strong>de</strong>s<strong>de</strong> el controlador SERCOS <strong>de</strong> QUANTUM.<br />

Este registro hace referencia a un módulo <strong>de</strong><br />

registros que <strong>de</strong>fine todos los argumentos <strong>de</strong> la<br />

configuración. Los dos últimos registros se<br />

<strong>de</strong>stinan al control <strong>de</strong> estado.<br />

Nodo inferior 4x INT El valor entero introducido en el nodo inferior<br />

especifica la longitud <strong>de</strong> la tabla. En ese caso, el<br />

número <strong>de</strong> registros en la tabla ha <strong>de</strong> ser 13.<br />

31007526 12/2006 129


CFGR<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Salida superior 0x Ninguno Se activa cuando la llamada <strong>de</strong> configuración <strong>de</strong><br />

leva ha finalizado <strong>de</strong> forma correcta.<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x Ninguno Se activa cuando la llamada <strong>de</strong> subrutina ha<br />

finalizado y se ha generado un código <strong>de</strong> error<br />

en el registro 4xxx10.<br />

Salida inferior 4x Ninguno Se activa cuando la longitud <strong>de</strong>l registro no se<br />

<strong>de</strong>fine como 13.<br />

Registros En la tabla siguiente se <strong>de</strong>scriben los registros <strong>de</strong> la instrucción.<br />

Registro Tipo <strong>de</strong> datos Descripción<br />

4xxxxx Corto ID <strong>de</strong> eje <strong>de</strong>l eje remoto que se va a configurar.<br />

4xxxx1 Corto Unida<strong>de</strong>s <strong>de</strong> velocidad <strong>de</strong>l eje.<br />

4xxxx2 Corto Número <strong>de</strong> unida<strong>de</strong>s <strong>de</strong> posición por<br />

4xxxx4 Corto Número <strong>de</strong> revoluciones <strong>de</strong>l motor.<br />

4xxxx6 Corto ID <strong>de</strong> eje <strong>de</strong>l eje SERCOS con regulación secundaria.<br />

4xxxx7 Corto Número <strong>de</strong> i<strong>de</strong>ntificación SERCOS <strong>de</strong>l regulador secundario<br />

(el valor pre<strong>de</strong>terminado es 53).<br />

4xxxx9 Corto Pointer <strong>de</strong> registro <strong>de</strong>l eje <strong>de</strong>l bloque <strong>de</strong> configuración.<br />

4xxx10 Corto Código <strong>de</strong> error generado por el bloque <strong>de</strong> configuración<br />

4xxx11 Corto Número <strong>de</strong> estado <strong>de</strong> funcionamiento actual<br />

4xxx12 Corto Conteo <strong>de</strong> entrada <strong>de</strong> estado actual<br />

130 31007526 12/2006


Presentación<br />

CFGS – Configurar eje SERCOS<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción CFGS.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

26<br />

Apartado Página<br />

Descripción breve 1<strong>32</strong><br />

Representación 133<br />

31007526 12/2006 131


CFGS<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

Información<br />

relacionada<br />

El bloque <strong>de</strong> funciones CFGS configura un eje Sercos. Cada eje <strong>de</strong> movimiento<br />

tiene un conjunto <strong>de</strong> parámetros <strong>de</strong> movimiento que se <strong>de</strong>be configurar antes <strong>de</strong><br />

utilizar el objeto <strong>de</strong>l eje <strong>de</strong> movimiento. La función <strong>de</strong> configuración ofrece el valor<br />

pre<strong>de</strong>terminado para estos parámetros. Los valores pre<strong>de</strong>terminados se colocan en<br />

un módulo <strong>de</strong> registros en espera en un or<strong>de</strong>n <strong>de</strong>terminado.<br />

Consulte el archivo Instrucciones cargables MMFStart para <strong>ProWORX</strong> <strong>32</strong> en la<br />

carpeta Programs\Lib\Quantum <strong>de</strong>l CD <strong>de</strong> instalación <strong>de</strong> <strong>ProWORX</strong> <strong>32</strong> para<br />

obtener información más <strong>de</strong>tallada acerca <strong>de</strong>l uso <strong>de</strong> las instrucciones cargables <strong>de</strong><br />

movimiento.<br />

1<strong>32</strong> 31007526 12/2006


Representación<br />

Símbolo El siguiente diagrama muestra una representación <strong>de</strong> la instrucción CFGS.<br />

Descripción <strong>de</strong><br />

parámetros<br />

ON inicia<br />

la configuración<br />

sin utilizar<br />

sin utilizar<br />

MMFSTART<br />

registro 4X<br />

dirección <strong>de</strong>l<br />

bloque <strong>de</strong> la<br />

tabla<br />

longitud <strong>de</strong> la<br />

tabla (20)<br />

config. ejecutada<br />

sin errores<br />

config. ejecutada con errores<br />

(consulte el registro <strong>de</strong> errores)<br />

En la tabla siguiente se <strong>de</strong>scriben los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

CFGS<br />

longitud <strong>de</strong> tabla incorrecta/timeout/<br />

revisión<br />

0x Ninguno ON inicia la función <strong>de</strong> configuración. Cuando<br />

esta entrada se <strong>de</strong>sactiva, la función vuelve a<br />

cero y se pue<strong>de</strong> iniciar <strong>de</strong> nuevo.<br />

Nodo superior 4x INT,<br />

UINT<br />

Nodo<br />

intermedio<br />

4x INT,<br />

UINT<br />

Dirección <strong>de</strong> la tabla <strong>de</strong> comunicación <strong>de</strong> registro<br />

MMFSTART 200. Suele ser 401001. Esta<br />

dirección se pue<strong>de</strong> configurar mediante la<br />

modificación <strong>de</strong>l archivo MMFSTART.CFG<br />

<strong>de</strong>s<strong>de</strong> el controlador SERCOS <strong>de</strong> QUANTUM.<br />

Este registro hace referencia a un módulo <strong>de</strong><br />

registros que <strong>de</strong>fine todos los argumentos <strong>de</strong> la<br />

configuración. Los dos últimos registros se<br />

<strong>de</strong>stinan al control <strong>de</strong> estado.<br />

Nodo inferior 4x INT El valor entero introducido en el nodo inferior<br />

especifica la longitud <strong>de</strong> la tabla. En ese caso, el<br />

número <strong>de</strong> registros en la tabla ha <strong>de</strong> ser 20.<br />

31007526 12/2006 133


CFGS<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Salida superior 0x Ninguno Se activa cuando la llamada <strong>de</strong> configuración <strong>de</strong><br />

leva ha finalizado <strong>de</strong> forma correcta.<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x Ninguno Se encien<strong>de</strong> cuando la llamada <strong>de</strong> subrutina ha<br />

finalizado y se ha generado un código <strong>de</strong> error en<br />

el registro 4xxx17.<br />

Salida inferior 0x Ninguno Se activa cuando la longitud <strong>de</strong>l registro no se<br />

<strong>de</strong>fine como 20.<br />

Registros En la tabla siguiente se <strong>de</strong>scriben los registros <strong>de</strong> la instrucción.<br />

Registro Tipo <strong>de</strong> datos Descripción<br />

4xxxxx Corto ID <strong>de</strong> eje <strong>de</strong>l eje SERCOS que se va a configurar.<br />

4xxxx1 Sin signo Unida<strong>de</strong>s <strong>de</strong> velocidad <strong>de</strong>l eje.<br />

4xxxx2 Coma flotante Numerador <strong>de</strong>l ratio <strong>de</strong>l equipo.<br />

4xxxx4 Coma flotante Denominador <strong>de</strong>l ratio <strong>de</strong>l equipo1 4xxxx6 Coma flotante Límite <strong>de</strong> posición positivo (opcional).<br />

4xxxx8 Coma flotante Límite <strong>de</strong> posición negativo (opcional).<br />

4xxx10 Coma flotante Límite <strong>de</strong> velocidad (opcional).<br />

4xxx12 Coma flotante Aceleración pre<strong>de</strong>terminada (opcional).<br />

4xxx14 Coma flotante Deceleración pre<strong>de</strong>terminada (opcional).<br />

4xxx16 Bloque <strong>de</strong><br />

registros<br />

Pointer <strong>de</strong> registro <strong>de</strong>l eje <strong>de</strong>l bloque <strong>de</strong> configuración.<br />

4xxx17 Corto Código <strong>de</strong> error generado por el bloque <strong>de</strong> configuración<br />

4xxx18 Corto Número <strong>de</strong> estado <strong>de</strong> funcionamiento actual<br />

4xxx19 Corto Conteo <strong>de</strong> entrada <strong>de</strong> estado actual<br />

1 Las unida<strong>de</strong>s asociadas a este valor son revoluciones <strong>de</strong>l regulador. Normalmente, el<br />

regulador está unido <strong>de</strong> forma directa al eje <strong>de</strong>l motor y, por lo tanto, este parámetro <strong>de</strong>fine<br />

las revoluciones <strong>de</strong>l motor necesarias para generar el traslado físico <strong>de</strong>finido por el<br />

numerador.<br />

134 31007526 12/2006


Presentación<br />

CHS:<br />

Configuración <strong>de</strong> Hot Standby<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción CHS.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

27<br />

Apartado Página<br />

Descripción breve 136<br />

Representación 137<br />

Descripción <strong>de</strong> parámetros 139<br />

31007526 12/2006 135


CHS: Configuración <strong>de</strong> Hot Standby<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción sólo estará disponible si ha expandido e instalado las<br />

instrucciones cargables DX; encontrará más información en p. 49.<br />

La lógica en la instrucción cargable CHS es el motor que maneja la función Hot<br />

Standby en el sistema <strong>de</strong> un PLC Quantum. Al contrario que en el caso <strong>de</strong> la<br />

instrucción HSBY, el uso <strong>de</strong> la instrucción CHS en el programa Lad<strong>de</strong>r <strong>Logic</strong> es<br />

opcional. En cualquier caso, <strong>de</strong>berá instalarse el software cargable en el PLC<br />

Quantum para po<strong>de</strong>r poner en marcha un sistema Hot Standby.<br />

136 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control activa<br />

registro <strong>de</strong><br />

comando<br />

registro <strong>de</strong> comando<br />

habilitar área no<br />

transferible<br />

Longitud: 4–8.000<br />

registros<br />

área no<br />

transferible<br />

longitud <strong>de</strong><br />

CHS: Configuración <strong>de</strong> Hot Standby<br />

31007526 12/2006 137<br />

CHS<br />

error<br />

config. ext. presente


CHS: Configuración <strong>de</strong> Hot Standby<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno Ejecutar Hot Standby<br />

(incondicionalmente).<br />

0x, 1x Ninguno ON = habilitar registro <strong>de</strong> comando.<br />

Entrada inferior 0x, 1x Ninguno ON = habilitar área no transferible.<br />

OFF = el área no transferible no se<br />

utilizará y no existirá el registro <strong>de</strong> estado<br />

<strong>de</strong> Hot Standby.<br />

Registro <strong>de</strong><br />

comando<br />

(nodo superior)<br />

Área no<br />

transferible<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

4x INT, UINT,<br />

WORD<br />

4x INT, UINT,<br />

WORD<br />

Registro <strong>de</strong> comando Hot Standby<br />

(Para obtener información más <strong>de</strong>tallada<br />

consulte p. 140.)<br />

Primer registro en el área no transferible<br />

<strong>de</strong> la memoria <strong>de</strong> señal.<br />

(Para obtener información más <strong>de</strong>tallada<br />

consulte p. 141.)<br />

INT, UINT Número <strong>de</strong> registros <strong>de</strong>l área no<br />

transferible <strong>de</strong> Hot Standby en la memoria<br />

<strong>de</strong> señal; rango 48.000<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = el sistema <strong>de</strong>tecta un error <strong>de</strong><br />

interfase.<br />

Salida inferior 0x Ninguno ON = configuración <strong>de</strong>l sistema<br />

establecida por extensión <strong>de</strong><br />

configuración.<br />

138 31007526 12/2006


Descripción <strong>de</strong> parámetros<br />

Configuración<br />

<strong>de</strong>l sistema Hot<br />

Standby<br />

mediante la<br />

instrucción CHS<br />

Descripción<br />

<strong>de</strong> parámetros:<br />

Ejecutar Hot<br />

Standby<br />

(entrada<br />

superior)<br />

CHS: Configuración <strong>de</strong> Hot Standby<br />

Programe la instrucción CHS en la red 1, segmento 1 <strong>de</strong> su programa Lad<strong>de</strong>r <strong>Logic</strong><br />

y conecte incondicionalmente la entrada superior al raíl <strong>de</strong> alimentación mediante<br />

una conexión horizontal (puesto que la instrucción HSBY está programada en un<br />

sistema Hot Standby 984).<br />

Este método es especialmente útil cuando se transporta un código Hot Standby<br />

<strong>de</strong>s<strong>de</strong> una aplicación 984 a una aplicación Quantum. La estructura <strong>de</strong> la instrucción<br />

CHS es casi la misma que la <strong>de</strong> la instrucción HSBY. Simplemente tendrá que<br />

retirar la instrucción HSBY <strong>de</strong> 984LL y sustituirla por una instrucción CHS en la<br />

lógica Quantum.<br />

Si utiliza la instrucción CHS en Lad<strong>de</strong>r <strong>Logic</strong>, la única diferencia con la instrucción<br />

HSBY será la utilización <strong>de</strong> la salida inferior. Esta salida <strong>de</strong>tecta si se ha utilizado o<br />

no el método 2. Si se han utilizado las pantallas <strong>de</strong> extensión <strong>de</strong> configuración Hot<br />

Standby para <strong>de</strong>finir la configuración Hot Standby, los parámetros <strong>de</strong> configuración<br />

en las pantallas sobrescribirán cualquier parámetro distinto <strong>de</strong>finido por la<br />

instrucción CHS al arrancar el sistema.<br />

Para obtener información <strong>de</strong>tallada acerca <strong>de</strong> los temas relacionados con las<br />

funciones <strong>de</strong> extensión <strong>de</strong> configuración <strong>de</strong> un sistema Hot Standby <strong>de</strong> Quantum,<br />

consulte el Manual para la planificación e instalación <strong>de</strong> Hot Standby Quantum.<br />

Cuando se introduce la instrucción CHS en Lad<strong>de</strong>r <strong>Logic</strong> para controlar los<br />

parámetros <strong>de</strong> configuración Hot Standby, su entrada superior <strong>de</strong>be estar<br />

conectada directamente al raíl <strong>de</strong> alimentación mediante una conexión horizontal.<br />

No se <strong>de</strong>be colocar ninguna lógica <strong>de</strong> control como, por ejemplo, contactos entre el<br />

raíl y la entrada al nodo superior.<br />

ADVERTENCIA<br />

COMPORTAMIENTO IRREGULAR DEL SISTEMA HOT STANDBY<br />

No habilite ni <strong>de</strong>shabilite el área no transferible mientras se esté ejecutando el<br />

sistema Hot Standby.<br />

Aunque está permitido hacerlo, <strong>de</strong>saconsejamos esta práctica, porque pue<strong>de</strong><br />

producir un comportamiento irregular <strong>de</strong>l sistema Hot Standby.<br />

Si no se respetan estas precauciones pue<strong>de</strong>n producirse graves lesiones,<br />

daños materiales o incluso la muerte.<br />

31007526 12/2006 139


CHS: Configuración <strong>de</strong> Hot Standby<br />

Descripción <strong>de</strong><br />

parámetros:<br />

Registro <strong>de</strong><br />

comando (nodo<br />

superior)<br />

El registro 4x introducido en el nodo superior es el registro <strong>de</strong> comando Hot<br />

Standby; ocho bits en este registro para configurar y controlar los parámetros <strong>de</strong>l<br />

sistema Hot Standby.<br />

Utilización <strong>de</strong> la palabra <strong>de</strong> comando:<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 5 Sin utilizar.<br />

6 0 = intercambiar dirección <strong>de</strong>l puerto Modbus 3 al conmutar.<br />

1 = no intercambiar.<br />

7 0 = intercambiar dirección <strong>de</strong>l puerto Modbus 2 al conmutar.<br />

1 = no intercambiar.<br />

8 0 = intercambiar dirección <strong>de</strong>l puerto Modbus 1 al conmutar.<br />

1 = no intercambiar.<br />

9 - 11 Sin utilizar.<br />

12 0 = permitir actualización <strong>de</strong> Exec sólo <strong>de</strong>spués <strong>de</strong> que se <strong>de</strong>tenga la aplicación.<br />

1 = permitir la actualización sin <strong>de</strong>tener la aplicación.<br />

13 0 = forzar Standby Offline, en caso <strong>de</strong> que aparezca una discrepancia <strong>de</strong> lógica.<br />

1 = no forzar.<br />

14 0 = el controlador B se encuentra en modalidad OFFLINE.<br />

1 = el controlador B se encuentra en RUN.<br />

15 0 = el controlador A se encuentra en modalidad OFFLINE.<br />

1 = el controlador A se encuentra en RUN.<br />

16 0 = <strong>de</strong>sactivar sobrescritura <strong>de</strong> conmutador llave.<br />

1 = habilitar la sobrescritura.<br />

Nota: El registro <strong>de</strong> comando Hot Standby <strong>de</strong>be estar fuera <strong>de</strong>l área no<br />

transferible <strong>de</strong> la memoria <strong>de</strong> señal.<br />

140 31007526 12/2006


Descripción <strong>de</strong><br />

parámetros: área<br />

no transferible<br />

(nodo<br />

intermedio)<br />

Registro <strong>de</strong><br />

estado CHS<br />

CHS: Configuración <strong>de</strong> Hot Standby<br />

El registro 4x introducido en el nodo intermedio es el primer registro <strong>de</strong>l área no<br />

transferible <strong>de</strong> la memoria <strong>de</strong> señal. El área no transferible <strong>de</strong>be contener al menos<br />

cuatro registros; los tres primeros <strong>de</strong>ben tener un uso pre<strong>de</strong>finido:<br />

Registro Contenido<br />

Visualizado y primer implícito Registros <strong>de</strong> transferencia inversa para pasar información<br />

<strong>de</strong>l standby al PLC primario.<br />

Segundo implícito Registro <strong>de</strong> estado CHS<br />

El contenido <strong>de</strong> los registros restantes es específico <strong>de</strong> la aplicación; la longitud<br />

está <strong>de</strong>finida en el parámetro longitud (nodo inferior).<br />

Los registros 4x <strong>de</strong>l área no transferible nunca se transfieren <strong>de</strong>l PLC primario al<br />

standby durante los ciclos lógicos. Un motivo para programar registros adicionales<br />

en el área no transferible es reducir el impacto <strong>de</strong> la transferencia <strong>de</strong> memoria <strong>de</strong><br />

señal en el tiempo <strong>de</strong> ciclo total <strong>de</strong>l sistema.<br />

Utilización <strong>de</strong> la palabra <strong>de</strong> estado:<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = la salida superior está activa (lo que indica que el sistema Hot Standby está<br />

activo).<br />

2 1 = la salida intermedia está activa (lo que indica un estado <strong>de</strong> error).<br />

3 - 10 Sin utilizar.<br />

11 0 = el conmutador <strong>de</strong>l PLC está establecido en A.<br />

1 = el conmutador <strong>de</strong>l PLC está establecido en B.<br />

12 0 = hay coinci<strong>de</strong>ncia con la lógica <strong>de</strong>l PLC.<br />

1 = hay una discrepancia <strong>de</strong> lógica.<br />

13 - 14 El valor <strong>de</strong> los 2 bits es:<br />

0 1 si el otro PLC se encuentra en modalidad OFFLINE.<br />

1 0 si el otro PLC está funcionando en modalidad primario.<br />

1 1 si el otro PLC está funcionando en modalidad standby.<br />

15 - 16 El valor <strong>de</strong> los dos bits es:<br />

0 1 si este PLC se encuentra en modalidad OFFLINE.<br />

1 0 si este PLC está funcionando en modalidad primaria.<br />

1 1 si este PLC está funcionando en modalidad standby.<br />

31007526 12/2006 141


CHS: Configuración <strong>de</strong> Hot Standby<br />

142 31007526 12/2006


Presentación<br />

CKSM: Suma <strong>de</strong> control<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción CKSM.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

28<br />

Apartado Página<br />

Descripción breve 144<br />

Representación 145<br />

Descripción <strong>de</strong> los parámetros 147<br />

31007526 12/2006 143


CKSM: Suma <strong>de</strong> control<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Hay varios PLC que no admiten Modbus Plus y que cuentan con una instrucción <strong>de</strong><br />

suma <strong>de</strong> control estándar (CKSM). La instrucción CKSM tiene el mismo código<br />

operacional que la instrucción MSTR y no se proporciona en firmware executive<br />

para los PLC que admiten Modbus Plus.<br />

144 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

CKSM: Suma <strong>de</strong> control<br />

entrada <strong>de</strong> control suma <strong>de</strong> control completada<br />

fuente<br />

selección CKSM 1 conteo <strong>de</strong> registros implícitos ><br />

selección CKSM 2<br />

Longitud: 1–255<br />

registros<br />

resultado/<br />

conteo<br />

longitud <strong>de</strong><br />

CKSM<br />

longitud<br />

o<br />

conteo <strong>de</strong> registros implícitos = 0<br />

31007526 12/2006 145


CKSM: Suma <strong>de</strong> control<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno Comienza a calcular la suma <strong>de</strong> control <strong>de</strong> la<br />

tabla <strong>de</strong> fuente.<br />

(Para obtener información más<br />

<strong>de</strong>tallada consulte Descripción <strong>de</strong> los<br />

parámetros: p. 147.)<br />

0x,1x Ninguno Selección CKSM 1.<br />

(Para obtener información más<br />

<strong>de</strong>tallada consulte Descripción <strong>de</strong> los<br />

parámetros: p. 147.)<br />

Entrada inferior 0x, 1x Ninguno Selección CKSM 2.<br />

(Para obtener información más<br />

<strong>de</strong>tallada consulte Descripción <strong>de</strong> los<br />

parámetros: p. 147.)<br />

Fuente<br />

(nodo superior)<br />

Resultado/<br />

conteo<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

4x INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

Primer registro en espera <strong>de</strong> la tabla <strong>de</strong> fuente.<br />

El cálculo <strong>de</strong> la suma <strong>de</strong> control se realiza en<br />

los registros <strong>de</strong> esta tabla.<br />

Primero <strong>de</strong> dos registros contiguos.<br />

(Para obtener información más <strong>de</strong>tallada<br />

consulte p. 147.)<br />

INT Número <strong>de</strong> registros 4x en la tabla <strong>de</strong> fuente,<br />

rango: 1...255<br />

Salida superior 0x Ninguno ON = cálculo <strong>de</strong> suma <strong>de</strong> control satisfactorio.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = cantidad <strong>de</strong> registros implícitos > longitud<br />

o cantidad <strong>de</strong> registros implícitos = 0.<br />

146 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

CKSM: Suma <strong>de</strong> control<br />

Entradas El estado <strong>de</strong> las entradas indica el tipo <strong>de</strong> cálculo <strong>de</strong> suma <strong>de</strong> control que se ha <strong>de</strong><br />

realizar.<br />

Resultado/<br />

cantidad<br />

(asiento<br />

intermedio)<br />

Cálculo CKSM Entrada superior Entrada intermedia Entrada inferior<br />

Control directo Activo Inactivo Activo<br />

Control <strong>de</strong> adición binaria Activo Activo Activo<br />

CRC-16 Activo Activo Inactivo<br />

LRC Activo Inactivo Inactivo<br />

El registro 4x introducido en el asiento intermedio es el primero <strong>de</strong> dos registros 4x<br />

contiguos.<br />

Registro Contenido<br />

Visualizado Guarda el resultado <strong>de</strong>l cálculo <strong>de</strong> la suma <strong>de</strong> control.<br />

Primer implícito Coloca un valor que especifica el número <strong>de</strong> registros seleccionados <strong>de</strong><br />

la tabla <strong>de</strong> fuente como entrada <strong>de</strong>l cálculo. El valor colocado en el<br />

registro implícito <strong>de</strong>be ser ≤ longitud <strong>de</strong> la tabla <strong>de</strong> fuente.<br />

31007526 12/2006 147


CKSM: Suma <strong>de</strong> control<br />

148 31007526 12/2006


Presentación<br />

CMPR: Comparar registro<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción CMPR.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

29<br />

Apartado Página<br />

Descripción breve 150<br />

Representación 151<br />

Descripción <strong>de</strong> los parámetros 152<br />

31007526 12/2006 149


CMPR: Comparar registro<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción CMPR compara el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> la matriz a con el mo<strong>de</strong>lo <strong>de</strong> bits<br />

<strong>de</strong> la matriz b, con el fin <strong>de</strong> <strong>de</strong>scubrir las discrepancias. En un único ciclo, se<br />

comparan una a una cada posición <strong>de</strong> bit en las dos matrices, hasta encontrar una<br />

discrepancia o alcanzar el final <strong>de</strong> las matrices (sin discrepancias).<br />

150 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

primer registro o<br />

dirección binaria<br />

<strong>de</strong> la matriz<br />

restablecer pointer<br />

Longitud: 1–100 registros<br />

(<strong>de</strong> 16 a 1.600 bits)<br />

matriz a<br />

registro <strong>de</strong><br />

pointer<br />

(matriz b)<br />

longitud <strong>de</strong><br />

CMPR<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

discrepancia<br />

CMPR: Comparar registro<br />

estado <strong>de</strong> la discrepancia<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = inicia la operación <strong>de</strong> comparación.<br />

Entrada intermedia 0x, 1x Ninguno OFF = reinicio a partir <strong>de</strong> la última<br />

discrepancia.<br />

ON = reinicio <strong>de</strong>s<strong>de</strong> el principio.<br />

Matriz a<br />

(nodo superior)<br />

Registro <strong>de</strong> pointer<br />

(nodo intermedio)<br />

Longitud<br />

(nodo inferior)<br />

0x, 1x, 3x, 4x ANY_BIT Primera referencia en la matriz a, una <strong>de</strong><br />

las dos matrices que van a compararse.<br />

4x WORD Pointer a matriz b: el primer registro <strong>de</strong> la<br />

matriz b es el registro 4x contiguo siguiente<br />

al registro <strong>de</strong>l pointer.<br />

INT,<br />

UINT<br />

Longitud <strong>de</strong> la matriz; rango: 1...100<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida intermedia 0x Ninguno ON = se ha <strong>de</strong>tectado una discrepancia en<br />

la comparación.<br />

Salida inferior 0x Ninguno ON = el bit distinto en la matriz a es 1.<br />

OFF = el bit distinto en la matriz a es 0.<br />

31007526 12/2006 151


CMPR: Comparar registro<br />

Descripción <strong>de</strong> los parámetros<br />

Registro<br />

<strong>de</strong> pointer<br />

(asiento<br />

intermedio)<br />

Longitud<br />

<strong>de</strong> la matriz<br />

(asiento inferior)<br />

El registro <strong>de</strong> pointer introducido en el asiento intermedio tiene que ser un registro<br />

<strong>de</strong> salida 4x. Se trata <strong>de</strong>l pointer a la matriz b, es <strong>de</strong>cir, la otra matriz que va a<br />

compararse. El primer registro <strong>de</strong> la matriz b es el registro 4x contiguo siguiente al<br />

registro <strong>de</strong> pointer.<br />

El valor almacenado <strong>de</strong>ntro <strong>de</strong>l registro <strong>de</strong> pointer se incrementa con cada posición<br />

<strong>de</strong> bit comparada en las dos matrices. Cuando se compara la posición <strong>de</strong> bit 1 <strong>de</strong><br />

la matriz a y <strong>de</strong> la matriz b, el registro <strong>de</strong> pointer contiene un valor <strong>de</strong> 1; cuando se<br />

compara la posición <strong>de</strong> bit 2 en ambas matrices, el valor en el registro <strong>de</strong> pointer se<br />

incrementa a 2, etc.<br />

Cuando la salida indica una discrepancia, se pue<strong>de</strong> verificar la cantidad acumulada<br />

en el registro <strong>de</strong> pointer para <strong>de</strong>terminar la posición <strong>de</strong> bit en las matrices <strong>de</strong> la<br />

discrepancia.<br />

El valor entero introducido en el asiento inferior especifica una longitud <strong>de</strong> las dos<br />

matrices, es <strong>de</strong>cir, el número <strong>de</strong> registros o <strong>de</strong> palabras <strong>de</strong> 16 bits que hay en cada<br />

matriz. Las matrices a y b tienen la misma longitud. La longitud <strong>de</strong> la matriz pue<strong>de</strong><br />

ir <strong>de</strong> 1 a 100; es <strong>de</strong>cir, una longitud <strong>de</strong> 2 significa que las matrices a y b contienen<br />

<strong>32</strong> bits.<br />

152 31007526 12/2006


Presentación<br />

Bobinas<br />

Introducción Este capítulo <strong>de</strong>scribe el elemento <strong>de</strong> instrucción Coils.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

30<br />

Apartado Página<br />

Descripción breve 154<br />

Directrices generales <strong>de</strong> uso 155<br />

31007526 12/2006 153


Bobinas<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

Una bobina es una salida binaria que se activa y <strong>de</strong>sactiva según el flujo <strong>de</strong> señal<br />

en el programa lógico. Una bobina simple se vincula a una referencia 0xxxx en la<br />

memoria <strong>de</strong> señal <strong>de</strong>l PLC. Debido a que los valores <strong>de</strong> salida se actualizan en la<br />

memoria <strong>de</strong> señal <strong>de</strong>l PLC, se pue<strong>de</strong> usar una bobina <strong>de</strong> forma interna en el<br />

programa lógico, o <strong>de</strong> forma externa a través <strong>de</strong> la asignación <strong>de</strong> E/S con una<br />

unidad <strong>de</strong> salida binaria en el sistema <strong>de</strong> control. Cuando una bobina esté activa,<br />

transmitirá la señal a un circuito <strong>de</strong> salida binario o cambiará el estado <strong>de</strong> un<br />

contacto <strong>de</strong> relé interno <strong>de</strong> la memoria <strong>de</strong> señal.<br />

Tipos <strong>de</strong> bobina Existen dos tipos <strong>de</strong> bobinas:<br />

Bobina normal -( )-<br />

Una bobina normal o no retentiva pier<strong>de</strong> el estado cuando el controlador <strong>de</strong>ja <strong>de</strong><br />

recibir alimentación.<br />

Cuando se elimina la alimentación <strong>de</strong>l PLC, se <strong>de</strong>sactiva una bobina normal. Al<br />

restaurar la alimentación, la bobina permanecerá inactiva durante el primer ciclo<br />

lógico.<br />

Bobina retentiva <strong>de</strong> memoria o con retención -(M)- o -(L)-<br />

Este tipo <strong>de</strong> bobina NO pier<strong>de</strong> el estado cuando el controlador <strong>de</strong>ja <strong>de</strong> recibir<br />

alimentación.<br />

Si una bobina retentiva <strong>de</strong> memoria (o con retención) está activa cuando el PLC<br />

pier<strong>de</strong> la alimentación, volverá a encontrarse en ese mismo estado cuando se<br />

restaure la alimentación. La bobina mantendrá el estado activo durante el primer<br />

ciclo lógico y, a continuación, el programa lógico tomará el control.<br />

Las bobinas reciben una referencia como 0xxxx. Es posible bloquearlas y activarlas<br />

o <strong>de</strong>sactivarlas. Al bloquear una bobina, se impi<strong>de</strong> que la lógica programada por el<br />

usuario cambie el estado <strong>de</strong> dicha bobina.<br />

Nota: Los <strong>bloques</strong> <strong>de</strong> función DX pue<strong>de</strong>n sobrescribir el estado <strong>de</strong> las bobinas<br />

bloqueadas que se utilizan como <strong>de</strong>stinos.<br />

154 31007526 12/2006


Directrices generales <strong>de</strong> uso<br />

Descripción<br />

general<br />

Habilitar/<br />

Desactivar<br />

capacida<strong>de</strong>s <strong>de</strong><br />

valores binarios<br />

Forzado <strong>de</strong><br />

registros<br />

binarios<br />

ON y OFF<br />

Bobinas<br />

Una vez asignado un número <strong>de</strong> referencia 0x a una bobina, no podrá asignarse a<br />

ninguna otra en el programa lógico.<br />

Un número <strong>de</strong> referencia 0x pue<strong>de</strong> referenciarse para cualquier número <strong>de</strong><br />

contactos <strong>de</strong> relé, que pue<strong>de</strong>n controlarse mediante el estado <strong>de</strong> la bobina con el<br />

mismo número <strong>de</strong> referencia. La mayor parte <strong>de</strong> los paquetes <strong>de</strong> software disponen<br />

<strong>de</strong> una función <strong>de</strong> seguimiento don<strong>de</strong> el usuario pue<strong>de</strong> localizar en Lad<strong>de</strong>r <strong>Logic</strong> las<br />

posiciones <strong>de</strong> los contactos controlados por una bobina. Para obtener más<br />

información, consulte el manual <strong>de</strong>l usuario <strong>de</strong> software.<br />

Mediante el software <strong>de</strong> panel, pue<strong>de</strong> <strong>de</strong>sactivar una bobina lógica o una entrada<br />

binaria en el programa lógico.<br />

Una condición <strong>de</strong> <strong>de</strong>sactivación provocará lo siguiente:<br />

El dispositivo <strong>de</strong> campo <strong>de</strong> entrada no tendrá ningún control sobre su lógica 1x<br />

asignada.<br />

La lógica no tendrá control sobre el valor 9x <strong>de</strong>sactivado.<br />

La protección <strong>de</strong> memoria <strong>de</strong>l PLC <strong>de</strong>be estar inactiva antes <strong>de</strong> <strong>de</strong>sactivar o<br />

habilitar una bobina o una entrada binaria.<br />

Nota: Existe una excepción importante que es necesario tener en cuenta a la hora<br />

<strong>de</strong> <strong>de</strong>sactivar bobinas:<br />

Las funciones <strong>de</strong> transferencia <strong>de</strong> datos permiten que las bobinas reconozcan en<br />

sus nodos <strong>de</strong> <strong>de</strong>stino el estado activo/inactivo actual <strong>de</strong> todas las bobinas,<br />

in<strong>de</strong>pendientemente <strong>de</strong> si están <strong>de</strong>sactivadas o no. Este reconocimiento hace que<br />

la lógica responda consecuentemente (quizá reproduciendo efectos inesperados<br />

y no <strong>de</strong>seados).<br />

Si espera que una bobina <strong>de</strong>sactivada permanezca en dicho estado en la función<br />

DX, la aplicación pue<strong>de</strong> sufrir efectos inesperados y no <strong>de</strong>seados.<br />

La mayor parte <strong>de</strong>l software <strong>de</strong> panel también proporciona capacida<strong>de</strong>s <strong>de</strong> forzar a<br />

ON y OFF. Cuando una bobina o entrada binaria está <strong>de</strong>sactivada, pue<strong>de</strong> cambiar<br />

el estado <strong>de</strong> OFF a ON con la capacidad <strong>de</strong> FORCE ON o FORCE OFF.<br />

Cuando una bobina o entrada binaria está habilitada, no pue<strong>de</strong> forzarse a ON u<br />

OFF.<br />

31007526 12/2006 155


Bobinas<br />

156 31007526 12/2006


Presentación<br />

COMM -<br />

Función <strong>de</strong> comunicación ASCII<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción COMM.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

31<br />

Apartado Página<br />

Descripción breve 158<br />

Representación 159<br />

31007526 12/2006 157


COMM – Función <strong>de</strong> comunicación ASCII<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

El bloque <strong>de</strong> funciones <strong>de</strong> comunicación ASCII (COMM) se utiliza para transmitir/<br />

recibir datos ASCII (en forma <strong>de</strong> un solo carácter ASCII, <strong>de</strong> uno a cuatro números<br />

enteros o <strong>de</strong> uno a cuatro hexa<strong>de</strong>cimales) dirigidos o proce<strong>de</strong>ntes <strong>de</strong> un solo puerto<br />

ASCII. La instrucción COMM permite leer y escribir mensajes preestablecidos<br />

dirigidos o proce<strong>de</strong>ntes <strong>de</strong> dispositivos <strong>de</strong> entrada o salida <strong>de</strong> caracteres ASCII a<br />

través <strong>de</strong> uno <strong>de</strong> los puertos <strong>de</strong> comunicación incorporados en un PLC Micro o, en<br />

caso <strong>de</strong> que el PLC sea primario, a través <strong>de</strong> un puerto <strong>de</strong> comunicación en uno <strong>de</strong><br />

los PLC secundarios en el vínculo <strong>de</strong> expansión.<br />

Nota: Disponible únicamente en los controladores 311, 411, 512 y 612 Micro.<br />

158 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

fuente para escrituras/<br />

<strong>de</strong>stino para lecturas<br />

Cancelación<br />

(Tamaño <strong>de</strong>l área <strong>de</strong><br />

datos: 3–255)<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

bloque <strong>de</strong><br />

control<br />

Bloque <strong>de</strong><br />

datos<br />

Longitud<br />

COMM<br />

(3...255)<br />

Tipo <strong>de</strong><br />

datos<br />

COMM – Función <strong>de</strong> comunicación ASCII<br />

Significado<br />

activa<br />

31007526 12/2006 159<br />

error<br />

correcta<br />

0x, 1x Ninguno ON inicia la operación COMM.<br />

Entrada inferior 0x, 1x Ninguno En estado activo <strong>de</strong>tiene la operación y<br />

establece la salida intermedia.<br />

Bloque <strong>de</strong><br />

control<br />

(nodo superior)<br />

Bloque <strong>de</strong> datos<br />

(nodo<br />

intermedio)<br />

4x INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

El registro 4xxxx introducido en el nodo superior<br />

es el primero <strong>de</strong> diez registros en espera<br />

contiguos <strong>de</strong>l bloque <strong>de</strong> control.<br />

Para obtener información sobre la utilización <strong>de</strong><br />

los registros, consulte la Tabla <strong>de</strong> utilización <strong>de</strong><br />

registros que aparece a continuación.<br />

El nodo intermedio contiene el primer registro<br />

4xxxx <strong>de</strong>l bloque <strong>de</strong> datos; una tabla en la que<br />

se insertan datos <strong>de</strong> mensajes <strong>de</strong> variables. En<br />

una operación <strong>de</strong> lectura, el bloque <strong>de</strong> datos es<br />

una tabla <strong>de</strong> <strong>de</strong>stino. En una operación <strong>de</strong><br />

escritura, el bloque <strong>de</strong> datos es una tabla <strong>de</strong><br />

fuente.


COMM – Función <strong>de</strong> comunicación ASCII<br />

Tabla <strong>de</strong><br />

utilización <strong>de</strong><br />

registros<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Longitud<br />

(nodo inferior)<br />

(Salida<br />

superior)<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

INT,<br />

UINT<br />

Significado<br />

El valor entero que se ha introducido en el nodo<br />

inferior especifica la longitud, es <strong>de</strong>cir, el número<br />

<strong>de</strong> registros <strong>de</strong>l bloque <strong>de</strong> datos. La longitud<br />

pue<strong>de</strong> variar <strong>de</strong> 3 a 255.<br />

0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

0x Ninguno ON = error <strong>de</strong>tectado (para un ciclo).<br />

Salida inferior 0x Ninguno ON = operación completada (para un ciclo).<br />

En esta tabla se <strong>de</strong>talla la utilización <strong>de</strong> registros para el nodo superior.<br />

Registro Uso<br />

4xxxx + 0 Código <strong>de</strong> operación<br />

4xxxx + 1 Estado <strong>de</strong> error<br />

4xxxx + 2 Número <strong>de</strong> campos <strong>de</strong> datos proporcionados/esperados<br />

4xxxx + 3 Número <strong>de</strong> campos <strong>de</strong> datos procesados<br />

4xxxx + 4 Reservado<br />

4xxxx + 5 Número <strong>de</strong> puerto (1 para puerto local, 2 para el puerto secundario n.º 1, 3<br />

para el puerto secundario n.º 2, etc.)<br />

4xxxx + 6 Reservado<br />

4xxxx + 7 Reservado<br />

4xxxx + 8 Reservado<br />

4xxxx + 9 Temporizador <strong>de</strong> estado activo<br />

160 31007526 12/2006


Presentación<br />

COMP: Complementar una matriz<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción COMP.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

<strong>32</strong><br />

Apartado Página<br />

Descripción breve 162<br />

Representación 163<br />

Descripción <strong>de</strong> los parámetros 165<br />

31007526 12/2006 161


COMP: Complementar una matriz<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

La instrucción COMP complementa el mo<strong>de</strong>lo <strong>de</strong> bits, es <strong>de</strong>cir, cambia todos los<br />

ceros a unos y todos los unos a ceros en una matriz <strong>de</strong> fuente y, a continuación,<br />

copia el mo<strong>de</strong>lo <strong>de</strong> bits complementado en la matriz <strong>de</strong> <strong>de</strong>stino. La operación<br />

completa COMP se realiza en un ciclo.<br />

ADVERTENCIA<br />

BOBINAS BLOQUEADAS<br />

Antes <strong>de</strong> utilizar la instrucción COMP, compruebe que no hay bobinas bloqueadas.<br />

COMP sobrescribirá las bobinas bloqueadas <strong>de</strong>ntro <strong>de</strong> una matriz <strong>de</strong> <strong>de</strong>stino sin<br />

habilitarlas. Esto pue<strong>de</strong> provocar daños si se ha bloqueado una bobina para su<br />

reparación o mantenimiento, ya que el estado <strong>de</strong> la bobina pue<strong>de</strong> cambiar como<br />

resultado <strong>de</strong> una instrucción COMP.<br />

Si no se respetan estas precauciones pue<strong>de</strong>n producirse graves lesiones,<br />

daños materiales o incluso la muerte.<br />

162 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

fuente<br />

primer registro o<br />

dirección binaria<br />

<strong>de</strong> la matriz<br />

primer registro o<br />

dirección binaria<br />

<strong>de</strong> la matriz<br />

Longitud: 1–100<br />

registros<br />

(<strong>de</strong> 16 a 1.600 bits)<br />

<strong>de</strong>stino<br />

longitud <strong>de</strong><br />

COMP<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Fuente<br />

(nodo superior)<br />

Destino<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

COMP: Complementar una matriz<br />

0x, 1x Ninguno ON = inicia la operación <strong>de</strong> complementación.<br />

0x, 1x, 3x, 4x ANY_BIT Primera referencia en la matriz <strong>de</strong> fuente, que<br />

contiene el mo<strong>de</strong>lo <strong>de</strong> bits original antes <strong>de</strong> la<br />

operación <strong>de</strong> complementación.<br />

0x, 4x ANY_BIT Primera referencia en la matriz <strong>de</strong> <strong>de</strong>stino,<br />

don<strong>de</strong> se <strong>de</strong>positará el mo<strong>de</strong>lo <strong>de</strong> bits<br />

complementado.<br />

INT, UINT Longitud <strong>de</strong> la matriz; rango: 1...100.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

31007526 12/2006 163


COMP: Complementar una matriz<br />

Ejemplo <strong>de</strong><br />

COMP<br />

Cuando el contacto 10001 transfiere alimentación, el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> la matriz <strong>de</strong><br />

fuente (registros 40600 y 40601) se complementa y, a continuación, se <strong>de</strong>posita en<br />

la matriz <strong>de</strong> <strong>de</strong>stino (registros 40602 y 40603). El mo<strong>de</strong>lo <strong>de</strong> bits original se<br />

mantiene en la matriz <strong>de</strong> fuente.<br />

10001<br />

40600<br />

40602<br />

COMP<br />

00002<br />

matriz <strong>de</strong> fuente<br />

40600 = 1111111100000000 40601 = 1111111100000000<br />

matriz <strong>de</strong> <strong>de</strong>stino completada<br />

40602 = 000000011111111 40603 = 0000000011111111<br />

164 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Longitud<br />

<strong>de</strong> la matriz<br />

(asiento inferior)<br />

COMP: Complementar una matriz<br />

El valor entero que se ha introducido en el asiento inferior especifica la longitud <strong>de</strong><br />

la matriz, es <strong>de</strong>cir, el número <strong>de</strong> registros o <strong>de</strong> palabras <strong>de</strong> 16 bits que hay en las<br />

dos matrices. La longitud <strong>de</strong> la matriz pue<strong>de</strong> ir <strong>de</strong> 1 a 100. Una longitud 2 indica que<br />

se complementarán <strong>32</strong> bits en cada matriz.<br />

31007526 12/2006 165


COMP: Complementar una matriz<br />

166 31007526 12/2006


Presentación<br />

Contactos<br />

Introducción Este capítulo <strong>de</strong>scribe el elemento <strong>de</strong> instrucción Contacts.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

33<br />

Apartado Página<br />

Descripción breve 168<br />

Representación 169<br />

31007526 12/2006 167


Contactos<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> funciones<br />

Los contactos se utilizan para transmitir o inhibir el flujo <strong>de</strong> señal en un programa<br />

<strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong>.<br />

168 31007526 12/2006


Representación<br />

Descripción <strong>de</strong><br />

las funciones<br />

Referencia a<br />

contactos<br />

normalmente<br />

abiertos o<br />

cerrados<br />

Referencia a<br />

contactos <strong>de</strong><br />

transición<br />

Contactos<br />

Son valores binarios, es <strong>de</strong>cir, cada uno requiere un punto <strong>de</strong> E/S en Lad<strong>de</strong>r <strong>Logic</strong>.<br />

Un contacto simple pue<strong>de</strong> vincularse a un número <strong>de</strong> referencia 0x o 1x en la<br />

memoria <strong>de</strong> señal <strong>de</strong>l PLC, en cuyo caso cada contacto ocuparía un nodo en la red<br />

escalonada.<br />

Se dispone <strong>de</strong> cuatro clases <strong>de</strong> contactos:<br />

Contactos normalmente abiertos (N.A.)<br />

Contactos normalmente cerrados (N.C.)<br />

Contactos <strong>de</strong> transición positiva (T.P.)<br />

Contactos <strong>de</strong> transición negativa (T.N.)<br />

Los contactos normalmente abiertos -| |- y normalmente cerrados -|\|- pue<strong>de</strong>n<br />

referenciarse por medio <strong>de</strong> entradas (1xxxx) o bobinas (0xxxx).<br />

Dispositivo <strong>de</strong><br />

campo<br />

Contacto programado Contacto <strong>de</strong> campo<br />

cerrado<br />

Estado <strong>de</strong> dispositivos <strong>de</strong> campo en relación con<br />

el flujo <strong>de</strong> contactos programados<br />

Contacto <strong>de</strong> campo<br />

abierto<br />

-| |- -| |- Transfiere alimentación<br />

-|\|- Transfiere alimentación<br />

-|\|- -| |- Transfiere alimentación<br />

Transfiere alimentación<br />

Los contactos <strong>de</strong> transición positiva -| ↑ |- y negativa -| ↓ |- pue<strong>de</strong>n referenciarse<br />

por medio <strong>de</strong> entradas (1xxxx) o bobinas (0xxxx).<br />

Transición <strong>de</strong> tabla <strong>de</strong> estado Flujo <strong>de</strong> señal en la transición<br />

-|↑|- De inactivo a<br />

activo<br />

-|↓|- De activo a<br />

inactivo<br />

ON 1 potencia <strong>de</strong><br />

ciclo<br />

OFF Pulso <strong>de</strong> flujo<br />

Nota: Un contacto <strong>de</strong> transición transferirá alimentación continuamente si el<br />

programador <strong>de</strong> segmentos o una instrucción SKP se saltan la bobina<br />

referenciada. Por el contrario, un contacto <strong>de</strong> este tipo no transferirá alimentación<br />

si está referenciado a una entrada que haya sido programada para realizar más<br />

<strong>de</strong> una lectura por ciclo en la estación <strong>de</strong> E/S a través <strong>de</strong>l programador <strong>de</strong><br />

segmentos.<br />

31007526 12/2006 169


Contactos<br />

170 31007526 12/2006


Presentación<br />

CONV - Convertir datos<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción CONV.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

34<br />

Apartado Página<br />

Descripción breve 172<br />

Representación 173<br />

31007526 12/2006 171


CONV - Convertir datos<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

El bloque Convert es una instrucción <strong>de</strong> reemplazo 484 y forma parte <strong>de</strong> una <strong>de</strong> las<br />

cuatro instrucciones <strong>de</strong> reemplazo. El bloque CONV se utiliza para convertir:<br />

datos binarios en un registro en espera,<br />

datos <strong>de</strong> registros en espera en datos binarios.<br />

La conversión pue<strong>de</strong> ser:<br />

<strong>de</strong> binario a binario,<br />

<strong>de</strong> BCD a binario (<strong>de</strong> binario a registro),<br />

<strong>de</strong> binario a BCD (<strong>de</strong> registro a binario).<br />

Este bloque utiliza entradas y salidas <strong>de</strong> 12 bits; sin embargo, si la conversión es<br />

directamente <strong>de</strong> binario a binario, los bits 11 y 12 se <strong>de</strong>sactivan.<br />

Al convertir registros binarios en registros en espera, el origen se especifica como<br />

una constante que implica un 1xxxx y el <strong>de</strong>stino se especifica como una constante<br />

que implica un 4xxxx (por ejemplo, 00049 implica 40049).<br />

Al convertir un registro en registros <strong>de</strong> salida binarios, el origen se especifica como<br />

registro en espera (4xxxx) y el <strong>de</strong>stino como una constante que implica 0xxxx. Por<br />

ejemplo, 000<strong>32</strong> implica 12 bobinas con 000<strong>32</strong>.<br />

Nota: Preste atención a la hora <strong>de</strong> convertir datos <strong>de</strong> registros en binarios, ya que<br />

pue<strong>de</strong>n activarse inadvertidamente las bobinas.<br />

Nota: Disponible únicamente en los PLC 984-351 y 984-455.<br />

172 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

conversión<br />

ON = binario<br />

OFF = BCD<br />

Fuente<br />

N.º <strong>de</strong><br />

registro<br />

CONV<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia <strong>de</strong><br />

memoria <strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

completa<br />

Significado<br />

CONV - Convertir datos<br />

Entrada superior 0x, 1x Ninguno En estado activo inicia la<br />

operación especificada.<br />

Entrada inferior 0x, 1x Ninguno ON = binario<br />

OFF = BCD<br />

Fuente<br />

(nodo superior)<br />

Registro<br />

(nodo inferior)<br />

4x INT, UINT Convierte el contenido <strong>de</strong>l<br />

registro.<br />

3x INT, UINT<br />

Salida superior 0x Ninguno Operación correcta<br />

31007526 12/2006 173


CONV - Convertir datos<br />

174 31007526 12/2006


Presentación<br />

CTIF - Contador, temporizador y<br />

función interrupt<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción CTIF.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

35<br />

Apartado Página<br />

Descripción breve 176<br />

Representación 177<br />

Descripción <strong>de</strong> parámetros 178<br />

31007526 12/2006 175


CTIF - Contador, temporizador y función interrupt<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

El bloque CTIF lo utiliza un PLC primario para acce<strong>de</strong>r a funciones secundarias en<br />

un bus <strong>de</strong> expansión <strong>de</strong> E/S. El bloque <strong>de</strong> funciones primario se completará en el<br />

mismo ciclo. En caso <strong>de</strong> que existan varios <strong>bloques</strong>, se utilizará el último ejecutado.<br />

Las instrucción CTIF se utiliza con los PLC Micro para configurar las entradas <strong>de</strong> un<br />

interrupt cableado u operaciones <strong>de</strong> contador/temporizador cableados. Esta<br />

instrucción siempre comienza y finaliza en el mismo ciclo. La instrucción CTIF es<br />

una herramienta <strong>de</strong> configuración/funcionamiento para PLC Micro Modicon que<br />

contiene interrupts <strong>de</strong> hardware (todos los mo<strong>de</strong>los excepto 110CPU311). El<br />

contador/temporizador e interrupts reales están en el hardware <strong>de</strong>l PLC y la<br />

instrucción CTIF es la que se utiliza para configurar este hardware.<br />

Nota: La función <strong>de</strong> contador, temporizador e interrupt (CTIF) sólo está disponible<br />

en controladores Micro 311, 411, 512 y 612.<br />

176 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

N.° <strong>de</strong><br />

registro<br />

Rango: 1...5<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

N.° <strong>de</strong> registro<br />

(nodo superior)<br />

Número <strong>de</strong><br />

estación<br />

(nodo inferior)<br />

número <strong>de</strong><br />

estación<br />

CTIF - Contador, temporizador y función interrupt<br />

31007526 12/2006 177<br />

CTIF<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

error<br />

0x, 1x Ninguno ON inicia la operación especificada.<br />

4x INT El registro 4xxxx introducido en el nodo superior<br />

es el primero <strong>de</strong> cuatro registros en espera<br />

contiguos <strong>de</strong>l bloque <strong>de</strong> parámetros CTIF.<br />

(Para obtener información más <strong>de</strong>tallada sobre<br />

los cuatro registros, consulte la sección p. 178.)<br />

INT El valor entero introducido en el nodo inferior<br />

indica el número <strong>de</strong> la estación en la que se va<br />

a realizar la operación. El número <strong>de</strong> estación<br />

pue<strong>de</strong> ir <strong>de</strong> 1 a 5.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida inferior 0x Ninguno Error


CTIF - Contador, temporizador y función interrupt<br />

Descripción <strong>de</strong> parámetros<br />

Descripción<br />

general<br />

Uso <strong>de</strong>l primer<br />

registro (4x)<br />

El nodo superior contiene cuatro registros contiguos, 4x a 4x+3. Esta sección<br />

<strong>de</strong>scribe el modo en el que se utilizan y configuran estos registros en el nodo<br />

superior.<br />

El primer registro, 4x, ofrece información sobre el tipo <strong>de</strong> error generado o el tipo <strong>de</strong><br />

operación que se está realizando. Cuando configure el registro, necesitará<br />

consi<strong>de</strong>rar el modo en el que se utilizarán los bits, Utilización <strong>de</strong> bits y los<br />

resultados <strong>de</strong> las Combinaciones <strong>de</strong> ON/OFF.<br />

A continuación, se muestra un gráfico con la Utilización <strong>de</strong> bits para el primer<br />

registro (4x),<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

y la siguiente tabla <strong>de</strong>scribe la Utilización <strong>de</strong> bits para el primer registro (4x).<br />

Bit Uso<br />

1 - 4 Reservado<br />

5 - 8 Mensajes <strong>de</strong> tipo <strong>de</strong> operación/error<br />

9 - 14 Reservado<br />

15 Establecer modalidad<br />

16 Obtener modalidad<br />

178 31007526 12/2006


Utilización <strong>de</strong>l<br />

segundo registro<br />

(4x+1)<br />

CTIF - Contador, temporizador y función interrupt<br />

La siguiente tabla <strong>de</strong>scribe las Combinaciones <strong>de</strong> ON/OFF para los bits 5 a 8 y el<br />

mensaje <strong>de</strong> tipo <strong>de</strong> error/operación generados por el primer registro (4x).<br />

Bit 5 6 7 8 Descripción<br />

0 0 0 0 No se <strong>de</strong>tectó ningún error.<br />

0 0 0 1 Se ha especificado un tipo <strong>de</strong> operación incompatible.<br />

0 0 1 0 Interrupt 2 no es compatible con este mo<strong>de</strong>lo.<br />

0 0 1 1 Interrupt 3 incompatible mientras se selecciona el contador.<br />

0 1 0 0 Se ha especificado el valor <strong>de</strong>l contador <strong>de</strong> 0.<br />

0 1 0 1 Valor <strong>de</strong>l contador <strong>de</strong>masiado gran<strong>de</strong><br />

(valor <strong>de</strong>l contador > 16.383).<br />

0 1 1 0 Tipo <strong>de</strong> operación compatible únicamente en estación local.<br />

0 1 1 1 La estación especificada no existe en la asignación <strong>de</strong> E/S.<br />

1 0 0 0 Sin subrutina para interrupt habilitado.<br />

1 0 0 1 Estación remota con funcionamiento incorrecto.<br />

1 0 1 0 Función incompatible <strong>de</strong> forma remota.<br />

La siguiente tabla <strong>de</strong>scribe la Utilización <strong>de</strong> bits y las combinaciones <strong>de</strong> ON/OFF<br />

para los bits 15 y 16 <strong>de</strong>l primer registro (4x).<br />

Bit 15 16 Descripción<br />

0 0 Establecer modalidad<br />

0 1 Obtener modalidad<br />

El segundo registro, 4x+1, permite controlar la configuración <strong>de</strong>l funcionamiento <strong>de</strong><br />

la operación Establecer modalidad. Cuando configure el registro, necesitará<br />

consi<strong>de</strong>rar el modo en el que se utilizarán los bits, Utilización <strong>de</strong> bits y los<br />

resultados <strong>de</strong> las Combinaciones <strong>de</strong> ON/OFF.<br />

A continuación, se muestra un gráfico con la Utilización <strong>de</strong> bits para el segundo<br />

registro (4x+1).<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

La siguiente tabla <strong>de</strong>scribe la Utilización <strong>de</strong> bits y las Combinaciones <strong>de</strong> ON/OFF<br />

para los bits <strong>de</strong> 1 a 16 <strong>de</strong>l segundo registro (4x+1).<br />

31007526 12/2006 179


CTIF - Contador, temporizador y función interrupt<br />

La siguiente tabla <strong>de</strong>scribe la Utilización <strong>de</strong> bits y las Combinaciones <strong>de</strong> ON/OFF<br />

para los bits 1 y 2 <strong>de</strong>l segundo registro (4x+1).<br />

Bit Uso<br />

1 Carga <strong>de</strong>l conteo <strong>de</strong>l terminal.<br />

0 - Bloquear<br />

1 - Habilitar<br />

2 Reservado<br />

La siguiente tabla <strong>de</strong>scribe la Utilización <strong>de</strong> bits y las Combinaciones <strong>de</strong> ON/OFF<br />

para los bits 3 y 4 <strong>de</strong>l segundo registro (4x+1).<br />

Bit 3 4 Descripción<br />

0 1 Bloquear servicio interrupt para Interrupt 3.<br />

1 0 Habilitar servicio interrupt para Interrupt 3.<br />

La siguiente tabla <strong>de</strong>scribe la Utilización <strong>de</strong> bits y las Combinaciones <strong>de</strong> ON/OFF<br />

para los bits 5 y 6 <strong>de</strong>l segundo registro (4x+1).<br />

Bit 5 6 Descripción<br />

0 1 Bloquear servicio interrupt para Interrupt 2.<br />

1 0 Habilitar servicio interrupt para Interrupt 2.<br />

La siguiente tabla <strong>de</strong>scribe la Utilización <strong>de</strong> bits y las Combinaciones <strong>de</strong> ON/OFF<br />

para los bits 7 y 8 <strong>de</strong>l segundo registro (4x+1).<br />

Bit 7 8 Descripción<br />

0 1 Bloquear servicio interrupt para Interrupt 1.<br />

1 0 Habilitar servicio interrupt para Interrupt 1.<br />

La siguiente tabla <strong>de</strong>scribe la Utilización <strong>de</strong> bits y las Combinaciones <strong>de</strong> ON/OFF<br />

para los bits 9 y 10 <strong>de</strong>l segundo registro (4x+1).<br />

Bit 9 10 Descripción<br />

0 1 Bloquear servicio interrupt para interrupt <strong>de</strong> temporizador/contador.<br />

1 0 Habilitar servicio interrupt para interrupt <strong>de</strong> temporizador/contador.<br />

La siguiente tabla <strong>de</strong>scribe la Utilización <strong>de</strong> bits y las Combinaciones <strong>de</strong> ON/OFF<br />

para los bits 11 y 12 <strong>de</strong>l segundo registro (4x+1).<br />

Bit 11 12 Descripción<br />

0 1 Bloquear operación <strong>de</strong> reinicio automático.<br />

1 0 Habilitar operación <strong>de</strong> reinicio automático.<br />

180 31007526 12/2006


Utilización <strong>de</strong>l<br />

tercer registro<br />

(4x+2)<br />

CTIF - Contador, temporizador y función interrupt<br />

La siguiente tabla <strong>de</strong>scribe la Utilización <strong>de</strong> bits y las Combinaciones <strong>de</strong> ON/OFF<br />

para los bits 13 y 14 <strong>de</strong>l segundo registro (4x+1).<br />

Bit 13 14 Descripción<br />

0 1 Detener operación <strong>de</strong> temporizador/contador.<br />

1 0 Iniciar operación <strong>de</strong> temporizador/contador.<br />

La siguiente tabla <strong>de</strong>scribe la Utilización <strong>de</strong> bits y las Combinaciones <strong>de</strong> ON/OFF<br />

para los bits 15 y 16 <strong>de</strong>l segundo registro (4x+1).<br />

Bit 15 16 Descripción<br />

0 1 Modalidad <strong>de</strong> contador.<br />

1 0 Modalidad <strong>de</strong> temporizador.<br />

El tercer registro, 4x+2, proporciona el estado para la operación Obtener<br />

modalidad. Cuando configure el registro, necesitará consi<strong>de</strong>rar el modo en el que<br />

se utilizarán los bits, Utilización <strong>de</strong> bits y los resultados <strong>de</strong> las Combinaciones <strong>de</strong><br />

ON/OFF.<br />

A continuación, se muestra un gráfico con la Utilización <strong>de</strong> bits para el tercer<br />

registro (4x+2).<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

La siguiente tabla <strong>de</strong>scribe la Utilización <strong>de</strong> bits y las Combinaciones <strong>de</strong> ON/OFF<br />

para los bits <strong>de</strong> 1 a 16 <strong>de</strong>l tercer registro (4x+2).<br />

Bit Uso<br />

1 Sin subrutina para Interrupt 3<br />

2 Sin subrutina para Interrupt 2<br />

3 Sin subrutina para Interrupt 1<br />

4 Sin subrutina para interrupt <strong>de</strong> temporizador/contador<br />

5 - 9 Reservado<br />

10 Interrupt 3<br />

0 - Bloqueado<br />

1 - Habilitado<br />

11 Interrupt 2<br />

0 - Bloqueado<br />

1 - Habilitado<br />

12 Interrupt 1<br />

0 - Bloqueado<br />

1 - Habilitado<br />

31007526 12/2006 181


CTIF - Contador, temporizador y función interrupt<br />

Utilización <strong>de</strong>l<br />

cuarto registro<br />

(4x+3)<br />

Bit Uso<br />

13 Servidor interrupt para entrada <strong>de</strong> temporizador/contador<br />

0 - Bloqueado<br />

1 - Habilitado<br />

14 Operación <strong>de</strong> reinicio automático<br />

0 - Bloqueado<br />

1 - Habilitado<br />

15 Operación <strong>de</strong> temporizador/contador<br />

0 - Detenida<br />

1 - Iniciada<br />

16 0 – Modalidad <strong>de</strong> contador<br />

1 - Modalidad <strong>de</strong> temporizador<br />

El cuarto registro marca el valor <strong>de</strong> conteo actual <strong>de</strong>l interrupt <strong>de</strong> temporizador/<br />

contador. Tanto el bloque <strong>de</strong> instrucciones (ajustado automáticamente) como el<br />

usuario pue<strong>de</strong>n ajustar el valor <strong>de</strong> conteo actual.<br />

Obtener modalidad<br />

El bloque <strong>de</strong> instrucciones establece el conteo actual.<br />

Establecer modalidad<br />

El usuario establece el contador/temporizador.<br />

182 31007526 12/2006


Presentación<br />

DCTR: Contador regresivo<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción DCTR.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

36<br />

Apartado Página<br />

Descripción breve 184<br />

Representación 185<br />

31007526 12/2006 183


DCTR: Contador regresivo<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción DCTR realiza un conteo regresivo <strong>de</strong> las transiciones <strong>de</strong> entrada <strong>de</strong><br />

control (<strong>de</strong> estado inactivo a activo) <strong>de</strong>s<strong>de</strong> un valor <strong>de</strong> contador preestablecido<br />

hasta 0.<br />

184 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

activar/restablecer condición <strong>de</strong> salida<br />

conteo > cero<br />

conteo<br />

DCTR<br />

*Disponible en los siguientes PLC:<br />

E685/785<br />

L785<br />

Serie Quantum<br />

DCTR: Contador regresivo<br />

control condición <strong>de</strong> salida<br />

preajuste <strong>de</strong>l DCTR: conteo = cero<br />

valor preestablecido: contador<br />

máx. 999-PLC <strong>de</strong> 16 bits<br />

máx. 9.999-PLC <strong>de</strong> 24<br />

bits<br />

máx. 65.535- *PLC<br />

31007526 12/2006 185


DCTR: Contador regresivo<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno OFF → OFF = inicia el funcionamiento <strong>de</strong>l<br />

contador.<br />

Entrada inferior 0x, 1x Ninguno OFF = el conteo acumulado se restablece en<br />

el valor preestablecido.<br />

ON = contador acumulable.<br />

Preajuste <strong>de</strong>l<br />

contador<br />

(nodo superior)<br />

Conteo<br />

acumulado<br />

(nodo inferior)<br />

3x, 4x INT, UINT Valor preestablecido que pue<strong>de</strong> mostrarse <strong>de</strong><br />

forma explícita como número entero (rango<br />

1 a 65.535) o guardado en un registro.<br />

Valor preestablecido: máx. 999 - PLC <strong>de</strong><br />

16 bits máx. 9.999 - PLC <strong>de</strong> 24 bits máx.<br />

65.535 - *PLC<br />

4x INT, UINT Valor <strong>de</strong> conteo (valor real) que disminuye en<br />

1 en cada transición <strong>de</strong> OFF a ON <strong>de</strong> la<br />

entrada superior hasta que llega a cero.<br />

Salida superior 0x Ninguno ON = conteo acumulado = 0.<br />

Salida inferior 0x Ninguno ON = conteo acumulado > 0.<br />

186 31007526 12/2006


Presentación<br />

DIOH: Estado <strong>de</strong> E/S distribuidas<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción DIOH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

37<br />

Apartado Página<br />

Descripción breve 188<br />

Representación 189<br />

Descripción <strong>de</strong> los parámetros 191<br />

31007526 12/2006 187


DIOH: Estado <strong>de</strong> E/S distribuidas<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción DIOH permite recuperar datos <strong>de</strong> estado <strong>de</strong> funcionamiento <strong>de</strong> un<br />

grupo específico <strong>de</strong> estaciones en la red <strong>de</strong> E/S distribuidas. Da acceso a la tabla<br />

<strong>de</strong> estado <strong>de</strong> funcionamiento DIO, en la que se guardan los datos <strong>de</strong> estado <strong>de</strong><br />

funcionamiento <strong>de</strong> los módulos en un máximo <strong>de</strong> 189 estaciones distribuidas.<br />

188 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control activa<br />

fuente<br />

tabla <strong>de</strong> estado DIO<br />

número <strong>de</strong> estaciones<br />

(1–64)<br />

<strong>de</strong>stino<br />

DIOH<br />

(1...64)<br />

DIOH: Estado <strong>de</strong> E/S distribuidas<br />

31007526 12/2006 189<br />

error


DIOH: Estado <strong>de</strong> E/S distribuidas<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Fuente<br />

(nodo superior)<br />

Destino<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la recuperación <strong>de</strong> las palabras <strong>de</strong><br />

estado especificadas <strong>de</strong>s<strong>de</strong> la tabla <strong>de</strong> estado<br />

funcional DIO a la tabla <strong>de</strong> <strong>de</strong>stino.<br />

INT,<br />

UINT<br />

4x INT,<br />

UINT,<br />

WORD<br />

INT,<br />

UINT<br />

El valor fuente introducido en el nodo superior es<br />

una constante <strong>de</strong> cuatro dígitos con la forma<br />

xxyy, don<strong>de</strong>:<br />

xx es un valor <strong>de</strong>cimal en el rango 0016, que<br />

indica el número <strong>de</strong> slot en que está situado<br />

el procesador DIO relevante. El valor 00<br />

siempre pue<strong>de</strong> utilizarse para indicar los<br />

puertos Modbus Plus en el PLC, sin tener en<br />

cuenta el slot en que esté situado.<br />

yy es un valor <strong>de</strong>cimal en el rango 1 64, que<br />

indica el número <strong>de</strong> estación en la red token<br />

ring a<strong>de</strong>cuada.<br />

Por ejemplo, si <strong>de</strong>sea recuperar el estado <strong>de</strong><br />

una estación comenzando por la estación<br />

distribuida 1 en una red con un procesador DIO<br />

en el slot 3, introduzca 0301 en el nodo superior.<br />

Primer registro en espera <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino,<br />

es <strong>de</strong>cir, en un bloque <strong>de</strong> registros contiguos en<br />

que se ha almacenado la información <strong>de</strong> estado<br />

funcional recuperada.<br />

Longitud <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino, rango 1 a 64.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida inferior 0x Ninguno ON = entrada <strong>de</strong> fuente no válida.<br />

190 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor <strong>de</strong> fuente<br />

(asiento<br />

superior)<br />

Longitud <strong>de</strong> la<br />

tabla <strong>de</strong> <strong>de</strong>stino<br />

(asiento inferior)<br />

DIOH: Estado <strong>de</strong> E/S distribuidas<br />

El valor <strong>de</strong> fuente ingresado en el asiento superior es una constante <strong>de</strong> cuatro<br />

dígitos con la forma xxyy, en la que:<br />

Dígitos Significado<br />

xx Valor <strong>de</strong>cimal en el rango 00 a 16, que indica el número <strong>de</strong> slot en que está<br />

situado el procesador DIO relevante. El valor 00 siempre pue<strong>de</strong> utilizarse para<br />

indicar los puertos Modbus Plus en el PLC, sin tener en cuenta el slot en que<br />

esté situado.<br />

yy Valor <strong>de</strong>cimal en el rango 1 a 64, que indica el número <strong>de</strong> estación en la red<br />

token ring a<strong>de</strong>cuada.<br />

Por ejemplo, si <strong>de</strong>sea recuperar el estado <strong>de</strong> una estación comenzando por la<br />

estación distribuida 1 en una red con un procesador DIO en el slot 3, ingrese 0301<br />

en el asiento superior.<br />

El valor entero que se ha ingresado en el asiento inferior especifica la longitud, es<br />

<strong>de</strong>cir, el número <strong>de</strong> registros 4x en la tabla <strong>de</strong> <strong>de</strong>stino. La longitud <strong>de</strong>be estar<br />

comprendida entre 1 y 64.<br />

Nota: Si especifica una longitud que exce<strong>de</strong> el número <strong>de</strong> estaciones disponibles,<br />

la instrucción sólo <strong>de</strong>volverá información <strong>de</strong> estado <strong>de</strong> las estaciones disponibles.<br />

Por ejemplo, si especifica el número <strong>de</strong> la estación nº 63 (yy) en el registro <strong>de</strong><br />

asientos y solicita una longitud <strong>de</strong> 5, la instrucción sólo le <strong>de</strong>volverá dos registros<br />

(las palabras <strong>de</strong> estado <strong>de</strong> la estación nº 63 y nº 64) en la tabla <strong>de</strong> <strong>de</strong>stino.<br />

31007526 12/2006 191


DIOH: Estado <strong>de</strong> E/S distribuidas<br />

192 31007526 12/2006


Presentación<br />

DISA - Control binario bloqueado<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción DISA.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

38<br />

Apartado Página<br />

Descripción breve 194<br />

Representación 195<br />

31007526 12/2006 193


DISA - Control binario bloqueado<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

El control binario bloqueado (DISA) es una función cargable, una instrucción que<br />

controla las bobinas y entradas bloqueadas. Por lo tanto, DISA supervisa los<br />

estados bloqueados <strong>de</strong> todas las direcciones 0xxxx y 1xxxx.<br />

194 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

DISA - Control binario bloqueado<br />

entrada <strong>de</strong> control bobina bloqueada<br />

bobinas<br />

Longitud: 1–100<br />

registros<br />

entradas<br />

longitud <strong>de</strong><br />

DISA<br />

entradas bloqueadas<br />

activas<br />

Nota: Antes <strong>de</strong> cargar la instrucción cargable DISA, se <strong>de</strong>be cargar la instrucción<br />

NSUP.<br />

31007526 12/2006 195


DISA - Control binario bloqueado<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Bobinas<br />

(nodo superior)<br />

Entradas<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno Tabla <strong>de</strong> bobinas bloqueadas.<br />

4x INT, UINT Cantidad <strong>de</strong> bobinas bloqueadas que se<br />

han encontrado (incluso si > NNN).<br />

4x+N.º INT, UINT Dirección <strong>de</strong>l «N.º» <strong>de</strong> bobina bloqueada<br />

que se ha encontrado.<br />

4y INT, UINT Cantidad <strong>de</strong> entradas binarias bloqueadas<br />

que se han encontrado (incluso si > NNN).<br />

4y+N.º INT, UINT Dirección <strong>de</strong>l «N.º» <strong>de</strong> entrada binaria<br />

bloqueada que se ha encontrado.<br />

INT, UINT Transfiere señales cuando la entrada<br />

superior las recibe.<br />

Salida superior 0x Ninguno ON si se encuentran las bobinas<br />

bloqueadas.<br />

Salida<br />

intermedia<br />

0x Ninguno ON si se encuentran las entradas<br />

bloqueadas.<br />

Salida inferior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

196 31007526 12/2006


Presentación<br />

DIV: División<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción DIV.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

39<br />

Apartado Página<br />

Descripción breve 198<br />

Representación 199<br />

Ejemplo 201<br />

31007526 12/2006 197


DIV: División<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción DIV divi<strong>de</strong> el valor sin signo 1 (su asiento superior) entre el valor sin<br />

signo 2 (su asiento intermedio) y envía el cociente y el resto a dos registros <strong>de</strong> salida<br />

contiguos <strong>de</strong>l asiento inferior.<br />

198 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control finalización correcta<br />

divi<strong>de</strong>ndo<br />

valor 1<br />

máx. 999 - 16 bits<br />

máx. 9.999 - 24 bits<br />

máx. 65.535 - *PLC<br />

resto <strong>de</strong>cimal<br />

divisor<br />

máx. 999 - 16 bits<br />

máx. 9.999 - 24 bits<br />

máx. 65.535 - *PLC<br />

valor 2<br />

*Disponible en los siguientes PLC:<br />

E685/785<br />

L785<br />

Serie Quantum<br />

resultado/<br />

resto<br />

DIV<br />

cociente > 9.999<br />

máx. 999 - 16 bits<br />

máx. 9.999 - 24 bits<br />

máx. 65.535 - *PLC<br />

valor intermedio = 0<br />

DIV: División<br />

31007526 12/2006 199


DIV: División<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Valor 1<br />

(nodo superior)<br />

Valor 2<br />

(nodo<br />

intermedio)<br />

Resultado/resto<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = valor 1 dividido entre valor 2.<br />

0x, 1x Ninguno ON = resto <strong>de</strong>cimal.<br />

OFF = resto en fracción.<br />

3x, 4x INT, UINT Divi<strong>de</strong>ndo: se pue<strong>de</strong> mostrar <strong>de</strong> forma<br />

explícita como número entero (rango 19.999)*<br />

o almacenarse en dos registros contiguos<br />

(visualizados para la mitad <strong>de</strong> mayor or<strong>de</strong>n e<br />

implícitos para la mitad <strong>de</strong> menor or<strong>de</strong>n).<br />

*Máx. 999 - 16 bits; máx. 9.999 - 24 bits; máx.<br />

65.535 - *PLC (consulte la lista <strong>de</strong><br />

disponibilidad anterior).<br />

3x, 4x INT, UINT Divisor: se pue<strong>de</strong> mostrar <strong>de</strong> forma explícita<br />

como número entero (rango 19.999) o<br />

almacenarse en un registro.<br />

*Máx. 999 - 16 bits; máx. 9.999 - 24 bits; máx.<br />

65.535 - *PLC (consulte la lista <strong>de</strong><br />

disponibilidad anterior).<br />

4x INT, UINT Primero <strong>de</strong> los dos registros en espera<br />

contiguos:<br />

Visualizado: resultado <strong>de</strong> la división.<br />

Implícito: resto (bien sea <strong>de</strong>cimal o fracción,<br />

según el estado <strong>de</strong>l nodo intermedio).<br />

Salida superior 0x Ninguno ON = división satisfactoria.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = <strong>de</strong>sbor<strong>de</strong>:<br />

si el resultado > 9.999*, se <strong>de</strong>vuelve el valor 0.<br />

*Máx. 999 - 16 bits; máx. 9.999 - 24 bits; máx.<br />

65.535 - *PLC (consulte la lista <strong>de</strong><br />

disponibilidad anterior).<br />

Salida inferior 0x Ninguno ON = valor 2 = 0.<br />

200 31007526 12/2006


Ejemplo<br />

Cociente <strong>de</strong> la<br />

instrucción DIV<br />

DIV: División<br />

El estado <strong>de</strong> la entrada intermedia indica si el resto se expresará como un número<br />

<strong>de</strong>cimal o como una fracción. Por ejemplo, si el valor 1 = 8 y el valor 2 = 3, el resto<br />

<strong>de</strong>cimal (con la entrada intermedia activa) será 6666 y el resto en fracción (entrada<br />

intermedia inactiva) será 2.<br />

31007526 12/2006 201


DIV: División<br />

202 31007526 12/2006


Presentación<br />

DLOG: Registro <strong>de</strong> datos <strong>de</strong>l<br />

soporte <strong>de</strong> lectura/escritura<br />

PCMCIA<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción DLOG.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

40<br />

Apartado Página<br />

Descripción breve 204<br />

Representación 205<br />

Descripción <strong>de</strong> los parámetros 207<br />

Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución 209<br />

31007526 12/2006 203


DLOG: Registro <strong>de</strong> datos <strong>de</strong>l soporte <strong>de</strong> lectura/escritura PCMCIA<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

Nota: Esta instrucción sólo está disponible para la familia <strong>de</strong> PLC Compact TSX.<br />

El apoyo <strong>de</strong> lectura/escritura consiste en una ampliación <strong>de</strong> configuración que se<br />

pue<strong>de</strong> poner en marcha utilizando una instrucción DLOG. La instrucción DLOG<br />

proporciona ayuda a las aplicaciones para copiar datos a una tarjeta Flash<br />

PCMCIA, copiar datos <strong>de</strong>s<strong>de</strong> una tarjeta Flash PCMCIA, borrar <strong>bloques</strong> <strong>de</strong> memoria<br />

en una tarjeta Flash PCMCIA y borrar toda una tarjeta Flash PCMCIA. El formato<br />

<strong>de</strong> datos y la frecuencia <strong>de</strong> su almacenamiento estarán controlados por la<br />

aplicación.<br />

Nota: La instrucción DLOG sólo funcionará con tarjetas Flash linear PCMCIA que<br />

utilizan dispositivos <strong>de</strong> Flash AMD.<br />

204 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

DLOG: Registro <strong>de</strong> datos <strong>de</strong>l soporte <strong>de</strong> lectura/escritura PCMCIA<br />

entrada <strong>de</strong> control activa<br />

finalizar operación<br />

DLOG activa<br />

bloque <strong>de</strong><br />

control<br />

área <strong>de</strong> datos<br />

longitud <strong>de</strong><br />

DLOG<br />

operación finalizada<br />

incorrectamente<br />

operación correcta<br />

31007526 12/2006 205


DLOG: Registro <strong>de</strong> datos <strong>de</strong>l soporte <strong>de</strong> lectura/escritura PCMCIA<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Bloque <strong>de</strong><br />

control<br />

(nodo superior)<br />

Área <strong>de</strong> datos<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = operación DLOG habilitada, <strong>de</strong>berá<br />

permanecer activa hasta que la operación<br />

haya finalizado satisfactoriamente o se<br />

produzca un error.<br />

0x, 1x Ninguno ON = <strong>de</strong>tiene la operación activa en ese<br />

momento.<br />

4x INT, UINT Primero <strong>de</strong> cinco registros contiguos en el<br />

bloque <strong>de</strong> control DLOG.<br />

(Para obtener información ampliada y<br />

<strong>de</strong>tallada consulte p. 207.)<br />

4x INT, UINT Primer registro 4x <strong>de</strong> un área <strong>de</strong> datos que<br />

se utiliza para la fuente o <strong>de</strong>stino <strong>de</strong> la<br />

operación especificada.<br />

(Si <strong>de</strong>sea más información,<br />

consulte p. 208.)<br />

INT, UINT Cantidad máxima <strong>de</strong> registros reservada<br />

para el área <strong>de</strong> datos, rango: 0...100.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = error durante la operación <strong>de</strong> DLOG<br />

(la operación no ha finalizado<br />

satisfactoriamente).<br />

Salida inferior 0x Ninguno ON = la operación <strong>de</strong> DLOG ha finalizado<br />

satisfactoriamente (operación<br />

satisfactoria).<br />

206 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Bloque<br />

<strong>de</strong> control<br />

(asiento<br />

superior)<br />

DLOG: Registro <strong>de</strong> datos <strong>de</strong>l soporte <strong>de</strong> lectura/escritura PCMCIA<br />

El registro 4x introducido en el asiento superior es el primero <strong>de</strong> cinco registros<br />

contiguos en el bloque <strong>de</strong> control DLOG.<br />

Éste <strong>de</strong>fine la función <strong>de</strong>l comando DLOG, así como la ventana y el offset <strong>de</strong> la<br />

tarjeta Flash PCMCIA, y <strong>de</strong>vuelve una palabra <strong>de</strong> estado y un valor <strong>de</strong> conteo <strong>de</strong><br />

palabras <strong>de</strong> datos.<br />

Registro Función Contenido<br />

Visualizado Estado <strong>de</strong> error Muestra los errores <strong>de</strong> DLOG en valores HEX.<br />

Primer Tipo <strong>de</strong> operación 1 = escribir en tarjeta PCMCIA.<br />

implícito<br />

2 = leer en tarjeta PCMCIA.<br />

3 = borrar un bloque.<br />

4 = borrar el contenido <strong>de</strong> toda la tarjeta.<br />

Segundo Ventana<br />

Este registro i<strong>de</strong>ntifica un bloque concreto (ventana <strong>de</strong><br />

implícito (<strong>de</strong>scriptor <strong>de</strong>l memoria PCMCIA) situada en la tarjeta PCMCIA<br />

bloque)<br />

(1 bloque = 128 kBytes).<br />

El número <strong>de</strong> <strong>bloques</strong> <strong>de</strong>pen<strong>de</strong> <strong>de</strong>l tamaño <strong>de</strong> la<br />

memoria <strong>de</strong> la tarjeta PCMCIA (por ejemplo, 0 ... 31<br />

como máximo para una tarjeta PCMCIA <strong>de</strong> 4 Meg).<br />

Tercer Offset<br />

Rango específico <strong>de</strong> bytes situados <strong>de</strong>ntro <strong>de</strong> un bloque<br />

implícito (Dirección <strong>de</strong> byte <strong>de</strong>terminado en la tarjeta PCMCIA.<br />

<strong>de</strong>ntro <strong>de</strong>l bloque) Rango: 1 ... 128 K bytes.<br />

Cuarto Cantidad Número <strong>de</strong> registros que se van a leer o escribir en la<br />

implícito<br />

tarjeta PCMCIA. Rango: 0 ... 100.<br />

Nota: Las direcciones <strong>de</strong> la tarjeta Flash PCMCIA son direcciones con base<br />

Ventana: Offset. Las ventanas tendrán un tamaño fijo <strong>de</strong> 128 kBytes (65.535<br />

palabras (valores <strong>de</strong> 16 bits)). Ninguna operación <strong>de</strong> lectura o escritura <strong>de</strong>be<br />

sobrepasar los límites <strong>de</strong> una ventana a la siguiente. Por ello, offset (tercer registro<br />

implícito) más longitud (cuarto registro implícito) <strong>de</strong>be ser siempre menor o igual a<br />

128 kBytes (65.535 palabras).<br />

31007526 12/2006 207


DLOG: Registro <strong>de</strong> datos <strong>de</strong>l soporte <strong>de</strong> lectura/escritura PCMCIA<br />

Campo <strong>de</strong> datos<br />

(asiento<br />

intermedio)<br />

Longitud<br />

(asiento inferior)<br />

El registro 4x introducido en el asiento intermedio es el primer registro <strong>de</strong> un bloque<br />

contiguo <strong>de</strong> registros <strong>de</strong> palabras 4x que la instrucción DLOG va a utilizar para la<br />

fuente o <strong>de</strong>stino <strong>de</strong> la operación especificada en el bloque <strong>de</strong> control <strong>de</strong>l asiento<br />

superior.<br />

Operación Referencia <strong>de</strong> memoria <strong>de</strong> señal Función<br />

Escribir 4x Dirección fuente<br />

Leer 4x Dirección <strong>de</strong> <strong>de</strong>stino<br />

Borrar bloque Ninguno Ninguno<br />

Borrar tarjeta Ninguno Ninguno<br />

El valor entero introducido en el asiento inferior es la longitud <strong>de</strong>l campo <strong>de</strong> datos,<br />

es <strong>de</strong>cir, el número máximo <strong>de</strong> palabras (registros) permitido en una transferencia<br />

<strong>de</strong>/a una tarjeta Flash PCMCIA. La longitud pue<strong>de</strong> estar comprendida entre 0 y 100.<br />

208 31007526 12/2006


Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución<br />

DLOG: Registro <strong>de</strong> datos <strong>de</strong>l soporte <strong>de</strong> lectura/escritura PCMCIA<br />

Códigos <strong>de</strong> error El registro visualizado <strong>de</strong>l bloque <strong>de</strong> control contiene los siguientes errores <strong>de</strong><br />

DLOG en código hex.<br />

Código <strong>de</strong> error en hex Contenido<br />

1 El parámetro <strong>de</strong> conteo <strong>de</strong>l bloque <strong>de</strong> control > la longitud <strong>de</strong>l<br />

bloque DLOG durante una operación <strong>de</strong> WRITE (01).<br />

2 La operación <strong>de</strong> la tarjeta PCMCIA ha fallado durante el inicio<br />

(escribir/leer/borrar).<br />

3 La operación <strong>de</strong> la tarjeta PCMCIA ha fallado durante la<br />

ejecución (escribir/leer/borrar).<br />

31007526 12/2006 209


DLOG: Registro <strong>de</strong> datos <strong>de</strong>l soporte <strong>de</strong> lectura/escritura PCMCIA<br />

210 31007526 12/2006


Presentación<br />

DMTH -<br />

Matemática <strong>de</strong> doble precisión<br />

41<br />

Introducción En este capítulo se <strong>de</strong>scriben las cuatro operaciones <strong>de</strong> matemática <strong>de</strong> doble<br />

precisión ejecutadas por la instrucción DMTH. Estas cuatro operaciones son suma,<br />

resta, multiplicación y división.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

Apartado Página<br />

Descripción breve 212<br />

Representación 213<br />

31007526 12/2006 211


DMTH - Matemática <strong>de</strong> doble precisión<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

Códigos <strong>de</strong><br />

función<br />

La instrucción <strong>de</strong> matemática <strong>de</strong> doble precisión (DMTH) realiza las operaciones <strong>de</strong><br />

suma, resta, multiplicación y división <strong>de</strong> doble precisión (establecida por el nodo<br />

inferior). La instrucción DMTH utiliza 2 registros unidos para formar un operando.<br />

Cada instrucción DMTH opera sobre el mismo par <strong>de</strong> operandos.<br />

OP1 = 4x, 4x + 1 (nodo superior)<br />

OP2 = 4y, 4y + 1 (nodo intermedio)<br />

La instrucción DMTH realiza cualquiera <strong>de</strong> las cuatro posibles operaciones <strong>de</strong><br />

matemática <strong>de</strong> doble precisión. Esta operación se realiza llamando a una función.<br />

Para llamar a la función <strong>de</strong>seada introduzca un código <strong>de</strong> función en el nodo<br />

inferior. Los códigos <strong>de</strong> función están en el rango 14.<br />

Código Función DMTH Función realizada Registros <strong>de</strong> resultado<br />

1 Suma <strong>de</strong> doble precisión Sumar (OP1) + (OP 2) (4y + 3, 4y + 4)<br />

2 Resta <strong>de</strong> doble precisión Restar (OP1) - (OP 2) (4y + 2, 4y + 3)<br />

3 Multiplicación <strong>de</strong> doble Multiplicar (OP1) * (OP 2) (4y + 2, 4y + 3)<br />

precisión<br />

(4y + 4, 4y + 5)<br />

4 División <strong>de</strong> doble Dividir (OP1)/(OP 2) (4y + 2, 4y + 3) cociente<br />

precisión<br />

(4y + 4, 4y + 5) resto<br />

Notas:<br />

Para números repartidos en varios registros, los cuatro dígitos <strong>de</strong> menor valor se<br />

almacenan en el registro en espera más alto.<br />

El resultado, el flag y el resto se almacenan en los registros siguientes a OP2.<br />

Los registros que no haya utilizado la función matemática elegida se pue<strong>de</strong>n<br />

utilizar con otros fines.<br />

La función <strong>de</strong> resta utiliza las salidas para indicar el resultado <strong>de</strong> la comparación<br />

entre los operandos OP1 y OP2.<br />

212 31007526 12/2006


Representación<br />

Descripción<br />

general<br />

DMTH - Matemática <strong>de</strong> doble precisión<br />

Esta sección <strong>de</strong>scribe las operaciones <strong>de</strong> suma, resta, multiplicación y división, es<br />

<strong>de</strong>cir, las cuatro operaciones que realiza la instrucción DMTH. Cada operación tiene<br />

un símbolo, que es una representación gráfica <strong>de</strong> la instrucción, y una <strong>de</strong>scripción<br />

<strong>de</strong> parámetros, que es una representación <strong>de</strong> la instrucción en formato <strong>de</strong> tabla.<br />

Símbolo: suma Representación <strong>de</strong> la instrucción para la operación <strong>de</strong> suma.<br />

Descripción <strong>de</strong><br />

parámetros:<br />

suma<br />

entrada <strong>de</strong> control operación correcta<br />

operando 1<br />

operando 2<br />

y suma<br />

DMTH<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción para la operación <strong>de</strong> suma.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Operando 1<br />

(nodo superior)<br />

31007526 12/2006 213<br />

1<br />

Tipo <strong>de</strong><br />

datos<br />

0x, 1x Ningun<br />

o<br />

4x INT,<br />

UINT<br />

Significado<br />

error<br />

ON suma los operandos y coloca el resultado en<br />

registros <strong>de</strong>signados.<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo<br />

registro 4xxxx está implícito. El operando 1 se<br />

almacena aquí.<br />

Cada registro contiene un valor que pue<strong>de</strong> ir <strong>de</strong><br />

0000 a 9.999; para un valor combinado <strong>de</strong> doble<br />

precisión el rango va <strong>de</strong> 0 a 99,999,999. La mitad<br />

<strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l operando 1 se almacena en<br />

el registro visualizado, mientras que la <strong>de</strong> menor<br />

or<strong>de</strong>n se almacena en el registro implícito.


DMTH - Matemática <strong>de</strong> doble precisión<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Operando 2 y<br />

suma<br />

(nodo<br />

intermedio)<br />

4x INT,<br />

UINT<br />

Salida superior 0x Ningun<br />

o<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

0x Ningun<br />

o<br />

Significado<br />

Símbolo: resta Representación <strong>de</strong> la instrucción para la operación <strong>de</strong> resta.<br />

El primero <strong>de</strong> seis registros 4x contiguos se<br />

introduce en el nodo intermedio.<br />

Los cinco registros restantes están implícitos:<br />

El registro visualizado y el primer registro<br />

implícito almacenan, respectivamente, las<br />

mita<strong>de</strong>s <strong>de</strong> mayor y menor or<strong>de</strong>n <strong>de</strong>l<br />

operando 2, para un valor combinado <strong>de</strong><br />

doble precisión en el rango que va <strong>de</strong> 0 a<br />

99,999,999.<br />

El valor almacenado en el segundo registro<br />

implícito indica si existe una condición <strong>de</strong><br />

<strong>de</strong>sbor<strong>de</strong> (valor 1 = <strong>de</strong>sbor<strong>de</strong>).<br />

El tercer y cuarto registros implícitos<br />

almacenan, respectivamente, las mita<strong>de</strong>s <strong>de</strong><br />

mayor y menor or<strong>de</strong>n <strong>de</strong> la suma <strong>de</strong> doble<br />

precisión.<br />

El quinto registro implícito no se utiliza en el<br />

cálculo, pero <strong>de</strong>be existir en la memoria <strong>de</strong><br />

señal.<br />

ON = operación correcta<br />

ON = operando fuera <strong>de</strong> rango o no válido.<br />

entrada <strong>de</strong> control operando 1 > operando 2<br />

operando 1<br />

operando 2/<br />

diferencia<br />

DMTH<br />

2<br />

operando 1 = operando 2<br />

operando 1 < operando 2<br />

214 31007526 12/2006


Descripción <strong>de</strong><br />

parámetros:<br />

resta<br />

DMTH - Matemática <strong>de</strong> doble precisión<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción para la operación <strong>de</strong> resta.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Operando 1<br />

(nodo<br />

superior)<br />

Operando 2/<br />

diferencia<br />

(nodo<br />

intermedio)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON resta el operando 2 <strong>de</strong>l operando 1 y traslada la<br />

diferencia a los registros <strong>de</strong>signados.<br />

4x INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo registro<br />

4xxxx está implícito. El operando 1 se almacena<br />

aquí.<br />

Cada registro contiene un valor que pue<strong>de</strong> ir <strong>de</strong><br />

0000 a 9.999; para un valor combinado <strong>de</strong> doble<br />

precisión el rango va <strong>de</strong> 0 a 99,999,999. La mitad<br />

<strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l operando 1 se almacena en el<br />

registro visualizado, mientras que la <strong>de</strong> menor<br />

or<strong>de</strong>n se almacena en el registro implícito.<br />

El primero <strong>de</strong> seis registros 4xxxx contiguos se<br />

introduce en el nodo intermedio.<br />

Los cinco registros restantes están implícitos:<br />

El registro visualizado y el primer registro<br />

implícito almacenan, respectivamente, las<br />

mita<strong>de</strong>s <strong>de</strong> mayor y menor or<strong>de</strong>n <strong>de</strong>l operando<br />

2, para un valor combinado <strong>de</strong> doble precisión<br />

en el rango que va <strong>de</strong> 0 a 99,999,999.<br />

El valor almacenado en el segundo registro<br />

implícito indica si existe una condición <strong>de</strong><br />

<strong>de</strong>sbor<strong>de</strong> (valor 1 = <strong>de</strong>sbor<strong>de</strong>).<br />

El tercer y cuarto registros implícitos almacenan,<br />

respectivamente, las mita<strong>de</strong>s <strong>de</strong> mayor y menor<br />

or<strong>de</strong>n <strong>de</strong> la suma <strong>de</strong> doble precisión.<br />

El quinto registro implícito no se utiliza en el<br />

cálculo, pero <strong>de</strong>be existir en la memoria <strong>de</strong><br />

señal.<br />

0x Ninguno ON = operando 1 > operando 2<br />

0x Ninguno ON = operando 1 = operando 2<br />

Salida inferior 0x Ninguno ON = operando 1 < operando 2<br />

31007526 12/2006 215


DMTH - Matemática <strong>de</strong> doble precisión<br />

Símbolo:<br />

multiplicación<br />

Descripción <strong>de</strong><br />

parámetros:<br />

multiplicación<br />

Representación <strong>de</strong> la instrucción para la operación <strong>de</strong> multiplicación.<br />

entrada <strong>de</strong> control ON = operación correcta<br />

operando 1<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción para la operación <strong>de</strong> multiplicación.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Operando 1<br />

(nodo superior)<br />

operando 2/<br />

producto<br />

DMTH<br />

216 31007526 12/2006<br />

3<br />

Tipo <strong>de</strong><br />

datos<br />

0x, 1x Ningun<br />

o<br />

4x INT,<br />

UINT<br />

Significado<br />

error<br />

ON = el operando 1 se multiplica por el operando<br />

2 y el producto se traslada a los registros<br />

<strong>de</strong>signados.<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo registro<br />

4xxxx está implícito. El operando 1 se almacena<br />

aquí. El segundo registro 4x está implícito.<br />

Cada registro contiene un valor que pue<strong>de</strong> ir <strong>de</strong><br />

0000 a 9.999; para un valor combinado <strong>de</strong> doble<br />

precisión el rango va <strong>de</strong> 0 a 99,999,999. La mitad<br />

<strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l operando 1 se almacena en el<br />

registro visualizado, mientras que la <strong>de</strong> menor<br />

or<strong>de</strong>n se almacena en el registro implícito.


Símbolo:<br />

división<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Operando 2/<br />

producto<br />

(nodo<br />

intermedio)<br />

4x INT,<br />

UINT<br />

Salida superior 0x Ningun<br />

o<br />

Salida<br />

intermedia<br />

Representación <strong>de</strong> la instrucción para la operación <strong>de</strong> división.<br />

entrada <strong>de</strong> control<br />

resto<br />

Tipo <strong>de</strong><br />

datos<br />

0x Ningun<br />

o<br />

operando 1<br />

operando 2<br />

cociente<br />

resto<br />

DMTH<br />

4<br />

Significado<br />

DMTH - Matemática <strong>de</strong> doble precisión<br />

El primero <strong>de</strong> seis registros 4xxxx contiguos se<br />

introduce en el nodo intermedio.<br />

Los cinco registros restantes están implícitos:<br />

El registro visualizado y el primer registro<br />

implícito almacenan, respectivamente, las<br />

mita<strong>de</strong>s <strong>de</strong> mayor y menor or<strong>de</strong>n <strong>de</strong>l operando<br />

2, para un valor combinado <strong>de</strong> doble precisión<br />

en el rango que va <strong>de</strong> 0 a 99,999,999.<br />

Los cuatro últimos registros implícitos<br />

almacenan el producto <strong>de</strong> doble precisión en el<br />

rango que va <strong>de</strong> 0 a 9,999,999,999,999,999.<br />

ON = operación correcta<br />

ON = operando fuera <strong>de</strong> rango.<br />

operación correcta<br />

31007526 12/2006 217<br />

error<br />

intento <strong>de</strong> división entre 0


DMTH - Matemática <strong>de</strong> doble precisión<br />

Descripción <strong>de</strong><br />

parámetros:<br />

división<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción para la operación <strong>de</strong> división.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Operando 1<br />

(nodo<br />

superior)<br />

Operando 2<br />

Cociente<br />

Resto<br />

(nodo<br />

intermedio)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = el operando 1 se divi<strong>de</strong> entre el operando 2 y<br />

el resultado se traslada a los registros <strong>de</strong>signados.<br />

0x, 1x Ninguno ON = resto <strong>de</strong>cimal.<br />

OFF = resto en fracción.<br />

4x INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo registro<br />

4xxxx está implícito. El operando 1 se almacena<br />

aquí. El segundo registro 4x está implícito.<br />

Cada registro contiene un valor que pue<strong>de</strong> ir <strong>de</strong><br />

0000 a 9.999; para un valor combinado <strong>de</strong> doble<br />

precisión el rango va <strong>de</strong> 0 a 99,999,999. La mitad<br />

<strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l operando 1 se almacena en el<br />

registro visualizado, mientras que la <strong>de</strong> menor<br />

or<strong>de</strong>n se almacena en el registro implícito.<br />

El primero <strong>de</strong> seis registros 4x contiguos se<br />

introduce en el nodo intermedio.<br />

Los cinco registros restantes están implícitos:<br />

El registro visualizado y el primer registro<br />

implícito almacenan, respectivamente, las<br />

mita<strong>de</strong>s <strong>de</strong> mayor y menor or<strong>de</strong>n <strong>de</strong>l operando<br />

2, para un valor combinado <strong>de</strong> doble precisión<br />

en el rango que va <strong>de</strong> 0 a 99,999,999.<br />

Nota: Puesto que la división entre 0 no es válida, el<br />

valor 0 provocará un error; una rutina <strong>de</strong><br />

tratamiento <strong>de</strong> errores establecerá en 0000 los<br />

registros restantes <strong>de</strong>l nodo intermedio y activará la<br />

salida inferior.<br />

El segundo y tercer registros implícitos<br />

almacenan un cociente <strong>de</strong> ocho dígitos.<br />

Los registros implícitos cuarto y quinto<br />

almacenan el resto. Si el resto se expresa como<br />

una fracción, tendrá una longitud <strong>de</strong> ocho<br />

dígitos y se usarán ambos registros, mientras<br />

que si se expresa como un <strong>de</strong>cimal, tendrá una<br />

longitud <strong>de</strong> cuatro dígitos y sólo se utilizará el<br />

cuarto registro implícito.<br />

0x Ninguno ON = operación correcta<br />

0x Ninguno ON = operando fuera <strong>de</strong> rango.<br />

Salida inferior 0x Ninguno ON = el operando 2 es 0.<br />

218 31007526 12/2006


Presentación<br />

DRUM: Secuenciador <strong>de</strong> DRUM<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción DRUM.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

42<br />

Apartado Página<br />

Descripción breve 220<br />

Representación 221<br />

Descripción <strong>de</strong> los parámetros 223<br />

31007526 12/2006 219


DRUM: Secuenciador <strong>de</strong> DRUM<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción sólo estará disponible si ha expandido e instalado las<br />

instrucciones cargables DX; encontrará más información en p. 49.<br />

La instrucción DRUM se realiza en una tabla <strong>de</strong> registros 4x que contiene datos que<br />

representan cada paso <strong>de</strong> una secuencia. El número <strong>de</strong> registros asociados a esta<br />

tabla <strong>de</strong> datos <strong>de</strong>pen<strong>de</strong>rá <strong>de</strong>l número <strong>de</strong> pasos que sean necesarios en la<br />

secuencia. Pue<strong>de</strong> pre- asignar registros para almacenar datos <strong>de</strong> cada paso en la<br />

secuencia, permitiendo así añadir en el futuro pasos <strong>de</strong>l secuenciador sin tener que<br />

modificar la lógica <strong>de</strong> aplicación.<br />

DRUM incorpora una máscara <strong>de</strong> salida que le permitirá enmascarar <strong>de</strong> forma<br />

selectiva bits en los datos <strong>de</strong> registro antes <strong>de</strong> escribirlos en bobinas. Esto es<br />

especialmente útil cuando todas las salidas físicas <strong>de</strong>l secuenciador no son<br />

contiguas en el módulo <strong>de</strong> salida. Los bits enmascarados no se verán alterados por<br />

la instrucción DRUM y la lógica los utilizará sin tener en cuenta el secuenciador.<br />

220 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control activa<br />

número <strong>de</strong> paso<br />

actual<br />

paso siguiente<br />

restablecer<br />

Longitud:<br />

máx. 255 - PLC <strong>de</strong> 16 bits<br />

máx. 999 - PLC <strong>de</strong> 24 bits<br />

máx. 65.535 - *PLC<br />

pointer <strong>de</strong><br />

pasos<br />

tabla <strong>de</strong><br />

datos <strong>de</strong><br />

pasos<br />

*Disponible en los siguientes PLC:<br />

E685/785<br />

L785<br />

Serie Quantum<br />

longitud <strong>de</strong><br />

DRUM<br />

DRUM: Secuenciador <strong>de</strong> DRUM<br />

último paso<br />

31007526 12/2006 221<br />

error


DRUM: Secuenciador <strong>de</strong> DRUM<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia el secuenciador <strong>de</strong> DRUM.<br />

0x, 1x Ninguno ON = el pointer <strong>de</strong> pasos aumenta al siguiente<br />

paso.<br />

Entrada inferior 0x, 1x Ninguno ON = restablece el pointer a cero.<br />

Pointer <strong>de</strong><br />

pasos<br />

(nodo superior)<br />

Tabla <strong>de</strong> datos<br />

<strong>de</strong> pasos<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

4x INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

INT,<br />

UINT<br />

Número <strong>de</strong>l paso actual<br />

Primer registro en una tabla <strong>de</strong> información <strong>de</strong><br />

datos <strong>de</strong> pasos.<br />

(Si <strong>de</strong>sea más información, consulte p. 223.)<br />

Número <strong>de</strong> registros específicos <strong>de</strong> la aplicación<br />

que se utilizan en la tabla <strong>de</strong> datos <strong>de</strong> pasos,<br />

rango: 1999<br />

Longitud máx.: 255 – PLC <strong>de</strong> 16 bits Máx. 999 –<br />

PLC <strong>de</strong> 24 bits Máx. 65.535 - *PLC<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = valor <strong>de</strong>l pointer <strong>de</strong> pasos = longitud.<br />

Salida inferior 0x Ninguno ON = Error.<br />

222 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Pointer <strong>de</strong> pasos<br />

(asiento<br />

superior)<br />

Tabla <strong>de</strong> datos<br />

<strong>de</strong> pasos<br />

(asiento<br />

intermedio)<br />

DRUM: Secuenciador <strong>de</strong> DRUM<br />

El registro 4x introducido en el asiento superior almacena el número <strong>de</strong> paso actual.<br />

La instrucción DRUM hace referencia al valor <strong>de</strong> este registro cada vez que éste se<br />

ejecuta. Si el asiento intermedio <strong>de</strong>l bloque está activo, los contenidos <strong>de</strong>l registro<br />

<strong>de</strong>l asiento superior se incrementarán hasta el siguiente paso <strong>de</strong> la secuencia antes<br />

<strong>de</strong> que se ejecute el bloque.<br />

El registro 4x introducido en el nodo intermedio es el primer registro <strong>de</strong> una tabla <strong>de</strong><br />

información <strong>de</strong> datos <strong>de</strong> pasos.<br />

Los seis primeros registros en la tabla <strong>de</strong> datos <strong>de</strong> pasos mantienen datos<br />

constantes y variables necesarios para ejecutar el bloque.<br />

Registro Nombre Contenido<br />

Visualizado Datos <strong>de</strong> salida<br />

enmascarados<br />

Primer<br />

implícito<br />

Segundo<br />

implícito<br />

Tercer<br />

implícito<br />

Cuarto<br />

implícito<br />

Quinto<br />

implícito<br />

Datos <strong>de</strong> paso<br />

actuales<br />

Máscara <strong>de</strong><br />

salida<br />

Número <strong>de</strong><br />

i<strong>de</strong>ntificación <strong>de</strong><br />

máquina<br />

Número <strong>de</strong><br />

i<strong>de</strong>ntificación <strong>de</strong><br />

perfil<br />

DRUM los carga cada vez que se ejecuta el bloque; está<br />

formado por los contenidos <strong>de</strong>l registro <strong>de</strong> datos <strong>de</strong> pasos<br />

actual enmascarado con el registro <strong>de</strong> máscara <strong>de</strong> salida.<br />

Cargados por DRUM cada vez que se ejecuta el bloque;<br />

contiene datos <strong>de</strong>l pointer <strong>de</strong> pasos; hace que la lógica <strong>de</strong>l<br />

bloque calcule automáticamente los offsets <strong>de</strong> los registros<br />

al acce<strong>de</strong>r a los datos <strong>de</strong> pasos en la tabla <strong>de</strong> datos <strong>de</strong><br />

pasos.<br />

Cargada por el usuario antes <strong>de</strong> utilizar el bloque, DRUM<br />

no alterará los contenidos <strong>de</strong> la máscara <strong>de</strong> salida durante<br />

la ejecución lógica; contiene un máscara que se aplicará a<br />

los datos para cada parada <strong>de</strong>l secuenciador.<br />

I<strong>de</strong>ntifica los <strong>bloques</strong> DRUM/ICMP que pertenecen a la<br />

configuración específica <strong>de</strong> una máquina; rango <strong>de</strong> valores:<br />

0 ... 9.999 (0 = bloque no configurado); todos los <strong>bloques</strong><br />

que pertenecen a la misma configuración <strong>de</strong> máquina<br />

<strong>de</strong>ben tener el mismo número <strong>de</strong> ID <strong>de</strong> máquina.<br />

I<strong>de</strong>ntifica datos <strong>de</strong> perfil cargados actualmente en el<br />

secuenciador; rango <strong>de</strong> valor: 0... 9.999 (0 = bloque no<br />

configurado); todos los <strong>bloques</strong> con el mismo número <strong>de</strong><br />

i<strong>de</strong>ntificación <strong>de</strong> máquina <strong>de</strong>ben tener el mismo número <strong>de</strong><br />

i<strong>de</strong>ntificación <strong>de</strong> perfil.<br />

Pasos utilizados Cargado por el usuario antes <strong>de</strong> utilizar el bloque, DRUM<br />

no altera el contenido <strong>de</strong> los pasos usados durante una<br />

resolución lógica; contiene entre 1 y 999 para las CPU <strong>de</strong><br />

24 bits, especifica el número actual <strong>de</strong> pasos que se <strong>de</strong>ben<br />

resolver; el número <strong>de</strong>be ser mayor o menor que la longitud<br />

<strong>de</strong> la tabla en el asiento inferior.<br />

31007526 12/2006 223


DRUM: Secuenciador <strong>de</strong> DRUM<br />

Longitud<br />

(asiento inferior)<br />

Los registros restantes contienen datos para cada paso <strong>de</strong> la secuencia.<br />

El valor entero introducido en el asiento inferior especifica la longitud, es <strong>de</strong>cir, el<br />

número <strong>de</strong> registros específicos <strong>de</strong> la aplicación utilizados en la tabla <strong>de</strong> datos <strong>de</strong><br />

pasos. La longitud pue<strong>de</strong> tener un rango <strong>de</strong> 1 a 999 en una CPU <strong>de</strong> 24 bits.<br />

El número total <strong>de</strong> registros necesarios para una tabla <strong>de</strong> datos <strong>de</strong> pasos es la<br />

longitud +6. La longitud <strong>de</strong>be ser igual o mayor que el valor indicado en el registro<br />

<strong>de</strong> pasos utilizados <strong>de</strong>l asiento intermedio.<br />

224 31007526 12/2006


Presentación<br />

DV16: División <strong>de</strong> 16 bits<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción DV16.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

43<br />

Apartado Página<br />

Descripción breve 226<br />

Representación 227<br />

Ejemplo 229<br />

31007526 12/2006 225


DV16: División <strong>de</strong> 16 bits<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción DV16 ejecuta una división con o sin signo <strong>de</strong> los valores <strong>de</strong> 16 bits<br />

<strong>de</strong> los asientos superior e intermedio (valor 1/valor 2) y, a continuación, sitúa el<br />

cociente y el resto en dos registros <strong>de</strong> salida 4x contiguos en el asiento inferior.<br />

226 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control finalización correcta<br />

ON = resto <strong>de</strong>cimal<br />

OFF = resto fraccionario<br />

ON = con signo<br />

OFF = sin signo<br />

valor 1<br />

valor 2<br />

cociente<br />

DV16<br />

<strong>de</strong>sbor<strong>de</strong><br />

DV16: División <strong>de</strong> 16 bits<br />

sin signo: > 65.535<br />

con signo: > <strong>32</strong>.767 ó < -<strong>32</strong>.767<br />

31007526 12/2006 227<br />

error<br />

nodo intermedio = 0


DV16: División <strong>de</strong> 16 bits<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = habilita valor 1 y valor 2.<br />

0x, 1x Ninguno ON = resto <strong>de</strong>cimal.<br />

OFF = resto en fracción.<br />

Entrada inferior 0x, 1x Ninguno ON = operación con signo.<br />

OFF = operación sin signo.<br />

Valor 1<br />

(nodo superior)<br />

Valor 2<br />

(nodo<br />

intermedio)<br />

Cociente<br />

(nodo inferior)<br />

3x, 4x INT, UINT Divi<strong>de</strong>ndo: se pue<strong>de</strong> mostrar <strong>de</strong> forma<br />

explícita como número entero (rango<br />

165.535) o almacenarse en dos registros<br />

contiguos (visualizados para la mitad <strong>de</strong><br />

mayor or<strong>de</strong>n, implícitos para la mitad <strong>de</strong><br />

menor or<strong>de</strong>n).<br />

3x, 4x INT, UINT Divisor: se pue<strong>de</strong> mostrar <strong>de</strong> forma<br />

explícita como número entero (rango<br />

165.535, introduzca, por ejemplo, el<br />

número 65.535) o guardado en un<br />

registro.<br />

4x INT, UINT Primero <strong>de</strong> los dos registros en espera<br />

contiguos:<br />

Visualizado: resultado <strong>de</strong> la división.<br />

Implícito: resto (bien sea <strong>de</strong>cimal o<br />

fracción, según el estado <strong>de</strong>l nodo<br />

intermedio).<br />

Salida superior 0x Ninguno ON = la división se ha completado<br />

satisfactoriamente.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = <strong>de</strong>sbor<strong>de</strong>:<br />

Cociente > 65.535 en una operación sin<br />

signo.<br />

-<strong>32</strong>.768 > cociente > <strong>32</strong>.767 en la<br />

operación con signo<br />

Salida inferior 0x Ninguno Error<br />

228 31007526 12/2006


Ejemplo<br />

Cociente <strong>de</strong> la<br />

instrucción DV16<br />

DV16: División <strong>de</strong> 16 bits<br />

El estado <strong>de</strong> la entrada intermedia indica si el resto se expresará como un número<br />

<strong>de</strong>cimal o como una fracción. Por ejemplo, si la entrada intermedia es ON, el valor<br />

1 = 8 y el valor 2 = 3, el cociente tiene un valor <strong>de</strong> 2 en el registro Resultado y un<br />

valor <strong>de</strong> 6.666 en el registro Resto.<br />

31007526 12/2006 229


DV16: División <strong>de</strong> 16 bits<br />

230 31007526 12/2006


Presentación<br />

Descripción <strong>de</strong> instrucciones (E)<br />

III<br />

Introducción En esta sección todas las <strong>de</strong>scripciones <strong>de</strong> instrucciones empiezan con E.<br />

Contenido Esta parte contiene los siguientes capítulos:<br />

Capítulo Nombre <strong>de</strong>l capítulo Página<br />

44 EARS - Sistema <strong>de</strong> registro <strong>de</strong> eventos/alarmas 233<br />

45 EMTH: Matemática extendida 241<br />

46 EMTH-ADDDP: Adición <strong>de</strong> doble precisión 247<br />

47 EMTH-ADDFP: Adición <strong>de</strong> coma flotante 253<br />

48 EMTH-ADDIF: Adición <strong>de</strong> entero + coma flotante 259<br />

49 EMTH-ANLOG: Algoritmo <strong>de</strong> base 10 265<br />

50 EMTH-ARCOS: Arcocoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

271<br />

51 EMTH-ARSIN: Arcoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

52 EMTH-ARTAN: Arcotangente <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

53 EMTH-CHSIN: Cambio <strong>de</strong> signo <strong>de</strong> un número con coma<br />

flotante<br />

54 EMTH-CMPFP: Comparar flotantes 295<br />

55 EMTH-CMPIF: Comparar entero y coma flotante 301<br />

56 EMTH-CNVDR: Conversión <strong>de</strong> coma flotante <strong>de</strong> grados a<br />

radianes<br />

307<br />

57 EMTH-CNVFI: Conversión <strong>de</strong> coma flotante a entero 313<br />

58 EMTH-CNVIF: Conversión <strong>de</strong> entero a coma flotante 319<br />

59 EMTH-CNVRD: Conversión <strong>de</strong> coma flotante <strong>de</strong> radianes a<br />

grados<br />

<strong>32</strong>5<br />

31007526 12/2006 231<br />

277<br />

283<br />

289


Descripción <strong>de</strong> instrucciones (E)<br />

Capítulo Nombre <strong>de</strong>l capítulo Página<br />

60 EMTH-COS: Coseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

61 EMTH-DIVDP: División <strong>de</strong> doble precisión 337<br />

62 EMTH-DIVFI: Coma flotante dividida por entero 343<br />

63 EMTH-DIVFP: División <strong>de</strong> coma flotante 349<br />

64 EMTH-DIVIF: Entero dividido por coma flotante 355<br />

65 EMTH-ERLOG: Registro <strong>de</strong> errores <strong>de</strong> coma flotante 361<br />

66 EMTH-EXP: Función exponencial <strong>de</strong> coma flotante 367<br />

67 EMTH-LNFP: Logaritmo natural <strong>de</strong> coma flotante 373<br />

68 EMTH-LOG: Logaritmo <strong>de</strong> base 10 379<br />

69 EMTH-LOGFP: Logaritmo común <strong>de</strong> coma flotante 385<br />

70 EMTH-MULDP: Multiplicación <strong>de</strong> doble precisión 391<br />

71 EMTH-MULFP: Multiplicación con coma flotante 397<br />

72 EMTH-MULIF: Multiplicación <strong>de</strong> entero x coma flotante 403<br />

73 EMTH-PI: Cargar el valor <strong>de</strong> coma flotante <strong>de</strong> "Pi" 409<br />

74 EMTH-POW: Elevar un número con coma flotante a una<br />

potencia entera<br />

415<br />

75 EMTH-SINE: Seno <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

76 EMTH-SQRFP: Raíz cuadrada con coma flotante 427<br />

77 EMTH-SQRT: Raíz cuadrada con coma flotante 433<br />

78 EMTH-SQRTP: Raíz cuadrada <strong>de</strong> proceso 439<br />

79 EMTH-SUBDP: Resta <strong>de</strong> doble precisión 445<br />

80 EMTH-SUBFI: Resta <strong>de</strong> coma flotante menos entero 451<br />

81 EMTH-SUBFP: Resta con coma flotante 457<br />

82 EMTH-SUBIF: Resta <strong>de</strong> entero menos coma flotante 463<br />

83 EMTH-TAN: Tangente con coma flotante <strong>de</strong> un ángulo (en<br />

radianes)<br />

469<br />

84 ESI: Soporte <strong>de</strong>l módulo ESI 475<br />

85 EUCA: Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas 495<br />

2<strong>32</strong> 31007526 12/2006<br />

331<br />

421


Presentación<br />

EARS - Sistema <strong>de</strong> registro <strong>de</strong><br />

eventos/alarmas<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción EARS.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

44<br />

Apartado Página<br />

Descripción breve 234<br />

Representación 235<br />

Descripción <strong>de</strong> parámetros 237<br />

31007526 12/2006 233


EARS - Sistema <strong>de</strong> registro <strong>de</strong> eventos/alarmas<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

Funciones <strong>de</strong>l<br />

PLC en un<br />

sistema <strong>de</strong><br />

registro <strong>de</strong><br />

eventos/alarmas<br />

Interacción <strong>de</strong>l<br />

host al PLC<br />

El bloque EARS se carga en un PLC utilizado en un sistema <strong>de</strong> registro <strong>de</strong> alarmas/<br />

eventos. Un sistema EARS exige que el PLC trabaje junto con un dispositivo host<br />

<strong>de</strong> interfase hombre-máquina (HMI) que ejecute un paquete <strong>de</strong> software local<br />

especial. El PLC supervisa un grupo especificado <strong>de</strong> eventos para comprobar si hay<br />

cambios <strong>de</strong> estado y guarda los datos en un búfer. El host, a su vez, elimina estos<br />

datos mediante una red <strong>de</strong> alta velocidad como Modbus Plus. Los dos dispositivos<br />

cumplen un protocolo <strong>de</strong>finido <strong>de</strong> establecimiento <strong>de</strong> conexión, el cual garantiza<br />

que todos los datos <strong>de</strong>tectados por el PLC se representarán a<strong>de</strong>cuadamente en el<br />

host.<br />

Cuando se utiliza un PLC en un entorno EARS, se configura para mantener y<br />

controlar dos tablas <strong>de</strong> registros 4xxxx; una contiene el estado actual <strong>de</strong> un conjunto<br />

<strong>de</strong> eventos <strong>de</strong>finidos por el usuario, y la otra contiene el historial <strong>de</strong>l estado más<br />

reciente <strong>de</strong> dichos eventos. Los estados <strong>de</strong> los eventos se guardan como representaciones<br />

<strong>de</strong> bits en los registros 4xxxx; un valor <strong>de</strong> bit igual a 1 indica un estado ON,<br />

mientras que un valor 0 indica un estado OFF. Cada tabla pue<strong>de</strong> contener hasta 62<br />

registros, lo que permite controlar el estado <strong>de</strong> 992 eventos.<br />

Cuando el PLC <strong>de</strong>tecta un cambio entre el bit <strong>de</strong> estado actual y el bit <strong>de</strong> historial<br />

<strong>de</strong> un evento, la instrucción EARS prepara un mensaje con dos palabras y lo coloca<br />

en un búfer <strong>de</strong>s<strong>de</strong> el que se pue<strong>de</strong> cargar en un host con HMI.<br />

Este mensaje contiene:<br />

una marca <strong>de</strong> tiempo que representa el periodo <strong>de</strong> tiempo <strong>de</strong>s<strong>de</strong> medianoche<br />

hasta 24.00 horas en décimas <strong>de</strong> segundo;<br />

un indicador <strong>de</strong> transición que indica que el evento pue<strong>de</strong> ser una transición<br />

negativa o positiva con respecto al estado <strong>de</strong>l evento;<br />

un número que indica el evento que se ha producido.<br />

El dispositivo host HMI <strong>de</strong>be disponer <strong>de</strong> la capacidad para leer y escribir registros<br />

<strong>de</strong> datos <strong>de</strong>l PLC mediante el protocolo Modbus. Un protocolo <strong>de</strong> establecimiento<br />

<strong>de</strong> conexión mantiene la integridad entre el host y el búfer circular que se ejecuta<br />

en el PLC. Esto permite que el host reciba eventos <strong>de</strong> forma asíncrona <strong>de</strong>s<strong>de</strong> el<br />

búfer a una velocidad apropiada mientras el PLC <strong>de</strong>tecta cambios en los eventos y<br />

carga el búfer con la mayor velocidad posible.<br />

234 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

inferior<br />

Tabla <strong>de</strong><br />

historial/<br />

pointer <strong>de</strong><br />

tabla <strong>de</strong><br />

estado<br />

(nodo<br />

superior)<br />

entrada <strong>de</strong> control<br />

tabla <strong>de</strong> historial<br />

(4xxxx-4xxxx + 63)<br />

información <strong>de</strong> la cola y cola<br />

(evento/alarma<br />

longitud <strong>de</strong> tabla 5+NNN)<br />

restablecer<br />

Longitud: 1–1.000<br />

pointer <strong>de</strong><br />

tabla <strong>de</strong><br />

estado/tabla<br />

<strong>de</strong> historial<br />

tabla <strong>de</strong><br />

búfer<br />

longitud <strong>de</strong><br />

EARS<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

EARS - Sistema <strong>de</strong> registro <strong>de</strong> eventos/alarmas<br />

cola <strong>de</strong> espera no vacía<br />

libre para envío<br />

cola <strong>de</strong> espera llena<br />

0x, 1x Ninguno ON = se realizarán el establecimiento <strong>de</strong> enlace (en caso necesario) y la<br />

comprobación <strong>de</strong> validación. A continuación, se realizarán las operaciones<br />

EARS.<br />

OFF = se realizará el establecimiento <strong>de</strong> enlace (en caso necesario) y se<br />

completarán las transacciones pendientes.<br />

0x, 1x Ninguno Restablecer búfer: los pointers <strong>de</strong> la tabla <strong>de</strong> eventos y el nodo superior se<br />

ponen a cero.<br />

4x INT,<br />

UINT<br />

El registro 4xxxx introducido en el nodo superior es el primero <strong>de</strong> 64<br />

registros contiguos. Los dos primeros registros contienen valores que<br />

especifican la ubicación y el tamaño <strong>de</strong> la tabla <strong>de</strong> estado actual.<br />

(Para obtener información más <strong>de</strong>tallada, consulte p. 237.)<br />

Los 61 registros restantes se utilizan para almacenar datos <strong>de</strong>l historial. Si<br />

no se necesitan todos esos registros restantes para la tabla <strong>de</strong> historial,<br />

podrán utilizarse en el programa para otras funciones, aunque seguirán<br />

encontrándose (mediante una búsqueda Modbus) en el nodo superior <strong>de</strong>l<br />

bloque EARS.<br />

31007526 12/2006 235


EARS - Sistema <strong>de</strong> registro <strong>de</strong> eventos/alarmas<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tabla <strong>de</strong><br />

búfer<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Salida<br />

inferior<br />

Tipo <strong>de</strong><br />

datos<br />

4x INT,<br />

UINT<br />

INT,<br />

UINT<br />

Significado<br />

El registro 4xxxx introducido en el nodo intermedio es el primero <strong>de</strong> una<br />

serie <strong>de</strong> registros contiguos que se utilizan como tabla <strong>de</strong> búfer. Los<br />

primeros cinco registros se usan <strong>de</strong>l modo que se indica a continuación,<br />

mientras que el resto contiene el búfer circular. Este búfer utiliza un número<br />

par <strong>de</strong> registros que pue<strong>de</strong> ir <strong>de</strong> 2 a 100.<br />

Para obtener información más <strong>de</strong>tallada,<br />

consulte p. 238.<br />

La marca <strong>de</strong> tiempo se codifica en 20 bits como un valor binario pon<strong>de</strong>rado<br />

que representa el tiempo en un incremento <strong>de</strong> 0,1 s, a partir <strong>de</strong> la<br />

medianoche <strong>de</strong>l día en el que se ha <strong>de</strong>tectado el cambio <strong>de</strong> estado:<br />

1 hora = 3.600 segundos = 36.000 décimas <strong>de</strong> segundo.<br />

24 horas = 86.400 segundos = 864.000 décimas <strong>de</strong> segundo.<br />

Nota: El reloj <strong>de</strong> tiempo real <strong>de</strong> los controladores montados en chasis tiene<br />

una resolución en décimas <strong>de</strong> segundo, mientras que los <strong>de</strong>más 984 sólo<br />

tienen una resolución <strong>de</strong> un segundo. La instrucción EARS utiliza un<br />

algoritmo para proporcionar una mejor estimación <strong>de</strong> la resolución en<br />

décimas <strong>de</strong> segundo; obtiene una gran precisión en los intervalos <strong>de</strong> tiempo<br />

relativo entre eventos, pero pue<strong>de</strong> diferir un poco <strong>de</strong>l reloj <strong>de</strong> tiempo real.<br />

El valor entero introducido en el nodo inferior especifica la longitud, es <strong>de</strong>cir,<br />

el número real <strong>de</strong> registros asignados al búfer circular. La longitud está<br />

comprendida entre 2 y 100. Cada evento requiere dos registros para<br />

almacenamiento <strong>de</strong> datos. Por lo tanto, si <strong>de</strong>sea capturar hasta 25 eventos<br />

en el búfer en un momento dado, asigne una longitud <strong>de</strong> 50 en el nodo<br />

inferior.<br />

0x Ninguno ON = datos en el búfer.<br />

Transfiere señales cuando hay datos en la cola <strong>de</strong> espera.<br />

0x Ninguno ON durante el ciclo que sigue a la recepción <strong>de</strong> notificación <strong>de</strong><br />

comunicaciones <strong>de</strong>s<strong>de</strong> el host.<br />

Transfiere señales durante un ciclo <strong>de</strong>spués <strong>de</strong> obtener una respuesta <strong>de</strong>l<br />

host.<br />

0x Ninguno Búfer lleno: no se pue<strong>de</strong>n añadir eventos hasta que el host realice alguna<br />

<strong>de</strong>scarga o se restablezca el búfer.<br />

Transfiere señales cuando la cola <strong>de</strong> espera está llena. No se pue<strong>de</strong>n añadir<br />

más eventos.<br />

236 31007526 12/2006


Descripción <strong>de</strong> parámetros<br />

Descripción<br />

general<br />

Tabla <strong>de</strong><br />

registros<br />

(nodo superior)<br />

EARS - Sistema <strong>de</strong> registro <strong>de</strong> eventos/alarmas<br />

Esta sección contiene amplia información <strong>de</strong>tallada en forma <strong>de</strong> tablas relacionada<br />

con los nodos superior e intermedio. El nodo intermedio proporciona más<br />

información, que se <strong>de</strong>talla en tres tablas adicionales.<br />

Por lo tanto, esta sección muestra cinco tablas.<br />

Tabla <strong>de</strong> registros (nodo superior)<br />

Tabla <strong>de</strong> registros <strong>de</strong> datos (nodo intermedio)<br />

Tabla <strong>de</strong> códigos <strong>de</strong> estado/error<br />

Tabla <strong>de</strong> datos <strong>de</strong> cambios en eventos<br />

Tabla <strong>de</strong> valores binarios pon<strong>de</strong>rados<br />

Ésta es la tabla <strong>de</strong> registros <strong>de</strong>l nodo superior <strong>de</strong> la instrucción EARS.<br />

Registro Contenido<br />

4x Pointer indirecto a la tabla <strong>de</strong> estado actual; por ejemplo, si el registro contiene<br />

un valor <strong>de</strong> 5, la tabla <strong>de</strong> estado comenzará en el registro 40005. El<br />

programador <strong>de</strong>be encargarse <strong>de</strong> incluir el registro <strong>de</strong>l pointer indirecto en el<br />

código fuente.<br />

4x+1 Contiene un valor en el rango <strong>de</strong> 1 a 62 que especifica el número <strong>de</strong> registros<br />

<strong>de</strong> la tabla <strong>de</strong> estado actual; el programador <strong>de</strong>be introducir este valor en el<br />

código fuente.<br />

4x+2 Primer registro <strong>de</strong> la tabla <strong>de</strong> historial; los restantes registros asignados al<br />

nodo superior se pue<strong>de</strong>n utilizar en la tabla como sea necesario. La tabla <strong>de</strong><br />

historial permite controlar hasta 992 eventos contiguos (si se utilizan 16 bits<br />

en los 62 registros disponibles).<br />

31007526 12/2006 237


EARS - Sistema <strong>de</strong> registro <strong>de</strong> eventos/alarmas<br />

Tabla <strong>de</strong><br />

registros <strong>de</strong><br />

datos (nodo<br />

intermedio)<br />

Tabla <strong>de</strong> códigos<br />

<strong>de</strong> estado/error<br />

Ésta es la tabla <strong>de</strong> registros <strong>de</strong> datos <strong>de</strong>l nodo intermedio <strong>de</strong> la instrucción EARS.<br />

Registro Contenido<br />

4x Valor que <strong>de</strong>fine el número máximo <strong>de</strong> registros que pue<strong>de</strong> ocupar el búfer<br />

circular.<br />

4x+1 Pointer Q_take; pointer al siguiente registro en el que el host eliminará datos.<br />

4x+2 El byte bajo contiene el pointer Q_put, es <strong>de</strong>cir, el pointer al registro <strong>de</strong>l búfer<br />

circular en el que el bloque EARS comenzará a colocar los siguientes datos<br />

relativos a cambios en el estado. EL byte alto contiene el último número <strong>de</strong><br />

transacción recibido.<br />

4x+3 Q+count es un valor que indica el número <strong>de</strong> palabras que hay actualmente en el<br />

búfer circular.<br />

4x+4 El registro 4x+4 proporciona información <strong>de</strong> estado/error.<br />

Para obtener una explicación <strong>de</strong> los códigos y <strong>de</strong> los mensajes <strong>de</strong> estado/error<br />

que éstos representan, consulte la siguiente tabla <strong>de</strong> códigos <strong>de</strong> estado/error.<br />

4x+5 Registro 4x+5<br />

Proporciona datos relativos a cambios en los eventos.<br />

Es el primer registro <strong>de</strong> un búfer circular.<br />

Es el lugar don<strong>de</strong> se almacenan los datos acerca <strong>de</strong> cambios en eventos.<br />

Cada cambio en el estado <strong>de</strong> un evento produce dos registros contiguos, que se<br />

explican a continuación en la tabla <strong>de</strong> datos <strong>de</strong> cambios en eventos.<br />

Ésta es la tabla <strong>de</strong> códigos <strong>de</strong> estado/error para el registro 4x+4 <strong>de</strong>l nodo<br />

intermedio. A continuación se muestra información <strong>de</strong>tallada acerca <strong>de</strong>l registro<br />

4x+4 <strong>de</strong>l nodo intermedio. El número <strong>de</strong> código visualizado representa un estado<br />

existente.<br />

Código Condición<br />

1 Longitud <strong>de</strong>l bloque no válida.<br />

2 Solicitud <strong>de</strong> reloj no válida.<br />

3 Configuración <strong>de</strong> reloj no válida.<br />

4 Longitud <strong>de</strong> estado no válida.<br />

5 Ubicación en cola no válida.<br />

6 Salida <strong>de</strong> cola no válida.<br />

7 Estado no válido.<br />

8 Conteo <strong>de</strong> cola no válido.<br />

9 Número <strong>de</strong> secuencia no válido.<br />

10 Conteo eliminado.<br />

255 Chip <strong>de</strong> reloj incorrecto.<br />

238 31007526 12/2006


Tabla <strong>de</strong> datos<br />

<strong>de</strong> cambios en<br />

eventos<br />

EARS - Sistema <strong>de</strong> registro <strong>de</strong> eventos/alarmas<br />

Cuando se produce un cambio en el registro 4x+5, éste genera a su vez dos<br />

registros contiguos. En esta sección se explica cómo utilizar estos registros<br />

contiguos.<br />

Registro <strong>de</strong> datos <strong>de</strong> eventos 1<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

En la siguiente tabla se <strong>de</strong>scribe la utilización <strong>de</strong> bits.<br />

Bit Uso<br />

1 - 4 Cuatro bits <strong>de</strong> mayor valor <strong>de</strong> la marca <strong>de</strong> tiempo <strong>de</strong> eventos.<br />

5 Tipo <strong>de</strong> evento <strong>de</strong> transición.<br />

0 = negativo.<br />

1 = positivo.<br />

6 Reservado<br />

7 - 16 Número <strong>de</strong> evento (1...992)<br />

Registro <strong>de</strong> datos <strong>de</strong> eventos 2<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

En la siguiente tabla se <strong>de</strong>scribe la utilización <strong>de</strong> bits.<br />

Bit Uso<br />

1 - 16 16 bits <strong>de</strong> menor valor <strong>de</strong> la marca <strong>de</strong> tiempo <strong>de</strong> eventos.<br />

La marca <strong>de</strong> tiempo se codifica en 20 bits como un valor binario pon<strong>de</strong>rado que<br />

representa el tiempo en un incremento <strong>de</strong> 0,1 s (décimas <strong>de</strong> segundo), <strong>de</strong>s<strong>de</strong> la<br />

medianoche <strong>de</strong>l día en el que se ha <strong>de</strong>tectado el cambio <strong>de</strong> estado.<br />

1 hora = 3.600 segundos = 36.000 décimas <strong>de</strong> segundo.<br />

24 horas = 86.400 segundos = 864.000 décimas <strong>de</strong> segundo.<br />

Para obtener información más <strong>de</strong>tallada acerca <strong>de</strong> los valores binarios pon<strong>de</strong>rados<br />

para la marca <strong>de</strong> tiempo, consulte la siguiente tabla <strong>de</strong> valores binarios pon<strong>de</strong>rados.<br />

31007526 12/2006 239


EARS - Sistema <strong>de</strong> registro <strong>de</strong> eventos/alarmas<br />

Tabla <strong>de</strong> valores<br />

binarios<br />

pon<strong>de</strong>rados<br />

Registro <strong>de</strong> datos <strong>de</strong> eventos 1 (cuarteto <strong>de</strong> mayor valor [4 bits])<br />

19 18 17 16<br />

Registro <strong>de</strong> datos <strong>de</strong> eventos 2<br />

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0<br />

En la siguiente tabla se muestran los valores binarios pon<strong>de</strong>rados para la marca <strong>de</strong><br />

tiempo, don<strong>de</strong> n es la posición <strong>de</strong> bit relativa en el esquema temporal <strong>de</strong> 20 bits.<br />

2 n n 2 n n 2 n n<br />

1 0 256 8 65536 16<br />

2 1 512 9 131072 17<br />

4 2 1024 10 262144 18<br />

8 3 2048 11 524288 19<br />

16 4 4096 12<br />

<strong>32</strong> 5 8192 13<br />

64 6 16384 14<br />

128 7 <strong>32</strong>768 15<br />

Nota: El reloj <strong>de</strong> tiempo real <strong>de</strong> los PLC montados en chasis tiene una resolución<br />

en décimas <strong>de</strong> segundo, mientras que el resto <strong>de</strong> PLC 984 sólo tienen una<br />

resolución <strong>de</strong> un segundo. En la instrucción EARS se utiliza un algoritmo para<br />

proporcionar una mejor estimación con una resolución en décimas <strong>de</strong> segundo.<br />

Esta estimación algorítmica es muy precisa en intervalos <strong>de</strong> tiempo relativos entre<br />

eventos, pero la estimación pue<strong>de</strong> variar ligeramente <strong>de</strong>l reloj <strong>de</strong> tiempo real.<br />

240 31007526 12/2006


Presentación<br />

EMTH: Matemática extendida<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

45<br />

Apartado Página<br />

Descripción breve 242<br />

Representación 243<br />

Descripción <strong>de</strong> los parámetros 244<br />

Funciones <strong>de</strong> EMTH con coma flotante 246<br />

31007526 12/2006 241


EMTH: Matemática extendida<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción da acceso a una biblioteca <strong>de</strong> matemática <strong>de</strong> doble precisión, <strong>de</strong><br />

cálculos <strong>de</strong> raíces cuadradas y logaritmos y <strong>de</strong> funciones aritméticas <strong>de</strong> coma<br />

flotante.<br />

La instrucción EMTH le permite seleccionar funciones en una biblioteca <strong>de</strong> 38<br />

funciones <strong>de</strong> matemática extendida. Cada una <strong>de</strong> ellas tiene un indicador alfabético<br />

<strong>de</strong> subfunciones variables que pue<strong>de</strong>n seleccionarse en un menú <strong>de</strong>splegable en<br />

su software <strong>de</strong> panel y que aparece en el asiento inferior. Las entradas y salidas <strong>de</strong><br />

control <strong>de</strong> EMTH <strong>de</strong>pen<strong>de</strong>n <strong>de</strong> la función.<br />

242 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada superior salida superior<br />

nodo<br />

superior<br />

entrada intermedia<br />

entrada inferior<br />

nodo<br />

intermedio<br />

subfunción<br />

EMTH<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

salida intermedia<br />

salida inferior<br />

EMTH: Matemática extendida<br />

Entrada superior 0x, 1x Ninguno Depen<strong>de</strong> <strong>de</strong> la función EMTH seleccionada,<br />

consulte p. 244.<br />

Entrada<br />

intermedia<br />

0x, 1x Ninguno Depen<strong>de</strong> <strong>de</strong> la función EMTH seleccionada.<br />

Entrada inferior 0x, 1x Ninguno Depen<strong>de</strong> <strong>de</strong> la función EMTH seleccionada.<br />

Nodo superior 3x, 4x DINT,<br />

UDINT,<br />

REAL<br />

Nodo intermedio 4x DINT,<br />

UDINT,<br />

REAL<br />

Subfunción<br />

(nodo inferior)<br />

Dos registros consecutivos; normalmente son<br />

registros en espera 4x aunque, en los casos <strong>de</strong><br />

matemática <strong>de</strong> números enteros, pue<strong>de</strong>n ser<br />

registros 3x o 4x.<br />

Dos, cuatro o seis registros consecutivos, según la<br />

función que se esté aplicando.<br />

Marca alfabética que i<strong>de</strong>ntifica la función EMTH,<br />

consulte p. 244.<br />

Salida superior 0x Ninguno Depen<strong>de</strong> <strong>de</strong> la función EMTH seleccionada,<br />

consulte p. 244.<br />

Salida<br />

intermedia<br />

0x Ninguno Depen<strong>de</strong> <strong>de</strong> la función EMTH seleccionada.<br />

Salida inferior 0x Ninguno Depen<strong>de</strong> <strong>de</strong> la función EMTH seleccionada.<br />

31007526 12/2006 243


EMTH: Matemática extendida<br />

Descripción <strong>de</strong> los parámetros<br />

Entradas, salidas<br />

y asiento inferior<br />

Subfunciones<br />

para la<br />

matemática <strong>de</strong><br />

doble precisión<br />

Subfunciones<br />

para matemática<br />

<strong>de</strong> números<br />

enteros<br />

La aplicación <strong>de</strong> entradas y <strong>de</strong> salidas <strong>de</strong>l bloque <strong>de</strong>pen<strong>de</strong> <strong>de</strong> la subfunción EMTH<br />

que haya seleccionado. En el asiento inferior aparece un indicador alfabético <strong>de</strong><br />

subfunciones variables que i<strong>de</strong>ntifica la función EMTH que haya elegido <strong>de</strong> la<br />

biblioteca.<br />

Encontrará las subfunciones EMTH en las siguientes tablas.<br />

Matemática <strong>de</strong> doble precisión<br />

Matemática <strong>de</strong> números enteros<br />

Matemática <strong>de</strong> coma flotante<br />

Matemática <strong>de</strong> doble precisión<br />

Función EMTH Subfunción Entradas activas Salidas activas<br />

Adición ADDDP Superior Superior e intermedia<br />

Substracción SUBDP Superior Superior, intermedia e inferior<br />

Multiplicación MULDP Superior Superior e intermedia<br />

División DIVDP Superior e intermedia Superior, intermedia e inferior<br />

Matemática <strong>de</strong> números enteros<br />

Función EMTH Subfunción Entradas activas Salidas activas<br />

Raíz cuadrada SQRT Superior Superior e intermedia<br />

Raíz cuadrada <strong>de</strong> proceso SQRTP Superior Superior e intermedia<br />

Logaritmo LOG Superior Superior e intermedia<br />

Antilogaritmo ANLOG Superior Superior e intermedia<br />

244 31007526 12/2006


Subfunciones<br />

para matemática<br />

<strong>de</strong> coma flotante<br />

EMTH: Matemática extendida<br />

Función EMTH Subfunción Entradas activas Salidas activas<br />

Conversión entero a coma flotante CNVIF Superior Superior<br />

Entero + coma flotante ADDIF Superior Superior<br />

Entero - coma flotante SUBIF Superior Superior<br />

Entero x coma flotante MULIF Superior Superior<br />

Entero/coma flotante DIVIF Superior Superior<br />

Coma flotante - entero SUBFI Superior Superior<br />

Coma flotante/entero DIVFI Superior Superior<br />

Comparación entero - coma<br />

flotante<br />

CMPIF Superior Superior<br />

Conversión coma flotante a entero CNVFI Superior Superior e intermedia<br />

Adición ADDFP Superior Superior<br />

Substracción SUBFP Superior Superior<br />

Multiplicación MULFP Superior Superior<br />

División DIVFP Superior Superior<br />

Comparación CMPFP Superior Superior, intermedia<br />

e inferior<br />

Raíz cuadrada SQRFP Superior Superior<br />

Cambio <strong>de</strong> signo CHSIN Superior Superior<br />

Cargar valor <strong>de</strong> p PI Superior Superior<br />

Seno en radianes SINE Superior Superior<br />

Coseno en radianes COS Superior Superior<br />

Tangente en radianes TAN Superior Superior<br />

Arcoseno en radianes ARSIN Superior Superior<br />

Arcocoseno en radianes ARCOS Superior Superior<br />

Arcotangente en radianes ARTAN Superior Superior<br />

Radianes a grados CNVRD Superior Superior<br />

Grados a radianes CNVDR Superior Superior<br />

Coma flotante a potencia entera POW Superior Superior<br />

Función exponencial EXP Superior Superior<br />

Logaritmo natural LNFP Superior Superior<br />

Logaritmo común LOGFP Superior Superior<br />

Informe <strong>de</strong> errores ERLOG Superior Superior e intermedia<br />

31007526 12/2006 245


EMTH: Matemática extendida<br />

Funciones <strong>de</strong> EMTH con coma flotante<br />

Utilización <strong>de</strong> las<br />

funciones con<br />

coma flotante<br />

El estándar <strong>de</strong><br />

coma flotante<br />

IEEE<br />

Uso <strong>de</strong> números<br />

negativos con<br />

coma flotante<br />

Para utilizar la posibilidad <strong>de</strong> coma flotante (FP), los valores enteros <strong>de</strong> cuatro<br />

dígitos utilizados en las instrucciones estándar <strong>de</strong>l grupo Math <strong>de</strong>ben convertirse al<br />

formato <strong>de</strong> coma flotante <strong>de</strong> IEEE. Así, todos los cálculos se llevarán a cabo en el<br />

formato <strong>de</strong> coma flotante y los resultados volverán a convertirse a formato <strong>de</strong><br />

valores enteros.<br />

Las funciones <strong>de</strong> coma flotante <strong>de</strong> EMTH requieren valores con formato <strong>de</strong> coma<br />

flotante <strong>de</strong> <strong>32</strong> bits <strong>de</strong> acuerdo con IEEE. A cada valor se le han asignado dos<br />

registros. los ocho bits más significantes que representan el exponente y los otros<br />

23 bits (más un bit asumido) que representan la mantisa y el signo <strong>de</strong>l valor.<br />

Nota: Los cálculos con coma flotante tienen una precisión mantisa <strong>de</strong> 24 bits, lo<br />

que garantiza la precisión <strong>de</strong> los siete dígitos más significantes. La precisión <strong>de</strong> los<br />

ocho dígitos en un cálculo <strong>de</strong> coma flotante pue<strong>de</strong> no ser exacta.<br />

Es prácticamente imposible reconocer una representación <strong>de</strong> coma flotante en el<br />

panel <strong>de</strong> programación. En consecuencia, todos los números se <strong>de</strong>berán volver a<br />

convertir a formato <strong>de</strong> números enteros para po<strong>de</strong>r leerlos.<br />

Los cálculos matemáticos estándar con números enteros no hacen uso explícito <strong>de</strong><br />

números negativos. La única forma <strong>de</strong> i<strong>de</strong>ntificar valores negativos es viendo que<br />

el bloque <strong>de</strong> función SUB ha activado la salida inferior.<br />

Si se va a convertir uno <strong>de</strong> esos números negativos en coma flotante, realice la<br />

conversión <strong>de</strong> entero a coma flotante (subfunción CNVIF <strong>de</strong> EMTH) y, a<br />

continuación, utilice la función Cambio <strong>de</strong> signo (subfunción CHSIN <strong>de</strong> EMTH) para<br />

pasarlo a negativo antes <strong>de</strong> realizar cualquier otro cálculo <strong>de</strong> coma flotante.<br />

246 31007526 12/2006


Presentación<br />

EMTH-ADDDP:<br />

Adición <strong>de</strong> doble precisión<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-ADDDP <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

46<br />

Apartado Página<br />

Descripción breve 248<br />

Representación 249<br />

Descripción <strong>de</strong> los parámetros 251<br />

31007526 12/2006 247


EMTH-ADDDP: Adición <strong>de</strong> doble precisión<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> doble precisión."<br />

248 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

EMTH-ADDDP: Adición <strong>de</strong> doble precisión<br />

adición <strong>de</strong> operandos operación correcta<br />

operando 1<br />

operando 2 y<br />

suma<br />

EMTH<br />

ADDDP<br />

operando no válido o fuera <strong>de</strong><br />

rango<br />

31007526 12/2006 249


EMTH-ADDDP: Adición <strong>de</strong> doble precisión<br />

Descripción <strong>de</strong><br />

parámetros<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Operando 1<br />

(nodo<br />

superior)<br />

Operando 2 y<br />

suma<br />

(nodo<br />

intermedio)<br />

ADDDP<br />

(nodo inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = suma los operandos y coloca el resultado en registros <strong>de</strong>signados.<br />

4x DINT,<br />

UDINT<br />

4x DINT,<br />

UDINT<br />

Operando 1 (primero <strong>de</strong> dos registros contiguos)<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se introduce en el nodo<br />

superior. El segundo registro 4xxxx está implícito. El operando 1 se<br />

almacena aquí. Cada registro contiene un valor que pue<strong>de</strong> ir <strong>de</strong> 0000 a<br />

9.999, para un valor combinado <strong>de</strong> doble precisión en el rango que va <strong>de</strong><br />

0 a 99,999,999. La mitad <strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l operando 1 se almacena en<br />

el registro visualizado, mientras que la <strong>de</strong> menor or<strong>de</strong>n se almacena en<br />

el registro implícito.<br />

Operando 2 y suma (primero <strong>de</strong> seis registros contiguos).<br />

El primero <strong>de</strong> seis registros 4xxxx contiguos se introduce en el nodo<br />

intermedio.<br />

Los cinco registros restantes están implícitos:<br />

El registro visualizado y el primer registro implícito almacenan,<br />

respectivamente, las mita<strong>de</strong>s <strong>de</strong> mayor y menor or<strong>de</strong>n <strong>de</strong>l operando<br />

2, para un valor combinado <strong>de</strong> doble precisión en el rango que va <strong>de</strong><br />

0 a 99,999,999.<br />

El valor almacenado en el segundo registro implícito indica si existe<br />

una condición <strong>de</strong> <strong>de</strong>sbor<strong>de</strong> (valor 1 = <strong>de</strong>sbor<strong>de</strong>).<br />

El tercer y cuarto registros implícitos almacenan, respectivamente, las<br />

mita<strong>de</strong>s <strong>de</strong> mayor y menor or<strong>de</strong>n <strong>de</strong> la suma <strong>de</strong> doble precisión.<br />

El quinto registro implícito no se utiliza en el cálculo, pero <strong>de</strong>be existir<br />

en la memoria <strong>de</strong> señal.<br />

Selección <strong>de</strong> la subfunción ADDDP.<br />

0x Ninguno ON = operación correcta<br />

0x Ninguno ON = operando fuera <strong>de</strong> rango o no válido.<br />

250 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Operando 1<br />

(asiento<br />

superior)<br />

Operando 2 y<br />

suma (asiento<br />

intermedio)<br />

EMTH-ADDDP: Adición <strong>de</strong> doble precisión<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro 4x está implícito. El operando 1 se almacena aquí.<br />

Registro Contenido<br />

Visualizado El registro guarda la mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l operando 1.<br />

Rango 0000 ... 9.999, para un valor <strong>de</strong> doble precisión combinado<br />

en el rango 0 a 99.999.999.<br />

Primer implícito El registro guarda la mitad <strong>de</strong> or<strong>de</strong>n mayor <strong>de</strong>l operando 1.<br />

Rango 0000 ... 9.999, para un valor <strong>de</strong> doble precisión combinado<br />

en el rango 0 a 99.999.999.<br />

El primero <strong>de</strong> seis registros 4x contiguos se introduce en el asiento intermedio. Los<br />

cinco registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado El registro almacena la mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l operando 2, para un<br />

valor <strong>de</strong> doble precisión combinado en el rango <strong>de</strong> 0 a 99.999.999.<br />

Primer implícito El registro almacena la mitad <strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l operando 2, para un<br />

valor <strong>de</strong> doble precisión combinado en el rango <strong>de</strong> 0 ... 99.999.999.<br />

Segundo implícito El valor almacenado en el segundo este registro indica si existe una<br />

condición <strong>de</strong> <strong>de</strong>sbor<strong>de</strong> (un valor <strong>de</strong> 1 = <strong>de</strong>sbor<strong>de</strong>)<br />

Tercer implícito El registro almacena la mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong> la suma <strong>de</strong> doble<br />

precisión.<br />

Cuarto implícito El registro almacena la mitad <strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong> la suma <strong>de</strong> doble<br />

precisión.<br />

Quinto implícito Este registro no se utiliza en el cálculo, pero <strong>de</strong>be existir en la memoria<br />

<strong>de</strong> señal.<br />

31007526 12/2006 251


EMTH-ADDDP: Adición <strong>de</strong> doble precisión<br />

252 31007526 12/2006


Presentación<br />

EMTH-ADDFP:<br />

Adición <strong>de</strong> coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-ADDFP <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

47<br />

Apartado Página<br />

Descripción breve 254<br />

Representación 255<br />

Descripción <strong>de</strong> los parámetros 257<br />

31007526 12/2006 253


EMTH-ADDFP: Adición <strong>de</strong> coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

254 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

inicia la adición <strong>de</strong> coma<br />

flotante<br />

valor 1<br />

valor 2 y<br />

suma<br />

EMTH<br />

ADDFP<br />

EMTH-ADDFP: Adición <strong>de</strong> coma flotante<br />

operación correcta<br />

31007526 12/2006 255


EMTH-ADDFP: Adición <strong>de</strong> coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor 1<br />

(nodo<br />

superior)<br />

Valor 2 y<br />

suma<br />

(nodo<br />

intermedio)<br />

ADDFP<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = habilita la adición con coma flotante.<br />

4x REAL Valor 1 <strong>de</strong> coma flotante (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo registro<br />

está implícito. El valor <strong>de</strong> coma flotante 1 en la<br />

adición se guarda aquí.<br />

4x REAL Valor 2 <strong>de</strong> coma flotante y la suma (el primero <strong>de</strong><br />

cuatro registros contiguos).<br />

Se introduce en el nodo intermedio el primero <strong>de</strong><br />

cuatro registros 4xxxx contiguos. Los tres registros<br />

restantes están implícitos. El valor <strong>de</strong> coma flotante<br />

2 se guarda en el registro visualizado y el primer<br />

registro implícito. La suma <strong>de</strong> la adición se guarda<br />

en formato <strong>de</strong> coma flotante en el segundo y tercer<br />

registros implícitos.<br />

Selección <strong>de</strong> la subfunción ADDFP.<br />

0x Ninguno ON = operación correcta.<br />

256 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor 1 <strong>de</strong><br />

coma flotante<br />

(asiento<br />

superior)<br />

Valor 2 <strong>de</strong> coma<br />

flotante y suma<br />

(asiento<br />

intermedio)<br />

EMTH-ADDFP: Adición <strong>de</strong> coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Los registros guardan el valor 1 <strong>de</strong> coma flotante.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Los registros guardan el valor 2 <strong>de</strong> coma flotante.<br />

Segundo implícito Los registros guardan el resultado <strong>de</strong> la adición en formato <strong>de</strong> coma<br />

Tercer implícito flotante.<br />

31007526 12/2006 257


EMTH-ADDFP: Adición <strong>de</strong> coma flotante<br />

258 31007526 12/2006


Presentación<br />

EMTH-ADDIF:<br />

Adición <strong>de</strong> entero + coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-ADDIF <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

48<br />

Apartado Página<br />

Descripción breve 260<br />

Representación 261<br />

Descripción <strong>de</strong> los parámetros 263<br />

31007526 12/2006 259


EMTH-ADDIF:<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

260 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

inicia la operación <strong>de</strong><br />

entero<br />

+ coma flotante<br />

entero<br />

coma flotante<br />

y suma<br />

EMTH<br />

ADDIF<br />

operación correcta<br />

EMTH-ADDIF:<br />

31007526 12/2006 261


EMTH-ADDIF:<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entero<br />

(nodo superior)<br />

Coma flotante y<br />

suma<br />

(nodo<br />

intermedio)<br />

ADDIF<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la operación <strong>de</strong> entero + coma<br />

flotante.<br />

4x DINT,<br />

UDINT<br />

Valor entero (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo<br />

registro está implícito. El valor entero <strong>de</strong> doble<br />

precisión que se va a sumar al valor <strong>de</strong> coma<br />

flotante se guarda aquí.<br />

4x REAL Valor <strong>de</strong> coma flotante y suma (el primero <strong>de</strong><br />

cuatro registros contiguos).<br />

Se introduce en el nodo intermedio el primero<br />

<strong>de</strong> cuatro registros 4xxxx contiguos. Los tres<br />

registros restantes están implícitos. El registro<br />

visualizado y el primer registro implícito guardan<br />

el valor <strong>de</strong> coma flotante que se va a sumar en<br />

la operación y la suma se coloca en el segundo<br />

y el tercer registros implícitos. La suma se<br />

traslada aquí en formato <strong>de</strong> coma flotante.<br />

Selección <strong>de</strong> la subfunción ADDIF<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

262 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor entero<br />

(asiento<br />

superior)<br />

Valor <strong>de</strong> coma<br />

flotante y suma<br />

(asiento<br />

intermedio)<br />

EMTH-ADDIF:<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor entero <strong>de</strong> doble precisión que se va a sumar al valor <strong>de</strong><br />

coma flotante se guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

Los registros almacenan el valor <strong>de</strong> coma flotante que se va a sumar<br />

en la operación.<br />

La suma se traslada aquí en formato <strong>de</strong> coma flotante.<br />

31007526 12/2006 263


EMTH-ADDIF:<br />

264 31007526 12/2006


Presentación<br />

EMTH-ANLOG:<br />

Algoritmo <strong>de</strong> base 10<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-ANLOG <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

49<br />

Apartado Página<br />

Descripción breve 266<br />

Representación 267<br />

Descripción <strong>de</strong> los parámetros 269<br />

31007526 12/2006 265


EMTH-ANLOG: Antilogaritmo <strong>de</strong> base 10<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> números enteros."<br />

266 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

habilita la operación<br />

antilog(x)<br />

fuente<br />

resultado<br />

EMTH<br />

ANLOG<br />

EMTH-ANLOG: Antilogaritmo <strong>de</strong> base 10<br />

operación correcta<br />

error o<br />

valor fuera <strong>de</strong> rango<br />

31007526 12/2006 267


EMTH-ANLOG: Antilogaritmo <strong>de</strong> base 10<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Fuente<br />

(nodo<br />

superior)<br />

Resultado<br />

(nodo<br />

intermedio)<br />

ANLOG<br />

(nodo inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = habilita la operación antilog(x).<br />

3x, 4x INT,<br />

UINT<br />

4x DINT,<br />

UDINT<br />

Valor <strong>de</strong> fuente<br />

El nodo superior es un único registro en espera<br />

4xxxx o registro <strong>de</strong> entrada 3xxxx. El valor <strong>de</strong><br />

fuente, es <strong>de</strong>cir, el valor al que se aplicará el<br />

cálculo <strong>de</strong>l antilogaritmo, se guardará aquí en el<br />

formato fijo <strong>de</strong>cimal 1,234. Debe estar<br />

comprendido en el rango <strong>de</strong> 0 a 7.999,<br />

representando un valor <strong>de</strong> fuente que no pue<strong>de</strong><br />

ser superior a 7.999.<br />

Resultado (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros contiguos 4xxxx se<br />

introduce en el nodo intermedio. El segundo<br />

registro está implícito. El resultado <strong>de</strong>l cálculo <strong>de</strong>l<br />

antilogaritmo se traslada aquí en el formato<br />

<strong>de</strong>cimal fijo 12.345.678.<br />

Los bits <strong>de</strong> mayor valor se colocan en el registro<br />

visualizado y los <strong>de</strong> menor valor, en el registro<br />

implícito. El mayor valor <strong>de</strong> antilogaritmo que se<br />

pue<strong>de</strong> calcular es 99.770.006 (9.977 para el<br />

registro visualizado y 0006 para el registro<br />

implícito).<br />

Selección <strong>de</strong> la subfunción ANLOG.<br />

0x Ninguno ON = operación correcta.<br />

0x Ninguno ON = error o valor fuera <strong>de</strong> rango.<br />

268 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor <strong>de</strong> fuente<br />

(asiento<br />

superior)<br />

Resultado<br />

(asiento<br />

intermedio)<br />

EMTH-ANLOG: Antilogaritmo <strong>de</strong> base 10<br />

El asiento superior es un único registro <strong>de</strong> salida 4x o registro <strong>de</strong> entrada 3x. El valor<br />

<strong>de</strong> fuente, es <strong>de</strong>cir, el valor al que se aplicará el cálculo <strong>de</strong>l antilogaritmo, se<br />

guardará aquí en formato <strong>de</strong>cimal fijo 1,234. Debe estar comprendido entre 0 y 7<br />

999, representando un valor <strong>de</strong> fuente hasta un máximo <strong>de</strong> 7.999.<br />

Se ingresa en el asiento intermedio el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito. El resultado <strong>de</strong>l cálculo <strong>de</strong>l antilogaritmo se traslada<br />

aquí en formato <strong>de</strong>cimal fijo 12345678:<br />

Registro Contenido<br />

Visualizado Bits más significantes<br />

Primer implícito Bits menos significantes<br />

El mayor valor <strong>de</strong> antilogaritmo que se pue<strong>de</strong> calcular es 99770006 (9977 para el<br />

registro visualizado y 0006 para el registro implícito).<br />

31007526 12/2006 269


EMTH-ANLOG: Antilogaritmo <strong>de</strong> base 10<br />

270 31007526 12/2006


Presentación<br />

EMTH-ARCOS: Arcocoseno<br />

<strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-ARCOS <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

50<br />

Apartado Página<br />

Descripción breve 272<br />

Representación 273<br />

Descripción <strong>de</strong> los parámetros 275<br />

31007526 12/2006 271


EMTH-ARCOS: Arcocoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

272 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

calcula el arcocoseno<br />

<strong>de</strong>l valor <strong>de</strong> coma<br />

flotante<br />

EMTH-ARCOS: Arcocoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en<br />

valor<br />

arcocoseno<br />

<strong>de</strong>l valor<br />

EMTH<br />

ARCOS<br />

operación correcta<br />

31007526 12/2006 273


EMTH-ARCOS: Arcocoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor<br />

(nodo<br />

superior)<br />

Arcocoseno<br />

<strong>de</strong>l valor<br />

(nodo<br />

intermedio)<br />

ARCOS<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = calcula el arcocoseno <strong>de</strong>l valor.<br />

4x REAL Valor <strong>de</strong> coma flotante que indica el coseno <strong>de</strong> un<br />

ángulo (el primero <strong>de</strong> dos registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo registro<br />

está implícito. Aquí se guarda un valor <strong>de</strong> coma<br />

flotante que indica el coseno <strong>de</strong> un ángulo entre 0<br />

y pi radianes.<br />

Este valor <strong>de</strong>be estar comprendido entre -1,0 y<br />

+1,0; <strong>de</strong> lo contrario:<br />

El arcocoseno no se calcula.<br />

Se <strong>de</strong>vuelve un resultado no válido.<br />

Se marca un error en la función EMTH-<br />

ERLOG.<br />

4x REAL Arcocoseno en radianes <strong>de</strong>l valor <strong>de</strong>l nodo<br />

superior (el primero <strong>de</strong> cuatro registros<br />

contiguos).<br />

Se introduce en el nodo intermedio el primero <strong>de</strong><br />

cuatro registros 4xxxx contiguos. Los tres<br />

registros restantes están implícitos.<br />

El arcocoseno en radianes <strong>de</strong>l valor <strong>de</strong> coma<br />

flotante en el nodo superior se coloca en los<br />

registros segundo y tercero implícitos. El registro<br />

visualizado y el primer registro implícito no se<br />

utilizan, pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

Sugerencia: Para preservar los registros pue<strong>de</strong><br />

igualar los números <strong>de</strong> referencia 4x asignados al<br />

registro visualizado y el primer registro implícito<br />

<strong>de</strong>l nodo intermedio a las referencias <strong>de</strong> registro<br />

en el nodo superior, ya que los dos primeros<br />

registros <strong>de</strong>l nodo intermedio no se utilizan.<br />

Selección <strong>de</strong> la subfunción ARCOS.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

274 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor (asiento<br />

superior)<br />

Arcocoseno<br />

<strong>de</strong> un valor<br />

(asiento<br />

intermedio)<br />

EMTH-ARCOS: Arcocoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Aquí se guarda un valor <strong>de</strong> coma flotante que indica el coseno <strong>de</strong><br />

un ángulo entre 0 y p radianes.<br />

Este valor <strong>de</strong>be estar comprendido entre -1,0 y +1,0;<br />

Si el valor no está comprendido en el rango <strong>de</strong> -1,0 y +1,0:<br />

El arcocoseno no se ha calculado.<br />

Se ha <strong>de</strong>vuelto un resultado no válido.<br />

Se marca un error en la función EMTH-ERLOG.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

No se utilizan los registros pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

Aquí se coloca el arcocoseno en radianes <strong>de</strong>l valor <strong>de</strong> coma flotante<br />

en el asiento superior.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 275


EMTH-ARCOS: Arcocoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

276 31007526 12/2006


Presentación<br />

EMTH-ARSIN: Arcoseno<br />

<strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-ARSIN <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

51<br />

Apartado Página<br />

Descripción breve 278<br />

Representación 279<br />

Descripción <strong>de</strong> los parámetros 281<br />

31007526 12/2006 277


EMTH-ARSIN: Arcoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

278 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

calcula el arcoseno <strong>de</strong>l<br />

valor <strong>de</strong> coma flotante<br />

EMTH-ARSIN: Arcoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en<br />

valor<br />

arcoseno <strong>de</strong>l<br />

valor<br />

EMTH<br />

ARSIN<br />

operación correcta<br />

31007526 12/2006 279


EMTH-ARSIN: Arcoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor<br />

(nodo superior)<br />

Arcoseno <strong>de</strong>l<br />

valor<br />

(nodo<br />

intermedio)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = calcula el arcoseno <strong>de</strong>l valor.<br />

4x REAL Valor <strong>de</strong> coma flotante que indica el seno <strong>de</strong> un<br />

ángulo (el primero <strong>de</strong> dos registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo<br />

registro está implícito. Aquí se guarda un valor<br />

<strong>de</strong> coma flotante que indica el seno <strong>de</strong> un<br />

ángulo entre -Pi/2 y +Pi/2 radianes.<br />

Este valor, el seno <strong>de</strong> un ángulo, <strong>de</strong>be estar<br />

comprendido entre -1,0 y +1,0; <strong>de</strong> lo contrario:<br />

El arcoseno no se calcula.<br />

Se <strong>de</strong>vuelve un resultado no válido.<br />

Se marca un error en la función EMTH-<br />

ERLOG.<br />

4x REAL Arcoseno <strong>de</strong>l valor <strong>de</strong>l nodo superior (el<br />

primero <strong>de</strong> cuatro registros contiguos).<br />

ARSIN<br />

(nodo inferior)<br />

Selección <strong>de</strong> la subfunción ARSIN.<br />

Salida superior 0x Ninguno ON = operación correcta*.<br />

*Se marca un error en la función EMTH-<br />

ERLOG.<br />

280 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor (asiento<br />

superior)<br />

Arcoseno <strong>de</strong> un<br />

valor (asiento<br />

intermedio)<br />

EMTH-ARSIN: Arcoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Valor <strong>de</strong> coma flotante que indica que el seno <strong>de</strong> un ángulo entre -<br />

π/2 ... π/2 radianes se guarda aquí. Este valor (el seno <strong>de</strong> un ángulo)<br />

<strong>de</strong>be estar comprendido entre -1,0 y +1,0;<br />

Si el valor no está comprendido en el rango entre -1,0 y +1,0:<br />

El arcoseno no se ha calculado.<br />

Se ha <strong>de</strong>vuelto un resultado no válido.<br />

Se marca un error en la función EMTH-ERLOG.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

No se utilizan los registros pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

El arcoseno <strong>de</strong>l valor <strong>de</strong>l asiento superior se traslada aquí en<br />

formato <strong>de</strong> coma flotante.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 281


EMTH-ARSIN: Arcoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

282 31007526 12/2006


Presentación<br />

EMTH-ARTAN: Arcotangente<br />

<strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-ARTAN <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

52<br />

Apartado Página<br />

Descripción breve 284<br />

Representación 285<br />

Descripción <strong>de</strong> los parámetros 287<br />

31007526 12/2006 283


EMTH-ARTAN: Arcotangente <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

284 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

calcula el arcotangente<br />

<strong>de</strong>l valor <strong>de</strong> coma<br />

flotante<br />

EMTH-ARTAN: Arcotangente <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en<br />

valor<br />

arcotangente<br />

<strong>de</strong>l<br />

valor<br />

EMTH<br />

ARTAN<br />

operación correcta<br />

31007526 12/2006 285


EMTH-ARTAN: Arcotangente <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor<br />

(nodo<br />

superior)<br />

Arcotangente<br />

<strong>de</strong>l valor<br />

(nodo<br />

intermedio)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = calcula el arcotangente <strong>de</strong>l valor.<br />

4x REAL Valor <strong>de</strong> coma flotante que indica la tangente <strong>de</strong><br />

un ángulo (el primero <strong>de</strong> dos registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo<br />

registro está implícito. Aquí se guarda un valor <strong>de</strong><br />

coma flotante que indica la tangente <strong>de</strong> un ángulo<br />

entre -Pi/2 y +Pi/2 radianes. Se admite cualquier<br />

valor <strong>de</strong> coma flotante.<br />

4x REAL Arcotangente <strong>de</strong>l valor <strong>de</strong>l nodo superior (el<br />

primero <strong>de</strong> cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros 4xxxx<br />

contiguos en el nodo intermedio. Los tres<br />

registros restantes están implícitos.<br />

El arcotangente en radianes <strong>de</strong>l valor <strong>de</strong> coma<br />

flotante en el nodo superior se coloca en los<br />

registros segundo y tercero implícitos. El registro<br />

visualizado y el primer registro implícito no se<br />

utilizan, pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

Sugerencia: Para preservar los registros pue<strong>de</strong><br />

igualar los números <strong>de</strong> referencia 4xxxx<br />

asignados al registro visualizado y el primer<br />

registro implícito <strong>de</strong>l nodo intermedio a las<br />

referencias <strong>de</strong> registro en el nodo superior, ya<br />

que los dos primeros registros <strong>de</strong>l nodo<br />

intermedio no se utilizan.<br />

ARTAN<br />

(nodo inferior)<br />

Selección <strong>de</strong> la subfunción ARTAN.<br />

Salida superior 0x Ninguno ON = operación correcta*.<br />

*Se marca un error en la función EMTH-ERLOG.<br />

286 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor (asiento<br />

superior)<br />

Arcotangente<br />

<strong>de</strong> un valor<br />

(asiento<br />

intermedio)<br />

EMTH-ARTAN: Arcotangente <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Valor <strong>de</strong> coma flotante que indica que la tangente <strong>de</strong> un ángulo<br />

entre -π/2 ... π/2 radianes se ha guardado aquí. Se admite cualquier<br />

valor <strong>de</strong> coma flotante.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

No se utilizan los registros pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

Aquí se coloca la arcotangente en radianes <strong>de</strong>l valor <strong>de</strong> coma<br />

flotante en el asiento superior.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 287


EMTH-ARTAN: Arcotangente <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

288 31007526 12/2006


Presentación<br />

EMTH-CHSIN: Cambio <strong>de</strong> signo <strong>de</strong><br />

un número con coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-CHSIN <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

53<br />

Apartado Página<br />

Descripción breve 290<br />

Representación 291<br />

Descripción <strong>de</strong> los parámetros 293<br />

31007526 12/2006 289


EMTH-CHSIN: Cambio <strong>de</strong> signo <strong>de</strong> un número con coma flotante<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

290 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

cambia el signo <strong>de</strong> un<br />

número con coma<br />

flotante<br />

EMTH-CHSIN: Cambio <strong>de</strong> signo <strong>de</strong> un número con coma flotante<br />

valor<br />

-(valor)<br />

EMTH<br />

CHSIN<br />

operación correcta<br />

31007526 12/2006 291


EMTH-CHSIN: Cambio <strong>de</strong> signo <strong>de</strong> un número con coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor<br />

(nodo superior)<br />

-(Valor)<br />

(nodo<br />

intermedio)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = cambia el signo <strong>de</strong>l valor <strong>de</strong> coma flotante.<br />

4x REAL Valor <strong>de</strong> coma flotante (el primero <strong>de</strong> dos<br />

registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo<br />

registro está implícito. El valor <strong>de</strong> coma flotante<br />

cuyo signo ha cambiado se guarda aquí.<br />

4x REAL Valor <strong>de</strong> coma flotante con el signo cambiado (el<br />

primero <strong>de</strong> cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros 4xxxx<br />

contiguos en el nodo intermedio. Los tres<br />

registros restantes están implícitos.<br />

Se introduce el primero <strong>de</strong> cuatro registros 4xxxx<br />

contiguos en el nodo intermedio. Los tres<br />

registros restantes están implícitos. El valor <strong>de</strong><br />

coma flotante en el nodo superior se coloca en<br />

los registros segundo y tercero implícitos. El<br />

registro visualizado y el primer registro implícito<br />

<strong>de</strong>l nodo intermedio no se utilizan en la<br />

operación, pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

Sugerencia: Para preservar los registros pue<strong>de</strong><br />

igualar los números <strong>de</strong> referencia 4xxxx<br />

asignados al registro visualizado y el primer<br />

registro implícito <strong>de</strong>l nodo intermedio a las<br />

referencias <strong>de</strong> registro en el nodo superior, ya<br />

que los dos primeros registros <strong>de</strong>l nodo<br />

intermedio no se utilizan.<br />

CHSIN<br />

(nodo inferior)<br />

Selección <strong>de</strong> la subfunción CHSIN.<br />

Salida superior 0x Ninguno ON = operación correcta*.<br />

*Se marca un error en la función EMTH-ERLOG.<br />

292 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor <strong>de</strong> coma<br />

flotante (asiento<br />

superior)<br />

Valor <strong>de</strong> coma<br />

flotante con el<br />

signo cambiado<br />

(asiento<br />

intermedio)<br />

EMTH-CHSIN: Cambio <strong>de</strong> signo <strong>de</strong> un número con coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor <strong>de</strong> coma flotante cuyo signo ha cambiado se guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

No se utilizan los registros pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

El valor <strong>de</strong> coma flotante <strong>de</strong>l asiento superior con el signo cambiado<br />

se guarda aquí.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 293


EMTH-CHSIN: Cambio <strong>de</strong> signo <strong>de</strong> un número con coma flotante<br />

294 31007526 12/2006


Presentación<br />

EMTH-CMPFP:<br />

Comparar flotantes<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-CMPFP <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

54<br />

Apartado Página<br />

Descripción breve 296<br />

Representación 297<br />

Descripción <strong>de</strong> los parámetros 299<br />

31007526 12/2006 295


EMTH-CMPFP: Comparar flotantes<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

296 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

EMTH-CMPFP: Comparar flotantes<br />

inicia la comparación operación correcta<br />

valor 1<br />

valor 2<br />

EMTH<br />

CMPFP<br />

valor 1 >= valor 2<br />

valor 1


EMTH-CMPFP: Comparar flotantes<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor 1<br />

(nodo<br />

superior)<br />

Valor 2<br />

(nodo<br />

intermedio)<br />

CMPFP<br />

(nodo inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la comparación.<br />

4x DINT,<br />

UDINT<br />

Primer valor <strong>de</strong> coma flotante (el primero <strong>de</strong> dos<br />

registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo registro<br />

está implícito. El primer valor <strong>de</strong> coma flotante<br />

(valor 1) que se ha <strong>de</strong> comparar se guarda aquí.<br />

4x REAL Segundo valor <strong>de</strong> coma flotante (el primero <strong>de</strong><br />

cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros 4xxxx<br />

contiguos en el nodo intermedio. Los tres<br />

registros restantes están implícitos. El segundo<br />

valor <strong>de</strong> coma flotante (valor 2) que se va a<br />

comparar se introduce en el registro visualizado y<br />

el primer registro implícito; el segundo y tercer<br />

registros implícitos no se utilizan en la<br />

comparación, pero es necesaria su ubicación en<br />

la memoria <strong>de</strong> señal.<br />

Selección <strong>de</strong> la subfunción CMPFP.<br />

0x Ninguno ON = operación correcta.<br />

0x Ninguno Consulte p. 299, que indica la relación creada<br />

cuando CMFPF compara dos valores <strong>de</strong> coma<br />

flotante.<br />

Salida inferior 0x Ninguno Consulte p. 299, que indica la relación creada<br />

cuando CMFPF compara dos valores <strong>de</strong> coma<br />

flotante.<br />

298 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor 1<br />

(asiento<br />

superior)<br />

Valor 2<br />

(asiento<br />

intermedio)<br />

Salidas<br />

intermedia<br />

e inferior<br />

EMTH-CMPFP: Comparar flotantes<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El primer valor <strong>de</strong> coma flotante (valor 1) que se ha <strong>de</strong> comparar se<br />

guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos:<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

El segundo valor <strong>de</strong> coma flotante (valor 2) que se ha <strong>de</strong><br />

comparar se guarda aquí.<br />

No se utilizan los registros pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

Cuando la función CMPFP <strong>de</strong> EMTH compara los dos valores <strong>de</strong> coma flotante, los<br />

estados combinados <strong>de</strong> las salidas intermedia e inferior indican la relación.<br />

Salida intermedia Salida inferior Relación<br />

Activa Inactiva Valor 1 > valor 2.<br />

Inactiva Activa Valor 1 < valor 2.<br />

Activa Activa Valor 1 = valor 2.<br />

31007526 12/2006 299


EMTH-CMPFP: Comparar flotantes<br />

300 31007526 12/2006


Presentación<br />

EMTH-CMPIF:<br />

Comparar entero y coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-CMPIF <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

55<br />

Apartado Página<br />

Descripción breve 302<br />

Representación 303<br />

Descripción <strong>de</strong> los parámetros 305<br />

31007526 12/2006 301


EMTH-CMPIF: Comparar entero y coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

302 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

EMTH-CMPIF: Comparar entero y coma flotante<br />

iniciar comparación operación correcta<br />

entero<br />

coma flotante<br />

EMTH<br />

CMPIF<br />

entero >= coma flotante<br />

entero


EMTH-CMPIF: Comparar entero y coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entero<br />

(nodo superior)<br />

Coma flotante<br />

(nodo<br />

intermedio)<br />

CMPIF<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la comparación.<br />

4x DINT, UDINT Valor entero (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx<br />

contiguos se introduce en el nodo<br />

superior. El segundo registro está<br />

implícito. El valor entero <strong>de</strong> doble<br />

precisión que se ha <strong>de</strong> comparar se<br />

guarda aquí.<br />

4x REAL Valor <strong>de</strong> coma flotante (el primero <strong>de</strong><br />

cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos en el nodo intermedio.<br />

Los tres registros restantes están<br />

implícitos. El valor <strong>de</strong> coma flotante que se<br />

va a comparar se introduce en el registro<br />

visualizado y el primer registro implícito; el<br />

segundo y tercer registros implícitos no se<br />

utilizan en la comparación, pero es<br />

necesaria su ubicación en la memoria <strong>de</strong><br />

señal.<br />

Selección <strong>de</strong> la subfunción CMPIF.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida<br />

intermedia<br />

0x Ninguno Consulte p. 305, que indica la relación<br />

creada cuando CMPIF compara dos<br />

valores <strong>de</strong> coma flotante.<br />

Salida inferior 0x Ninguno Consulte la tabla llamada Salidas<br />

intermedia e inferior, p. 305, que indica la<br />

relación creada cuando CMPIF compara<br />

dos valores <strong>de</strong> coma flotante.<br />

304 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor entero<br />

(asiento<br />

superior)<br />

Valor <strong>de</strong> coma<br />

flotante (asiento<br />

intermedio)<br />

Salidas<br />

intermedia e<br />

inferior<br />

EMTH-CMPIF: Comparar entero y coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor entero <strong>de</strong> doble precisión que se ha <strong>de</strong> comparar se guarda<br />

aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor <strong>de</strong> coma flotante que se ha <strong>de</strong> comparar se guarda aquí.<br />

Segundo implícito<br />

Tercer implícito<br />

No se utilizan los registros pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

Cuando la función CMPIF <strong>de</strong> EMTH compara los valores entero y <strong>de</strong> coma flotante,<br />

los estados combinados <strong>de</strong> las salidas intermedia e inferior indican la relación.<br />

Salida intermedia Salida inferior Relación<br />

Activa Inactiva Entero > Coma flotante.<br />

Inactiva Activa Entero < Coma flotante.<br />

Activa Activa Entero = Coma flotante.<br />

31007526 12/2006 305


EMTH-CMPIF: Comparar entero y coma flotante<br />

306 31007526 12/2006


Presentación<br />

EMTH-CNVDR: Conversión <strong>de</strong><br />

coma flotante <strong>de</strong> grados a<br />

radianes<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-CNVDR <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

56<br />

Apartado Página<br />

Descripción breve 308<br />

Representación 309<br />

Descripción <strong>de</strong> los parámetros 311<br />

31007526 12/2006 307


EMTH-CNVDR: Conversión <strong>de</strong> coma flotante <strong>de</strong> grados a radianes<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

308 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

EMTH-CNVDR: Conversión <strong>de</strong> coma flotante <strong>de</strong> grados a radianes<br />

iniciar conversión operación correcta<br />

valor<br />

resultado<br />

EMTH<br />

CNVDR<br />

31007526 12/2006 309


EMTH-CNVDR: Conversión <strong>de</strong> coma flotante <strong>de</strong> grados a radianes<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor<br />

(nodo superior)<br />

Resultado<br />

(nodo<br />

intermedio)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la conversión <strong>de</strong>l valor 1 al valor 2<br />

(resultado).<br />

4x REAL Valor en formato <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

en grados (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo<br />

registro está implícito. El valor en formato <strong>de</strong><br />

coma flotante <strong>de</strong> un ángulo en grados se<br />

guarda aquí.<br />

4x REAL Resultado <strong>de</strong> la conversión (en radianes) en<br />

formato <strong>de</strong> coma flotante (el primero <strong>de</strong> cuatro<br />

registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos en el nodo intermedio. Los tres<br />

registros restantes están implícitos.<br />

El resultado <strong>de</strong> la conversión en formato <strong>de</strong><br />

coma flotante <strong>de</strong>l valor <strong>de</strong>l nodo superior (en<br />

radianes) se coloca en los registros segundo y<br />

tercero implícitos. El registro visualizado y el<br />

primer registro implícito no se utilizan, pero es<br />

necesaria su ubicación en la memoria <strong>de</strong> señal.<br />

Sugerencia: Para preservar los registros<br />

pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4xxxx<br />

asignados al registro visualizado y el primer<br />

registro implícito <strong>de</strong>l nodo intermedio a las<br />

referencias <strong>de</strong> registro en el nodo superior, ya<br />

que los dos primeros registros <strong>de</strong>l nodo<br />

intermedio no se utilizan.<br />

CNVDR<br />

(nodo inferior)<br />

Selección <strong>de</strong> la subfunción CNVDR.<br />

Salida superior 0x Ninguno ON = operación correcta*.<br />

*Se marca un error en la función EMTH-<br />

ERLOG.<br />

310 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor (asiento<br />

superior)<br />

Resultado en<br />

radianes (asiento<br />

intermedio)<br />

EMTH-CNVDR: Conversión <strong>de</strong> coma flotante <strong>de</strong> grados a radianes<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor en formato <strong>de</strong> coma flotante <strong>de</strong> un ángulo en grados se<br />

guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

No se utilizan los registros pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

El resultado <strong>de</strong> la conversión en formato <strong>de</strong> coma flotante <strong>de</strong>l valor<br />

<strong>de</strong>l asiento superior (en radianes) se traslada aquí.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 311


EMTH-CNVDR: Conversión <strong>de</strong> coma flotante <strong>de</strong> grados a radianes<br />

312 31007526 12/2006


Presentación<br />

EMTH-CNVFI: Conversión <strong>de</strong><br />

coma flotante a entero<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-CNVFI <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

57<br />

Apartado Página<br />

Descripción breve 314<br />

Representación 315<br />

Descripción <strong>de</strong> los parámetros 317<br />

Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución 318<br />

31007526 12/2006 313


EMTH-CNVFI: Conversión <strong>de</strong> coma flotante a entero<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

314 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

inicia<br />

la conversión <strong>de</strong> coma<br />

flotante<br />

a entero<br />

entero<br />

EMTH<br />

CNVFI<br />

EMTH-CNVFI: Conversión <strong>de</strong> coma flotante a entero<br />

coma flotante<br />

operación correcta<br />

OFF = valor entero positivo<br />

ON = valor entero negativo<br />

31007526 12/2006 315


EMTH-CNVFI: Conversión <strong>de</strong> coma flotante a entero<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Coma<br />

flotante<br />

(nodo<br />

superior)<br />

Entero<br />

(nodo<br />

intermedio)<br />

CNVFI<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Salida<br />

inferior<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la conversión <strong>de</strong> coma flotante a<br />

entero.<br />

4x REAL Valor <strong>de</strong> coma flotante que se ha <strong>de</strong> convertir (el<br />

primero <strong>de</strong> dos registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo registro<br />

está implícito. El valor entero <strong>de</strong> doble precisión<br />

que se ha <strong>de</strong> convertir al formato <strong>de</strong> coma flotante<br />

<strong>de</strong> <strong>32</strong> bits se guardará aquí.<br />

Nota: Si se introduce un valor entero no válido ( ><br />

9.999) en cualquiera <strong>de</strong> los dos registros <strong>de</strong>l nodo<br />

superior, la conversión <strong>de</strong> coma flotante se llevará<br />

a cabo, pero se notificará un error y se registrará en<br />

la función EMTH ERLOG (consulte la página 138).<br />

Es posible que el resultado <strong>de</strong> la conversión no sea<br />

correcto.<br />

4x DINT,<br />

UDINT<br />

Valor entero (el primero <strong>de</strong> cuatro registros<br />

contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros 4xxxx<br />

contiguos en el nodo intermedio. Los tres registros<br />

restantes están implícitos. El resultado <strong>de</strong> coma<br />

flotante <strong>de</strong> la conversión se coloca en el segundo y<br />

tercer registros implícitos. El registro visualizado y<br />

el primer registro implícito no se utilizan en la<br />

función, pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

Sugerencia: Para preservar los registros pue<strong>de</strong><br />

igualar los números <strong>de</strong> referencia 4x asignados al<br />

registro visualizado y el primer registro implícito <strong>de</strong>l<br />

nodo intermedio a las referencias <strong>de</strong> registro en el<br />

nodo superior, ya que los dos primeros registros<br />

<strong>de</strong>l nodo intermedio no se utilizan.<br />

Selección <strong>de</strong> la subfunción CNVFI.<br />

0x Ninguno ON = operación correcta*.<br />

*Se marca un error en la función EMTH-ERLOG.<br />

0x Ninguno OFF = valor entero positivo.<br />

ON = valor entero negativo.<br />

316 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor entero<br />

(asiento<br />

intermedio)<br />

EMTH-CNVFI: Conversión <strong>de</strong> coma flotante a entero<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

No se utilizan los registros pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

El número entero <strong>de</strong> doble precisión que ha resultado <strong>de</strong> la<br />

conversión se guarda aquí. Este valor <strong>de</strong>berá ser el valor entero<br />

mayor que sea posible hallar ≤ el valor <strong>de</strong> coma flotante.<br />

Por ejemplo, el valor <strong>de</strong> coma flotante 3,5 se convierte en el valor<br />

entero 3, mientras que el valor <strong>de</strong> coma flotante -3,5 se convertirá<br />

en el valor entero -4.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 317


EMTH-CNVFI: Conversión <strong>de</strong> coma flotante a entero<br />

Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución<br />

Errores <strong>de</strong><br />

ejecución<br />

Si el entero resultante es <strong>de</strong>masiado gran<strong>de</strong> para el formato <strong>de</strong> enteros <strong>de</strong> doble<br />

precisión (> 99 999 999), la conversión seguirá llevándose a cabo pero se notificará<br />

un error en la función EMTH_ERLOG.<br />

318 31007526 12/2006


Presentación<br />

EMTH-CNVIF: Conversión <strong>de</strong><br />

entero a coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-CNVIF <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

58<br />

Apartado Página<br />

Descripción breve <strong>32</strong>0<br />

Representación <strong>32</strong>1<br />

Descripción <strong>de</strong> los parámetros <strong>32</strong>3<br />

Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución <strong>32</strong>4<br />

31007526 12/2006 319


EMTH-CNVIF: Conversión <strong>de</strong> entero a coma flotante<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

<strong>32</strong>0 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

inicia la conversión <strong>de</strong><br />

entero<br />

a coma flotante<br />

entero<br />

resultado<br />

EMTH<br />

CNVIF<br />

EMTH-CNVIF: Conversión <strong>de</strong> entero a coma flotante<br />

operación correcta<br />

31007526 12/2006 <strong>32</strong>1


EMTH-CNVIF: Conversión <strong>de</strong> entero a coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entero<br />

(nodo<br />

superior)<br />

Resultado<br />

(nodo<br />

intermedio)<br />

CNVIF<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la conversión <strong>de</strong> coma flotante a<br />

entero.<br />

4x DINT,<br />

UDINT<br />

Valor entero (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo registro<br />

está implícito. El valor <strong>de</strong> coma flotante que se ha<br />

<strong>de</strong> convertir se guarda aquí.<br />

4x REAL Resultado (el primero <strong>de</strong> cuatro registros<br />

contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros 4xxxx<br />

contiguos en el nodo intermedio. Los tres registros<br />

restantes están implícitos.<br />

El resultado entero <strong>de</strong> doble precisión <strong>de</strong> la<br />

conversión se coloca en el segundo y tercer<br />

registros implícitos. Este valor <strong>de</strong>berá ser el valor<br />

entero más alto que sea posible hallar 99,999,999), la conversión seguirá llevándose a<br />

cabo pero se notificará un error en la función<br />

EMTH (consulte la página 138).<br />

El registro visualizado y el primer registro implícito<br />

<strong>de</strong>l nodo intermedio no se utilizan en la<br />

conversión, pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

Sugerencia: Para preservar los registros pue<strong>de</strong><br />

igualar los números <strong>de</strong> referencia 4xxxx asignados<br />

al registro visualizado y el primer registro implícito<br />

<strong>de</strong>l nodo intermedio a las referencias <strong>de</strong> registro<br />

en el nodo superior, ya que los dos primeros<br />

registros <strong>de</strong>l nodo intermedio no se utilizan.<br />

Selección <strong>de</strong> la subfunción CNVIF.<br />

0x Ninguno ON = operación correcta*.<br />

*Se marca un error en la función EMTH-ERLOG.<br />

<strong>32</strong>2 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor entero<br />

(asiento<br />

superior)<br />

Resultado<br />

(asiento<br />

intermedio)<br />

EMTH-CNVIF: Conversión <strong>de</strong> entero a coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El primer valor entero <strong>de</strong> doble precisión que se ha <strong>de</strong> convertir al<br />

formato <strong>de</strong> coma flotante <strong>de</strong> <strong>32</strong> bits se guardará aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

No se utilizan los registros pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

El resultado <strong>de</strong> coma flotante <strong>de</strong> la conversión se traslada aquí.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 <strong>32</strong>3


EMTH-CNVIF: Conversión <strong>de</strong> entero a coma flotante<br />

Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución<br />

Errores <strong>de</strong><br />

ejecución<br />

Si se introduce un valor entero no válido ( > 9.999) en cualquiera <strong>de</strong> los dos registros<br />

<strong>de</strong>l asiento superior, la conversión <strong>de</strong> coma flotante se llevará a cabo pero se<br />

notificará un error y se registrará en la función EMTH_ERLOG. Es posible que el<br />

resultado <strong>de</strong> la conversión no sea correcto.<br />

<strong>32</strong>4 31007526 12/2006


Presentación<br />

EMTH-CNVRD:<br />

Conversión <strong>de</strong> coma flotante <strong>de</strong><br />

radianes a grados<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-CNVRD <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

59<br />

Apartado Página<br />

Descripción breve <strong>32</strong>6<br />

Representación <strong>32</strong>7<br />

Descripción <strong>de</strong> los parámetros <strong>32</strong>9<br />

31007526 12/2006 <strong>32</strong>5


EMTH-CNVRD: Conversión <strong>de</strong> coma flotante <strong>de</strong> radianes a grados<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

<strong>32</strong>6 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

EMTH-CNVRD: Conversión <strong>de</strong> coma flotante <strong>de</strong> radianes a grados<br />

inicia la conversión operación correcta<br />

valor<br />

resultado<br />

EMTH<br />

CNVRD<br />

31007526 12/2006 <strong>32</strong>7


EMTH-CNVRD: Conversión <strong>de</strong> coma flotante <strong>de</strong> radianes a grados<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor<br />

(nodo superior)<br />

Resultado<br />

(nodo<br />

intermedio)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la conversión <strong>de</strong>l valor 1 al valor 2.<br />

4x REAL Valor en formato <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

en radianes (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo<br />

registro está implícito. El valor en formato <strong>de</strong><br />

coma flotante <strong>de</strong> un ángulo en radianes se<br />

guarda aquí.<br />

4x REAL Resultado <strong>de</strong> la conversión (en grados) en<br />

formato <strong>de</strong> coma flotante (el primero <strong>de</strong> cuatro<br />

registros contiguos)<br />

Se introduce el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos en el nodo intermedio. Los tres<br />

registros restantes están implícitos.<br />

El resultado <strong>de</strong> la conversión en formato <strong>de</strong><br />

coma flotante <strong>de</strong>l valor <strong>de</strong>l nodo superior (en<br />

grados) se coloca en los registros segundo y<br />

tercero implícitos. El registro visualizado y el<br />

primer registro implícito no se utilizan, pero es<br />

necesaria su ubicación en la memoria <strong>de</strong> señal.<br />

Sugerencia: Para preservar los registros<br />

pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4xxxx<br />

asignados al registro visualizado y el primer<br />

registro implícito <strong>de</strong>l nodo intermedio a las<br />

referencias <strong>de</strong> registro en el nodo superior, ya<br />

que los dos primeros registros <strong>de</strong>l nodo<br />

intermedio no se utilizan.<br />

CNVRD<br />

(nodo inferior)<br />

Selección <strong>de</strong> la subfunción CNVRD.<br />

Salida superior 0x Ninguno ON = operación correcta*.<br />

*Se marca un error en la función EMTH-<br />

ERLOG.<br />

<strong>32</strong>8 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor (asiento<br />

superior)<br />

Resultado en<br />

grados (asiento<br />

intermedio)<br />

EMTH-CNVRD: Conversión <strong>de</strong> coma flotante <strong>de</strong> radianes a grados<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor en formato <strong>de</strong> coma flotante <strong>de</strong> un ángulo en radianes se<br />

guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

No se utilizan los registros pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

El resultado <strong>de</strong> la conversión en formato <strong>de</strong> coma flotante <strong>de</strong>l valor<br />

<strong>de</strong>l asiento superior (en grados) se traslada aquí.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 <strong>32</strong>9


EMTH-CNVRD: Conversión <strong>de</strong> coma flotante <strong>de</strong> radianes a grados<br />

330 31007526 12/2006


Presentación<br />

EMTH-COS:<br />

Coseno <strong>de</strong> coma flotante <strong>de</strong> un<br />

ángulo (en radianes)<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-COS <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

60<br />

Apartado Página<br />

Descripción breve 3<strong>32</strong><br />

Representación 333<br />

Descripción <strong>de</strong> los parámetros 335<br />

31007526 12/2006 331


EMTH-COS: Coseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

3<strong>32</strong> 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

calcula el coseno <strong>de</strong>l<br />

valor <strong>de</strong> coma flotante<br />

EMTH-COS: Coseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

valor<br />

coseno <strong>de</strong>l<br />

valor<br />

EMTH<br />

COS<br />

operación correcta<br />

31007526 12/2006 333


EMTH-COS: Coseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor<br />

(nodo superior)<br />

Coseno <strong>de</strong>l<br />

valor<br />

(nodo<br />

intermedio)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = calcula el coseno <strong>de</strong>l valor.<br />

4x REAL Valor <strong>de</strong> coma flotante que indica el valor <strong>de</strong> un<br />

ángulo en radianes (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo<br />

registro está implícito. Aquí se guarda un valor<br />

<strong>de</strong> coma flotante que indica el valor <strong>de</strong>l ángulo<br />

en radianes.<br />

La magnitud <strong>de</strong> este valor <strong>de</strong>be ser < 65.536,0;<br />

<strong>de</strong> lo contrario:<br />

El coseno no se calcula.<br />

Se <strong>de</strong>vuelve un resultado no válido.<br />

Se marca un error en la función EMTH-<br />

ERLOG.<br />

4x REAL Coseno <strong>de</strong>l valor <strong>de</strong>l nodo superior (el primero<br />

<strong>de</strong> cuatro registros contiguos).<br />

COS<br />

(nodo inferior)<br />

Selección <strong>de</strong> la subfunción COS.<br />

Salida superior 0x Ninguno ON = operación correcta*.<br />

*Se marca un error en la función EMTH-<br />

ERLOG.<br />

334 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor (asiento<br />

superior)<br />

Coseno <strong>de</strong> un<br />

valor (asiento<br />

intermedio)<br />

EMTH-COS: Coseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Aquí se guarda un valor <strong>de</strong> coma flotante que indica el valor <strong>de</strong>l<br />

ángulo en radianes. La magnitud <strong>de</strong> este valor <strong>de</strong>be ser < 65.536,0.<br />

Si la magnitud <strong>de</strong> este valor es ≥ 65.536,0:<br />

El coseno no se ha calculado.<br />

Se ha <strong>de</strong>vuelto un resultado no válido.<br />

Se marca un error en la función EMTH-ERLOG.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

No se utilizan los registros pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

El coseno <strong>de</strong>l valor <strong>de</strong>l asiento superior se traslada aquí en formato<br />

<strong>de</strong> coma flotante.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 335


EMTH-COS: Coseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

336 31007526 12/2006


Presentación<br />

EMTH-DIVDP:<br />

División <strong>de</strong> doble precisión<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-DIVDP <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

61<br />

Apartado Página<br />

Descripción breve 338<br />

Representación 339<br />

Descripción <strong>de</strong> los parámetros 341<br />

Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución 342<br />

31007526 12/2006 337


EMTH-DIVDP: División <strong>de</strong> doble precisión<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> doble precisión."<br />

338 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

nodo superior dividido<br />

por<br />

nodo intermedio<br />

ON = resto <strong>de</strong>cimal<br />

OFF = resto fraccionario<br />

operando 1<br />

operando 2<br />

cociente<br />

resto<br />

EMTH<br />

DIVDP<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Operando 1<br />

nodo<br />

superior<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

EMTH-DIVDP: División <strong>de</strong> doble precisión<br />

operación correcta<br />

operando no válido o fuera <strong>de</strong><br />

rango<br />

operando 2 es 0<br />

0x, 1x Ninguno ON = el operando 1 se divi<strong>de</strong> entre el operando 2 y<br />

el resultado se traslada a los registros <strong>de</strong>signados.<br />

0x, 1x Ninguno ON = resto <strong>de</strong>cimal.<br />

OFF = resto en fracción.<br />

4x DINT,<br />

UDINT<br />

Operando 1 (primero <strong>de</strong> dos registros contiguos)<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo registro<br />

está implícito. El nodo superior se guarda aquí.<br />

Cada registro contiene un valor que pue<strong>de</strong> ir <strong>de</strong><br />

0000 a 9.999; para un valor combinado <strong>de</strong> doble<br />

precisión, el rango va <strong>de</strong> 0 a 99,999,999. La mitad<br />

<strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l operando 1 se almacena en el<br />

registro visualizado, mientras que la <strong>de</strong> menor<br />

or<strong>de</strong>n se almacena en el registro implícito.<br />

31007526 12/2006 339


EMTH-DIVDP: División <strong>de</strong> doble precisión<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Operando 2<br />

Cociente<br />

Resto<br />

Nodo<br />

intermedio<br />

DIVDP<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Salida<br />

inferior<br />

Tipo <strong>de</strong><br />

datos<br />

4x DINT,<br />

UDINT<br />

Significado<br />

Operando 2, cociente y resto (primero <strong>de</strong> seis<br />

registros contiguos).<br />

El primero <strong>de</strong> seis registros 4xxxx contiguos se<br />

introduce en el nodo intermedio.<br />

Los cinco registros restantes están implícitos:<br />

El registro visualizado y el primer registro<br />

implícito almacenan, respectivamente, las<br />

mita<strong>de</strong>s <strong>de</strong> mayor y menor or<strong>de</strong>n <strong>de</strong>l operando<br />

2, para un valor combinado <strong>de</strong> doble precisión<br />

en el rango que va <strong>de</strong> 0 a 99,999,999.<br />

Nota: Puesto que la división entre 0 no es válida,<br />

un valor 0 produce un error. Una rutina <strong>de</strong><br />

tratamiento <strong>de</strong> errores establecerá en 0000 los<br />

registros restantes <strong>de</strong>l nodo intermedio y activará la<br />

salida inferior.<br />

El segundo y tercer registros implícitos<br />

almacenan un cociente <strong>de</strong> ocho dígitos.<br />

Los registros implícitos cuarto y quinto<br />

almacenan el resto. Si el resto se expresa como<br />

una fracción, tendrá una longitud <strong>de</strong> ocho<br />

dígitos y se usarán ambos registros, mientras<br />

que si se expresa como un <strong>de</strong>cimal, tendrá una<br />

longitud <strong>de</strong> cuatro dígitos y sólo se utilizará el<br />

cuarto registro implícito.<br />

Selección <strong>de</strong> la subfunción DIVDP".<br />

0x Ninguno ON = operación correcta.<br />

0x Ninguno ON = operando fuera <strong>de</strong> rango o no válido.<br />

0x Ninguno ON = operando 2 = 0.<br />

340 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Operando 1<br />

(asiento<br />

superior)<br />

Operando 2,<br />

cociente y resto<br />

(asiento<br />

intermedio)<br />

EMTH-DIVDP: División <strong>de</strong> doble precisión<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado La mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l operando 1 se guarda aquí.<br />

Primer implícito La mitad <strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l operando 1 se guarda aquí.<br />

Cada registro tendrá un valor comprendido entre 0000 y 9.999, para un valor <strong>de</strong><br />

doble precisión combinado en el rango 0 a 99.999.999.<br />

El primero <strong>de</strong> seis registros 4x contiguos se introduce en el asiento intermedio. Los<br />

cinco registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado El registro almacena la mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l operando 2, para<br />

un valor <strong>de</strong> doble precisión combinado en el rango <strong>de</strong> 0 a<br />

99.999.999.<br />

Primer implícito El registro almacena la mitad <strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l operando 2, para<br />

un valor <strong>de</strong> doble precisión combinado en el rango <strong>de</strong> 0 ...<br />

99.999.999.<br />

Segundo implícito Los registros almacenan un cociente <strong>de</strong> ocho dígitos.<br />

Tercer implícito<br />

Cuarto implícito<br />

Quinto implícito<br />

Los registros almacenan el resto.<br />

Si se expresa como un número <strong>de</strong>cimal, tendrá una longitud <strong>de</strong><br />

cuatro dígitos y sólo se utilizará el cuarto registro implícito.<br />

Si se expresa como una fracción, tendrá una longitud <strong>de</strong> ocho<br />

dígitos y se utilizarán ambos registros.<br />

31007526 12/2006 341


EMTH-DIVDP: División <strong>de</strong> doble precisión<br />

Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución<br />

Errores <strong>de</strong><br />

ejecución<br />

Dado que no es válida la división entre 0, el valor 0 provocará un error, una rutina<br />

<strong>de</strong> tratamiento <strong>de</strong> errores establecerá los registros restantes <strong>de</strong>l asiento intermedio<br />

en 0000 y activará la salida inferior.<br />

342 31007526 12/2006


Presentación<br />

EMTH-DIVFI: Coma flotante<br />

dividida por entero<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-DIVFI <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

62<br />

Apartado Página<br />

Descripción breve 344<br />

Representación 345<br />

Descripción <strong>de</strong> los parámetros 347<br />

31007526 12/2006 343


EMTH-DIVFI: Coma flotante dividida por entero<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

344 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

inicia la operación <strong>de</strong><br />

coma flotante/<br />

entero<br />

coma flotante<br />

entero y<br />

cociente<br />

EMTH<br />

DIVFI<br />

EMTH-DIVFI: Coma flotante dividida por entero<br />

operación correcta<br />

31007526 12/2006 345


EMTH-DIVFI: Coma flotante dividida por entero<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Coma flotante<br />

(nodo superior)<br />

Entero y<br />

cociente<br />

(nodo<br />

intermedio)<br />

DIVFI<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la operación <strong>de</strong> coma flotante/<br />

entero.<br />

4x REAL Valor <strong>de</strong> coma flotante (el primero <strong>de</strong> dos<br />

registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx<br />

contiguos se introduce en el nodo<br />

superior. El segundo registro está<br />

implícito. El valor <strong>de</strong> coma flotante que se<br />

ha <strong>de</strong> dividir por el valor entero se guarda<br />

aquí.<br />

4x DINT, UDINT Valor entero y cociente (el primero <strong>de</strong><br />

cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos en el nodo intermedio.<br />

Los tres registros restantes están<br />

implícitos. El valor entero <strong>de</strong> doble<br />

precisión que divi<strong>de</strong> el valor <strong>de</strong> coma<br />

flotante se almacena en el registro<br />

visualizado y el primer registro implícito, y<br />

el cociente se almacena en los registros<br />

segundo y tercero implícitos. El cociente<br />

se almacena en formato <strong>de</strong> coma flotante.<br />

Selección <strong>de</strong> la subfunción DIVFI.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

346 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor <strong>de</strong> coma<br />

flotante (asiento<br />

superior)<br />

Valor entero y<br />

cociente (asiento<br />

intermedio)<br />

EMTH-DIVFI: Coma flotante dividida por entero<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor <strong>de</strong> coma flotante que se ha <strong>de</strong> dividir por el valor entero se<br />

guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

El valor entero <strong>de</strong> doble precisión por el que se divi<strong>de</strong> el valor <strong>de</strong><br />

coma flotante se traslada aquí.<br />

El cociente se traslada aquí en formato <strong>de</strong> coma flotante.<br />

31007526 12/2006 347


EMTH-DIVFI: Coma flotante dividida por entero<br />

348 31007526 12/2006


Presentación<br />

EMTH-DIVFP:<br />

División <strong>de</strong> coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción EMTH-DIVFP.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

63<br />

Apartado Página<br />

Descripción breve 350<br />

Representación 351<br />

Descripción <strong>de</strong> los parámetros 353<br />

31007526 12/2006 349


EMTH-DIVFP: División <strong>de</strong> coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

350 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

activa la división <strong>de</strong> coma<br />

flotante<br />

valor 1<br />

valor 2 y<br />

cociente<br />

EMTH<br />

DIVFP<br />

EMTH-DIVFP: División <strong>de</strong> coma flotante<br />

operación correcta<br />

31007526 12/2006 351


EMTH-DIVFP: División <strong>de</strong> coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor 1<br />

(nodo superior)<br />

Valor 2 y<br />

cociente<br />

(nodo<br />

intermedio)<br />

DIVFP<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la operación <strong>de</strong> valor 1/valor 2.<br />

4x REAL Valor 1 <strong>de</strong> coma flotante (el primero <strong>de</strong><br />

dos registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx<br />

contiguos se introduce en el nodo<br />

superior. El segundo registro está<br />

implícito. El valor <strong>de</strong> coma flotante 1 que<br />

se ha <strong>de</strong> dividir por el valor 2 se guarda<br />

aquí.<br />

4x REAL Valor 2 <strong>de</strong> coma flotante y cociente (el<br />

primero <strong>de</strong> cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos en el nodo intermedio.<br />

Los tres registros restantes están<br />

implícitos. El valor 2 <strong>de</strong> coma flotante, el<br />

valor por el que se divi<strong>de</strong> el valor 1, se<br />

guarda en el registro visualizado y en el<br />

primer registro implícito. El cociente se<br />

coloca en formato <strong>de</strong> coma flotante en los<br />

registros segundo y tercero implícitos.<br />

Selección <strong>de</strong> la subfunción DIVFP.<br />

Salida superior 0x Ninguno ON = operación correcta<br />

352 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor 1 <strong>de</strong><br />

coma flotante<br />

(asiento<br />

superior)<br />

Valor 2 <strong>de</strong> coma<br />

flotante y<br />

cociente (asiento<br />

intermedio)<br />

EMTH-DIVFP: División <strong>de</strong> coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor <strong>de</strong> coma flotante 1 que se ha <strong>de</strong> dividir por el valor 2 se<br />

guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

El valor 2 <strong>de</strong> coma flotante, por el que se va a dividir el valor 1, se<br />

guarda aquí.<br />

El cociente se traslada aquí en formato <strong>de</strong> coma flotante.<br />

31007526 12/2006 353


EMTH-DIVFP: División <strong>de</strong> coma flotante<br />

354 31007526 12/2006


Presentación<br />

EMTH-DIVIF:<br />

Entero dividido por coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción DIVIF <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

64<br />

Apartado Página<br />

Descripción breve 356<br />

Representación 357<br />

Descripción <strong>de</strong> los parámetros 359<br />

31007526 12/2006 355


EMTH-DIVIF: Entero dividido por coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

356 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

inicia la operación <strong>de</strong><br />

entero/<br />

coma flotante<br />

entero<br />

coma flotante<br />

y<br />

cociente<br />

EMTH<br />

DIVIF<br />

EMTH-DIVIF: Entero dividido por coma flotante<br />

operación correcta<br />

31007526 12/2006 357


EMTH-DIVIF: Entero dividido por coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entero<br />

(nodo superior)<br />

Coma flotante y<br />

cociente<br />

(nodo<br />

intermedio)<br />

DIVIF<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la operación <strong>de</strong> entero/coma<br />

flotante.<br />

4x DINT, UDINT Valor entero (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx<br />

contiguos se introduce en el nodo<br />

superior. El segundo registro está<br />

implícito. El valor entero <strong>de</strong> doble<br />

precisión que se ha <strong>de</strong> dividir entre el valor<br />

<strong>de</strong> coma flotante se guarda aquí.<br />

4x REAL Coma flotante y cociente (el primero <strong>de</strong><br />

cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos en el nodo intermedio.<br />

Los tres registros restantes están<br />

implícitos. El registro visualizado y el<br />

primer registro implícito guardan el valor<br />

<strong>de</strong> coma flotante que se va a dividir en la<br />

operación y el cociente se coloca en el<br />

segundo y el tercer registros implícitos. El<br />

cociente se almacena en formato <strong>de</strong> coma<br />

flotante.<br />

Selección <strong>de</strong> la subfunción DIVIF.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

358 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor entero<br />

(asiento<br />

superior)<br />

Valor <strong>de</strong> coma<br />

flotante y<br />

cociente (asiento<br />

intermedio)<br />

EMTH-DIVIF: Entero dividido por coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor entero <strong>de</strong> doble precisión que se ha <strong>de</strong> dividir por el valor <strong>de</strong><br />

coma flotante se guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

El valor <strong>de</strong> coma flotante que se ha <strong>de</strong> dividir en la operación se<br />

traslada aquí.<br />

El cociente se traslada aquí en formato <strong>de</strong> coma flotante.<br />

31007526 12/2006 359


EMTH-DIVIF: Entero dividido por coma flotante<br />

360 31007526 12/2006


Presentación<br />

EMTH-ERLOG: Registro <strong>de</strong><br />

errores <strong>de</strong> coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción EMTH-ERRLOG.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

65<br />

Apartado Página<br />

Descripción breve 362<br />

Representación: EMTH - ERLOG - Matemática <strong>de</strong> coma flotante - Registro <strong>de</strong><br />

errores<br />

363<br />

Descripción <strong>de</strong> los parámetros 365<br />

31007526 12/2006 361


EMTH-ERLOG: Registro <strong>de</strong> errores <strong>de</strong> coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

362 31007526 12/2006


EMTH-ERLOG: Registro <strong>de</strong> errores <strong>de</strong> coma flotante<br />

Representación: EMTH - ERLOG - Matemática <strong>de</strong> coma flotante -<br />

Registro <strong>de</strong> errores<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

RECUPERA UN<br />

REGISTRO DE TIPOS<br />

DE ERROR DESDE LA<br />

ÚLTIMA LLAMADA<br />

sin utilizar<br />

datos <strong>de</strong><br />

error<br />

EMTH<br />

ERLOG<br />

RECUPERACIÓN CORRECTA<br />

ON = NINGÚN VALOR CERO<br />

EN EL<br />

REGISTRO DE ERRORES<br />

OFF = TODO CEROS EN EL<br />

REGISTRO DE ERRORES<br />

31007526 12/2006 363


EMTH-ERLOG: Registro <strong>de</strong> errores <strong>de</strong> coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Sin utilizar<br />

(nodo<br />

superior)<br />

Datos <strong>de</strong><br />

error<br />

(nodo<br />

intermedio)<br />

ERLOG<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = recupera un registro <strong>de</strong> los tipos <strong>de</strong> error<br />

<strong>de</strong>s<strong>de</strong> la última llamada.<br />

4x INT,<br />

UINT,<br />

DINT,<br />

UDINT,<br />

REAL<br />

4x INT,<br />

UINT,<br />

DINT,<br />

UDINT,<br />

REAL<br />

Sin utilizar en la operación (primero <strong>de</strong> dos<br />

registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo registro<br />

está implícito. Estos dos registros no se están<br />

utilizando en la operación pero es necesaria su<br />

ubicación en la memoria <strong>de</strong> señal.<br />

Registro <strong>de</strong> errores (el primero <strong>de</strong> cuatro registros<br />

contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros 4xxxx<br />

contiguos en el nodo intermedio.<br />

Los tres registros restantes están implícitos.<br />

El segundo registro implícito se utiliza como<br />

registro <strong>de</strong> errores.<br />

(Para obtener información <strong>de</strong>tallada sobre el<br />

registro <strong>de</strong> errores consulte p. 365 en la sección<br />

Descripción <strong>de</strong> los parámetros.)<br />

El tercer registro implícito ha borrado todos sus<br />

registros a cero. El registro visualizado y el primer<br />

registro implícito no se utilizan, pero es necesaria<br />

su ubicación en la memoria <strong>de</strong> señal.<br />

Sugerencia:Para preservar los registros, pue<strong>de</strong><br />

igualar los números <strong>de</strong> referencia 4xxxx asignados<br />

al registro visualizado y el primer registro implícito<br />

<strong>de</strong>l nodo intermedio a las referencias <strong>de</strong> registro<br />

en el nodo superior, ya que estos registros <strong>de</strong>ben<br />

estar ubicados pero ninguno se utiliza.<br />

Selección <strong>de</strong> la subfunción ERLOG.<br />

0x Ninguno ON = recuperación satisfactoria.<br />

0x Ninguno ON = valores distintos <strong>de</strong> cero en el registro <strong>de</strong><br />

errores.<br />

OFF = todo ceros en el registro <strong>de</strong> errores.<br />

364 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Sin utilizar<br />

(asiento<br />

superior)<br />

Datos <strong>de</strong> error<br />

(asiento<br />

intermedio)<br />

Registro <strong>de</strong><br />

protocolarización<br />

<strong>de</strong> errores<br />

EMTH-ERLOG: Registro <strong>de</strong> errores <strong>de</strong> coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Estos dos registros no se utilizan en la operación, pero es necesaria<br />

su ubicación en la memoria <strong>de</strong> señal.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado Registro <strong>de</strong> protocolarización <strong>de</strong> errores, consulte la tabla.<br />

Primer implícito Este registro ha borrado todos sus registros a cero.<br />

Segundo implícito Estos dos registros no se utilizan, pero es necesaria su ubicación en<br />

Tercer implícito la memoria <strong>de</strong> señal.<br />

Nota: Para preservar los registros, pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que estos<br />

registros <strong>de</strong>ben estar ubicados pero ninguno se utiliza.<br />

Utilización <strong>de</strong>l registro <strong>de</strong> protocolarización <strong>de</strong> errores:<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 8 Código <strong>de</strong> función <strong>de</strong>l último error protocolarizado.<br />

9 - 11 No utilizados.<br />

12 Error <strong>de</strong> conversión <strong>de</strong> entero/coma flotante.<br />

13 Potencia <strong>de</strong> función exponencial <strong>de</strong>masiado gran<strong>de</strong>.<br />

14 Valor <strong>de</strong> coma flotante u operación no válido.<br />

15 Desbor<strong>de</strong> <strong>de</strong> coma flotante.<br />

16 Transgresión por <strong>de</strong>bajo <strong>de</strong> rango <strong>de</strong> coma flotante<br />

Si el bit se establece en 1, existirá un estado <strong>de</strong> error específico para ese bit.<br />

31007526 12/2006 365


EMTH-ERLOG: Registro <strong>de</strong> errores <strong>de</strong> coma flotante<br />

366 31007526 12/2006


Presentación<br />

EMTH-EXP: Función exponencial<br />

<strong>de</strong> coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-EXP <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

66<br />

Apartado Página<br />

Descripción breve 368<br />

Representación 369<br />

Descripción <strong>de</strong> los parámetros 371<br />

31007526 12/2006 367


EMTH-EXP: Función exponencial <strong>de</strong> coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

368 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

calcula el exponencial<br />

<strong>de</strong>l valor<br />

valor<br />

resultado<br />

EMTH<br />

EMTH-EXP: Función exponencial <strong>de</strong> coma flotante<br />

31007526 12/2006 369<br />

EXP<br />

operación correcta


EMTH-EXP: Función exponencial <strong>de</strong> coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor<br />

(nodo superior)<br />

Resultado<br />

(nodo<br />

intermedio)<br />

EXP<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = calcula la función exponencial <strong>de</strong>l valor.<br />

4x REAL Valor en formato <strong>de</strong> coma flotante (el primero<br />

<strong>de</strong> dos registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo<br />

registro está implícito. Un valor en formato <strong>de</strong><br />

coma flotante en el rango <strong>de</strong> -87,34 a +88,72 se<br />

guarda aquí.<br />

Si el valor se queda fuera <strong>de</strong>l rango, el<br />

resultado será 0 o el valor máximo. No se<br />

marcará ningún error.<br />

4x REAL Exponencial <strong>de</strong>l valor <strong>de</strong>l nodo superior (el<br />

primero <strong>de</strong> cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos en el nodo intermedio. Los tres<br />

registros restantes están implícitos.<br />

El exponencial <strong>de</strong>l valor en el nodo superior se<br />

coloca en los registros segundo y tercero<br />

implícitos en formato <strong>de</strong> coma flotante. El<br />

registro visualizado y el primer registro implícito<br />

no se utilizan, pero es necesaria su ubicación<br />

en la memoria <strong>de</strong> señal.<br />

Sugerencia: Para preservar los registros<br />

pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4xxxx<br />

asignados al registro visualizado y el primer<br />

registro implícito <strong>de</strong>l nodo intermedio a las<br />

referencias <strong>de</strong> registro en el nodo superior, ya<br />

que los dos primeros registros <strong>de</strong>l nodo<br />

intermedio no se utilizan.<br />

Selección <strong>de</strong> la subfunción EXP.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

370 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor (asiento<br />

superior)<br />

Resultado<br />

(asiento<br />

intermedio)<br />

EMTH-EXP: Función exponencial <strong>de</strong> coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Aquí se guarda un valor en formato <strong>de</strong> coma flotante en el rango<br />

comprendido entre -87,34 y +88,72.<br />

Si el valor queda fuera <strong>de</strong>l rango, el resultado será 0 o el valor<br />

máximo. No se marcará ningún error.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

Estos registros no se están utilizando pero es necesaria su<br />

ubicación en la memoria <strong>de</strong> señal.<br />

La exponencial <strong>de</strong>l valor <strong>de</strong>l asiento superior se traslada aquí en<br />

formato <strong>de</strong> coma flotante.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 371


EMTH-EXP: Función exponencial <strong>de</strong> coma flotante<br />

372 31007526 12/2006


Presentación<br />

EMTH-LNFP: Logaritmo natural<br />

<strong>de</strong> coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-LNFP <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

67<br />

Apartado Página<br />

Descripción breve 374<br />

Representación 375<br />

Descripción <strong>de</strong> los parámetros 377<br />

31007526 12/2006 373


EMTH-LNFP: Logaritmo natural <strong>de</strong> coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

374 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

calcula el logaritmo<br />

natural<br />

<strong>de</strong>l valor<br />

valor<br />

resultado<br />

EMTH<br />

LNFP<br />

EMTH-LNFP: Logaritmo natural <strong>de</strong> coma flotante<br />

operación correcta<br />

31007526 12/2006 375


EMTH-LNFP: Logaritmo natural <strong>de</strong> coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor<br />

(nodo superior)<br />

Resultado<br />

(nodo<br />

intermedio)<br />

LNFP<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = calcula el logaritmo natural <strong>de</strong>l valor.<br />

4x REAL Valor > 0 en formato <strong>de</strong> coma flotante (el<br />

primero <strong>de</strong> dos registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo<br />

registro está implícito. Aquí se guarda un valor<br />

> 0 en formato <strong>de</strong> coma flotante.<br />

Si el valor


Descripción <strong>de</strong> los parámetros<br />

Valor (asiento<br />

superior)<br />

Resultado<br />

(asiento<br />

intermedio)<br />

EMTH-LNFP: Logaritmo natural <strong>de</strong> coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Aquí se guarda un valor > 0 en formato <strong>de</strong> coma flotante.<br />

Si el valor ≤ 0, se <strong>de</strong>volverá un resultado no válido al asiento<br />

intermedio y se protocolarizará un error en la función EMTH-<br />

ERLOG.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

Estos registros no se están utilizando pero es necesaria su<br />

ubicación en la memoria <strong>de</strong> señal.<br />

El logaritmo natural <strong>de</strong>l valor <strong>de</strong>l asiento superior se traslada aquí en<br />

formato <strong>de</strong> coma flotante.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 377


EMTH-LNFP: Logaritmo natural <strong>de</strong> coma flotante<br />

378 31007526 12/2006


Presentación<br />

EMTH-LOG: Logaritmo <strong>de</strong> base 10<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-LOG <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

68<br />

Apartado Página<br />

Descripción breve 380<br />

Representación 381<br />

Descripción <strong>de</strong> los parámetros 383<br />

31007526 12/2006 379


EMTH-LOG: Logaritmo <strong>de</strong> base 10<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> números enteros.<br />

380 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

habilita la operación<br />

log(x)<br />

fuente<br />

resultado<br />

EMTH<br />

LOG<br />

EMTH-LOG: Logaritmo <strong>de</strong> base 10<br />

operación correcta<br />

error o valor fuera <strong>de</strong> rango<br />

31007526 12/2006 381


EMTH-LOG: Logaritmo <strong>de</strong> base 10<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Fuente<br />

(nodo superior)<br />

Resultado<br />

(nodo<br />

intermedio)<br />

LOG<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = habilita la operación log(x).<br />

3x, 4x DINT,<br />

UDINT<br />

4x INT,<br />

UINT<br />

Valor <strong>de</strong> fuente (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros contiguos 3xxxx o<br />

4xxxx se introduce en el nodo superior. El<br />

segundo registro está implícito. El valor <strong>de</strong><br />

fuente a partir <strong>de</strong>l cual se ha <strong>de</strong> realizar el<br />

cálculo se guarda en estos registros.<br />

Si especifica un registro 4xxxx, el valor <strong>de</strong><br />

fuente <strong>de</strong>berá estar comprendido en el rango<br />

que va <strong>de</strong> 0 a 99,999,99. La mitad <strong>de</strong> menor<br />

or<strong>de</strong>n <strong>de</strong>l valor se almacena en el registro<br />

implícito, mientras que la <strong>de</strong> mayor or<strong>de</strong>n se<br />

almacena en el registro visualizado.<br />

Si especifica un registro 3xxxx, el valor <strong>de</strong><br />

fuente <strong>de</strong>berá estar comprendido en el rango<br />

que va <strong>de</strong> 0 a 9.999. La raíz cuadrada sólo se<br />

calcula sobre el valor <strong>de</strong>l registro visualizado; el<br />

registro implícito es necesario pero no se utiliza.<br />

Resultado<br />

El nodo intermedio contiene un solo registro en<br />

espera 4xxxx al que se traslada el resultado <strong>de</strong>l<br />

cálculo <strong>de</strong> logaritmo en base 10. El resultado se<br />

expresa en el formato <strong>de</strong>cimal fijo 1,234 y se<br />

trunca <strong>de</strong>spués <strong>de</strong> la tercera posición <strong>de</strong>cimal.<br />

El mayor resultado que se pue<strong>de</strong> calcular es<br />

7,999, que se pue<strong>de</strong> trasladar al registro<br />

intermedio como 7.999.<br />

Selección <strong>de</strong> la subfunción LOG.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = error o valor fuera <strong>de</strong> rango.<br />

382 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor <strong>de</strong> fuente<br />

(asiento<br />

superior)<br />

Resultado<br />

(asiento<br />

intermedio)<br />

EMTH-LOG: Logaritmo <strong>de</strong> base 10<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 3x o 4x contiguos. El<br />

segundo registro está implícito. El valor <strong>de</strong> fuente a partir <strong>de</strong>l cual se ha <strong>de</strong> realizar<br />

el cálculo se guarda en estos registros.<br />

Si especifica un registro 4x, el valor <strong>de</strong> fuente podrá estar en el rango<br />

0 a 99.999.999:<br />

Registro Contenido<br />

Visualizado La mitad <strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l valor se guarda aquí.<br />

Primer implícito La mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l valor se guarda aquí.<br />

Si especifica un registro 3x, el valor <strong>de</strong> fuente podrá estar en el rango 0 a 9.999:<br />

Registro Contenido<br />

Visualizado El valor <strong>de</strong> fuente a partir <strong>de</strong>l cual se ha <strong>de</strong> realizar el cálculo se<br />

guarda aquí.<br />

Primer implícito El registro es requerido pero no se utiliza.<br />

El asiento intermedio contiene un solo registro <strong>de</strong> salida 4x a don<strong>de</strong> se traslada el<br />

resultado <strong>de</strong>l cálculo <strong>de</strong> logaritmo <strong>de</strong> base 10. El resultado se expresa en el formato<br />

<strong>de</strong>cimal fijo 1,234, y se trunca tras la tercera posición <strong>de</strong>cimal.<br />

El resultado <strong>de</strong> mayor tamaño que se pue<strong>de</strong> calcular es 7,999, que se pue<strong>de</strong><br />

trasladar al asiento intermedio como 7999.<br />

31007526 12/2006 383


EMTH-LOG: Logaritmo <strong>de</strong> base 10<br />

384 31007526 12/2006


Presentación<br />

EMTH-LOGFP: Logaritmo común<br />

<strong>de</strong> coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-LOGFP <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

69<br />

Apartado Página<br />

Descripción breve 386<br />

Representación 387<br />

Descripción <strong>de</strong> los parámetros 389<br />

31007526 12/2006 385


EMTH-LOGFP: Logaritmo común <strong>de</strong> coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

386 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

calcula el logaritmo<br />

común <strong>de</strong>l valor<br />

valor<br />

resultado<br />

EMTH<br />

LOGFP<br />

EMTH-LOGFP: Logaritmo común <strong>de</strong> coma flotante<br />

operación correcta<br />

31007526 12/2006 387


EMTH-LOGFP: Logaritmo común <strong>de</strong> coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor<br />

(nodo superior)<br />

Resultado<br />

(nodo<br />

intermedio)<br />

LOGFP<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = calcula el logaritmo común <strong>de</strong>l valor.<br />

4x REAL Valor > 0 en formato <strong>de</strong> coma flotante (el<br />

primero <strong>de</strong> dos registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo<br />

registro está implícito. Aquí se guarda un valor<br />

> 0 en formato <strong>de</strong> coma flotante.<br />

Si el valor


Descripción <strong>de</strong> los parámetros<br />

Valor (asiento<br />

superior)<br />

Resultado<br />

(asiento<br />

intermedio)<br />

EMTH-LOGFP: Logaritmo común <strong>de</strong> coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Aquí se guarda un valor > 0 en formato <strong>de</strong> coma flotante.<br />

Si el valor ≤ 0, se <strong>de</strong>volverá un resultado no válido al asiento<br />

intermedio y se protocolarizará un error en la función EMTH-<br />

ERLOG.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

Estos registros no se están utilizando pero es necesaria su<br />

ubicación en la memoria <strong>de</strong> señal.<br />

El logaritmo común <strong>de</strong>l valor <strong>de</strong>l asiento superior se traslada aquí en<br />

formato <strong>de</strong> coma flotante.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 389


EMTH-LOGFP: Logaritmo común <strong>de</strong> coma flotante<br />

390 31007526 12/2006


Presentación<br />

EMTH-MULDP:<br />

Multiplicación <strong>de</strong> doble precisión<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-MULDP <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

70<br />

Apartado Página<br />

Descripción breve 392<br />

Representación 393<br />

Descripción <strong>de</strong> los parámetros 395<br />

31007526 12/2006 391


EMTH-MULDP: Multiplicación <strong>de</strong> doble precisión<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> doble precisión."<br />

392 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

nodo superior<br />

multiplicado por<br />

nodo intermedio<br />

operando 1<br />

operando 2/<br />

producto<br />

EMTH<br />

MULDP<br />

EMTH-MULDP: Multiplicación <strong>de</strong> doble precisión<br />

operación correcta<br />

operando no válido o fuera <strong>de</strong><br />

rango<br />

31007526 12/2006 393


EMTH-MULDP: Multiplicación <strong>de</strong> doble precisión<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Operando 1<br />

(nodo superior)<br />

Operando 2/<br />

producto<br />

(nodo<br />

intermedio)<br />

MULDP<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = operando 1 x operando 2.<br />

El producto se traslada a los registros<br />

<strong>de</strong>signados.<br />

4x DINT,<br />

UDINT<br />

4x DINT,<br />

UDINT<br />

Operando 1 (primero <strong>de</strong> dos registros<br />

contiguos)<br />

Se introduce en el nodo superior el primero <strong>de</strong><br />

dos registros 4x contiguos. El segundo registro<br />

4x está implícito. El operando 1 se almacena<br />

aquí. El segundo registro 4x está implícito. Cada<br />

registro contiene un valor que pue<strong>de</strong> ir <strong>de</strong> 0000<br />

a 9.999; para un valor combinado <strong>de</strong> doble<br />

precisión, el rango va <strong>de</strong> 0 a 99,999,999. La<br />

mitad <strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l operando 1 se<br />

almacena en el registro visualizado, mientras<br />

que la <strong>de</strong> menor or<strong>de</strong>n se almacena en el<br />

registro implícito.<br />

Operando 2 y producto (primero <strong>de</strong> seis<br />

registros contiguos).<br />

El primero <strong>de</strong> seis registros 4xxxx contiguos se<br />

introduce en el nodo intermedio.<br />

Los cinco registros restantes están implícitos:<br />

El registro visualizado y el primer registro<br />

implícito almacenan, respectivamente, las<br />

mita<strong>de</strong>s <strong>de</strong> mayor y menor or<strong>de</strong>n <strong>de</strong>l<br />

operando 2, para un valor combinado <strong>de</strong><br />

doble precisión en el rango que va <strong>de</strong> 0 a<br />

99,999,999.<br />

Los cuatro últimos registros implícitos<br />

almacenan el producto <strong>de</strong> doble precisión en<br />

el rango que va <strong>de</strong> 0 a<br />

9,999,999,999,999,999.<br />

Selección <strong>de</strong> la subfunción MULDP.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = operando fuera <strong>de</strong> rango.<br />

394 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Operando 1<br />

(asiento<br />

superior)<br />

Operando 2 y<br />

producto<br />

(asiento<br />

intermedio)<br />

EMTH-MULDP: Multiplicación <strong>de</strong> doble precisión<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro 4x está implícito. El operando 1 se almacena aquí.<br />

Registro Contenido<br />

Visualizado El registro guarda la mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l operando 1.<br />

Rango 0000 a 9.999, para un valor <strong>de</strong> doble precisión combinado en<br />

el rango 0 a 99.999.999.<br />

Primer implícito El registro guarda la mitad <strong>de</strong> or<strong>de</strong>n mayor <strong>de</strong>l operando 1.<br />

Rango 0000 a 9.999, para un valor <strong>de</strong> doble precisión combinado en<br />

el rango 0 a 99.999.999.<br />

El primero <strong>de</strong> seis registros 4x contiguos se introduce en el asiento intermedio. Los<br />

cinco registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado El registro almacena la mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l operando 2, para<br />

un valor combinado <strong>de</strong> doble precisión en el rango <strong>de</strong> 0 a<br />

99.999.999.<br />

Primer implícito El registro almacena la mitad <strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l operando 2, para<br />

un valor combinado <strong>de</strong> doble precisión en el rango <strong>de</strong> 0 a<br />

99.999.999.<br />

Segundo implícito<br />

Tercer implícito<br />

Cuarto implícito<br />

Quinto implícito<br />

Estos registros guardan el producto <strong>de</strong> doble precisión en el rango<br />

comprendido entre 0 y 9.999.999.999.999.999.<br />

31007526 12/2006 395


EMTH-MULDP: Multiplicación <strong>de</strong> doble precisión<br />

396 31007526 12/2006


Presentación<br />

EMTH-MULFP:<br />

Multiplicación con coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-MULFP <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

71<br />

Apartado Página<br />

Descripción breve 398<br />

Representación 399<br />

Descripción <strong>de</strong> los parámetros 401<br />

31007526 12/2006 397


EMTH-MULFP: Multiplicación con coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

398 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

habilita la multiplicación<br />

con coma flotante<br />

valor 1<br />

valor 2 y<br />

producto<br />

EMTH<br />

MULFP<br />

EMTH-MULFP: Multiplicación con coma flotante<br />

operación correcta<br />

31007526 12/2006 399


EMTH-MULFP: Multiplicación con coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor 1<br />

(nodo superior)<br />

Valor 2 y<br />

producto<br />

(nodo<br />

intermedio)<br />

MULFP<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia una multiplicación <strong>de</strong> coma<br />

flotante.<br />

4x REAL Valor 1 <strong>de</strong> coma flotante (el primero <strong>de</strong><br />

dos registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx<br />

contiguos se introduce en el nodo<br />

superior. El segundo registro está<br />

implícito. El valor <strong>de</strong> coma flotante 1 en la<br />

operación <strong>de</strong> multiplicación se guarda<br />

aquí.<br />

4x REAL Valor 2 <strong>de</strong> coma flotante y producto (el<br />

primero <strong>de</strong> cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos en el nodo intermedio.<br />

Los tres registros restantes están<br />

implícitos. El valor <strong>de</strong> coma flotante 2 <strong>de</strong> la<br />

operación <strong>de</strong> multiplicación se guarda en<br />

el registro visualizado y el primer registro<br />

implícito. El producto <strong>de</strong> la multiplicación<br />

se guarda en formato <strong>de</strong> coma flotante en<br />

el segundo y tercer registros implícitos.<br />

Selección <strong>de</strong> la subfunción MULFP.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

400 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor 1 <strong>de</strong> coma<br />

flotante (asiento<br />

superior)<br />

Valor 2 <strong>de</strong> coma<br />

flotante y<br />

producto<br />

(asiento<br />

intermedio)<br />

EMTH-MULFP: Multiplicación con coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor <strong>de</strong> coma flotante 1 en la operación <strong>de</strong> multiplicación se<br />

guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

El valor <strong>de</strong> coma flotante 2 en la operación <strong>de</strong> multiplicación se<br />

guarda aquí.<br />

El producto <strong>de</strong> la multiplicación se guarda aquí en formato <strong>de</strong> coma<br />

flotante.<br />

31007526 12/2006 401


EMTH-MULFP: Multiplicación con coma flotante<br />

402 31007526 12/2006


Presentación<br />

EMTH-MULIF: Multiplicación <strong>de</strong><br />

entero x coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-MULIF <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

72<br />

Apartado Página<br />

Descripción breve 404<br />

Representación 405<br />

Descripción <strong>de</strong> los parámetros 407<br />

31007526 12/2006 403


EMTH-MULIF: Multiplicación <strong>de</strong> entero x coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

404 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

inicia la operación <strong>de</strong><br />

entero x<br />

coma flotante<br />

entero<br />

EMTH-MULIF: Multiplicación <strong>de</strong> entero x coma flotante<br />

coma flotante<br />

y<br />

producto<br />

EMTH<br />

MULIF<br />

operación correcta<br />

31007526 12/2006 405


EMTH-MULIF: Multiplicación <strong>de</strong> entero x coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entero<br />

(nodo superior)<br />

Coma flotante y<br />

producto<br />

(nodo<br />

intermedio)<br />

MULIF<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la operación <strong>de</strong> entero x coma<br />

flotante.<br />

4x DINT, UDINT Valor entero (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx<br />

contiguos se introduce en el nodo<br />

superior. El segundo registro está<br />

implícito. El valor entero <strong>de</strong> doble<br />

precisión que se ha <strong>de</strong> multiplicar por el<br />

valor <strong>de</strong> coma flotante se guarda aquí.<br />

4x REAL Valor <strong>de</strong> coma flotante y producto (el<br />

primero <strong>de</strong> cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos en el nodo intermedio.<br />

Los tres registros restantes están<br />

implícitos. El registro visualizado y el<br />

primer registro implícito guardan el valor<br />

<strong>de</strong> coma flotante que se va a multiplicar en<br />

la operación y el producto se coloca en el<br />

segundo y el tercer registros implícitos. El<br />

producto se coloca en formato <strong>de</strong> coma<br />

flotante. Se introduce en el nodo<br />

intermedio el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos. Los tres registros<br />

restantes están implícitos. El registro<br />

visualizado y el primer registro implícito<br />

guardan el valor <strong>de</strong> coma flotante que se<br />

va a multiplicar en la operación y el<br />

producto se coloca en el segundo y el<br />

tercer registros implícitos. El producto se<br />

almacena en formato <strong>de</strong> coma flotante.<br />

Selección <strong>de</strong> la subfunción MULIF.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

406 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor entero<br />

(asiento<br />

superior)<br />

Valor <strong>de</strong> coma<br />

flotante y<br />

producto<br />

(asiento<br />

intermedio)<br />

EMTH-MULIF: Multiplicación <strong>de</strong> entero x coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor entero <strong>de</strong> doble precisión que se ha <strong>de</strong> multiplicar por el<br />

valor <strong>de</strong> coma flotante se guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

El valor <strong>de</strong> coma flotante que se ha <strong>de</strong> multiplicar en la operación se<br />

guarda aquí.<br />

El producto <strong>de</strong> la multiplicación se guarda aquí en formato <strong>de</strong> coma<br />

flotante.<br />

31007526 12/2006 407


EMTH-MULIF: Multiplicación <strong>de</strong> entero x coma flotante<br />

408 31007526 12/2006


Presentación<br />

EMTH-PI: Cargar el valor <strong>de</strong> coma<br />

flotante <strong>de</strong> "Pi"<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-PI <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

73<br />

Apartado Página<br />

Descripción breve 410<br />

Representación 411<br />

Descripción <strong>de</strong> los parámetros 413<br />

31007526 12/2006 409


EMTH-PI: Cargar el valor <strong>de</strong> coma flotante <strong>de</strong> "Pi"<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

410 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

carga el valor <strong>de</strong> coma<br />

flotante <strong>de</strong> pi en<br />

registros <strong>de</strong> nodo<br />

intermedio<br />

sin utilizar<br />

valor <strong>de</strong><br />

coma flotante<br />

<strong>de</strong> π<br />

EMTH<br />

PI<br />

EMTH-PI: Cargar el valor <strong>de</strong> coma flotante <strong>de</strong> "Pi"<br />

operación correcta<br />

31007526 12/2006 411


EMTH-PI: Cargar el valor <strong>de</strong> coma flotante <strong>de</strong> "Pi"<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Sin utilizar<br />

(nodo superior)<br />

Valor <strong>de</strong> coma<br />

flotante <strong>de</strong> π<br />

(nodo<br />

intermedio)<br />

PI<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = carga el valor <strong>de</strong> coma flotante <strong>de</strong> π<br />

en el registro <strong>de</strong>l nodo intermedio.<br />

4x REAL Primero <strong>de</strong> dos registros contiguos.<br />

El primero <strong>de</strong> dos registros 4xxxx<br />

contiguos se introduce en el nodo<br />

superior. El segundo registro está<br />

implícito. Estos registros no se utilizan,<br />

pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

4x REAL Valor <strong>de</strong> coma flotante <strong>de</strong> π (el primero <strong>de</strong><br />

cuatro registros contiguos).<br />

Se introduce en el nodo intermedio el<br />

primero <strong>de</strong> cuatro registros 4xxxx<br />

contiguos. Los tres registros restantes<br />

están implícitos.<br />

El valor <strong>de</strong> coma flotante <strong>de</strong> p se coloca en<br />

el segundo y tercer registros implícitos. El<br />

registro visualizado y el primer registro<br />

implícito no se utilizan, pero es necesaria<br />

su ubicación en la memoria <strong>de</strong> señal.<br />

Sugerencia: Para preservar los registros<br />

pue<strong>de</strong> igualar los números <strong>de</strong> referencia<br />

4xxxx asignados al registro visualizado y<br />

el primer registro implícito <strong>de</strong>l nodo<br />

intermedio a las referencias <strong>de</strong> registro en<br />

el nodo superior, ya que los dos primeros<br />

registros <strong>de</strong>l nodo intermedio no se<br />

utilizan.<br />

Selección <strong>de</strong> la subfunción PI.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

412 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Sin utilizar<br />

(asiento<br />

superior)<br />

Valor <strong>de</strong> coma<br />

flotante <strong>de</strong> π<br />

(asiento<br />

intermedio)<br />

EMTH-PI: Cargar el valor <strong>de</strong> coma flotante <strong>de</strong> "Pi"<br />

Se ingresa en el asiento intermedio el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Estos registros no se utilizan, pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

Estos registros no se utilizan, pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

El valor <strong>de</strong> coma flotante <strong>de</strong> π se traslada aquí.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 413


EMTH-PI: Cargar el valor <strong>de</strong> coma flotante <strong>de</strong> "Pi"<br />

414 31007526 12/2006


Presentación<br />

EMTH-POW:<br />

Elevar un número con coma<br />

flotante a una potencia entera<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-POW <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

74<br />

Apartado Página<br />

Descripción breve 416<br />

Representación: EMTH - POW - Elevar un número con coma flotante a una<br />

potencia entera<br />

417<br />

Descripción <strong>de</strong> los parámetros 419<br />

31007526 12/2006 415


EMTH-POW: Elevar un número con coma flotante a una potencia entera<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

416 31007526 12/2006


EMTH-POW: Elevar un número con coma flotante a una potencia<br />

Representación: EMTH - POW - Elevar un número con coma flotante a una<br />

potencia entera<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

CALCULA EL VALOR<br />

DE COMA FLOTANTE<br />

ELEVADO A LA<br />

POTENCIA DE UN<br />

VALOR ENTERO<br />

valor <strong>de</strong><br />

coma flotante<br />

entero<br />

y<br />

resultado<br />

EMTH<br />

POW<br />

OPERACIÓN CORRECTA<br />

31007526 12/2006 417


EMTH-POW: Elevar un número con coma flotante a una potencia entera<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor <strong>de</strong> coma<br />

flotante<br />

(nodo superior)<br />

Entero y<br />

resultado<br />

(nodo<br />

intermedio)<br />

POW<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = calcula el valor <strong>de</strong> coma flotante<br />

elevado a la potencia <strong>de</strong> valor entero.<br />

4x REAL Valor <strong>de</strong> coma flotante (el primero <strong>de</strong> dos<br />

registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx<br />

contiguos se introduce en el nodo<br />

superior. El segundo registro está<br />

implícito. El valor <strong>de</strong> coma flotante que se<br />

ha <strong>de</strong> elevar a la potencia <strong>de</strong> valor entero<br />

se guarda aquí.<br />

4x INT, UINT Valor entero y resultado (el primero <strong>de</strong><br />

cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos en el nodo intermedio.<br />

Los tres registros restantes están<br />

implícitos.<br />

Todos los valores <strong>de</strong> bit <strong>de</strong> este registro<br />

visualizados <strong>de</strong>ben borrarse a cero. En el<br />

primer registro implícito se guarda un valor<br />

que representa la potencia a la que se va<br />

a elevar el valor <strong>de</strong>l nodo superior. El<br />

resultado <strong>de</strong>l valor <strong>de</strong> coma flotante que<br />

se ha <strong>de</strong> elevar a la potencia <strong>de</strong>l valor<br />

entero se guarda en el segundo y tercer<br />

registros implícitos.<br />

Selección <strong>de</strong> la subfunción POW.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

418 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor <strong>de</strong> coma<br />

flotante (asiento<br />

superior)<br />

Entero y<br />

resultado<br />

(asiento<br />

intermedio)<br />

EMTH-POW: Elevar un número con coma flotante a una potencia<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor <strong>de</strong> coma flotante que se ha <strong>de</strong> elevar a la potencia <strong>de</strong> valor<br />

entero se guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado Todos los valores <strong>de</strong> bit <strong>de</strong> este registro <strong>de</strong>ben borrarse a cero.<br />

Primer implícito Aquí se guarda un valor que representa la potencia a la que se va a<br />

elevar el valor <strong>de</strong>l asiento superior.<br />

Segundo implícito El resultado <strong>de</strong>l valor <strong>de</strong> coma flotante que se ha <strong>de</strong> elevar a la<br />

Tercer implícito potencia <strong>de</strong>l valor entero se guarda aquí.<br />

31007526 12/2006 419


EMTH-POW: Elevar un número con coma flotante a una potencia entera<br />

420 31007526 12/2006


Presentación<br />

EMTH-SINE: Seno <strong>de</strong> coma<br />

flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-SINE <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

75<br />

Apartado Página<br />

Descripción breve 422<br />

Representación: EMTH - SINE - Matemática <strong>de</strong> coma flotante - Seno <strong>de</strong> un<br />

ángulo (en radianes)<br />

423<br />

Descripción <strong>de</strong> los parámetros 425<br />

31007526 12/2006 421


EMTH-SINE: Seno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

422 31007526 12/2006


EMTH-SINE: Seno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Representación: EMTH - SINE - Matemática <strong>de</strong> coma flotante - Seno <strong>de</strong> un ángulo<br />

(en radianes)<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

CALCULA EL SENO<br />

DEL VALOR<br />

seno <strong>de</strong>l<br />

valor<br />

EMTH<br />

SINE<br />

31007526 12/2006 423<br />

valor<br />

OPERACIÓN CORRECTA


EMTH-SINE: Seno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor<br />

(nodo<br />

superior)<br />

Seno <strong>de</strong>l<br />

valor<br />

(nodo<br />

intermedio)<br />

SINE<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = calcula el seno <strong>de</strong>l valor.<br />

4x REAL Valor <strong>de</strong> coma flotante que indica el valor <strong>de</strong> un<br />

ángulo en radianes (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el nodo superior. El segundo registro<br />

está implícito. Aquí se guarda un valor <strong>de</strong> coma<br />

flotante que indica el valor <strong>de</strong>l ángulo en radianes.<br />

La magnitud <strong>de</strong> este valor <strong>de</strong>be ser < 65.536,0; <strong>de</strong><br />

lo contrario:<br />

El seno no se ha calculado.<br />

Se <strong>de</strong>vuelve un resultado no válido.<br />

Se marca un error en la función EMTH-ERLOG.<br />

4x REAL Seno <strong>de</strong>l valor <strong>de</strong>l nodo superior (el primero <strong>de</strong><br />

cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros 4xxxx<br />

contiguos en el nodo intermedio. Los tres registros<br />

restantes están implícitos.<br />

El seno <strong>de</strong>l valor en el nodo superior se coloca en<br />

los registros segundo y tercero implícitos en<br />

formato <strong>de</strong> coma flotante. El registro visualizado y<br />

el primer registro implícito no se utilizan, pero es<br />

necesaria su ubicación en la memoria <strong>de</strong> señal.<br />

Sugerencia: Para preservar los registros pue<strong>de</strong><br />

igualar los números <strong>de</strong> referencia 4xxxx asignados<br />

al registro visualizado y el primer registro implícito<br />

<strong>de</strong>l nodo intermedio a las referencias <strong>de</strong> registro en<br />

el nodo superior, ya que los dos primeros registros<br />

<strong>de</strong>l nodo intermedio no se utilizan.<br />

Selección <strong>de</strong> la subfunción SINE.<br />

0x Ninguno ON = operación correcta*.<br />

*Se marca un error en la función EMTH-ERLOG.<br />

424 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor (asiento<br />

superior)<br />

Seno <strong>de</strong> un valor<br />

(asiento<br />

intermedio)<br />

EMTH-SINE: Seno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Aquí se guarda un valor <strong>de</strong> coma flotante que indica el valor <strong>de</strong>l<br />

ángulo en radianes. La magnitud <strong>de</strong> este valor <strong>de</strong>be ser < 65.536,0.<br />

Si la magnitud es ≥ 65.536,0:<br />

El seno no se ha calculado.<br />

Se ha <strong>de</strong>vuelto un resultado no válido.<br />

Se marca un error en la función EMTH-ERLOG.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

No se utilizan los registros pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

El seno <strong>de</strong>l valor <strong>de</strong>l asiento superior se traslada aquí en formato <strong>de</strong><br />

coma flotante.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 425


EMTH-SINE: Seno <strong>de</strong> coma flotante <strong>de</strong> un ángulo (en radianes)<br />

426 31007526 12/2006


Presentación<br />

EMTH-SQRFP:<br />

Raíz cuadrada con coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-SQRFP <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

76<br />

Apartado Página<br />

Descripción breve 428<br />

Representación 429<br />

Descripción <strong>de</strong> los parámetros 431<br />

31007526 12/2006 427


EMTH-SQRFP: Raíz cuadrada con coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

428 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

inicia la raíz cuadrada<br />

en valor <strong>de</strong> coma<br />

flotante<br />

valor<br />

resultado<br />

EMTH<br />

SQRFP<br />

EMTH-SQRFP: Raíz cuadrada con coma flotante<br />

operación correcta<br />

31007526 12/2006 429


EMTH-SQRFP: Raíz cuadrada con coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor<br />

(nodo superior)<br />

Resultado<br />

(nodo<br />

intermedio)<br />

SQRFP<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la raíz cuadrada en valor <strong>de</strong><br />

coma flotante.<br />

4x REAL Valor <strong>de</strong> coma flotante (el primero <strong>de</strong> dos<br />

registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx<br />

contiguos se introduce en el nodo<br />

superior. El segundo registro está<br />

implícito. El valor <strong>de</strong> coma flotante al que<br />

se ha <strong>de</strong> aplicar la operación <strong>de</strong> raíz<br />

cuadrada se guarda aquí.<br />

4x REAL Resultado en formato <strong>de</strong> coma flotante (el<br />

primero <strong>de</strong> cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos en el nodo intermedio.<br />

Los tres registros restantes están<br />

implícitos. El resultado <strong>de</strong> la operación <strong>de</strong><br />

raíz cuadrada se coloca en formato <strong>de</strong><br />

coma flotante en el segundo y tercer<br />

registros implícitos. El registro visualizado<br />

y el primer registro implícito <strong>de</strong>l nodo<br />

intermedio no se utilizan en la operación,<br />

pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

Sugerencia: Para preservar los registros<br />

pue<strong>de</strong> igualar los números <strong>de</strong> referencia<br />

4xxxx asignados al registro visualizado y<br />

el primer registro implícito <strong>de</strong>l nodo<br />

intermedio a las referencias <strong>de</strong> registro en<br />

el nodo superior, ya que los dos primeros<br />

registros <strong>de</strong>l nodo intermedio no se<br />

utilizan.<br />

Selección <strong>de</strong> la subfunción SQRFP.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

430 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor <strong>de</strong> coma<br />

flotante (asiento<br />

superior)<br />

Resultado<br />

(asiento<br />

intermedio)<br />

EMTH-SQRFP: Raíz cuadrada con coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor <strong>de</strong> coma flotante al que se ha <strong>de</strong> aplicar la operación <strong>de</strong> raíz<br />

cuadrada se guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

No se utilizan los registros, pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

El resultado <strong>de</strong> la operación <strong>de</strong> raíz cuadrada se traslada aquí en<br />

formato <strong>de</strong> coma flotante.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 431


EMTH-SQRFP: Raíz cuadrada con coma flotante<br />

4<strong>32</strong> 31007526 12/2006


Presentación<br />

EMTH-SQRT:<br />

Raíz cuadrada con coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-SQRT <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

77<br />

Apartado Página<br />

Descripción breve 434<br />

Representación 435<br />

Descripción <strong>de</strong> los parámetros 437<br />

31007526 12/2006 433


EMTH-SQRT: Raíz cuadrada con coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> números enteros."<br />

434 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

inicia una operación<br />

SQRT estándar<br />

fuente<br />

resultado<br />

EMTH<br />

SQRT<br />

EMTH-SQRT: Raíz cuadrada con coma flotante<br />

operación correcta<br />

valor <strong>de</strong>l nodo<br />

superior<br />

fuera <strong>de</strong> rango<br />

31007526 12/2006 435


EMTH-SQRT: Raíz cuadrada con coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Fuente<br />

(nodo<br />

superior)<br />

Resultado<br />

(nodo<br />

intermedio)<br />

SQRT<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia una operación estándar <strong>de</strong> raíz<br />

cuadrada.<br />

3x, 4x DINT,<br />

UDINT<br />

4x DINT,<br />

UDINT<br />

Valor <strong>de</strong> fuente (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros contiguos 3xxxx o 4xxxx<br />

se introduce en el nodo superior. El segundo<br />

registro está implícito. Aquí se guarda el valor <strong>de</strong><br />

fuente, es <strong>de</strong>cir, el valor a partir <strong>de</strong>l cual se ha <strong>de</strong><br />

calcular la raíz cuadrada.<br />

Si especifica un registro 4xxxx, el valor <strong>de</strong> fuente<br />

<strong>de</strong>berá estar comprendido en el rango que va <strong>de</strong> 0<br />

a 99,999,99. La mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l valor se<br />

almacena en el registro implícito, mientras que la<br />

<strong>de</strong> mayor or<strong>de</strong>n se almacena en el registro<br />

visualizado.<br />

Si especifica un registro 3xxxx, el valor <strong>de</strong> fuente<br />

<strong>de</strong>berá estar comprendido en el rango que va <strong>de</strong> 0<br />

a 9.999. La raíz cuadrada sólo se calcula sobre el<br />

valor <strong>de</strong>l registro visualizado; el registro implícito es<br />

necesario pero no se utiliza.<br />

Resultado (el primero <strong>de</strong> dos registros contiguos).<br />

Introduzca, en el nodo intermedio, el primero <strong>de</strong><br />

dos registros 4xxxx contiguos. El segundo registro<br />

está implícito. El resultado <strong>de</strong> la operación <strong>de</strong> raíz<br />

cuadrada estándar se almacena aquí.<br />

El resultado se almacena en el formato <strong>de</strong>cimal fijo:<br />

1.234,5600, don<strong>de</strong> el registro visualizado<br />

almacena el valor <strong>de</strong> cuatro dígitos a la izquierda<br />

<strong>de</strong> la primera coma <strong>de</strong>cimal, mientras que el<br />

registro implícito lo almacena a la <strong>de</strong>recha <strong>de</strong> la<br />

primera coma <strong>de</strong>cimal. Los números que aparecen<br />

<strong>de</strong>trás <strong>de</strong> la segunda coma <strong>de</strong>cimal se truncarán;<br />

no se realizarán cálculos redon<strong>de</strong>ando.<br />

Selección <strong>de</strong> la subfunción SQRT.<br />

0x Ninguno ON = operación correcta.<br />

0x Ninguno ON = valor <strong>de</strong> fuente fuera <strong>de</strong> rango.<br />

436 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor <strong>de</strong> fuente<br />

(asiento<br />

superior)<br />

Resultado<br />

(asiento<br />

intermedio)<br />

EMTH-SQRT: Raíz cuadrada con coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 3x o 4x contiguos. El<br />

segundo registro está implícito. Aquí se guarda el valor <strong>de</strong> fuente, es <strong>de</strong>cir, el valor<br />

a partir <strong>de</strong>l cual se ha <strong>de</strong> calcular la raíz cuadrada.<br />

Si especifica un registro 4x, el valor <strong>de</strong> fuente podrá estar en el rango<br />

0 a 99.999.999:<br />

Registro Contenido<br />

Visualizado La mitad <strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l valor se guarda aquí.<br />

Primer implícito La mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l valor se guarda aquí.<br />

Si especifica un registro 3x, el valor <strong>de</strong> fuente podrá estar en el rango 0 a 9.999:<br />

Registro Contenido<br />

Visualizado El cálculo <strong>de</strong> la raíz cuadrada sólo se aplica a un valor en el registro<br />

visualizado.<br />

Primer implícito El registro es requerido pero no se utiliza.<br />

Introduzca en el asiento intermedio el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito. El resultado <strong>de</strong> la operación estándar <strong>de</strong> raíz<br />

cuadrada se guardará aquí en formato <strong>de</strong>cimal fijo. 1234.5600.:.<br />

Registro Contenido<br />

Visualizado El registro guardará el valor <strong>de</strong> cuatro dígitos a la izquierda <strong>de</strong>l<br />

primer punto <strong>de</strong>cimal.<br />

Primer implícito El registro guardará el valor <strong>de</strong> cuatro dígitos a la <strong>de</strong>recha <strong>de</strong>l primer<br />

punto <strong>de</strong>cimal.<br />

Nota: Los números <strong>de</strong>trás <strong>de</strong>l segundo punto <strong>de</strong>cimal se truncarán; no se<br />

realizarán cálculos redon<strong>de</strong>ando.<br />

31007526 12/2006 437


EMTH-SQRT: Raíz cuadrada con coma flotante<br />

438 31007526 12/2006


Presentación<br />

EMTH-SQRTP:<br />

Raíz cuadrada <strong>de</strong> proceso<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-SQRTP <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

78<br />

Apartado Página<br />

Descripción breve 440<br />

Representación 441<br />

Descripción <strong>de</strong> los parámetros 443<br />

Ejemplo 444<br />

31007526 12/2006 439


EMTH-SQRTP: Raíz cuadrada <strong>de</strong> proceso<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> números enteros."<br />

La función <strong>de</strong> raíz cuadrada <strong>de</strong> proceso realiza la función <strong>de</strong> raíz cuadrada estándar<br />

para aplicaciones <strong>de</strong> regulación analógica <strong>de</strong> bucle cerrado. Toma el resultado <strong>de</strong><br />

una raíz cuadrada estándar, lo multiplica por 63,9922 (la raíz cuadrada <strong>de</strong> 4.095) y<br />

guarda el resultado linearizado en los registros <strong>de</strong>l asiento intermedio.<br />

La raíz cuadrada <strong>de</strong> proceso se utiliza a menudo para linearizar señales <strong>de</strong><br />

sensores <strong>de</strong> presión diferencial <strong>de</strong> modo que se puedan utilizar como entradas en<br />

operaciones <strong>de</strong> control <strong>de</strong> regulación <strong>de</strong> bucle cerrado.<br />

440 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

inicia un proceso<br />

operación <strong>de</strong> raíz<br />

cuadrada<br />

fuente<br />

resultado<br />

linealizado<br />

EMTH<br />

SQRTP<br />

EMTH-SQRTP: Raíz cuadrada <strong>de</strong> proceso<br />

operación correcta<br />

valor <strong>de</strong>l nodo superior fuera<br />

<strong>de</strong> rango<br />

31007526 12/2006 441


EMTH-SQRTP: Raíz cuadrada <strong>de</strong> proceso<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Fuente<br />

(nodo<br />

superior)<br />

Resultado<br />

linealizado<br />

(nodo<br />

intermedio)<br />

SQRTP<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia una operación <strong>de</strong> raíz cuadrada <strong>de</strong><br />

proceso.<br />

3x, 4x DINT,<br />

UDINT<br />

4x DINT,<br />

UDINT<br />

Valor <strong>de</strong> fuente (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros contiguos 3xxxx o 4xxxx<br />

se introduce en el nodo superior. El segundo<br />

registro está implícito. El valor <strong>de</strong> fuente, es <strong>de</strong>cir,<br />

el valor a partir <strong>de</strong>l cual se ha <strong>de</strong> calcular la raíz<br />

cuadrada, se almacena en estos dos registros.<br />

Para generar valores que tengan significado, el<br />

valor <strong>de</strong> fuente no <strong>de</strong>be ser superior a 4.095. Por<br />

tanto, en un grupo <strong>de</strong> registros 4xxxx, el valor <strong>de</strong><br />

fuente se almacenará en el registro implícito,<br />

mientras que en un grupo <strong>de</strong> registros 3xxxx se<br />

almacenará en el registro visualizado.<br />

Resultado linealizado (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros contiguos 4xxxx se<br />

introduce en el nodo intermedio. El segundo<br />

registro está implícito. Aquí se almacena el<br />

resultado linealizado <strong>de</strong> la operación <strong>de</strong> raíz<br />

cuadrada <strong>de</strong> proceso.<br />

El resultado se almacena en el formato <strong>de</strong>cimal fijo:<br />

1.234,5600, don<strong>de</strong> el registro visualizado<br />

almacena el valor <strong>de</strong> cuatro dígitos a la izquierda<br />

<strong>de</strong> la primera coma <strong>de</strong>cimal, mientras que el<br />

registro implícito lo almacena a la <strong>de</strong>recha <strong>de</strong> la<br />

primera coma <strong>de</strong>cimal. Los números que aparecen<br />

<strong>de</strong>trás <strong>de</strong> la segunda coma <strong>de</strong>cimal se truncarán;<br />

no se realizarán cálculos redon<strong>de</strong>ando.<br />

Selección <strong>de</strong> la subfunción SQRPT.<br />

0x Ninguno ON = operación correcta.<br />

0x Ninguno ON = valor <strong>de</strong> fuente fuera <strong>de</strong> rango.<br />

442 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor <strong>de</strong> fuente<br />

(asiento<br />

superior)<br />

Resultado<br />

linearizado<br />

(asiento<br />

intermedio)<br />

EMTH-SQRTP: Raíz cuadrada <strong>de</strong> proceso<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 3x o 4x contiguos. El<br />

segundo registro está implícito. Aquí se guarda el valor <strong>de</strong> fuente, es <strong>de</strong>cir, el valor<br />

a partir <strong>de</strong>l cual se ha <strong>de</strong> calcular la raíz cuadrada. Para generar valores con<br />

significado, el valor <strong>de</strong> fuente no <strong>de</strong>be sobrepasar 4.095.<br />

Si especifica un registro 4x:<br />

Registro Contenido<br />

Visualizado No utilizado.<br />

Primer implícito El valor <strong>de</strong> fuente se guardará aquí.<br />

Si especifica un registro 3x:<br />

Registro Contenido<br />

Visualizado El valor <strong>de</strong> fuente se guardará aquí.<br />

Primer implícito No utilizado.<br />

Se ingresa en el asiento intermedio el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito. El resultado linearizado <strong>de</strong> la operación <strong>de</strong> raíz<br />

cuadrada <strong>de</strong> proceso se guarda aquí en formato <strong>de</strong>cimal fijo 1234,5600..<br />

Registro Contenido<br />

Visualizado El registro guardará el valor <strong>de</strong> cuatro dígitos a la izquierda <strong>de</strong> la<br />

primera coma <strong>de</strong>cimal.<br />

Primer implícito El registro guardará el valor <strong>de</strong> cuatro dígitos a la <strong>de</strong>recha <strong>de</strong> la<br />

primera coma <strong>de</strong>cimal.<br />

Nota: Los números que aparecen <strong>de</strong>trás <strong>de</strong> la segunda coma <strong>de</strong>cimal se<br />

truncarán; no se realizarán cálculos para redon<strong>de</strong>ar.<br />

31007526 12/2006 443


EMTH-SQRTP: Raíz cuadrada <strong>de</strong> proceso<br />

Ejemplo<br />

Función <strong>de</strong> raíz<br />

cuadrada <strong>de</strong><br />

proceso<br />

Este ejemplo ofrece una vista general rápida <strong>de</strong>l cálculo <strong>de</strong> la raíz cuadrada <strong>de</strong><br />

proceso.<br />

Instrucción<br />

300030<br />

400030<br />

EMTH<br />

SQRTP<br />

Se supone un valor <strong>de</strong> fuente <strong>de</strong> 2000 almacenado en el registro 300030 <strong>de</strong> la<br />

función SQRTP <strong>de</strong> EMTH.<br />

En primer lugar, una operación normal <strong>de</strong> raíz cuadrada <strong>de</strong> realiza <strong>de</strong>l siguiente<br />

modo:<br />

2000 = 0044.72<br />

A continuación, este resultado se multiplica por 63,9922, dando un resultado<br />

linearizado <strong>de</strong> 2861,63:<br />

0044.72 × 63.9922 =<br />

2861.63<br />

El resultado linearizado se ubica en dos registros en el asiento intermedio.<br />

Registro Parte <strong>de</strong>l resultado<br />

400030 2861 (valor <strong>de</strong> cuatro dígitos a la izquierda <strong>de</strong> la primera coma <strong>de</strong>cimal).<br />

400031 6300 (valor <strong>de</strong> cuatro dígitos a la <strong>de</strong>recha <strong>de</strong> la primera coma <strong>de</strong>cimal).<br />

444 31007526 12/2006


Presentación<br />

EMTH-SUBDP:<br />

Resta <strong>de</strong> doble precisión<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-SUBDP <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

79<br />

Apartado Página<br />

Descripción breve 446<br />

Representación: EMTH - SUBDP - Matemática <strong>de</strong> doble precisión -<br />

Substracción<br />

447<br />

Descripción <strong>de</strong> los parámetros 449<br />

31007526 12/2006 445


EMTH-SUBDP: Resta <strong>de</strong> doble precisión<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> doble precisión."<br />

446 31007526 12/2006


EMTH-SUBDP: Resta <strong>de</strong> doble precisión<br />

Representación: EMTH - SUBDP - Matemática <strong>de</strong> doble precisión - Substracción<br />

Símbolo Representación <strong>de</strong> la instrucción.<br />

SUBSTRAE EL ASIENTO<br />

INTERMEDIO DEL<br />

ASIENTO SUPERIOR<br />

operando 1<br />

operando 2/<br />

diferencia<br />

EMTH<br />

SUBDP<br />

ASIENTO SUPERIOR<br />

> ASIENTO<br />

INTERMEDIO<br />

ASIENTO SUPERIOR<br />

= ASIENTO<br />

INTERMEDIO<br />

ASIENTO SUPERIOR<br />

< ASIENTO<br />

INTERMEDIO<br />

31007526 12/2006 447


EMTH-SUBDP: Resta <strong>de</strong> doble precisión<br />

Descripción <strong>de</strong><br />

los parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Operando 1<br />

(asiento<br />

superior)<br />

Operando 2/<br />

diferencia<br />

(asiento<br />

intermedio)<br />

SUBDP<br />

(asiento<br />

inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Salida<br />

inferior<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno Activo = substrae el operando 2 <strong>de</strong>l operando 1 y<br />

traslada la diferencia a los registros<br />

correspondientes.<br />

4x DINT,<br />

UDINT<br />

4x DINT,<br />

UDINT<br />

Operando 1 (primero <strong>de</strong> dos registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx contiguos se<br />

introduce en el asiento superior. El segundo registro<br />

4xxxx está implícito. El operando 1 se almacena<br />

aquí. Cada registro contiene un valor que pue<strong>de</strong> ir <strong>de</strong><br />

0000 a 9.999, para un valor combinado <strong>de</strong> doble<br />

precisión en el rango que va <strong>de</strong> 0 a 99.999.999. La<br />

mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l operando 1 se almacena<br />

en el registro visualizado, mientras que la <strong>de</strong> mayor<br />

or<strong>de</strong>n se almacena en el registro implícito.<br />

Operando 2 y diferencia (primero <strong>de</strong> seis registros<br />

contiguos).<br />

El primero <strong>de</strong> seis registros 4xxxx contiguos se<br />

introduce en el asiento intermedio.<br />

Los cinco registros restantes están implícitos.<br />

El registro visualizado y el primer registro<br />

implícito almacenan, respectivamente, las<br />

mita<strong>de</strong>s <strong>de</strong> mayor y menor or<strong>de</strong>n <strong>de</strong>l operando 2,<br />

para un valor combinado <strong>de</strong> doble precisión en el<br />

rango que va <strong>de</strong> 0 a 99.999.999.<br />

El segundo y tercer registros implícitos<br />

almacenan, respectivamente, las mita<strong>de</strong>s <strong>de</strong><br />

mayor y menor or<strong>de</strong>n <strong>de</strong> la diferencia absoluta en<br />

formato <strong>de</strong> doble precisión.<br />

El valor almacenado en el cuarto registro<br />

implícito indica si los operandos están en rangos<br />

válidos (1 = fuera <strong>de</strong> rango y 0 = <strong>de</strong>ntro <strong>de</strong>l<br />

rango).<br />

El quinto registro implícito no se utiliza en este<br />

cálculo, pero <strong>de</strong>be existir en la memoria <strong>de</strong> señal.<br />

Selección <strong>de</strong> la subfunción SUBDP.<br />

0x Ninguno Activo = operando 1 > operando 2.<br />

0x Ninguno Activo = operando 1 = operando 2.<br />

0x Ninguno Activo = operando 1 < operando 2.<br />

448 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Operando 1<br />

(asiento<br />

superior)<br />

Operando 2 y<br />

producto<br />

(asiento<br />

intermedio)<br />

EMTH-SUBDP: Resta <strong>de</strong> doble precisión<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro 4x está implícito. El operando 1 se almacena aquí.<br />

Registro Contenido<br />

Visualizado El registro guarda la mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l operando 1.<br />

Rango 0000 ... 9.999, para un valor <strong>de</strong> doble precisión combinado<br />

en el rango 0 a 99.999.999.<br />

Primer implícito El registro guarda la mitad <strong>de</strong> or<strong>de</strong>n mayor <strong>de</strong>l operando 1.<br />

Rango 0000 ... 9.999, para un valor <strong>de</strong> doble precisión combinado<br />

en el rango 0 a 99.999.999.<br />

El primero <strong>de</strong> seis registros 4x contiguos se introduce en el asiento intermedio. Los<br />

cinco registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado El registro almacena la mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l operando 2 para<br />

un valor <strong>de</strong> doble precisión combinado en el rango <strong>de</strong> 0 a<br />

99.999.999.<br />

Primer implícito El registro almacena la mitad <strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l operando 2 para<br />

un valor <strong>de</strong> doble precisión combinado en el rango <strong>de</strong> 0 a<br />

99.999.999.<br />

Segundo implícito Este registro almacena la mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong> la diferencia<br />

absoluta en formato <strong>de</strong> doble precisión.<br />

Tercer implícito Este registro almacena la mitad <strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong> la diferencia<br />

absoluta en formato <strong>de</strong> doble precisión.<br />

Cuarto implícito 0 = operandos <strong>de</strong>ntro <strong>de</strong>l rango.<br />

1 = operandos fuera <strong>de</strong> rango.<br />

Quinto implícito Este registro no se utiliza en el cálculo pero <strong>de</strong>be existir en la<br />

memoria <strong>de</strong> señal.<br />

31007526 12/2006 449


EMTH-SUBDP: Resta <strong>de</strong> doble precisión<br />

450 31007526 12/2006


Presentación<br />

EMTH-SUBFI: Resta <strong>de</strong> coma<br />

flotante menos entero<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-SUBFI <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

80<br />

Apartado Página<br />

Descripción breve 452<br />

Representación 453<br />

Descripción <strong>de</strong> los parámetros 455<br />

31007526 12/2006 451


EMTH-SUBFI: Resta <strong>de</strong> coma flotante menos entero<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

452 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

inicia la operación <strong>de</strong> coma<br />

flotante/<br />

entero<br />

EMTH-SUBFI: Resta <strong>de</strong> coma flotante menos entero<br />

coma<br />

flotante<br />

entero y<br />

diferencia<br />

EMTH<br />

SUBFI<br />

operación correcta<br />

31007526 12/2006 453


EMTH-SUBFI: Resta <strong>de</strong> coma flotante menos entero<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Coma flotante<br />

(nodo superior)<br />

Entero y<br />

diferencia<br />

(nodo<br />

intermedio)<br />

SUBFI<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la operación <strong>de</strong> coma flotante<br />

menos entero.<br />

4x REAL Valor <strong>de</strong> coma flotante (el primero <strong>de</strong> dos<br />

registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx<br />

contiguos se introduce en el nodo<br />

superior. El segundo registro está<br />

implícito. El valor <strong>de</strong> coma flotante al que<br />

se va a restar el valor entero se guarda<br />

aquí.<br />

4x DINT, UDINT Valor entero y diferencia (el primero <strong>de</strong><br />

cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos en el nodo intermedio.<br />

Los tres registros restantes están<br />

implícitos. El registro visualizado y el<br />

primer registro implícito guardan el valor<br />

<strong>de</strong> entero <strong>de</strong> doble precisión que se va a<br />

restar <strong>de</strong>l valor <strong>de</strong> coma flotante y la<br />

diferencia se coloca en el segundo y el<br />

tercer registros implícitos. La diferencia se<br />

traslada aquí en formato <strong>de</strong> coma flotante.<br />

Selección <strong>de</strong> la subfunción SUBFI.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

454 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor <strong>de</strong> coma<br />

flotante (asiento<br />

superior)<br />

Seno <strong>de</strong> un valor<br />

(asiento<br />

intermedio)<br />

EMTH-SUBFI: Resta <strong>de</strong> coma flotante menos entero<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor <strong>de</strong> coma flotante al que se va a substraer el valor entero se<br />

guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

Los registros guardan el valor <strong>de</strong> doble precisión que se va a<br />

sustraer al valor <strong>de</strong> coma flotante.<br />

La diferencia se traslada aquí en formato <strong>de</strong> coma flotante.<br />

31007526 12/2006 455


EMTH-SUBFI: Resta <strong>de</strong> coma flotante menos entero<br />

456 31007526 12/2006


Presentación<br />

EMTH-SUBFP:<br />

Resta con coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-SUBFP <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

81<br />

Apartado Página<br />

Descripción breve 458<br />

Representación 459<br />

Descripción <strong>de</strong> los parámetros 461<br />

31007526 12/2006 457


EMTH-SUBFP: Resta con coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

458 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

habilita la resta con<br />

coma flotante<br />

valor 1<br />

valor 2<br />

y<br />

diferencia<br />

EMTH<br />

SUBFP<br />

EMTH-SUBFP: Resta con coma flotante<br />

operación correcta<br />

31007526 12/2006 459


EMTH-SUBFP: Resta con coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor 1<br />

(nodo superior)<br />

Valor 2 y<br />

diferencia<br />

(nodo<br />

intermedio)<br />

SUBFP<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la resta <strong>de</strong>l valor 1 <strong>de</strong> coma<br />

flotante menos el valor 2.<br />

4x REAL Valor 1 <strong>de</strong> coma flotante (el primero <strong>de</strong><br />

dos registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx<br />

contiguos se introduce en el nodo<br />

superior. El segundo registro está<br />

implícito. Valor 1 <strong>de</strong> coma flotante (el valor<br />

al que se va restar el valor 2) se guarda<br />

aquí.<br />

4x REAL Valor 2 <strong>de</strong> coma flotante y diferencia (el<br />

primero <strong>de</strong> cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos en el nodo intermedio.<br />

Los tres registros restantes están<br />

implícitos. El valor 2 <strong>de</strong> coma flotante (el<br />

valor que se va a restar <strong>de</strong>l valor 1) se<br />

guarda en el registro visualizado y en el<br />

primer registro implícito. La diferencia <strong>de</strong><br />

la resta se guarda en formato <strong>de</strong> coma<br />

flotante en el segundo y tercer registros<br />

implícitos.<br />

Selección <strong>de</strong> la subfunción SUBFP.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

460 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor 1 <strong>de</strong> coma<br />

flotante (asiento<br />

superior)<br />

Valor 2 <strong>de</strong> coma<br />

flotante (asiento<br />

superior)<br />

EMTH-SUBFP: Resta con coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Valor 1 <strong>de</strong> coma flotante (el valor al que se va substraer el valor 2)<br />

se guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

Valor 2 <strong>de</strong> coma flotante (el valor que se ha <strong>de</strong> substraer al valor 1)<br />

se guarda en estos registros.<br />

La diferencia <strong>de</strong> la substracción se guarda aquí en formato <strong>de</strong> coma<br />

flotante.<br />

31007526 12/2006 461


EMTH-SUBFP: Resta con coma flotante<br />

462 31007526 12/2006


Presentación<br />

EMTH-SUBIF: Resta <strong>de</strong> entero<br />

menos coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-SUBIF <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

82<br />

Apartado Página<br />

Descripción breve 464<br />

Representación 465<br />

Descripción <strong>de</strong> los parámetros 467<br />

31007526 12/2006 463


EMTH-SUBIF: Resta <strong>de</strong> entero menos coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

464 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

inicia la operación <strong>de</strong><br />

entero menos<br />

coma flotante<br />

entero<br />

EMTH-SUBIF: Resta <strong>de</strong> entero menos coma flotante<br />

coma<br />

flotante y<br />

diferencia<br />

EMTH<br />

SUBIF<br />

operación correcta<br />

31007526 12/2006 465


EMTH-SUBIF: Resta <strong>de</strong> entero menos coma flotante<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entero<br />

(nodo superior)<br />

Coma flotante y<br />

diferencia<br />

(nodo<br />

intermedio)<br />

SUBIF<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la operación <strong>de</strong> entero menos<br />

coma flotante.<br />

4x DINT, UDINT Valor entero (el primero <strong>de</strong> dos registros<br />

contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx<br />

contiguos se introduce en el nodo<br />

superior. El segundo registro está<br />

implícito. El valor entero <strong>de</strong> doble<br />

precisión al que se va a restar el valor <strong>de</strong><br />

coma flotante se guarda aquí.<br />

4x REAL Valor <strong>de</strong> coma flotante y diferencia (el<br />

primero <strong>de</strong> cuatro registros contiguos).<br />

Se introduce el primero <strong>de</strong> cuatro registros<br />

4xxxx contiguos en el nodo intermedio.<br />

Los tres registros restantes están<br />

implícitos. El registro visualizado y el<br />

primer registro implícito guardan el valor<br />

<strong>de</strong> coma flotante que se va a restar <strong>de</strong>l<br />

valor entero y la diferencia se coloca en el<br />

segundo y el tercer registros implícitos. La<br />

diferencia se traslada aquí en formato <strong>de</strong><br />

coma flotante.<br />

Selección <strong>de</strong> la subfunción SUBIF.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

466 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor entero<br />

(asiento<br />

superior)<br />

Valor <strong>de</strong> coma<br />

flotante y<br />

diferencia<br />

(asiento<br />

intermedio)<br />

EMTH-SUBIF: Resta <strong>de</strong> entero menos coma flotante<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

El valor entero <strong>de</strong> doble precisión al que se va a substraer el valor<br />

<strong>de</strong> coma flotante se guarda aquí.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

Los registros guardan el valor <strong>de</strong> coma flotante que se va a sustraer<br />

al valor entero.<br />

La diferencia se traslada aquí en formato <strong>de</strong> coma flotante.<br />

31007526 12/2006 467


EMTH-SUBIF: Resta <strong>de</strong> entero menos coma flotante<br />

468 31007526 12/2006


Presentación<br />

EMTH-TAN: Tangente con coma<br />

flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción EMTH-TAN <strong>de</strong> EMTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

83<br />

Apartado Página<br />

Descripción breve 470<br />

Representación 471<br />

Descripción <strong>de</strong> los parámetros 473<br />

31007526 12/2006 469


EMTH-TAN: Tangente con coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

Esta instrucción es una subfunción <strong>de</strong> la instrucción EMTH. Pertenece a la<br />

categoría "Matemática <strong>de</strong> coma flotante."<br />

470 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

calcula la tangente <strong>de</strong>l<br />

valor <strong>de</strong> coma flotante<br />

EMTH-TAN: Tangente con coma flotante <strong>de</strong> un ángulo (en<br />

31007526 12/2006 471<br />

valor<br />

tangente <strong>de</strong>l<br />

valor<br />

EMTH<br />

TAN<br />

operación correcta


EMTH-TAN: Tangente con coma flotante <strong>de</strong> un ángulo (en radianes)<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor<br />

(nodo superior)<br />

Tangente <strong>de</strong>l<br />

valor<br />

(nodo<br />

intermedio)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = calcula la tangente <strong>de</strong>l valor.<br />

4x REAL Valor <strong>de</strong> coma flotante que indica el valor<br />

<strong>de</strong> un ángulo en radianes (el primero <strong>de</strong><br />

dos registros contiguos).<br />

El primero <strong>de</strong> dos registros 4xxxx<br />

contiguos se introduce en el nodo<br />

superior. El segundo registro está<br />

implícito. Aquí se guarda un valor en<br />

formato <strong>de</strong> coma flotante que indica el<br />

valor <strong>de</strong>l ángulo en radianes.<br />

La magnitud <strong>de</strong> este valor <strong>de</strong>be ser <<br />

65.536,0; <strong>de</strong> lo contrario:<br />

La tangente no se calcula.<br />

Se <strong>de</strong>vuelve un resultado no válido.<br />

Se marca un error en la función EMTH-<br />

ERLOG.<br />

4x REAL Tangente <strong>de</strong>l valor <strong>de</strong>l nodo superior (el<br />

primero <strong>de</strong> cuatro registros contiguos).<br />

TAN<br />

(nodo inferior)<br />

Selección <strong>de</strong> la subfunción TAN.<br />

Salida superior 0x Ninguno ON = operación correcta*.<br />

*Se marca un error en la función EMTH-<br />

ERLOG.<br />

472 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Valor (asiento<br />

superior)<br />

Tangente <strong>de</strong> un<br />

valor (asiento<br />

intermedio)<br />

EMTH-TAN: Tangente con coma flotante <strong>de</strong> un ángulo (en<br />

Se introduce en el asiento superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Aquí se guarda un valor <strong>de</strong> coma flotante que indica el valor <strong>de</strong>l<br />

ángulo en radianes. La magnitud <strong>de</strong> este valor <strong>de</strong>be ser < 65.536,0.<br />

Si la magnitud es ≥ 65.536,0:<br />

La tangente no se ha calculado.<br />

Se ha <strong>de</strong>vuelto un resultado no válido.<br />

Se marca un error en la función EMTH-ERLOG.<br />

Se introduce en el asiento intermedio el primero <strong>de</strong> cuatro registros 4x contiguos.<br />

Los tres registros restantes están implícitos.<br />

Registro Contenido<br />

Visualizado<br />

Primer implícito<br />

Segundo implícito<br />

Tercer implícito<br />

No se utilizan los registros, pero es necesaria su ubicación en la<br />

memoria <strong>de</strong> señal.<br />

La tangente <strong>de</strong>l valor <strong>de</strong>l asiento superior se traslada aquí en<br />

formato <strong>de</strong> coma flotante.<br />

Nota: Para preservar los registros pue<strong>de</strong> igualar los números <strong>de</strong> referencia 4x<br />

asignados al registro visualizado y el primer registro implícito <strong>de</strong>l asiento<br />

intermedio a las referencias <strong>de</strong> registro en el asiento superior, ya que los dos<br />

primeros registros <strong>de</strong>l asiento intermedio no se utilizan.<br />

31007526 12/2006 473


EMTH-TAN: Tangente con coma flotante <strong>de</strong> un ángulo (en radianes)<br />

474 31007526 12/2006


Presentación<br />

ESI: Soporte <strong>de</strong>l módulo ESI<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción ESI.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

84<br />

Apartado Página<br />

Descripción breve 476<br />

Representación 477<br />

Descripción <strong>de</strong> los parámetros 478<br />

READ ASCII Message (subfunción 1) 481<br />

WRITE ASCII Message (subfunción 2) 485<br />

GET DATA (subfunción 3) 486<br />

PUT DATA (Subfunción 4) 488<br />

ABORT (entrada intermedia activada) 492<br />

Errores <strong>de</strong> ejecución 493<br />

31007526 12/2006 475


ESI: Soporte <strong>de</strong>l módulo ESI<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

Nota: Esta instrucción sólo está disponible si ha <strong>de</strong>sempaquetado e instalado los<br />

cargables DX. Encontrará más información en p. 49.<br />

Las instrucciones para el módulo 140 ESI 062 10 son instrucciones cargables<br />

opcionales que se pue<strong>de</strong>n utilizar en un sistema <strong>de</strong> controladores Quantum para<br />

soportar operaciones que empleen un módulo ESI. El controlador pue<strong>de</strong> utilizar la<br />

instrucción ESI para llamar al módulo. La potencia <strong>de</strong> las instrucciones cargables<br />

resi<strong>de</strong> en su capacidad <strong>de</strong> producir una secuencia <strong>de</strong> comandos a lo largo <strong>de</strong> uno<br />

o varios ciclos lógicos.<br />

Mediante la instrucción ESI, el controlador pue<strong>de</strong> llamar al módulo ESI para<br />

Leer un mensaje ASCII <strong>de</strong>s<strong>de</strong> un puerto serie en el módulo ESI y, a continuación,<br />

realizar una secuencia <strong>de</strong> transferencias GET DATA <strong>de</strong>l módulo al controlador.<br />

Escribir un mensaje ASCII en un puerto serie <strong>de</strong>l módulo ESI tras haber realizado<br />

una secuencia <strong>de</strong> transferencias PUT DATA a los registros <strong>de</strong> datos variables en<br />

el módulo.<br />

Realizar una secuencia <strong>de</strong> transferencias GET DATA (hasta 16.384 registros <strong>de</strong><br />

datos <strong>de</strong>s<strong>de</strong> el módulo ESI al controlador). Una transferencia GET DATA pue<strong>de</strong><br />

transmitir hasta diez registros <strong>de</strong> datos cada vez que se resuelve la instrucción.<br />

Realizar una secuencia PUT DATA (hasta 16.384 registros <strong>de</strong> datos al módulo<br />

ESI <strong>de</strong>s<strong>de</strong> el controlador). Una transferencia PUT DATA transmite hasta 10<br />

registros <strong>de</strong> datos cada vez que se resuelve la instrucción.<br />

Cancelar la ejecución <strong>de</strong> la secuencia <strong>de</strong> comandos <strong>de</strong> la instrucción cargable<br />

ESI.<br />

Nota: Después <strong>de</strong> ubicar la instrucción ESI en el diagrama <strong>de</strong> contactos, <strong>de</strong>berá<br />

introducir los parámetros superior, intermedio e inferior. Comience haciendo doble<br />

clic en la instrucción. De este modo, aparecerá un formulario para introducir los<br />

tres parámetros. Es necesario indicar estos parámetros para habilitar la función <strong>de</strong><br />

zoom DX <strong>de</strong>l menú <strong>de</strong>splegable Editar.<br />

476 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción.<br />

Descripción <strong>de</strong><br />

los parámetros<br />

subfunction #<br />

(1 ... 4)<br />

subfunction<br />

parameters<br />

ESI<br />

length<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Subfunción<br />

(asiento<br />

superior)<br />

Parámetros <strong>de</strong><br />

subfunción<br />

(asiento<br />

intermedio)<br />

Longitud<br />

(asiento<br />

inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

ESI: Soporte <strong>de</strong>l módulo ESI<br />

0x, 1x Ninguno Activo = habilita la subfunción.<br />

0x, 1x Ninguno Interrumpe el mensaje actual.<br />

4x INT, UINT,<br />

WORD<br />

4x INT, UINT,<br />

WORD<br />

Número <strong>de</strong> la posible subfunción, rango<br />

<strong>de</strong> 1 a 4.<br />

El primero <strong>de</strong> 18 registros <strong>de</strong> salida 4x<br />

contiguos que contienen los parámetros<br />

<strong>de</strong> subfunción.<br />

INT, UINT Número <strong>de</strong> registros <strong>de</strong> parámetros <strong>de</strong><br />

subfunción; es <strong>de</strong>cir, la longitud <strong>de</strong> la tabla<br />

en el asiento intermedio.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno Activo = operación finalizada.<br />

Salida inferior 0x Ninguno Activo = error <strong>de</strong>tectado.<br />

31007526 12/2006 477


ESI: Soporte <strong>de</strong>l módulo ESI<br />

Descripción <strong>de</strong> los parámetros<br />

Entrada superior Cuando la entrada al asiento superior esté activa, habilitará la instrucción ESI y<br />

comenzará a ejecutar el comando que indique el código <strong>de</strong> subfunción en el asiento<br />

superior.<br />

Entrada<br />

intermedia<br />

N° <strong>de</strong> subfunción<br />

(asiento<br />

superior)<br />

Parámetros <strong>de</strong><br />

subfunción<br />

(asiento<br />

intermedio)<br />

Cuando la entrada al asiento intermedio esté activada, se enviará un comando<br />

ABORT. Si se está ejecutando un mensaje en el momento <strong>de</strong> recibir el comando<br />

ABORT, la instrucción se completará. Si se está realizando una transferencia <strong>de</strong><br />

datos en el momento <strong>de</strong> recibir el comando ABORT, la transferencia se <strong>de</strong>tendrá y<br />

la instrucción se completará.<br />

El asiento superior pue<strong>de</strong> contener un registro 4x o un entero. El entero o el valor<br />

en el registro <strong>de</strong>be estar comprendido en el rango <strong>de</strong> 1 a 4.<br />

Representa una <strong>de</strong> las cuatro posibles secuencias <strong>de</strong> comandos <strong>de</strong> subfunción que<br />

<strong>de</strong>be ejecutar la instrucción.<br />

Subfunción Secuencia <strong>de</strong> comandos<br />

1 Un comando (p. 481) seguido <strong>de</strong> varios comandos GET DATA.<br />

2 Varios comandos PUT DATA seguidos <strong>de</strong> un comando (p. 485)<br />

3 Cero o más comandos (p. 486)<br />

4 Cero o más comandos (p. 488)<br />

Nota: Se pue<strong>de</strong> iniciar un quinto comando, (ABORT ASCII Message<br />

(véase p. 492)), si se habilita la entrada intermedia a la instrucción ESI.<br />

El primero <strong>de</strong> 18 registros 4x contiguos se encuentra en el asiento intermedio. Los<br />

17 registros restantes están implícitos.<br />

Los siguientes parámetros <strong>de</strong> subfunción se encuentran disponibles.<br />

Registro Parámetro Contenido<br />

Visualizado Registro <strong>de</strong> estado ESI. Códigos <strong>de</strong> error <strong>de</strong>vueltos.<br />

Primer Dirección <strong>de</strong>l primer registro 4x Dirección <strong>de</strong> registro menos el 4 <strong>de</strong>l<br />

implícito en la estructura <strong>de</strong> comando. encabezado y los ceros no significativos,<br />

como se especifica en la asignación <strong>de</strong> E/S<br />

(por ejemplo, 1 representa el registro<br />

400001).<br />

478 31007526 12/2006


Registro Parámetro Contenido<br />

Segundo<br />

implícito<br />

Tercer<br />

implícito<br />

Cuarto<br />

implícito<br />

Quinto<br />

implícito<br />

Dirección <strong>de</strong>l primer registro 3x<br />

en la estructura <strong>de</strong> comando.<br />

Dirección <strong>de</strong>l primer registro 4x<br />

en el campo <strong>de</strong> registro <strong>de</strong><br />

datos <strong>de</strong>l controlador.<br />

Dirección <strong>de</strong>l primer registro 3x<br />

en el campo <strong>de</strong> registro <strong>de</strong><br />

datos <strong>de</strong>l controlador.<br />

Registro <strong>de</strong> inicio para el<br />

campo <strong>de</strong> registro <strong>de</strong> datos <strong>de</strong>l<br />

módulo.<br />

Sexto implícito Contador <strong>de</strong> transmisión <strong>de</strong><br />

datos.<br />

Séptimo<br />

implícito<br />

Octavo<br />

implícito<br />

Noveno<br />

implícito<br />

Valor <strong>de</strong> timeout ESI, en<br />

incrementos <strong>de</strong> 100 ms.<br />

ESI: Soporte <strong>de</strong>l módulo ESI<br />

Dirección <strong>de</strong> registro menos el 3 <strong>de</strong>l<br />

encabezado y los ceros no significativos,<br />

como se especifica en la asignación <strong>de</strong> E/S<br />

(por ejemplo, 7 representa el registro<br />

300007).<br />

Dirección <strong>de</strong> registro menos el 4 <strong>de</strong>l<br />

encabezado y los ceros no significativos (por<br />

ejemplo, 100 representa el registro 400100).<br />

Dirección <strong>de</strong> registro menos el 3 <strong>de</strong>l<br />

encabezado y los ceros no significativos (por<br />

ejemplo, 1000 representa el registro<br />

301000).<br />

Número comprendido en el rango 0 ... 3FFF<br />

hexa<strong>de</strong>cimal.<br />

Número comprendido en el rango 0 ... 4000<br />

hexa<strong>de</strong>cimal.<br />

Número comprendido en el rango 0 ... FFFF<br />

hexa<strong>de</strong>cimal, don<strong>de</strong> 0 significa sin timeout.<br />

Número <strong>de</strong> mensaje ASCII. Número comprendido en el rango 1 ... 255<br />

<strong>de</strong>cimal.<br />

Número <strong>de</strong> puerto ASCII. 1 ó 2.<br />

Nota: La instrucción cargable ESI utiliza los siguientes registros <strong>de</strong> forma interna. No escriba<br />

registros mientras se esté ejecutando la instrucción cargable ESI. Para una mejor utilización,<br />

inicie estos registros a 0 (cero) cuando la instrucción cargable esté insertada en la lógica.<br />

Décimo Potencia <strong>de</strong> ciclo anterior <strong>de</strong> la instrucción cargable ESI en curso.<br />

implícito<br />

Undécimo<br />

implícito<br />

Duodécimo<br />

implícito<br />

Decimotercer<br />

implícito<br />

Decimocuarto<br />

implícito<br />

Decimoquinto<br />

implícito<br />

Decimosexto<br />

implícito<br />

Decimoséptim<br />

o implícito<br />

Datos restantes para transferir.<br />

Comando actual <strong>de</strong> módulo ASCII en ejecución.<br />

Número <strong>de</strong> secuencia <strong>de</strong> la instrucción cargable ESI.<br />

Flags <strong>de</strong> instrucciones cargables ESI.<br />

Valor <strong>de</strong> timeout <strong>de</strong> la instrucción cargable ESI (MSW).<br />

Valor <strong>de</strong> timeout <strong>de</strong> la instrucción cargable ESI (LSW).<br />

Suma <strong>de</strong> control <strong>de</strong> la tabla <strong>de</strong> parámetros generada por la instrucción<br />

cargable ESI.<br />

31007526 12/2006 479


ESI: Soporte <strong>de</strong>l módulo ESI<br />

Longitud<br />

(asiento inferior)<br />

Salidas<br />

Salida<br />

intermedia<br />

Nota: Una vez que se ha transmitido corriente a la entrada superior, la instrucción<br />

cargable ESI comienza a ejecutarse. Hasta que la instrucción cargable ESI no<br />

finalice la compilación (satisfactoriamente o con error), no se <strong>de</strong>ben modificar los<br />

parámetros <strong>de</strong> subfunción. Si la instrucción cargable ESI <strong>de</strong>tecta un cambio,<br />

generará un error (tabla <strong>de</strong> parámetros).<br />

El asiento inferior contiene la longitud <strong>de</strong> la tabla en el asiento intermedio; es <strong>de</strong>cir,<br />

el número <strong>de</strong> registros <strong>de</strong> parámetros <strong>de</strong> subfunción. Para las operaciones READ/<br />

WRITE, la longitud <strong>de</strong>be ser <strong>de</strong> diez registros. Para las operaciones PUT/GET, la<br />

longitud requerida es <strong>de</strong> ocho registros; se podrían especificar diez y no utilizar los<br />

dos últimos.<br />

Nota: Se <strong>de</strong>be cargar NSUP antes que ESI para que la instrucción cargable<br />

funcione correctamente. Si ESI se carga antes que NSUP o se carga sola, las tres<br />

salidas se activarán.<br />

La salida intermedia se activa para un ciclo cuando la operación <strong>de</strong> subfunción<br />

especificada en el asiento superior se completa, agota el tiempo o se interrumpe.<br />

Salida inferior La salida inferior se activa para un ciclo si se ha <strong>de</strong>tectado un error. Cuando se<br />

habilita la instrucción, la primera función que se realiza es la comprobación <strong>de</strong><br />

errores y se completa antes <strong>de</strong> que se ejecute la subfunción. Para obtener más<br />

<strong>de</strong>talles, consulte p. 493.<br />

480 31007526 12/2006


READ ASCII Message (subfunción 1)<br />

READ ASCII<br />

Message<br />

Estructura <strong>de</strong>l<br />

comando<br />

Estructura <strong>de</strong><br />

respuesta<br />

ESI: Soporte <strong>de</strong>l módulo ESI<br />

Un comando READ ASCII hace que el módulo ESI lea datos entrantes <strong>de</strong>s<strong>de</strong> uno<br />

<strong>de</strong> sus puertos serie y almacene esos datos en registros internos <strong>de</strong> datos<br />

variables. El número <strong>de</strong> puerto serie se especifica en el décimo registro (noveno<br />

implícito) <strong>de</strong> la tabla <strong>de</strong> parámetros <strong>de</strong> subfunción. El número <strong>de</strong> mensaje ASCII<br />

que se ha <strong>de</strong> leer se especifica en el noveno registro (octavo implícito) <strong>de</strong> la tabla<br />

<strong>de</strong> parámetros <strong>de</strong> subfunción. Los datos recibidos se almacenan en el espacio para<br />

16 K datos variables con formatos <strong>de</strong> programa <strong>de</strong> aplicaciones.<br />

Cuando el asiento superior <strong>de</strong> la instrucción ESI es 1, el controlador llama al módulo<br />

para que éste ejecute un comando READ ASCII seguido <strong>de</strong> una secuencia <strong>de</strong><br />

comandos GET DATA (transfiriendo hasta 16.384 registros <strong>de</strong> datos) <strong>de</strong>l módulo al<br />

controlador.<br />

Estructura <strong>de</strong>l comando<br />

Palabra Contenido<br />

(hexa<strong>de</strong>cimal)<br />

Estructura <strong>de</strong>l comando<br />

Significado<br />

0 01PD P = número <strong>de</strong> puerto (1 ó 2); D = cantidad <strong>de</strong> datos.<br />

1 xxxx Número <strong>de</strong> registro <strong>de</strong> inicio, en el rango <strong>de</strong> 0 a 3FFF.<br />

2 00xx Número <strong>de</strong> mensaje, don<strong>de</strong> xx se encuentra <strong>de</strong>ntro <strong>de</strong>l<br />

rango 1 ... FF (1 ... 255 <strong>de</strong>cimal).<br />

3 ... 11 No utilizadas.<br />

Palabra Contenido<br />

(hexa<strong>de</strong>cimal)<br />

Significado<br />

0 01PD Refleja la palabra <strong>de</strong> comando 0.<br />

1 xxxx Refleja el número <strong>de</strong> registro <strong>de</strong> inicio <strong>de</strong>s<strong>de</strong> la palabra <strong>de</strong><br />

comando 1.<br />

2 00xx Refleja el número <strong>de</strong> mensaje <strong>de</strong>s<strong>de</strong> la palabra <strong>de</strong> comando<br />

2.<br />

3 xxxx Palabra <strong>de</strong> datos 1<br />

4 xxxx Palabra <strong>de</strong> datos 2<br />

... ... ...<br />

11 xxxx Estado <strong>de</strong>l módulo o palabra <strong>de</strong> datos 9.<br />

31007526 12/2006 481


ESI: Soporte <strong>de</strong>l módulo ESI<br />

Ejemplo<br />

comparativo<br />

READ ASCII<br />

Message/PUT<br />

DATA.<br />

A continuación se muestra un ejemplo <strong>de</strong> cómo una instrucción cargable ESI pue<strong>de</strong><br />

simplificar la programación lógica en una aplicación <strong>de</strong> lectura ASCII. Se presupone<br />

que el módulo bidireccional <strong>de</strong> 12 puntos ESI tiene una asignación <strong>de</strong> E/S con<br />

registros <strong>de</strong> salida <strong>de</strong> 400001 a 400012 y registros <strong>de</strong> entrada <strong>de</strong> 300001 a 300012.<br />

Queremos leer el mensaje ASCII nº10 <strong>de</strong>l puerto 1 y, a continuación, transferir<br />

cuatro palabras <strong>de</strong> datos a los registros 400501 a 400504 en el controlador.<br />

Parametrización <strong>de</strong> la instrucción ESI.<br />

#0001<br />

401000<br />

ESI<br />

#0018<br />

La tabla <strong>de</strong> parámetros <strong>de</strong> la subfunción comienza en el registro 401000. Introduzca<br />

los siguientes parámetros en la tabla.<br />

Registro Valor <strong>de</strong>l parámetro Descripción<br />

401000 nnnn Registro <strong>de</strong> estado ESI.<br />

401001 1 Registro <strong>de</strong> inicio <strong>de</strong> salida con asignación <strong>de</strong> E/S<br />

(400001).<br />

401002 1 Registro <strong>de</strong> inicio <strong>de</strong> entrada con asignación <strong>de</strong> E/S<br />

(300001).<br />

401003 501 Registro <strong>de</strong> inicio para la transmisión <strong>de</strong> datos<br />

(400501).<br />

401004 0 No existe un registro <strong>de</strong> inicio 3x para la transmisión<br />

<strong>de</strong> datos.<br />

401005 100 Registro <strong>de</strong> inicio <strong>de</strong>l módulo.<br />

401006 4 Número <strong>de</strong> registros que se han <strong>de</strong> transmitir.<br />

401007 600 Timeout = 60 s<br />

401008 10 Número <strong>de</strong> mensaje ASCII.<br />

401009 1 Número <strong>de</strong> puerto ASCII.<br />

401010-17 N/A Variables <strong>de</strong> instrucciones cargables internas.<br />

Una vez se hayan introducido estos parámetros en la tabla, la instrucción ESI<br />

realizará la lectura y las transmisiones <strong>de</strong> datos automáticamente en un ciclo.<br />

482 31007526 12/2006


Lectura y<br />

transmisiones <strong>de</strong><br />

datos sin la<br />

instrucción ESI<br />

ESI: Soporte <strong>de</strong>l módulo ESI<br />

Esta misma tarea se pue<strong>de</strong> llevar a cabo en Lad<strong>de</strong>r <strong>Logic</strong> sin la instrucción cargable<br />

ESI, pero será necesario que las siguientes tres re<strong>de</strong>s configuren los parámetros <strong>de</strong><br />

comando y transmisión y, a continuación, copien los datos. Los registros 400101 a<br />

400112 se utilizan como área <strong>de</strong> trabajo para los valores <strong>de</strong> salida. Los registros<br />

400201 a 400212 son los valores iniciales <strong>de</strong>l comando READ ASCII Message. Los<br />

registros 400501 a 400504 son el espacio <strong>de</strong> datos para los datos recibidos <strong>de</strong>s<strong>de</strong><br />

el módulo.<br />

Primera red<br />

000011 000011<br />

000011<br />

400201<br />

400101<br />

BLKM<br />

#0012<br />

400101<br />

400001<br />

BLKM<br />

#0012<br />

Contenido <strong>de</strong> los registros<br />

Registro Valor<br />

(hexa<strong>de</strong>cimal)<br />

Descripción<br />

400201 0114 Comando READ ASCII Message, puerto 1, cuatro registros.<br />

400202 0064 Registro <strong>de</strong> inicio <strong>de</strong>l módulo.<br />

400203 nnnn No válido: palabra <strong>de</strong> datos 1.<br />

... ... ...<br />

400212 nnnn No válido: palabra <strong>de</strong> datos 10.<br />

La primera red inicia el comando READ ASCII Message activando la bobina 000011<br />

<strong>de</strong> forma permanente. Traslada el comando READ ASCII Message al área <strong>de</strong><br />

trabajo y, a continuación, traslada el área <strong>de</strong> trabajo a los registros <strong>de</strong> salida para<br />

el módulo.<br />

Segunda red<br />

000011<br />

300001<br />

400098<br />

BLKM<br />

#0001<br />

300001<br />

400099<br />

BLKM<br />

#0001<br />

400088<br />

400098<br />

400098<br />

400101<br />

300002<br />

AND TEST 400102 400099<br />

#0001 #0001<br />

TEST #<strong>32</strong>768<br />

400089<br />

#0001<br />

TEST<br />

400099<br />

#0001<br />

AND<br />

#0001<br />

000020<br />

000012<br />

31007526 12/2006 483


ESI: Soporte <strong>de</strong>l módulo ESI<br />

Contenido <strong>de</strong> los registros<br />

Registro Valor (hexa<strong>de</strong>cimal) Descripción<br />

400098 nnnn Área <strong>de</strong> trabajo para palabras <strong>de</strong> respuesta.<br />

400099 nnnn Área <strong>de</strong> trabajo para palabras <strong>de</strong> respuesta.<br />

400088 7FFF Máscara <strong>de</strong> palabras <strong>de</strong> respuesta.<br />

400089 8000 Máscara <strong>de</strong>l bit válido <strong>de</strong> palabra <strong>de</strong> estado.<br />

Siempre y cuando la bobina 000011 esté activada, se comprobará que la palabra<br />

<strong>de</strong> respuesta 0 <strong>de</strong> READ ASCII Message en el registro <strong>de</strong> entrada es la misma que<br />

la palabra <strong>de</strong> comando 0 en el área <strong>de</strong> trabajo. Esta operación se realiza añadiendo,<br />

mediante la lógica AND, la palabra <strong>de</strong> respuesta 0 en el registro <strong>de</strong> entrada con<br />

7FFF hexa<strong>de</strong>cimal para <strong>de</strong>shacerse <strong>de</strong>l bit válido <strong>de</strong> palabra <strong>de</strong> estado (bit 15) en<br />

la palabra <strong>de</strong> respuesta 0.<br />

También se comprobará que el registro <strong>de</strong> inicio <strong>de</strong>l módulo en el registro <strong>de</strong><br />

entrada es el mismo que el registro <strong>de</strong> inicio <strong>de</strong>l módulo en el área <strong>de</strong> trabajo.<br />

Si ambas comprobaciones son correctas, compruebe el bit válido <strong>de</strong> palabra <strong>de</strong><br />

estado en la palabra <strong>de</strong> respuesta 0. Para realizar esta operación, introduzca,<br />

mediante la lógica AND, la palabra <strong>de</strong> respuesta 0 en el registro <strong>de</strong> entrada con<br />

8000 hexa<strong>de</strong>cimal para <strong>de</strong>shacerse <strong>de</strong> la información <strong>de</strong> la palabra <strong>de</strong> comando 0.<br />

Si el resultado tras aplicar la lógica AND es igual que el bit válido <strong>de</strong> palabra <strong>de</strong><br />

estado, la bobina 000020 se activa indicando un error o el estado <strong>de</strong> la palabra <strong>de</strong><br />

estado <strong>de</strong>l módulo. Si el resultado tras aplicar la lógica AND no es el bit válido <strong>de</strong><br />

palabra <strong>de</strong> estado, la bobina 000012 se activa indicando que el mensaje ha<br />

finalizado y es posible iniciar otro comando en el módulo.<br />

Tercera red<br />

000020<br />

300012<br />

#0001<br />

TEST<br />

#0001<br />

000099<br />

Si la bobina 000020 está activada, esta tercera red comprobará la palabra <strong>de</strong><br />

estado <strong>de</strong>l módulo para el estado ocupado. Si el módulo está ocupado, no realice<br />

ninguna operación. Si la palabra <strong>de</strong> estado <strong>de</strong>l módulo es mayor que 1 (ocupado),<br />

se habrá registrado en el byte <strong>de</strong> mayor valor un error <strong>de</strong>tectado y la bobina 000099<br />

se activará. Llegados a este punto, es necesario <strong>de</strong>terminar si el error está<br />

utilizando alguna lógica <strong>de</strong> utilización <strong>de</strong> errores que haya <strong>de</strong>sarrollado el usuario.<br />

484 31007526 12/2006


WRITE ASCII Message (subfunción 2)<br />

WRITE ASCII<br />

Message<br />

Estructura <strong>de</strong><br />

comando<br />

Estructura <strong>de</strong><br />

respuesta<br />

ESI: Soporte <strong>de</strong>l módulo ESI<br />

En un comando WRITE ASCII Message, el módulo ESI escribe un mensaje ASCII<br />

en uno <strong>de</strong> sus puertos serie. El número <strong>de</strong> puerto serie se especifica en el décimo<br />

registro (noveno implícito) <strong>de</strong> la tabla <strong>de</strong> parámetros <strong>de</strong> subfunción. El número <strong>de</strong><br />

mensaje ASCII que se ha <strong>de</strong> escribir se especifica en el noveno registro (octavo<br />

implícito) <strong>de</strong> la tabla <strong>de</strong> parámetros <strong>de</strong> subfunción.<br />

Cuando el asiento superior <strong>de</strong> la instrucción ESI es 2, el controlador llama al módulo<br />

para que éste ejecute un comando Write ASCII. Antes <strong>de</strong> iniciar el comando<br />

WRITE, la subfunción 2 ejecuta una secuencia <strong>de</strong> transferencias PUT DATA<br />

(transfiriendo hasta 16.384 registros <strong>de</strong> datos) <strong>de</strong>s<strong>de</strong> el controlador al módulo.<br />

Estructura <strong>de</strong> comando<br />

Palabra Contenido<br />

(hexa<strong>de</strong>cimal)<br />

Estructura <strong>de</strong> respuesta<br />

Significado<br />

0 02PD P = número <strong>de</strong> puerto (1 ó 2); D = cantidad <strong>de</strong> datos.<br />

1 xxxx Número <strong>de</strong> registro <strong>de</strong> inicio, en el rango <strong>de</strong> 0 a 3FFF.<br />

2 00xx Número <strong>de</strong> mensaje, don<strong>de</strong> xx se encuentra <strong>de</strong>ntro <strong>de</strong>l rango 1<br />

... FF (1 ... 255 <strong>de</strong>cimal).<br />

3 xxxx Palabra <strong>de</strong> datos 1.<br />

4 xxxx Palabra <strong>de</strong> datos 2.<br />

... ... ...<br />

11 xxxx Palabra <strong>de</strong> datos 9.<br />

Palabra Contenido<br />

(hexa<strong>de</strong>cimal)<br />

Significado<br />

0 02PD Refleja la palabra <strong>de</strong> comando 0.<br />

1 xxxx Refleja el número <strong>de</strong> registro <strong>de</strong> inicio <strong>de</strong>s<strong>de</strong> la palabra <strong>de</strong><br />

comando 1.<br />

2 00xx Refleja el número <strong>de</strong> mensaje <strong>de</strong>s<strong>de</strong> la palabra <strong>de</strong> comando 2.<br />

3 0000 Muestra un cero.<br />

... ... ...<br />

10 0000 Muestra un cero.<br />

11 xxxx Estado <strong>de</strong>l módulo.<br />

31007526 12/2006 485


ESI: Soporte <strong>de</strong>l módulo ESI<br />

GET DATA (subfunción 3)<br />

GET DATA Un comando GET DATA transfiere hasta un máximo <strong>de</strong> 10 registros <strong>de</strong> datos <strong>de</strong>s<strong>de</strong><br />

el módulo ESI al controlador cada vez que se ejecuta la instrucción ESI en Lad<strong>de</strong>r<br />

<strong>Logic</strong>. El número total <strong>de</strong> palabras que se han <strong>de</strong> leer se especifica en la palabra 0<br />

<strong>de</strong> la estructura <strong>de</strong>l comando GET DATA (contador <strong>de</strong> datos). Los datos vuelven en<br />

incrementos <strong>de</strong> 10 en las palabras 2 a 11 <strong>de</strong> la estructura <strong>de</strong> respuesta <strong>de</strong> GET<br />

DATA.<br />

Si se está ejecutando una secuencia <strong>de</strong> comandos GET DATA junto con un<br />

comando READ ASCII Message (mediante la subfunción 1), se transferirán hasta<br />

nueve registros cuando la instrucción se ejecute la primera vez. Los datos<br />

adicionales se <strong>de</strong>vuelven en grupos <strong>de</strong> diez registros en las siguientes ejecuciones<br />

<strong>de</strong> la instrucción hasta que se transfieran todos los datos.<br />

Cuando sea necesario notificar alguna condición <strong>de</strong> error (distinta a un error <strong>de</strong><br />

sintaxis <strong>de</strong>l comando), se hará en la palabra 11 <strong>de</strong> la estructura <strong>de</strong> respuesta <strong>de</strong><br />

GET DATA. Si el comando ha solicitado diez registros y el error ha <strong>de</strong> ser notificado,<br />

sólo se <strong>de</strong>volverán nueve registros <strong>de</strong> datos en las palabras 2 a 10, mientras que<br />

la palabra 11 se utilizará para estado <strong>de</strong> error.<br />

Estructura <strong>de</strong><br />

comando<br />

Nota: Si la cantidad <strong>de</strong> datos y el número <strong>de</strong> registro <strong>de</strong> inicio que se han<br />

especificado son válidos, pero algunos <strong>de</strong> los registros que se han <strong>de</strong> leer están<br />

fuera <strong>de</strong>l rango <strong>de</strong> registro válido, sólo se leerán los datos <strong>de</strong> los registros <strong>de</strong>ntro<br />

<strong>de</strong>l rango válido. La cantidad <strong>de</strong> datos <strong>de</strong>vueltos en la palabra 0 <strong>de</strong> la estructura<br />

<strong>de</strong> respuesta reflejará el número <strong>de</strong> registros <strong>de</strong> datos válidos que se ha <strong>de</strong>vuelto,<br />

y aparecerá un código <strong>de</strong> error (1280 hexa<strong>de</strong>cimal) en la palabra <strong>de</strong> estado <strong>de</strong>l<br />

módulo (palabra 11 en la tabla <strong>de</strong> respuesta).<br />

Estructura <strong>de</strong> comando.<br />

Palabra Contenido (hexa<strong>de</strong>cimal) Significado<br />

0 030D D = cantidad <strong>de</strong> datos.<br />

1 xxxx Número <strong>de</strong> registro <strong>de</strong> inicio, en el rango <strong>de</strong> 0 a 3FFF.<br />

2 ... 11 No utilizada.<br />

486 31007526 12/2006


Estructura <strong>de</strong><br />

respuesta<br />

Estructura <strong>de</strong> respuesta.<br />

Palabra Contenido<br />

(hexa<strong>de</strong>cimal)<br />

Significado<br />

ESI: Soporte <strong>de</strong>l módulo ESI<br />

0 030D Refleja la palabra <strong>de</strong> comando 0.<br />

1 xxxx Refleja el número <strong>de</strong> registro <strong>de</strong> inicio <strong>de</strong>s<strong>de</strong> la palabra <strong>de</strong><br />

comando 1.<br />

2 xxxx Palabra <strong>de</strong> datos 1.<br />

3 xxxx Palabra <strong>de</strong> datos 2.<br />

... ... ...<br />

11 xxxx Estado <strong>de</strong>l módulo o palabra <strong>de</strong> datos 10.<br />

31007526 12/2006 487


ESI: Soporte <strong>de</strong>l módulo ESI<br />

PUT DATA (Subfunción 4)<br />

PUT DATA Un comando PUT DATA escribe hasta un máximo <strong>de</strong> 10 registros <strong>de</strong> datos en el<br />

módulo ESI <strong>de</strong>s<strong>de</strong> el controlador cada vez que se ejecuta la instrucción ESI en<br />

Lad<strong>de</strong>r <strong>Logic</strong>. El número total <strong>de</strong> palabras que se han <strong>de</strong> escribir se especifica en<br />

la palabra 0 <strong>de</strong> la estructura <strong>de</strong>l comando PUT DATA (contador <strong>de</strong> datos).<br />

Los datos vuelven en incrementos <strong>de</strong> 10 en las palabras 2 a 11 <strong>de</strong> la estructura <strong>de</strong>l<br />

comando PUT DATA. El comando se ejecuta <strong>de</strong> forma secuencial hasta que la<br />

palabra <strong>de</strong> comando 0 cambia a otro comando diferente <strong>de</strong> PUT DATA (040D<br />

hexa<strong>de</strong>cimal).<br />

Estructura <strong>de</strong><br />

comando<br />

Estructura <strong>de</strong><br />

respuesta<br />

Nota: Si la cantidad <strong>de</strong> datos y el número <strong>de</strong> registro <strong>de</strong> inicio que ha especificado son<br />

válidos, pero algunos <strong>de</strong> los registros que se han <strong>de</strong> escribir están fuera <strong>de</strong>l rango <strong>de</strong> registro<br />

válido, sólo se escribirán los datos <strong>de</strong> los registros <strong>de</strong>ntro <strong>de</strong>l rango válido. La cantidad <strong>de</strong><br />

datos <strong>de</strong>vueltos en la palabra 0 <strong>de</strong> la estructura <strong>de</strong> respuesta reflejará el número <strong>de</strong> registros<br />

<strong>de</strong> datos válidos que se ha <strong>de</strong>vuelto, y aparecerá un código <strong>de</strong> error (1280 hexa<strong>de</strong>cimal) en<br />

la palabra <strong>de</strong> estado <strong>de</strong>l módulo (palabra 11 en la tabla <strong>de</strong> respuesta).<br />

Estructura <strong>de</strong> comando<br />

Palabra Contenido<br />

(hexa<strong>de</strong>cimal)<br />

Estructura <strong>de</strong> respuesta<br />

Significado<br />

0 040D D = cantidad <strong>de</strong> datos.<br />

1 xxxx Número <strong>de</strong> registro <strong>de</strong> inicio, en el rango <strong>de</strong> 0 a 3FFF.<br />

2 xxxx Palabra <strong>de</strong> datos 1.<br />

3 xxxx Palabra <strong>de</strong> datos 2.<br />

... ... ...<br />

11 xxxx Palabra <strong>de</strong> datos 10.<br />

Palabra Contenido (hexa<strong>de</strong>cimal) Significado<br />

0 040D Refleja la palabra <strong>de</strong> comando 0.<br />

1 xxxx Refleja el número <strong>de</strong> registro <strong>de</strong> inicio <strong>de</strong>s<strong>de</strong> la<br />

palabra <strong>de</strong> comando 1.<br />

2 0000 Muestra un cero.<br />

... ... ...<br />

10 0000 Muestra un cero.<br />

11 xxxx Estado <strong>de</strong>l módulo.<br />

488 31007526 12/2006


Ejemplo<br />

comparativo <strong>de</strong><br />

PUT DATA.<br />

ESI: Soporte <strong>de</strong>l módulo ESI<br />

A continuación se muestra un ejemplo <strong>de</strong> cómo una instrucción cargable ESI pue<strong>de</strong><br />

simplificar la programación lógica en una aplicación PUT DATA. Se presupone que<br />

el módulo bidireccional <strong>de</strong> 12 puntos ESI 062 tiene una asignación <strong>de</strong> E/S con<br />

registros <strong>de</strong> salida <strong>de</strong> 400001 a 400012 y registros <strong>de</strong> entrada <strong>de</strong> 300001 a 300012.<br />

Queremos introducir 30 registros <strong>de</strong> datos <strong>de</strong>l controlador, comenzando por el<br />

registro 400501, en el módulo ESI comenzando por la ubicación 100.<br />

Parametrización <strong>de</strong> la instrucción ESI.<br />

#0004<br />

401000<br />

ESI<br />

#0018<br />

La tabla <strong>de</strong> parámetros <strong>de</strong> la subfunción comienza en el registro 401000. Introduzca<br />

los siguientes parámetros en la tabla.<br />

Registro Valor <strong>de</strong>l parámetro Descripción<br />

401000 nnnn Registro <strong>de</strong> estado ESI.<br />

401001 1 Registro <strong>de</strong> inicio <strong>de</strong> salida con asignación <strong>de</strong> E/S<br />

(400001).<br />

401002 1 Registro <strong>de</strong> inicio <strong>de</strong> entrada con asignación <strong>de</strong> E/S<br />

(300001).<br />

401003 501 Registro <strong>de</strong> inicio para la transmisión <strong>de</strong> datos<br />

(400501).<br />

401004 0 No existe un registro <strong>de</strong> inicio 3x para la transmisión<br />

<strong>de</strong> datos.<br />

401005 100 Registro <strong>de</strong> inicio <strong>de</strong>l módulo.<br />

401006 30 Número <strong>de</strong> registros que se han <strong>de</strong> transmitir.<br />

401007 0 Timeout = nunca<br />

401008 N/A Número <strong>de</strong> mensaje ASCII.<br />

401009 N/A Número <strong>de</strong> puerto ASCII.<br />

401009 N/A Variables <strong>de</strong> instrucciones cargables internas.<br />

Una vez se hayan introducido estos parámetros en la tabla, la instrucción ESI<br />

realizará las transmisiones <strong>de</strong> datos automáticamente a lo largo <strong>de</strong> tres ejecuciones<br />

lógicas <strong>de</strong> ESI.<br />

31007526 12/2006 489


ESI: Soporte <strong>de</strong>l módulo ESI<br />

Transmisión <strong>de</strong><br />

datos sin la<br />

instrucción ESI<br />

Esta misma tarea se pue<strong>de</strong> llevar a cabo en Lad<strong>de</strong>r <strong>Logic</strong> sin la instrucción cargable<br />

ESI, pero será necesario que las siguientes cuatro re<strong>de</strong>s configuren los parámetros<br />

<strong>de</strong> comando y transmisión y, a continuación, copien los datos varias veces hasta<br />

completar la operación. Los registros 400101 a 400112 se utilizan como área <strong>de</strong><br />

trabajo para los valores <strong>de</strong> salida. Los registros 400201 a 400212 son los valores<br />

iniciales <strong>de</strong>l comando PUT DATA. Los registros 400501 a 400530 son los registros<br />

<strong>de</strong> datos que se han <strong>de</strong> enviar al módulo.<br />

Primera red - Red <strong>de</strong> registros <strong>de</strong> comando<br />

000011 000011<br />

000011<br />

400201<br />

400101<br />

BLKM<br />

#0012<br />

400501<br />

400103<br />

BLKM<br />

#0010<br />

Contenido <strong>de</strong> los registros<br />

400101<br />

400001<br />

BLKM<br />

#0012<br />

Registro Valor (hexa<strong>de</strong>cimal) Descripción<br />

400201 040A Comando PUT DATA, 10 registros.<br />

400202 0064 Registro <strong>de</strong> inicio <strong>de</strong>l módulo.<br />

400203 nnnn No válido: palabra <strong>de</strong> datos 1.<br />

... ... ...<br />

400212 nnnn No válido: palabra <strong>de</strong> datos 10.<br />

La primera red iniciará la transmisión <strong>de</strong> los diez primeros registros activando la<br />

bobina 000011 <strong>de</strong> forma permanente. Traslada el comando inicial PUT DATA al<br />

área <strong>de</strong> trabajo, traslada los 10 primeros registros (400501 a 400510) al área <strong>de</strong><br />

trabajo y, a continuación, traslada el área <strong>de</strong> trabajo a los registros <strong>de</strong> salida <strong>de</strong>l<br />

módulo.<br />

Segunda red - Red <strong>de</strong> registros <strong>de</strong> comando<br />

000020 000020<br />

300001<br />

000011 000020<br />

400101<br />

TEST<br />

#0001<br />

300002<br />

400102<br />

TEST<br />

#0001<br />

400102<br />

TEST<br />

#0001<br />

490 31007526 12/2006<br />

#0120<br />

000012


ESI: Soporte <strong>de</strong>l módulo ESI<br />

Siempre y cuando la bobina 000011 esté activada y 000020 <strong>de</strong>sactivada, se<br />

comprobará que la palabra <strong>de</strong> respuesta 0 <strong>de</strong> PUT DATA en el registro <strong>de</strong> entrada<br />

es la misma que la palabra <strong>de</strong> comando en el área <strong>de</strong> trabajo. También se<br />

comprobará que el registro <strong>de</strong> inicio <strong>de</strong>l módulo en el registro <strong>de</strong> entrada es el<br />

mismo que el registro <strong>de</strong> inicio <strong>de</strong>l módulo en el área <strong>de</strong> trabajo.<br />

Si ambas comprobaciones dan resultados, se verificará el registro <strong>de</strong> inicio <strong>de</strong>l<br />

módulo actual frente a lo que sería el registro <strong>de</strong> inicio <strong>de</strong>l módulo <strong>de</strong>l último<br />

comando PUT DATA <strong>de</strong> esa transferencia. Si esta última comprobación muestra<br />

que el registro <strong>de</strong> inicio <strong>de</strong>l módulo actual es igual o mayor que el último comando<br />

PUT DATA, la bobina 000020 se activará, indicando que se ha realizado la<br />

transmisión. Si muestra que el registro <strong>de</strong> inicio <strong>de</strong>l módulo actual es menor que el<br />

último comando PUT DATA, la bobina 000012 indica que los próximos 10 registros<br />

<strong>de</strong>berán transmitirse.<br />

Tercera red - Red <strong>de</strong> registros <strong>de</strong> comando<br />

000012<br />

400102<br />

#0100<br />

TEST<br />

#0001<br />

400511<br />

400103<br />

BLKM<br />

#0010<br />

400102<br />

TEST<br />

#0001<br />

Siempre que la bobina 000012 esté activada, se <strong>de</strong>berán transmitir más datos.<br />

Tendrá que comprobarse que el registro <strong>de</strong> inicio <strong>de</strong>l módulo <strong>de</strong>s<strong>de</strong> la última<br />

ejecución <strong>de</strong>l comando para <strong>de</strong>terminar que conjunto <strong>de</strong> 10 registros <strong>de</strong>be<br />

transmitirse a continuación. Por ejemplo, si el último comando comenzó con el<br />

registro <strong>de</strong> módulo 400110, el registro <strong>de</strong> inicio <strong>de</strong>l módulo para este comando será<br />

400120.<br />

Cuarta red - Red <strong>de</strong> registros <strong>de</strong> comando<br />

000012<br />

#0010<br />

400102<br />

AD16<br />

400102<br />

400101<br />

400001<br />

BLKM<br />

#0012<br />

Mientras la bobina 000012 esté activada, sume 10 al valor <strong>de</strong>l registro <strong>de</strong> inicio <strong>de</strong>l<br />

módulo en el área <strong>de</strong> trabajo y traslá<strong>de</strong>la a los registros <strong>de</strong> salida para el módulo<br />

para iniciar la siguiente transmisión <strong>de</strong> 10 registros.<br />

31007526 12/2006 491<br />

#0110<br />

400521<br />

400103<br />

BLKM<br />

#0010


ESI: Soporte <strong>de</strong>l módulo ESI<br />

ABORT (entrada intermedia activada)<br />

ABORT Cuando la entrada intermedia a la instrucción ESI está activada, la instrucción<br />

abandona la ejecución <strong>de</strong> un mensaje ASCII READ o WRITE. Los búferes <strong>de</strong>l<br />

puerto serie <strong>de</strong>l módulo no se ven afectados por la instrucción ABORT, sólo el<br />

mensaje que se esté ejecutando en ese momento.<br />

Estructura <strong>de</strong><br />

comando<br />

Estructura <strong>de</strong><br />

respuesta<br />

Estructura <strong>de</strong> comando<br />

Palabra Contenido (hexa<strong>de</strong>cimal)<br />

0 0900<br />

1 ... 11 No utilizadas<br />

Estructura <strong>de</strong> respuesta.<br />

Palabra Contenido (hexa<strong>de</strong>cimal) Significado<br />

0 0900 Refleja la palabra <strong>de</strong> comando 0.<br />

1 0000 Muestra un cero.<br />

... ... ...<br />

10 0000 Muestra un cero.<br />

11 xxxx Estado <strong>de</strong>l módulo.<br />

492 31007526 12/2006


Errores <strong>de</strong> ejecución<br />

Errores <strong>de</strong><br />

ejecución<br />

ESI: Soporte <strong>de</strong>l módulo ESI<br />

La secuencia <strong>de</strong> comandos ejecutada por el módulo ESI (<strong>de</strong>terminada por el valor<br />

<strong>de</strong> subfunción en el asiento superior <strong>de</strong> la instrucción ESI) ha <strong>de</strong> pasar por una serie<br />

<strong>de</strong> rutinas <strong>de</strong> comprobación <strong>de</strong> errores antes <strong>de</strong> que el comando real empiece a<br />

ejecutarse. En caso <strong>de</strong> <strong>de</strong>tectar un error, aparece un mensaje en el registro<br />

visualizado en el asiento intermedio.<br />

La siguiente tabla enumera los posibles códigos <strong>de</strong> mensajes <strong>de</strong> error y su<br />

significado.<br />

Código <strong>de</strong> error<br />

(<strong>de</strong>cimal)<br />

Significado<br />

0001 Subfunción <strong>de</strong>sconocida especificada en el asiento superior.<br />

0010 La instrucción ESI ha agotado el tiempo (se ha excedido el tiempo<br />

especificado en el octavo registro <strong>de</strong> la tabla <strong>de</strong> parámetros <strong>de</strong><br />

subfunción.<br />

0101 Error en la secuencia READ ASCII Message.<br />

0102 Error en la secuencia WRITE ASCII Message.<br />

0103 Error en la secuencia GET DATA.<br />

0104 Error en la secuencia PUT DATA.<br />

1000 La longitud (asiento inferior) es muy pequeña.<br />

1001 Valor distinto <strong>de</strong> cero en los parámetros <strong>de</strong> offset <strong>de</strong> datos 4x y 3x.<br />

1002 Valor igual a cero en los parámetros <strong>de</strong> offset <strong>de</strong> datos 4x y 3x.<br />

1003 Parámetros <strong>de</strong> offset <strong>de</strong> datos 4x y 3x fuera <strong>de</strong> rango.<br />

1004 Offset <strong>de</strong> datos 4x y 3x más contador <strong>de</strong> transferencia fuera <strong>de</strong> rango.<br />

1005 Parámetros <strong>de</strong> offset <strong>de</strong> datos 3x establecidos para GET DATA.<br />

1006 Error <strong>de</strong> suma <strong>de</strong> control <strong>de</strong> la tabla <strong>de</strong> parámetros.<br />

1101 Registros <strong>de</strong> salida <strong>de</strong>s<strong>de</strong> los parámetros <strong>de</strong> offset fuera <strong>de</strong> rango.<br />

1102 Registros <strong>de</strong> entrada <strong>de</strong>s<strong>de</strong> los parámetros <strong>de</strong> offset fuera <strong>de</strong> rango.<br />

2001 Notificación <strong>de</strong> error <strong>de</strong>s<strong>de</strong> el módulo ESI.<br />

Una vez que se haya completado la comprobación <strong>de</strong> errores <strong>de</strong> parámetro sin<br />

encontrar ningún error, el módulo ESI comenzará a ejecutar la secuencia <strong>de</strong><br />

comandos.<br />

31007526 12/2006 493


ESI: Soporte <strong>de</strong>l módulo ESI<br />

494 31007526 12/2006


Presentación<br />

EUCA: Alarmas y conversión <strong>de</strong><br />

unida<strong>de</strong>s físicas<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción EUCA.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

85<br />

Apartado Página<br />

Descripción breve 496<br />

Representación 497<br />

Descripción <strong>de</strong> los parámetros 499<br />

Ejemplos 501<br />

31007526 12/2006 495


EUCA: Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción sólo estará disponible si ha expandido e instalado las<br />

instrucciones cargables DX; encontrará más información en p. 49.<br />

La utilización <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong> para convertir datos analógicos con forma binaria en<br />

unida<strong>de</strong>s <strong>de</strong>cimales podría ser una operación intensiva tanto <strong>de</strong> memoria como <strong>de</strong><br />

tiempo <strong>de</strong> ciclo. La instrucción cargable Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas<br />

(EUCA) está diseñada para acabar con la necesidad <strong>de</strong> lógica <strong>de</strong> aplicación extra<br />

que se requiere normalmente para estas conversiones. EUCA escala 12 bits <strong>de</strong><br />

datos binarios (representando señales analógicas u otras variables) en unida<strong>de</strong>s<br />

físicas que se pue<strong>de</strong>n utilizar <strong>de</strong> forma inmediata para visualización, protocolarización<br />

<strong>de</strong> datos o generación <strong>de</strong> alarmas.<br />

Utilizando la conversión linear Y = mX + b, los valores binarios entre 0 y 4.095 se<br />

convierten a una variable <strong>de</strong> proceso escalada (SPV). La SPV se expresa en<br />

unida<strong>de</strong>s físicas en el rango <strong>de</strong> 0 a 9.999.<br />

Una instrucción EUCA pue<strong>de</strong> realizar hasta cuatro conversiones <strong>de</strong> unida<strong>de</strong>s<br />

físicas por separado.<br />

Asimismo, ofrece cuatro niveles <strong>de</strong> comprobación <strong>de</strong> alarmas en cada una <strong>de</strong> las<br />

cuatro conversiones.<br />

Nivel Significado<br />

HA Alarma superior absoluta<br />

HW Alarma <strong>de</strong> advertencia alto<br />

LW Alarma <strong>de</strong> advertencia bajo<br />

LA Alarma inferior absoluta<br />

496 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

entrada <strong>de</strong> alarma<br />

entrada <strong>de</strong> error<br />

estado <strong>de</strong><br />

alarma<br />

tabla <strong>de</strong><br />

parámetros<br />

n.º <strong>de</strong><br />

cuarteto<br />

EUCA<br />

(1...4)<br />

EUCA: Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas<br />

activa<br />

alarma<br />

31007526 12/2006 497<br />

error


EUCA: Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la conversión.<br />

0x, 1x Ninguno Entrada <strong>de</strong> alarma<br />

Entrada inferior 0x, 1x Ninguno Entrada <strong>de</strong> error<br />

Estado <strong>de</strong><br />

alarma<br />

(nodo superior)<br />

Tabla <strong>de</strong><br />

parámetros<br />

(nodo<br />

intermedio)<br />

N.º <strong>de</strong> cuarteto<br />

(14)<br />

(nodo inferior)<br />

4x INT, UINT Estado <strong>de</strong> alarma para un máximo <strong>de</strong><br />

cuatro conversiones EUCA.<br />

(Para obtener más información<br />

consulte p. 499.)<br />

4x INT, UINT, Primero <strong>de</strong> nueve registros en espera<br />

contiguos en la tabla <strong>de</strong> parámetros<br />

EUCA.<br />

(Para obtener más información<br />

consulte p. 500.)<br />

INT, UINT Valor entero, indica cuál <strong>de</strong> los cuatro<br />

cuartetos se ha <strong>de</strong> utilizar en el registro <strong>de</strong><br />

estado <strong>de</strong> alarma.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno ON si la entrada intermedia está activada<br />

o si el resultado <strong>de</strong> la conversión EUCA<br />

traspasa el nivel <strong>de</strong> advertencia.<br />

Salida inferior 0x Ninguno ON si la entrada inferior está activada o un<br />

parámetro está fuera <strong>de</strong> rango.<br />

498 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Estado <strong>de</strong> alarma<br />

(asiento<br />

superior)<br />

Ajustes <strong>de</strong><br />

alarma<br />

EUCA: Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas<br />

El registro 4x introducido en el asiento superior muestra el estado <strong>de</strong> alarma para<br />

un máximo <strong>de</strong> cuatro conversiones EUCA que pue<strong>de</strong> realizar la instrucción. El<br />

registro se segmenta en cuatro cuartetos. Cada cuarteto representa las cuatro<br />

condiciones <strong>de</strong> alarma posibles para la conversión individual <strong>de</strong> EUCA.<br />

El cuarteto más significativo representa la primera conversión y el menos<br />

significativo la cuarta.<br />

HA1 HW1 LW1 LA1 HA2 HW2 LW2 LA2 HA3 HW3 LW3 LA3 HA4 HW4 LW4 LA4<br />

Nibble 1<br />

(first conversion)<br />

Nibble 2<br />

(second conversion)<br />

Estado <strong>de</strong> los ajustes <strong>de</strong> la alarma.<br />

Tipo <strong>de</strong><br />

alarma<br />

Estado<br />

Nibble 3<br />

(third conversion)<br />

Nibble 4<br />

(fourth conversion)<br />

HA Se establece una alarma HA cuando la variable <strong>de</strong> proceso escalada (SPV)<br />

exce<strong>de</strong> el valor <strong>de</strong> la alarma <strong>de</strong> límite superior <strong>de</strong>finido por el usuario en<br />

unida<strong>de</strong>s físicas.<br />

HW Se establece una alarma HW cuando la variable <strong>de</strong> proceso escalada<br />

exce<strong>de</strong> el valor <strong>de</strong> advertencia superior <strong>de</strong>finido por el usuario en unida<strong>de</strong>s<br />

físicas.<br />

LW Se establece una alarma LW cuando la variable <strong>de</strong> proceso escalada es<br />

menor que el valor <strong>de</strong> advertencia inferior <strong>de</strong>finido por el usuario en unida<strong>de</strong>s<br />

físicas.<br />

LA Se establece una alarma LA cuando la variable <strong>de</strong> proceso escalada es<br />

menor que el valor <strong>de</strong> la alarma <strong>de</strong> límite inferior <strong>de</strong>finido por el usuario en<br />

unida<strong>de</strong>s físicas.<br />

Sólo pue<strong>de</strong> existir un estado <strong>de</strong> alarma en una conversión EUCA <strong>de</strong>terminada en<br />

cualquier momento. Si la variable <strong>de</strong> proceso escalada exce<strong>de</strong> el nivel <strong>de</strong><br />

advertencia superior se establecerá el bit HW. Si se exce<strong>de</strong> la HA, el bit HW se<br />

pondrá a cero y se establecerá HA. La alarma no cambiará <strong>de</strong>spués <strong>de</strong> volver a un<br />

estado <strong>de</strong> menor gravedad hasta que también se haya salido <strong>de</strong>l área <strong>de</strong> banda<br />

muerta (DB).<br />

31007526 12/2006 499


EUCA: Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas<br />

Tabla <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

El registro 4x introducido en el nodo intermedio es el primero <strong>de</strong> nueve registros <strong>de</strong><br />

salida contiguos <strong>de</strong> la tabla <strong>de</strong> parámetros EUCA.<br />

Registro Contenido Rango<br />

Visualizado Valor binario recibido por el usuario. 0 ... 4 095<br />

Primer implícito SPV calculada por el bloque EUCA.<br />

Segundo implícito Unidad física superior (HEU), máxima SPV<br />

necesaria y establecida por el usuario (extremo<br />

superior <strong>de</strong> la escala).<br />

LEU < HEU ≤ 99 999<br />

Tercer implícito Unidad física inferior (LEU), mínima SPV<br />

necesaria y establecida por el usuario (extremo<br />

inferior <strong>de</strong> la escala).<br />

Cuarto implícito Área DB en unida<strong>de</strong>s <strong>de</strong> SPV, por <strong>de</strong>bajo <strong>de</strong> los<br />

niveles HA y por encima <strong>de</strong> los niveles LA que<br />

<strong>de</strong>ben cruzarse antes <strong>de</strong> restablecer el bit <strong>de</strong><br />

estado <strong>de</strong> alarma.<br />

0 ≤ LEU < HEU<br />

0 ≤ DB < (HEU - LEU)<br />

Quinto implícito Valor <strong>de</strong> alarma HA en unida<strong>de</strong>s SPV. HW < HA ≤ HEU<br />

Sexto implícito Valor <strong>de</strong> alarma HW en unida<strong>de</strong>s SPV. LW < HW < HA<br />

Séptimo implícito Valor <strong>de</strong> alarma LW en unida<strong>de</strong>s SPV. LA < LW < HW<br />

Octavo implícito Valor <strong>de</strong> alarma LA en unida<strong>de</strong>s SPV. LEU ≤ LA < LW<br />

Nota: Se genera un error si algún valor queda fuera <strong>de</strong>l rango <strong>de</strong>finido<br />

anteriormente.<br />

500 31007526 12/2006


Ejemplos<br />

Vista general Se muestran los siguientes ejemplos.<br />

Principios <strong>de</strong> la operación EUCA (ejemplo 1)<br />

Utilización en un sistema propulsor (ejemplo 2)<br />

Cuatro conversiones EUCA juntas (ejemplo 3)<br />

EUCA: Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas<br />

Ejemplo 1 Este ejemplo <strong>de</strong>muestra los principios <strong>de</strong> la operación EUCA. El valor binario se<br />

introduce manualmente en el registro visualizado en el asiento intermedio, y el<br />

resultado podrá verse en el registro SPV (el primer registro implícito <strong>de</strong>l asiento<br />

intermedio).<br />

La siguiente ilustración muestra un rango <strong>de</strong> entrada equivalente a una medida <strong>de</strong><br />

0 a 100 V, correspondiente a todo el rango binario <strong>de</strong> 12 bits<br />

100V<br />

90<br />

80<br />

70<br />

60<br />

50<br />

40<br />

30<br />

20<br />

10<br />

0 V<br />

MSB<br />

unused<br />

LSB<br />

1 1 1 1 1 1 1 1 1 1 1 1 = 4095 or FFF hex<br />

0 0 0 0 0 0 0 0 0 0 0 0<br />

(Displayed register in<br />

the middle no<strong>de</strong>)<br />

= 0 or 000 hex<br />

Un rango <strong>de</strong> 0 a 100 V establece 50 V para la operación nominal. EUCA<br />

proporciona un margen en la parte nominal <strong>de</strong> los niveles <strong>de</strong> advertencia y alarma<br />

(banda muerta). Si se traspasa el umbral <strong>de</strong> alarma, el bit <strong>de</strong> alarma se activará y<br />

permanecerá en ese estado hasta que la señal pase a ser mayor (o menor) que el<br />

ajuste DB -5 V en este ejemplo.<br />

31007526 12/2006 501


EUCA: Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas<br />

La programación <strong>de</strong>l bloque EUCA se lleva a cabo seleccionando la instrucción<br />

cargable EUCA en los datos tal como muestra la siguiente figura.<br />

400440<br />

400450<br />

EUCA<br />

# 0001<br />

Datos <strong>de</strong> referencia<br />

Registro Significado Contenido<br />

400440 ESTADO 0000000000000000<br />

400450 ENTRADA 1871 DEC<br />

400451 SPV 46 DEC<br />

400452 Unidad_SUPERIOR 100 DEC<br />

400453 Unidad_INFERIOR 0 DEC<br />

400454 Banda_muerta 5 DEC<br />

400455 ALARMA_SUPERIOR 70 DEC<br />

400456 ADVERTENCIA_ALTO 60 DEC<br />

400457 ALARMA_INFERIOR 40 DEC<br />

400458 ADVERTENCIA_BAJO 30 DEC<br />

Los nueve registros <strong>de</strong>l asiento intermedio se establecen utilizando el editor <strong>de</strong><br />

datos <strong>de</strong> referencia. La DB es <strong>de</strong> 5 V seguida <strong>de</strong> incrementos <strong>de</strong> 10 V <strong>de</strong><br />

advertencia inferior y superior. La alarma actual <strong>de</strong> límite bajo y alto está<br />

establecida en 20 V por encima y por <strong>de</strong>bajo nominal.<br />

502 31007526 12/2006


En un gráfico, el ejemplo tendrá la siguiente apariencia:<br />

100V<br />

90<br />

80<br />

70<br />

60<br />

50<br />

46<br />

40<br />

30<br />

20<br />

10<br />

0 V<br />

*<br />

High Alarm<br />

High Warning<br />

Normal<br />

Low Warning<br />

Low Alarm<br />

EUCA: Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas<br />

= Dead Band<br />

Nota: El valor <strong>de</strong> ejemplo muestra un 46 <strong>de</strong>cimal, que está <strong>de</strong>ntro <strong>de</strong>l rango<br />

normal. No se ha establecido ninguna alarma, es <strong>de</strong>cir, el registro 400440 = 0.<br />

Ahora pue<strong>de</strong> comprobar la instrucción en un PLC en funcionamiento introduciendo<br />

valores en el registro 400450 que está <strong>de</strong>ntro <strong>de</strong> los rangos <strong>de</strong>finidos. La<br />

comprobación quedará realizada si se observa el cambio <strong>de</strong> bit en el registro<br />

400440 don<strong>de</strong>:<br />

1 = Low alarm<br />

1 = Low warning<br />

1 = High warning<br />

1 = High alarm<br />

Ejemplo 2 Si la entrada <strong>de</strong> 0 a 4095 indica la velocidad <strong>de</strong> un sistema <strong>de</strong> 0 a 5.000 rpm, pue<strong>de</strong><br />

iniciar una instrucción EUCA <strong>de</strong> la siguiente forma.<br />

El valor binario en 400210 da como resultado una SPV <strong>de</strong> 4835 <strong>de</strong>cimal, que<br />

exce<strong>de</strong> el nivel <strong>de</strong> alarma superior absoluta, establece el bit HA en 400209 y activa<br />

el asiento <strong>de</strong> la alarma EUCA.<br />

Parámetro Velocidad<br />

Velocidad máxima 5.000 rpm<br />

Velocidad mínima 0 rpm<br />

DB 100 rpm<br />

Alarma HA 4.800 rpm<br />

Alarma HW 4.450 rpm<br />

Alarma LW 2.000 rpm<br />

Alarma LA 1.200 rpm<br />

31007526 12/2006 503


EUCA: Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas<br />

Instrucción<br />

400209<br />

400210<br />

EUCA<br />

# 0001<br />

Datos <strong>de</strong> referencia<br />

Registro Significado Contenido<br />

400209 ESTADO 1000000000000000<br />

400210 ENTRADA 3960 DEC<br />

400211 SPV 4835 DEC<br />

400212 VELOCIDAD_MÁX 5000 DEC<br />

400213 VELOCIDAD_MÍN 0 DEC<br />

400214 Banda_muerta 100 DEC<br />

400215 ALARMA_SUPERIOR 4800 DEC<br />

400216 ADVERTENCIA_ALTO 4450 DEC<br />

400217 ALARMA_INFERIOR 2000 DEC<br />

400218 ADVERTENCIA_BAJO 1200 DEC<br />

El contacto normal abierto se utiliza para suprimir las comprobaciones <strong>de</strong> alarma<br />

cuando se ha apagado el sistema o para permitir al sistema durante el arranque<br />

inicial pasar por encima <strong>de</strong>l nivel <strong>de</strong> rpm <strong>de</strong> la alarma bajo.<br />

5000 rqm<br />

4950<br />

4900<br />

4850<br />

4800<br />

4750<br />

4700<br />

4650<br />

4600<br />

4550<br />

4500<br />

4450<br />

4400 *<br />

4350<br />

4300 *<br />

4250<br />

4200 *<br />

0<br />

*<br />

*<br />

*<br />

*<br />

High Warning<br />

400209 = 4000 hex<br />

*<br />

High Absolute<br />

400209 = 8000 hex<br />

Return to normal<br />

400209 = 0000 hex<br />

Warning - DB<br />

400209 = 4000 hex<br />

504 31007526 12/2006<br />

*<br />

*<br />

*<br />

*<br />

*<br />

*<br />

*<br />

*<br />

*<br />

*


EUCA: Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas<br />

La variación <strong>de</strong>l valor binario en el registro 400210 podría hacer que los bits <strong>de</strong>l<br />

cuarteto 1 <strong>de</strong>l registro 400209 correspondan a los cambios ilustrados<br />

anteriormente. La DB entra en funcionamiento cuando se ha establecido la alarma<br />

o la advertencia, a continuación la señal caerá en la zona DB.<br />

La alarma permanecerá, adoptando lo que podría ser un estado <strong>de</strong> conmutación por<br />

ruido parásito fuera <strong>de</strong>l nivel marginal <strong>de</strong> la señal. Este punto se ejemplifica en el<br />

gráfico superior, don<strong>de</strong> tras ajustar la alarma HA y <strong>de</strong>volver el nivel <strong>de</strong> advertencia<br />

a 4700 la señal entra y sale <strong>de</strong> la zona <strong>de</strong> banda muerta en el nivel <strong>de</strong> advertencia<br />

(4450) pero el bit <strong>de</strong> advertencia en 400209 sigue activado.<br />

Se podría ver la misma reacción si la señal se generara por medio <strong>de</strong> los ajustes<br />

inferiores.<br />

Ejemplo 3 Pue<strong>de</strong> enca<strong>de</strong>nar hasta cuatro conversiones EUCA para realizar un registro <strong>de</strong><br />

estado <strong>de</strong> alarma. Cada conversión escribe en el cuarteto <strong>de</strong>finido en el asiento<br />

inferior <strong>de</strong>l bloque. En el siguiente ejemplo <strong>de</strong> programa, cada bloque EUCA escribe<br />

su estado (basándose en los valores <strong>de</strong> la tabla correspondiente a ese bloque) en<br />

un cuarteto (grupo <strong>de</strong> cuatro bits) <strong>de</strong>l registro <strong>de</strong> estado 400209.<br />

000023<br />

000023<br />

400209<br />

400210<br />

EUCA<br />

# 0001<br />

400209<br />

000033<br />

BLKM<br />

# 1<br />

400209<br />

400220<br />

EUCA<br />

# 0002<br />

400209<br />

400230<br />

EUCA<br />

# 0003<br />

400209<br />

400240<br />

31007526 12/2006 505<br />

EUCA<br />

# 0004<br />

000002<br />

000003<br />

000004


EUCA: Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas<br />

Datos <strong>de</strong> referencia<br />

Registro Significado Contenido<br />

400209 ESTADO 0000001001001000<br />

El registro <strong>de</strong> estado se pue<strong>de</strong> transferir utilizando una instrucción BLKM para un<br />

grupo <strong>de</strong> bits interconectados para iluminar las lámparas <strong>de</strong> un panel <strong>de</strong> aviso <strong>de</strong><br />

alarmas.<br />

Si observa el contenido <strong>de</strong> estado <strong>de</strong>l registro 400209, verá lo siguiente: ninguna<br />

alarma en bloque 1, una alarma LW en el bloque 2, una alarma HW en el bloque 3<br />

y una alarma HA en el bloque 4.<br />

El estado <strong>de</strong> alarma <strong>de</strong> los cuatro <strong>bloques</strong> se pue<strong>de</strong> representar con los siguientes<br />

ajustes <strong>de</strong> tabla<br />

Conversión 1 Conversión 2 Conversión 3 Conversión 4<br />

Entrada 400210 = 2048 400220 = 1220 400230 = 3022 400240 = 3920<br />

Escalado Nº 400211 = 2501 400221 = 1124 400231 = 7379 400241 = 0770<br />

HEU 400212 = 5000 400222 = 3300 4002<strong>32</strong> = 9999 400242 = 0800<br />

LEU 400213 = 0000 400223 = 0200 400233 = 0000 400243 = 0100<br />

DB 400214 = 0015 400224 = 0022 400234 = 0100 400244 = 0006<br />

Alarma superior 400215 = 40000 400225 = 2900 400235 = 8090 400245 = 0768<br />

Advertencia superior 400216 = 3500 400226 = 2300 400236 = 7100 400246 = 0680<br />

Advertencia inferior 400217 = 2000 400227 = 1200 400237 = <strong>32</strong>00 400247 = 0280<br />

Alarma inferior 400218 = 1200 400228 = 0430 400238 = 0992 400248 = 0230<br />

506 31007526 12/2006


Presentación<br />

Descripción <strong>de</strong> instrucciones<br />

(F a N)<br />

IV<br />

Introducción En esta sección aparecen <strong>de</strong>scripciones <strong>de</strong> instrucciones or<strong>de</strong>nadas alfabéticamente<br />

<strong>de</strong> la F a la N.<br />

Contenido Esta parte contiene los siguientes capítulos:<br />

Capítulo Nombre <strong>de</strong>l capítulo Página<br />

86 FIN: Primera entrada 509<br />

87 FOUT: Primera salida 513<br />

88 FTOI: De coma flotante a entero 519<br />

89 GD92 - Bloque <strong>de</strong> funciones <strong>de</strong>l flujo <strong>de</strong> gas 523<br />

90 Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX AGA n.º 3 ‘85 y<br />

NX19 ‘68<br />

535<br />

91 Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método en bruto<br />

GG92 AGA n.º 3 1992<br />

92 Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método <strong>de</strong>tallado<br />

GM92 AGA n.º 3 y n.º 8 1992<br />

93 Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas G392 AGA n.º 3 1992 573<br />

94 HLTH: Matrices <strong>de</strong> historia y estado 585<br />

95 HSBY - Hot Standby 601<br />

96 IBKR: Lectura indirecta <strong>de</strong> bloque 607<br />

97 IBKW: Escritura indirecta <strong>de</strong> bloque 611<br />

98 ICMP: Comparación <strong>de</strong> entrada 615<br />

99 ID: Bloquear interrupt 623<br />

100 IE: Habilitar interrupt 627<br />

101 IMIO: E/S inmediatas 631<br />

102 IMOD: Instrucción <strong>de</strong>l módulo <strong>de</strong> interrupt 639<br />

31007526 12/2006 507<br />

549<br />

561


Descripción <strong>de</strong> instrucciones (F a N)<br />

Capítulo Nombre <strong>de</strong>l capítulo Página<br />

103 INDX - Movimiento incremental inmediato 649<br />

104 ITMR: Temporizador <strong>de</strong> interrupt 653<br />

105 ITOF: De entero a coma flotante 659<br />

106 JOGS - Movimiento JOG 663<br />

107 JSR: Saltar a subrutina 667<br />

108 LAB: Etiqueta <strong>de</strong> una subrutina 671<br />

109 LOAD: Cargar flash 675<br />

110 MAP3: Transacción MAP 679<br />

111 MATH – Operaciones con enteros 687<br />

112 MBIT: Modificar bit 695<br />

113 MBUS: Transacción MBUS 701<br />

114 MMFB - Bloque <strong>de</strong> bits Modicon Motion Framework 711<br />

115 MMFE - Subrutina <strong>de</strong> parámetros extendida <strong>de</strong> Modicon<br />

Motion Framework<br />

715<br />

116 MMFI - Bloque <strong>de</strong> inicialización <strong>de</strong> Modicon Motion Framework 719<br />

117 MMFS - Bloque <strong>de</strong> subrutinas <strong>de</strong> Modicon Motion Framework 725<br />

118 MOVE - Movimiento absoluto 729<br />

119 MRTM: Módulo <strong>de</strong> transferencia multirregistro 733<br />

120 MSPX (Seriplex) 739<br />

121 MSTR: Maestro 743<br />

122 MU16: Multiplicación <strong>de</strong> 16 bits 789<br />

123 MUL: Multiplicación 793<br />

124 NBIT: Control <strong>de</strong> bits 799<br />

125 NCBT: Bit normalmente cerrado 803<br />

126 NOBT: Bit normalmente abierto 807<br />

127 NOL: Módulo opcional <strong>de</strong> red para Lonworks 811<br />

508 31007526 12/2006


Presentación<br />

FIN: Primera entrada<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción FIN.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

86<br />

Apartado Página<br />

Descripción breve 510<br />

Representación 511<br />

Descripción <strong>de</strong> los parámetros 512<br />

31007526 12/2006 509


FIN: Primera entrada<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción FIN se utiliza para generar una cola <strong>de</strong> espera first-in. La instrucción<br />

FOUT se <strong>de</strong>be utilizar para borrar el registro <strong>de</strong>l extremo inferior <strong>de</strong> la lista <strong>de</strong><br />

espera. La instrucción FIN tiene una entrada <strong>de</strong> control y pue<strong>de</strong> producir tres<br />

salidas.<br />

510 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

datos <strong>de</strong><br />

fuente<br />

Longitud: 1–100<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

pointer <strong>de</strong> la<br />

cola<br />

longitud <strong>de</strong><br />

la cola<br />

la cola está llena<br />

la cola está vacía<br />

FIN: Primera entrada<br />

31007526 12/2006 511<br />

FIN<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = copia el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> fuente en<br />

la cola <strong>de</strong> espera.<br />

Datos <strong>de</strong> fuente<br />

(nodo superior)<br />

Pointer <strong>de</strong> la cola<br />

(nodo intermedio)<br />

Longitud <strong>de</strong> la cola<br />

(nodo inferior)<br />

0x, 1x, 3x, 4x ANY_BIT Datos <strong>de</strong> fuente, se copiarán en el extremo<br />

superior <strong>de</strong> la cola <strong>de</strong> espera <strong>de</strong> <strong>de</strong>stino en<br />

el ciclo lógico actual.<br />

4x WORD El primero <strong>de</strong> una cola <strong>de</strong> registros 4x,<br />

contiene el pointer <strong>de</strong> la cola, el siguiente<br />

registro contiguo será el primer registro en<br />

la cola.<br />

INT, UINT Número <strong>de</strong> registros 4x en la cola <strong>de</strong><br />

<strong>de</strong>stino. Rango: 1...100<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida intermedia 0x Ninguno ON = cola llena, no es posible copiar más<br />

datos <strong>de</strong> fuente en la cola.<br />

Salida inferior 0x Ninguno ON = cola vacía (valor en el registro <strong>de</strong><br />

pointer <strong>de</strong> la cola = 0).


FIN: Primera entrada<br />

Descripción <strong>de</strong> los parámetros<br />

Modo <strong>de</strong><br />

funcionamiento<br />

Datos <strong>de</strong> fuente<br />

(asiento<br />

superior)<br />

Pointer <strong>de</strong> cola<br />

<strong>de</strong> espera<br />

(asiento<br />

intermedio)<br />

La instrucción FIN se utiliza para generar una cola <strong>de</strong> espera first-in. Copia los datos<br />

<strong>de</strong> fuente <strong>de</strong>s<strong>de</strong> el asiento superior <strong>de</strong>l primer registro a una cola <strong>de</strong> espera <strong>de</strong><br />

registros <strong>de</strong> salida. Los datos <strong>de</strong> fuente siempre se copian en el registro superior <strong>de</strong><br />

la cola <strong>de</strong> espera. Cuando se llena una cola <strong>de</strong> espera, no se pue<strong>de</strong>n copiar más<br />

datos en ella.<br />

FIN<br />

1111 1111<br />

Source<br />

Queue<br />

FIN<br />

2222 2222<br />

Source<br />

Cuando se utilizan tipos <strong>de</strong> registro 0x o 1x:<br />

Primera referencia 0x en una ca<strong>de</strong>na <strong>de</strong> 16 bobinas o salidas binarias contiguas.<br />

Primera referencia 1x en una ca<strong>de</strong>na <strong>de</strong> 16 entradas binarias.<br />

El registro 4x introducido en el asiento intermedio es un pointer <strong>de</strong> cola <strong>de</strong> espera.<br />

El primer registro en la cola es el registro 4x contiguo siguiente al pointer. Por<br />

ejemplo, si el asiento intermedio muestra una referencia <strong>de</strong> pointer <strong>de</strong> 400101, el<br />

primer registro en la cola será 400101.<br />

El valor trasladado al pointer <strong>de</strong> la cola es igual al número <strong>de</strong> registros <strong>de</strong> la cola<br />

que están llenos <strong>de</strong> datos <strong>de</strong> fuente actualmente. El valor <strong>de</strong>l pointer no pue<strong>de</strong><br />

sobrepasar el valor entero máximo <strong>de</strong> longitud <strong>de</strong> la cola especificado en el asiento<br />

inferior.<br />

Si el valor en el pointer <strong>de</strong> la cola es igual al entero especificado en el asiento<br />

inferior, la salida intermedia transmitirá señal y no se podrán escribir más datos <strong>de</strong><br />

fuente en la cola hasta que la instrucción FOUT borre el registro inferior <strong>de</strong> la cola.<br />

512 31007526 12/2006<br />

1111<br />

Queue<br />

FIN<br />

3333 3333<br />

Source<br />

2222<br />

1111<br />

Queue


Presentación<br />

FOUT: Primera salida<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción FOUT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

87<br />

Apartado Página<br />

Descripción breve 514<br />

Representación 515<br />

Descripción <strong>de</strong> los parámetros 517<br />

31007526 12/2006 513


FOUT: Primera salida<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

La instrucción FOUT funciona junto con la instrucción FIN para producir una cola<br />

primera entrada-primera salida (FIFO). Mueve el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong>l registro en<br />

espera inferior <strong>de</strong> una cola llena a un registro <strong>de</strong> <strong>de</strong>stino o a una palabra que<br />

almacena 16 salidas binarias.<br />

La instrucción FOUT tiene una entrada <strong>de</strong> control y pue<strong>de</strong> producir tres salidas.<br />

PELIGRO<br />

BOBINAS BLOQUEADAS<br />

Antes <strong>de</strong> utilizar la instrucción FOUT, compruebe que no hay bobinas bloqueadas.<br />

FOUT sobrescribirá cualquier bobina bloqueada <strong>de</strong>ntro <strong>de</strong> un registro <strong>de</strong> <strong>de</strong>stino<br />

sin haberla habilitado. Esto pue<strong>de</strong> provocar daños si se ha bloqueado una bobina<br />

para su reparación o mantenimiento ya que el estado <strong>de</strong> la bobina pue<strong>de</strong> cambiar<br />

como resultado <strong>de</strong> una operación FOUT.<br />

Si no se respetan estas instrucciones, se producirán graves daños<br />

corporales o la muerte.<br />

514 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control activa<br />

fuente: ubicación <strong>de</strong><br />

16 bits sencilla<br />

pointer <strong>de</strong><br />

fuente<br />

registro <strong>de</strong><br />

<strong>de</strong>stino<br />

longitud <strong>de</strong><br />

la cola<br />

FOUT<br />

la cola está llena<br />

la cola está vacía<br />

FOUT: Primera salida<br />

31007526 12/2006 515


FOUT: Primera salida<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Pointer <strong>de</strong><br />

fuente<br />

(nodo superior)<br />

Registro <strong>de</strong><br />

<strong>de</strong>stino<br />

(nodo<br />

intermedio)<br />

Longitud <strong>de</strong> la<br />

cola<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = borra <strong>de</strong> la cola el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong><br />

fuente.<br />

4x WORD Primero <strong>de</strong> una cola <strong>de</strong> registros 4x; contiene el<br />

pointer <strong>de</strong> fuente. El siguiente registro contiguo<br />

será el primer registro <strong>de</strong> la cola.<br />

En la instrucción FOUT, los datos <strong>de</strong> fuente<br />

proce<strong>de</strong>n <strong>de</strong>l registro 4xxxx inferior <strong>de</strong> una cola<br />

llena. El siguiente registro 4xxxx contiguo al<br />

registro <strong>de</strong>l pointer <strong>de</strong> fuente en el nodo<br />

superior es el primer registro <strong>de</strong> la cola. Por<br />

ejemplo, si el nodo superior muestra una<br />

referencia <strong>de</strong> pointer <strong>de</strong> 40100, el primer<br />

registro en la cola será 40101.<br />

El valor trasladado al pointer <strong>de</strong> fuente es igual<br />

al número <strong>de</strong> registros <strong>de</strong> la cola que están<br />

llenos actualmente. El valor <strong>de</strong>l pointer no<br />

pue<strong>de</strong> sobrepasar el valor entero máximo <strong>de</strong><br />

longitud <strong>de</strong> la cola especificado en el nodo<br />

inferior. Si el valor en el pointer <strong>de</strong> fuente es<br />

igual al entero especificado en el nodo inferior,<br />

la salida intermedia transmitirá señal y no se<br />

podrán escribir más datos FIN en la cola hasta<br />

que una instrucción FOUT borre el registro<br />

inferior <strong>de</strong> la cola para el registro <strong>de</strong> <strong>de</strong>stino.<br />

0x, 4x ANY_BIT Registro <strong>de</strong> <strong>de</strong>stino<br />

El <strong>de</strong>stino especificado en el nodo intermedio<br />

pue<strong>de</strong> ser una referencia 0xxxx o un registro<br />

4xxxx. Cuando la cola <strong>de</strong> espera tiene datos y<br />

la entrada <strong>de</strong> control superior <strong>de</strong> FOUT<br />

transmite señal, los datos <strong>de</strong> fuente se borran<br />

<strong>de</strong>l registro inferior <strong>de</strong> la cola y se escriben en<br />

el registro <strong>de</strong> <strong>de</strong>stino.<br />

INT,<br />

UINT<br />

Número <strong>de</strong> registros 4x en la cola. Rango:<br />

1...100<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = cola llena, no es posible copiar más datos<br />

<strong>de</strong> fuente en la cola.<br />

Salida inferior 0x Ninguno ON = cola vacía (valor en el registro <strong>de</strong> pointer<br />

<strong>de</strong> la cola = 0).<br />

516 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Modo <strong>de</strong><br />

funcionamiento<br />

Pointer <strong>de</strong> fuente<br />

(asiento<br />

superior)<br />

Registro <strong>de</strong><br />

<strong>de</strong>stino (asiento<br />

intermedio)<br />

FOUT: Primera salida<br />

La instrucción FOUT funciona junto con la instrucción FIN para producir una cola <strong>de</strong><br />

espera first in-first out (FIFO). Mueve el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong>l registro <strong>de</strong> salida inferior<br />

<strong>de</strong> una cola <strong>de</strong> espera llena a un registro <strong>de</strong> <strong>de</strong>stino o a una palabra que almacena<br />

16 salidas binarias.<br />

FIN<br />

3333 3333<br />

Source<br />

2222<br />

1111<br />

Queue<br />

3333<br />

2222 FOUT<br />

1111 1111<br />

Queue<br />

Destination<br />

FIN<br />

4444 4444<br />

Source<br />

Nota: La instrucción FOUT <strong>de</strong>berá situarse antes que la instrucción FIN en el FIFO<br />

<strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong> para asegurar la eliminación <strong>de</strong> los datos más antiguos antes <strong>de</strong><br />

que entren nuevos datos. Si el bloque FIN tuviera que aparecer primero, no se<br />

tendría en cuenta ningún intento <strong>de</strong> introducir nuevos datos en una cola llena.<br />

En la instrucción FOUT, los datos <strong>de</strong> fuente proce<strong>de</strong>n <strong>de</strong>l registro 4x <strong>de</strong>l extremo<br />

inferior <strong>de</strong> una cola llena. El siguiente registro 4x contiguo al registro <strong>de</strong>l pointer <strong>de</strong><br />

fuente en el asiento superior es el primer registro <strong>de</strong> la cola <strong>de</strong> espera. Por ejemplo,<br />

si el asiento superior muestra una referencia <strong>de</strong> pointer <strong>de</strong> 400100, el primer<br />

registro en la cola será 400101.<br />

El valor trasladado al pointer <strong>de</strong> fuente es igual al número <strong>de</strong> registros <strong>de</strong> la cola<br />

que están llenos actualmente. El valor <strong>de</strong>l pointer no pue<strong>de</strong> sobrepasar el valor<br />

entero máximo <strong>de</strong> longitud <strong>de</strong> la cola especificado en el asiento inferior. Si el valor<br />

en el pointer <strong>de</strong> fuente es igual al entero especificado en el asiento inferior, la salida<br />

intermedia transmitirá señal y no se podrán escribir más datos FIN en la cola hasta<br />

que una instrucción FOUT borre el registro inferior <strong>de</strong> la cola para el registro <strong>de</strong><br />

<strong>de</strong>stino.<br />

El <strong>de</strong>stino especificado en el asiento intermedio pue<strong>de</strong> ser una referencia 0x o un<br />

registro 4x. Cuando la cola <strong>de</strong> espera tiene datos y el asiento superior <strong>de</strong> FOUT<br />

transmite señal, los datos <strong>de</strong> fuente se borran <strong>de</strong>l registro inferior <strong>de</strong> la cola y se<br />

escriben en el registro <strong>de</strong> <strong>de</strong>stino.<br />

31007526 12/2006 517<br />

3333<br />

2222<br />

Queue


FOUT: Primera salida<br />

518 31007526 12/2006


Presentación<br />

FTOI: De coma flotante a entero<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción FTOI.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

88<br />

Apartado Página<br />

Descripción breve 520<br />

Representación 521<br />

31007526 12/2006 519


FTOI: De coma flotante a entero<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción FTOI realiza la conversión <strong>de</strong> un valor <strong>de</strong> coma flotante en un entero<br />

con o sin signo (almacenado en dos registros contiguos <strong>de</strong>l asiento superior) y, a<br />

continuación, almacena en un registro 4x <strong>de</strong>l asiento intermedio el valor <strong>de</strong>l entero<br />

convertido.<br />

520 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

con signo<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

coma flotante<br />

entero<br />

convertido<br />

FTOI: De coma flotante a entero<br />

operación correcta<br />

<strong>de</strong>sbor<strong>de</strong><br />

sin signo > 65.535<br />

con signo > <strong>32</strong>.767<br />

o < -<strong>32</strong>.768<br />

31007526 12/2006 521<br />

FTOI<br />

1<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la conversión.<br />

Entrada inferior 0x, 1x Ninguno ON = operación con signo.<br />

OFF = operación sin signo.<br />

Coma flotante<br />

(nodo superior)<br />

Entero convertido<br />

(nodo intermedio)<br />

1<br />

(nodo inferior)<br />

4x REAL El primero <strong>de</strong> dos registros en espera<br />

contiguos don<strong>de</strong> se almacena el valor <strong>de</strong><br />

coma flotante.<br />

4x INT, UINT El valor <strong>de</strong>l entero convertido se ubica<br />

aquí.<br />

INT, UINT Un valor constante <strong>de</strong> 1 (no se pue<strong>de</strong><br />

cambiar).<br />

Salida superior 0x Ninguno ON = conversión <strong>de</strong>l entero realizada<br />

correctamente.<br />

Salida inferior 0x Ninguno ON = el valor <strong>de</strong>l entero convertido está<br />

fuera <strong>de</strong> rango:<br />

Entero sin signo > 65.535<br />

-<strong>32</strong>.768 > entero con signo > <strong>32</strong>.767


FTOI: De coma flotante a entero<br />

522 31007526 12/2006


Presentación<br />

GD92 - Bloque <strong>de</strong> funciones <strong>de</strong>l<br />

flujo <strong>de</strong> gas<br />

89<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción GD92 AGA nº 3 y AGA nº 8 1992 (método<br />

<strong>de</strong>tallado).<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

Apartado Página<br />

Descripción breve 524<br />

Representación 525<br />

Descripción <strong>de</strong> parámetros - Entradas 527<br />

Descripción <strong>de</strong> parámetros - Salidas 533<br />

Descripción <strong>de</strong> parámetros - Salidas opcionales 534<br />

31007526 12/2006 523


Bloque <strong>de</strong> funciones <strong>de</strong>l flujo <strong>de</strong> gas GD92<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

El bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas permite ejecutar las ecuaciones<br />

AGA 3 (1992) y AGA 8 (1992). Las tasas <strong>de</strong> flujo calculadas cumplen, <strong>de</strong>ntro <strong>de</strong>l<br />

límite <strong>de</strong> 1 ppm, las normas publicadas por AGA (American Gas Association).<br />

La instrucción GD92 utiliza el método <strong>de</strong>tallado <strong>de</strong> caracterización que exige un<br />

conocimiento <strong>de</strong>tallado <strong>de</strong> la composición <strong>de</strong>l gas.<br />

El bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas GD92 sólo se encuentra disponible<br />

en <strong>de</strong>terminados controladores Compact y Micro.<br />

Nota: GD92 no admite seguimiento <strong>de</strong> auditoría API 21.1. GD92 sólo admite una<br />

sola ejecución <strong>de</strong>l medidor.<br />

Nota: Debe instalar el cargable LSUP antes que GD92.<br />

Más información Para obtener información más <strong>de</strong>tallada acerca <strong>de</strong> los cargables <strong>de</strong>l bloque <strong>de</strong><br />

funciones <strong>de</strong> flujo <strong>de</strong> gas, en particular en lo referente a<br />

códigos <strong>de</strong> advertencia/error <strong>de</strong>l sistema (4x+0) para cada instrucción,<br />

códigos <strong>de</strong> advertencia/error <strong>de</strong>l programa (4x+1) para cada instrucción,<br />

seguimiento <strong>de</strong> auditoría API 21.1,<br />

programa <strong>de</strong> ayuda GET_LOGS.EXE,<br />

programa <strong>de</strong> ayuda SET_SIZE.EXE,<br />

consulte Modicon Starling Associates Gas Flow Loadable Function Block User<br />

Gui<strong>de</strong> (manual <strong>de</strong>l usuario <strong>de</strong>l bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas<br />

Modicon Starling Associates), (890 USE 137).<br />

524 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

iniciar operación<br />

advertencia <strong>de</strong>finida<br />

por el usuario<br />

error <strong>de</strong>finido por<br />

el usuario<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

constante<br />

n.º 0001<br />

registro<br />

constante<br />

GD92<br />

n.º 0003<br />

Tipo <strong>de</strong><br />

datos<br />

Bloque <strong>de</strong> funciones <strong>de</strong>l flujo <strong>de</strong> gas GD92<br />

Significado<br />

la operación está activa<br />

advertencia <strong>de</strong>l sistema o<br />

<strong>de</strong>l programa<br />

error <strong>de</strong>l sistema o <strong>de</strong>l<br />

programa<br />

0x, 1x Ninguno ON = en proceso <strong>de</strong> resolución.<br />

Esta entrada inicia el cálculo <strong>de</strong>l flujo <strong>de</strong> gas.<br />

Los cálculos se basan en los parámetros<br />

introducidos en los registros <strong>de</strong> entrada.<br />

Importante: No <strong>de</strong>svincule la entrada superior<br />

mientras se esté ejecutando el bloque. Esto<br />

producirá un error 188 y los datos contenidos<br />

en este bloque se verán dañados.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la<br />

introducción <strong>de</strong> valores, consulte p. 527.)<br />

31007526 12/2006 525


Bloque <strong>de</strong> funciones <strong>de</strong>l flujo <strong>de</strong> gas GD92<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

intermedia<br />

0x, 1x Ninguno Permite establecer una advertencia.<br />

Permite capturar cualquier advertencia o error<br />

<strong>de</strong>finido por el usuario según las necesida<strong>de</strong>s<br />

<strong>de</strong> sus aplicaciones.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la<br />

introducción <strong>de</strong> valores, consulte p. 527.)<br />

Entrada inferior 0x, 1x Ninguno Permite establecer un error y DETENER la<br />

función <strong>de</strong> flujo.<br />

Permite capturar cualquier advertencia o error<br />

<strong>de</strong>finido por el usuario según las necesida<strong>de</strong>s<br />

<strong>de</strong> sus aplicaciones.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la<br />

introducción <strong>de</strong> valores, consulte p. 527.)<br />

Constante n.º<br />

0001<br />

(nodo superior)<br />

Registro<br />

(nodo<br />

intermedio)<br />

n.º 0003<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

4x INT, UINT El nodo superior <strong>de</strong>be contener una constante<br />

n.º 0001.<br />

4x INT, UINT El registro 4x introducido en el nodo intermedio<br />

es el primero <strong>de</strong> un grupo <strong>de</strong> registros en<br />

espera contiguos que incluyen los parámetros<br />

<strong>de</strong> configuración y los valores asociados al<br />

bloque <strong>de</strong> flujo <strong>de</strong> gas.<br />

Importante: No intente modificar el registro 4x<br />

<strong>de</strong>l nodo intermedio mientras el bloque <strong>de</strong> flujo<br />

<strong>de</strong> gas esté funcionando. Per<strong>de</strong>rá los datos y<br />

generará un error 302. Si tiene que modificar el<br />

registro 4x, DETENGA el PLC.<br />

INT, UINT El nodo inferior especifica el tipo <strong>de</strong> cálculo y<br />

<strong>de</strong>be contener una constante n.º 0003.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = advertencia <strong>de</strong>l sistema o <strong>de</strong>l programa.<br />

Salida inferior 0x Ninguno ON = error <strong>de</strong>l sistema o <strong>de</strong>l programa.<br />

526 31007526 12/2006


Descripción <strong>de</strong> parámetros - Entradas<br />

Tabla <strong>de</strong><br />

configuración<br />

Bloque <strong>de</strong> funciones <strong>de</strong>l flujo <strong>de</strong> gas GD92<br />

Debe rellenar todos los valores pertinentes en la tabla <strong>de</strong> configuración mediante el<br />

editor <strong>de</strong> datos <strong>de</strong> referencia en <strong>ProWORX</strong>, Concept o las pantallas DX Zoom en<br />

Modsoft o Meter Manager. La siguiente tabla <strong>de</strong> entrada muestra todos los<br />

parámetros <strong>de</strong> configuración que <strong>de</strong>ben rellenarse.<br />

Las salidas (tabla <strong>de</strong> resultados <strong>de</strong> salidas) y las salidas opcionales (tabla <strong>de</strong><br />

resultados <strong>de</strong> salidas opcionales) muestran los resultados <strong>de</strong>l cálculo <strong>de</strong>l bloque.<br />

Son necesarios algunos <strong>de</strong> dichos parámetros.<br />

Nota: Sólo se permiten las entradas válidas. No se aceptan las entradas que se<br />

encuentran fuera <strong>de</strong> los rangos válidos. Las entradas no válidas producen errores<br />

o advertencias.<br />

Nota: Pue<strong>de</strong> utilizarse Concept 2.1 o posterior para cargar los <strong>bloques</strong> <strong>de</strong> gas.<br />

Sin embargo, Concept y <strong>ProWORX</strong> no proporcionan ayuda o pantallas DX zoom<br />

para la configuración. Cuando se utiliza el software <strong>de</strong> panel <strong>ProWORX</strong> o Concept,<br />

es recomendable utilizar Meter Manager para llevar a cabo la configuración.<br />

Entradas A continuación, se muestra una <strong>de</strong>scripción <strong>de</strong>tallada <strong>de</strong> las variables <strong>de</strong><br />

configuración para el bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GD92.<br />

Entradas Descripción<br />

4xxxx+3: <strong>de</strong> 1 a 2 Ubicación <strong>de</strong> conexiones<br />

1 - Arriba<br />

2 - Abajo<br />

4xxxx+3: <strong>de</strong> 3 a 4 Material <strong>de</strong>l tubo <strong>de</strong>l medidor<br />

1 - Acero inoxidable<br />

2 - Monel<br />

3 - Acero al carbono<br />

4xxxx+3: <strong>de</strong> 5 a 6 Material <strong>de</strong>l orificio<br />

1 - Acero inoxidable<br />

2 - Monel<br />

3 - Acero al carbono<br />

4xxxx+3: <strong>de</strong> 7 a 8 Reservadas para uso futuro (no utilizar)<br />

4xxxx+3: <strong>de</strong> 9 a 10 Salidas opcionales<br />

1 - Sí<br />

2 - No<br />

Nota: Cuando únicamente se utilizan las salidas estándar, la salida<br />

cargable sólo usa 157 registros 4xxxx. Cuando se utilizan las salidas<br />

opcionales, la salida cargable utiliza 181 registros 4xxxx<br />

31007526 12/2006 527


Bloque <strong>de</strong> funciones <strong>de</strong>l flujo <strong>de</strong> gas GD92<br />

Entradas Descripción<br />

4xxxx+3: <strong>de</strong> 11 a 16 Reservadas para uso futuro (no utilizar)<br />

4xxxx+4: 1 Presión manométrica/absoluta<br />

0 - Presión estática medida en unida<strong>de</strong>s absolutas<br />

1 - Presión estática medida en unida<strong>de</strong>s manométricas<br />

4xxxx+4: 2 Desconexión <strong>de</strong> flujo bajo<br />

0 - No utilizar <strong>de</strong>sconexión <strong>de</strong> flujo<br />

1 - Utilizar <strong>de</strong>sconexión <strong>de</strong> flujo<br />

4xxxx+4: <strong>de</strong> 3 a 6 Cargar comando<br />

0 - Listo para aceptar el comando<br />

1 - CMD: enviar configuración a tabla interna <strong>de</strong>s<strong>de</strong> 4xxxx<br />

2 - CMD: leer configuración <strong>de</strong>s<strong>de</strong> tabla interna a 4xxxx<br />

3 - CMD: restablecer registro <strong>de</strong> cambio <strong>de</strong> configuración API 21.1<br />

4xxxx+4: <strong>de</strong> 7 a 8 Tipo <strong>de</strong> entrada<br />

1 - Pointers 3xxxx introducidos en 4x+6...4x+10<br />

2 - Valores <strong>de</strong> entrada introducidos en 4x+6...4x+10<br />

4xxxx+4: <strong>de</strong> 9 a 10 Porcentaje <strong>de</strong> límites <strong>de</strong> error en moles<br />

1 - Habilitar<br />

2 - Bloquear<br />

4xxxx+4: <strong>de</strong> 11 a 12 Opción <strong>de</strong> presión diferencial <strong>de</strong> rango dual<br />

1 - Sí<br />

2 - No<br />

4xxxx+4: <strong>de</strong> 13 a 14 Compresible/Incompresible<br />

1 - Compresible<br />

2 - Incompresible<br />

4xxxx+4: <strong>de</strong> 15 a 16 Métodos <strong>de</strong> promedio<br />

0 - Lineal pon<strong>de</strong>rado temporalmente y <strong>de</strong>pendiente <strong>de</strong>l flujo<br />

1 - Formulaico pon<strong>de</strong>rado temporalmente y <strong>de</strong>pendiente <strong>de</strong>l flujo<br />

2 - Lineal pon<strong>de</strong>rado por flujo<br />

3 - Formulaico pon<strong>de</strong>rado por flujo<br />

Nota: Para la mayoría <strong>de</strong> las aplicaciones se utilizará 0.<br />

4xxxx+5: <strong>de</strong> 1 a 2 Unida<strong>de</strong>s <strong>de</strong> medida<br />

1 - EE.UU.<br />

2 - Métricas (SI)<br />

4xxxx+5: <strong>de</strong> 3 a 16 Reservadas para uso futuro (no utilizar)<br />

4xxxx+6 Valor <strong>de</strong> entrada o pointer 3xxxx <strong>de</strong> temperatura<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+7 Valor <strong>de</strong> entrada o pointer 3xxxx <strong>de</strong> presión (absoluta)<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+8 Presión diferencial 1, valor <strong>de</strong> entrada o pointer 3xxxx<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+9 Presión diferencial 2, valor <strong>de</strong> entrada o pointer 3xxxx<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

528 31007526 12/2006


Entradas Descripción<br />

Bloque <strong>de</strong> funciones <strong>de</strong>l flujo <strong>de</strong> gas GD92<br />

4xxxx+10 Temperatura mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+11 Temperatura máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+12 Presión mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+13 Presión máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+14 Presión diferencial mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 1<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+15 Presión diferencial máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 1<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+16 Presión diferencial mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 2<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+17 Presión diferencial máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 2<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+18 a 19 Temperatura mínima en unida<strong>de</strong>s físicas<br />

De -200 a 760° F (<strong>de</strong> -128,89 a 404,4° C)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+20 a 21 Temperatura máxima en unida<strong>de</strong>s físicas<br />

De -200 a 760° F (<strong>de</strong> -128,89 a 404,4° C)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+22 a 23 Presión mínima en unida<strong>de</strong>s físicas<br />

De 0 a 40.000 psia (<strong>de</strong> 0 a 275.790,28 kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+24 a 25 Presión máxima en unida<strong>de</strong>s físicas<br />

De 0 a 40.000 psia (<strong>de</strong> 0 a 275.790,28 kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+26 a 27 Presión diferencial mínima en unida<strong>de</strong>s físicas 1<br />

>= 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+28 a 29 Presión diferencial máxima en unida<strong>de</strong>s físicas 1<br />

> 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+30 a 31 Presión diferencial mínima en unida<strong>de</strong>s físicas 2<br />

>= 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+<strong>32</strong> a 33 Presión diferencial máxima en unida<strong>de</strong>s físicas 2<br />

> 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

31007526 12/2006 529


Bloque <strong>de</strong> funciones <strong>de</strong>l flujo <strong>de</strong> gas GD92<br />

Entradas Descripción<br />

4xxxx+34 a 35 Diámetro <strong>de</strong> la placa <strong>de</strong> orificio, dr (0 < dr < 100 pulgadas) (0 < dr < 2.540 mm)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+36 a 37 Temperatura <strong>de</strong> medición <strong>de</strong>l diámetro <strong>de</strong> la placa <strong>de</strong> orificio, Tr (<strong>32</strong>


Entradas Descripción<br />

Bloque <strong>de</strong> funciones <strong>de</strong>l flujo <strong>de</strong> gas GD92<br />

4xxxx+79 a 80 Presión atmosférica, Pat (3


Bloque <strong>de</strong> funciones <strong>de</strong>l flujo <strong>de</strong> gas GD92<br />

Entradas Descripción<br />

4xxxx+105 a 106 Porcentaje <strong>de</strong> n-butano en moles, xi *(0,0


Descripción <strong>de</strong> parámetros - Salidas<br />

Tabla <strong>de</strong><br />

resultados <strong>de</strong><br />

salidas<br />

Las salidas muestran los resultados <strong>de</strong> cálculos <strong>de</strong>l bloque.<br />

Bloque <strong>de</strong> funciones <strong>de</strong>l flujo <strong>de</strong> gas GD92<br />

Salidas Descripción<br />

4xxxx+0 Advertencia <strong>de</strong>l sistema/código <strong>de</strong> error (visualizado en modalidad<br />

hexa<strong>de</strong>cimal).<br />

4xxxx+1 Advertencia <strong>de</strong>l programa/código <strong>de</strong> error.<br />

4xxxx+2 Número <strong>de</strong> la versión (visualizado en modalidad hexa<strong>de</strong>cimal).<br />

4xxxx+125 a 126 Temperatura en condiciones <strong>de</strong> flujo (Tf ) (°F o °C).<br />

4xxxx+127 a 128 Presión (Pf) (psia o kPa).<br />

4xxxx+129 a 130 Presión diferencial (hw) (en H2O o kPa).<br />

4xxxx+131 a 1<strong>32</strong> Valor integral (IV).<br />

4xxxx+133 a 134 Valor multiplicador integral (IMV).<br />

4xxxx+135 a 136 Tasa <strong>de</strong> flujo <strong>de</strong> volumen en condiciones básicas (Tb , Pb ), Qb (pies3 /h o m3 /h).<br />

4xxxx+137 a 138 Tasa <strong>de</strong> flujo <strong>de</strong> masa (Qm) (lbm/h o kg/h).<br />

4xxxx+139 a 140 Volumen acumulado, día actual.<br />

4xxxx+141 a 142 Volumen acumulado, última hora.<br />

4xxxx+143 a 144 Volumen acumulado, último día.<br />

4xxxx+145 a 146 Temperatura media, último día.<br />

4xxxx+147 a 148 Presión media, último día.<br />

4xxxx+149 a 150 Presión diferencial media, último día.<br />

4xxxx+151 a 152 Valor integral medio, último día.<br />

4xxxx+153 a 154 Tasa <strong>de</strong> flujo <strong>de</strong> volumen media en condiciones básicas (Tb , Pb ) para el<br />

último día.<br />

4xxxx+155: 13 La tabla 4xxxx difiere con respecto a la configuración real.<br />

4xxxx+155: 14 Latido completo <strong>de</strong> ejecución <strong>de</strong> tasa <strong>de</strong> flujo.<br />

4xxxx+155: 15 Latido <strong>de</strong> funcionamiento <strong>de</strong>l bloque.<br />

4xxxx+155: 16 Flag <strong>de</strong> fin <strong>de</strong> día.<br />

31007526 12/2006 533


Bloque <strong>de</strong> funciones <strong>de</strong>l flujo <strong>de</strong> gas GD92<br />

Descripción <strong>de</strong> parámetros - Salidas opcionales<br />

Tabla <strong>de</strong><br />

configuración <strong>de</strong><br />

salidas<br />

opcionales<br />

Las salidas opcionales muestran los resultados <strong>de</strong> cálculos <strong>de</strong>l bloque. Sólo están<br />

en estado activo si 4x+3: 9...10 es 1.<br />

Salidas opcionales Descripción<br />

4xxxx+156 a 157 Compresibilidad en condiciones <strong>de</strong> flujo (Tf , Pf ), Zf .<br />

4xxxx+158 a 159 Compresibilidad en condiciones básicas (Tb, Pb), Zb. 4xxxx+160 a 161 Compresibilidad en condiciones normales (Ts, Ps), Zs. 4xxxx+162 a 163 Densidad en condiciones <strong>de</strong> flujo <strong>de</strong> fluido (Pt,p). 4xxxx+164 a 165 Densidad <strong>de</strong>l fluido en condiciones básicas (ρ).<br />

4xxxx+166 a 167 Supercompresibilidad (Fpv). 4xxxx+168 a 169 Densidad relativa <strong>de</strong>l gas (Gr). 4xxxx+170 a 171 Coeficiente <strong>de</strong> <strong>de</strong>scarga <strong>de</strong> la placa <strong>de</strong> orificio (Cd ).<br />

4xxxx+172 a 173 Factor <strong>de</strong> expansión (Y).<br />

4xxxx+174 a 175 Factor <strong>de</strong> velocidad <strong>de</strong> acercamiento (Ev). 4xxxx+176 a 177 Tasa <strong>de</strong> flujo <strong>de</strong> volumen en condiciones <strong>de</strong> flujo (Tf , Pf ),<br />

Qf. 4xxxx+178 a 179 Reservadas para uso futuro (no utilizar)<br />

4xxxx+180 Flag <strong>de</strong> límites <strong>de</strong> coeficiente <strong>de</strong> <strong>de</strong>scarga <strong>de</strong> la placa <strong>de</strong><br />

orificio en esquema iterativo (Cd-f). 534 31007526 12/2006


Presentación<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong><br />

gas GFNX AGA n.º 3 ‘85 y NX19 ‘68<br />

90<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción GFNX AGA n.º 3 ‘85 y NX19 ‘68.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

Apartado Página<br />

Descripción breve 536<br />

Representación 537<br />

Descripción <strong>de</strong> parámetros - Entradas 539<br />

Descripción <strong>de</strong> parámetros - Salidas 546<br />

Descripción <strong>de</strong> parámetros - Salidas opcionales 547<br />

31007526 12/2006 535


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

El bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas NX19 API 21.1 y GFNX AGA n.º 3<br />

‘85 está disponible sólo en ciertos controladores Compact y Micro.<br />

El bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas permite ejecutar las ecuaciones<br />

AGA 3 (1992) y AGA 8 (1992). Las tasas <strong>de</strong> flujo calculadas cumplen, <strong>de</strong>ntro <strong>de</strong>l<br />

límite <strong>de</strong> 1 ppm, las normas publicadas por AGA (American Gas Association).<br />

La instrucción GFNX utiliza el método <strong>de</strong>tallado <strong>de</strong> caracterización que exige un<br />

conocimiento <strong>de</strong>tallado <strong>de</strong> la composición <strong>de</strong>l gas.<br />

Nota: Debe instalar el cargable LSUP antes que GFNX.<br />

Más información Para obtener información más <strong>de</strong>tallada acerca <strong>de</strong> los cargables <strong>de</strong>l bloque <strong>de</strong><br />

funciones <strong>de</strong> flujo <strong>de</strong> gas, en particular en lo referente a<br />

códigos <strong>de</strong> advertencia/error <strong>de</strong>l sistema (4x+0) para cada instrucción,<br />

códigos <strong>de</strong> advertencia/error <strong>de</strong>l programa (4x+1) para cada instrucción,<br />

seguimiento <strong>de</strong> auditoría API 21.1,<br />

programa <strong>de</strong> ayuda GET_LOGS.EXE,<br />

programa <strong>de</strong> ayuda SET_SIZE.EXE,<br />

consulte Modicon Starling Associates Gas Flow Loadable Function Block User<br />

Gui<strong>de</strong> (manual <strong>de</strong>l usuario <strong>de</strong>l bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas<br />

Modicon Starling Associates), (890 USE 137).<br />

536 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

iniciar operación<br />

advertencia <strong>de</strong>finida<br />

por el usuario<br />

error <strong>de</strong>finido por el<br />

usuario<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

constante<br />

n.º 0001<br />

registro<br />

método<br />

GFNX<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX<br />

la operación está activa<br />

advertencia <strong>de</strong>l sistema o<br />

<strong>de</strong>l programa<br />

error <strong>de</strong>l sistema o <strong>de</strong>l<br />

programa<br />

0x, 1x Ninguno ON = en proceso <strong>de</strong> resolución.<br />

Esta entrada inicia el cálculo <strong>de</strong>l flujo <strong>de</strong> gas.<br />

Los cálculos se basan en los parámetros<br />

introducidos en los registros <strong>de</strong> entrada.<br />

Importante: No <strong>de</strong>svincule la entrada superior<br />

mientras se esté ejecutando el bloque. Esto<br />

producirá un error 188 y los datos contenidos en<br />

este bloque se verán dañados.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la introducción <strong>de</strong><br />

valores, consulte p. 539.)<br />

31007526 12/2006 537


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

intermedia<br />

Entrada<br />

inferior<br />

Constante<br />

n.º 0001<br />

(nodo<br />

superior)<br />

Registro<br />

(nodo<br />

intermedio)<br />

Método<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Salida<br />

inferior<br />

Tipo <strong>de</strong><br />

datos<br />

0x, 1x Ninguno Permite establecer una advertencia.<br />

Permite establecer una advertencia y registrar<br />

activida<strong>de</strong>s periféricas en la ruta <strong>de</strong> auditoría e<br />

incluso registrarse sin necesidad <strong>de</strong> <strong>de</strong>tener el<br />

bloque.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la introducción <strong>de</strong><br />

valores, consulte p. 539.)<br />

0x, 1x Ninguno Permite establecer un error y DETENER la función<br />

<strong>de</strong> flujo.<br />

Permite establecer un error, registrar errores<br />

periféricos en el registro <strong>de</strong> evento <strong>de</strong> seguimiento<br />

<strong>de</strong> auditoría y DETENER la función <strong>de</strong> flujo.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la introducción <strong>de</strong><br />

valores, consulte p. 539.)<br />

4x INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

INT,<br />

UINT<br />

Significado<br />

El nodo superior <strong>de</strong>be contener una constante n.º<br />

0001.<br />

El registro 4x introducido en el nodo intermedio es<br />

el primero <strong>de</strong> un grupo <strong>de</strong> registros en espera<br />

contiguos que incluyen los parámetros <strong>de</strong><br />

configuración y los valores asociados al bloque <strong>de</strong><br />

flujo <strong>de</strong> gas.<br />

Importante: No intente modificar el registro 4x <strong>de</strong>l<br />

nodo intermedio mientras el bloque <strong>de</strong> flujo <strong>de</strong> gas<br />

esté funcionando. Per<strong>de</strong>rá los datos y generará un<br />

error 302. Si tiene que modificar el registro 4x,<br />

DETENGA el PLC.<br />

El nodo inferior especifica el tipo <strong>de</strong> cálculo y <strong>de</strong>be<br />

contener una constante.<br />

Importante: Utilice entradas válidas<br />

exclusivamente. Otras entradas <strong>de</strong>niegan el<br />

acceso a las pantallas DX Zoom <strong>de</strong>l bloque.<br />

0x Ninguno ON = operación correcta.<br />

0x Ninguno ON = advertencia <strong>de</strong>l sistema o <strong>de</strong>l programa.<br />

0x Ninguno ON = error <strong>de</strong>l sistema o <strong>de</strong>l programa.<br />

538 31007526 12/2006


Descripción <strong>de</strong> parámetros - Entradas<br />

Tabla <strong>de</strong><br />

configuración<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX<br />

Debe rellenar todos los valores pertinentes en la tabla <strong>de</strong> configuración mediante el<br />

editor <strong>de</strong> datos <strong>de</strong> referencia en <strong>ProWORX</strong>, Concept o las pantallas DX Zoom en<br />

Modsoft o Meter Manager. La siguiente tabla <strong>de</strong> entrada muestra todos los<br />

parámetros <strong>de</strong> configuración que <strong>de</strong>ben rellenarse.<br />

Las salidas (tabla <strong>de</strong> resultados <strong>de</strong> salidas) y las salidas opcionales (tabla <strong>de</strong><br />

resultados <strong>de</strong> salidas opcionales) muestran los resultados <strong>de</strong>l cálculo <strong>de</strong>l bloque.<br />

Son necesarios algunos <strong>de</strong> dichos parámetros.<br />

Nota: Sólo se permiten las entradas válidas. No se aceptan las entradas que se<br />

encuentran fuera <strong>de</strong> los rangos válidos. Las entradas no válidas producen errores<br />

o advertencias.<br />

Nota: Pue<strong>de</strong> utilizarse Concept 2.1 o posterior para cargar los <strong>bloques</strong> <strong>de</strong> gas.<br />

Sin embargo, Concept y <strong>ProWORX</strong> no proporcionan ayuda ni pantallas DX zoom<br />

para la configuración. Cuando se utiliza el software <strong>de</strong> panel <strong>ProWORX</strong> o Concept,<br />

es recomendable utilizar Meter Manager para llevar a cabo la configuración.<br />

Entradas A continuación, se muestra una <strong>de</strong>scripción <strong>de</strong>tallada <strong>de</strong> las variables <strong>de</strong><br />

configuración para el bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX.<br />

Entradas Descripción<br />

4xxxx+3: <strong>de</strong> 1 a 2 Ubicación <strong>de</strong> conexiones<br />

1 - Arriba<br />

2 - Abajo<br />

4xxxx+3: <strong>de</strong> 3 a 4 Material <strong>de</strong>l tubo <strong>de</strong>l medidor<br />

1 - Acero inoxidable<br />

2 - Monel<br />

3 - Acero al carbono<br />

4xxxx+3: <strong>de</strong> 5 a 6 Material <strong>de</strong>l orificio<br />

1 - Acero inoxidable<br />

2 - Monel<br />

3 - Acero al carbono<br />

4xxxx+3: <strong>de</strong> 7 a 8 Reservadas para uso futuro (no utilizar)<br />

4xxxx+3: <strong>de</strong> 9 a 10 Salidas opcionales<br />

1 - Sí<br />

2 - No<br />

Nota: Cuando únicamente se utilizan las salidas estándar, la salida<br />

cargable sólo usa 157 registros 4xxxx. Cuando se utilizan las salidas<br />

opcionales, el cargable utiliza 181 registros 4xxxx.<br />

31007526 12/2006 539


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX<br />

Entradas Descripción<br />

4xxxx+3: <strong>de</strong> 11 a 16 Reservadas para uso futuro (no utilizar)<br />

4xxxx+4: 1 Presión manométrica/absoluta<br />

0 - Presión estática medida en unida<strong>de</strong>s absolutas<br />

1 - Presión estática medida en unida<strong>de</strong>s manométricas<br />

4xxxx+4: 2 Desconexión <strong>de</strong> flujo bajo<br />

0 - No utilizar <strong>de</strong>sconexión <strong>de</strong> flujo<br />

1 - Utilizar <strong>de</strong>sconexión <strong>de</strong> flujo<br />

4xxxx+4: <strong>de</strong> 3 a 6 Cargar comando<br />

0 - Listo para aceptar el comando<br />

1 - CMD: enviar configuración a tabla interna <strong>de</strong>s<strong>de</strong> 4xxxx<br />

2 - CMD: leer configuración <strong>de</strong>s<strong>de</strong> tabla interna a 4xxxx<br />

3 - CMD: restablecer registro <strong>de</strong> cambio <strong>de</strong> configuración API 21.1<br />

4xxxx+4: <strong>de</strong> 7 a 8 Tipo <strong>de</strong> entrada<br />

1 - Pointers 3xxxx introducidos en 4x+6...4x+10<br />

2 - Valores <strong>de</strong> entrada introducidos en 4x+6...4x+10<br />

4xxxx+4: <strong>de</strong> 9 a 10 Porcentaje <strong>de</strong> límites <strong>de</strong> error en moles<br />

1 - Habilitar<br />

2 - Bloquear<br />

4xxxx+4: <strong>de</strong> 11 a 12 Opción <strong>de</strong> presión diferencial <strong>de</strong> rango dual<br />

1 - Sí<br />

2 - No<br />

4xxxx+4: <strong>de</strong> 13 a 14 Compresible/Incompresible<br />

1 - Compresible<br />

2 - Incompresible<br />

4xxxx+4: <strong>de</strong> 15 a 16 Métodos <strong>de</strong> promedio<br />

0 - Lineal pon<strong>de</strong>rado temporalmente y <strong>de</strong>pendiente <strong>de</strong>l flujo<br />

1 - Formulaico pon<strong>de</strong>rado temporalmente y <strong>de</strong>pendiente <strong>de</strong>l flujo<br />

2 - Lineal pon<strong>de</strong>rado por flujo<br />

3 - Formulaico pon<strong>de</strong>rado por flujo<br />

Nota: Para la mayoría <strong>de</strong> las aplicaciones se utilizará 0.<br />

4xxxx+5: <strong>de</strong> 1 a 2 Unida<strong>de</strong>s <strong>de</strong> medida<br />

1 - EE.UU.<br />

2 - Métricas (SI)<br />

4xxxx+5: <strong>de</strong> 3 a 14 Reservadas para uso futuro (no utilizar)<br />

4xxxx+5: <strong>de</strong> 15 a 16 Reservadas para API 21.1.<br />

4xxxx+6 Valor <strong>de</strong> entrada o pointer 3xxxx <strong>de</strong> temperatura<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+7 Valor <strong>de</strong> entrada o pointer 3xxxx <strong>de</strong> presión (absoluta)<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+8 Presión diferencial 1, valor <strong>de</strong> entrada o pointer 3xxxx<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+9 Presión diferencial 2, valor <strong>de</strong> entrada o pointer 3xxxx<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

540 31007526 12/2006


Entradas Descripción<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX<br />

4xxxx+10 Temperatura mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+11 Temperatura máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+12 Presión mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+13 Presión máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+14 Presión diferencial mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 1<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+15 Presión diferencial máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 1<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+16 Presión diferencial mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 2<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+17 Presión diferencial máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 2<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+18 a 19 Temperatura mínima en unida<strong>de</strong>s físicas<br />

-40 a 240° F (-40 a 115,5556° C)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+20 a 21 Temperatura máxima en unida<strong>de</strong>s físicas<br />

-40 a 240° F (-40 a 115,5556° C)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+22 a 23 Presión mínima en unida<strong>de</strong>s físicas<br />

0 a 5.000 psia (0 a 34.473,785 kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+24 a 25 Presión máxima en unida<strong>de</strong>s físicas<br />

0 a 5.000 psia (0 a 34.473,785 kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+26 a 27 Presión diferencial mínima en unida<strong>de</strong>s físicas 1<br />

>= 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+28 a 29 Presión diferencial máxima en unida<strong>de</strong>s físicas 1<br />

> 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+30 a 31 Presión diferencial mínima en unida<strong>de</strong>s físicas 2<br />

>= 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+<strong>32</strong> a 33 Presión diferencial máxima en unida<strong>de</strong>s físicas 2<br />

> 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

31007526 12/2006 541


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX<br />

Entradas Descripción<br />

4xxxx+34 a 35 Diámetro <strong>de</strong> la placa <strong>de</strong> orificio, dr (0 < dr < 100 pulgadas) (0 < dr < 2.540 mm)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+36 a 37 Temperatura <strong>de</strong> medición <strong>de</strong>l diámetro <strong>de</strong> la placa <strong>de</strong> orificio, Tr (<strong>32</strong>


Entradas <strong>de</strong><br />

método<br />

<strong>de</strong>tallado 11<br />

Las siguientes entradas se aplican al método <strong>de</strong>tallado 11.<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX<br />

Entradas Descripción<br />

Se aplica cuando se utiliza el método <strong>de</strong>tallado 11<br />

4xxxx+83 a 84 Porcentaje <strong>de</strong> metano en moles, xi *(0,0


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX<br />

Entradas Descripción<br />

Se aplica cuando se utiliza el método <strong>de</strong>tallado 11<br />

4xxxx+105 a 106 Porcentaje <strong>de</strong> n-butano en moles, xi *(0,0


Entradas <strong>de</strong><br />

métodos en<br />

bruto 10, 12 y 13.<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX<br />

Las siguientes entradas se aplican a los métodos en bruto 10, 12 y 13.<br />

Entradas Descripción<br />

Se aplica cuando se utilizan los métodos en bruto 10, 12 y 13<br />

4xxxx+83 a 84 Porcentaje <strong>de</strong> metano en moles, xi *(0,0


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX<br />

Descripción <strong>de</strong> parámetros - Salidas<br />

Tabla <strong>de</strong><br />

resultados <strong>de</strong><br />

salidas<br />

Las salidas muestran los resultados <strong>de</strong> cálculos <strong>de</strong>l bloque.<br />

Salidas Descripción<br />

4xxxx+0 Advertencia <strong>de</strong>l sistema/código <strong>de</strong> error (visualizado en modalidad<br />

hexa<strong>de</strong>cimal).<br />

4xxxx+1 Advertencia <strong>de</strong>l programa/código <strong>de</strong> error.<br />

4xxxx+2 Número <strong>de</strong> la versión (visualizado en modalidad hexa<strong>de</strong>cimal).<br />

4xxxx+125 a 126 Temperatura en condiciones <strong>de</strong> flujo (Tf) (°F o °C).<br />

4xxxx+127 a 128 Presión (Pf) (psia o kPa).<br />

4xxxx+129 a 130 Presión diferencial (hw) (en H2O o kPa).<br />

4xxxx+131 a 1<strong>32</strong> Valor integral (IV).<br />

4xxxx+133 a 134 Valor multiplicador integral (IMV).<br />

4xxxx+135 a 136 Tasa <strong>de</strong> flujo <strong>de</strong> volumen en condiciones básicas (Tb, Pb), Qb pies3 /h o m3 4xxxx+137 a 138<br />

/h.<br />

Reservadas para uso futuro (no utilizar)<br />

4xxxx+139 a 140 Volumen acumulado, día actual.<br />

4xxxx+141 a 142 Volumen acumulado, última hora.<br />

4xxxx+143 a 144 Volumen acumulado, último día.<br />

4xxxx+145 a 152 Reservadas para API 21.1.<br />

4xxxx+153 Valor <strong>de</strong> advertencia/error <strong>de</strong>finidos por el usuario (uso para la interfaz<br />

API 21.1).<br />

4xxxx+155: 13 La tabla 4xxxx difiere con respecto a la configuración real.<br />

4xxxx+155: 14 Latido completo <strong>de</strong> ejecución <strong>de</strong> tasa <strong>de</strong> flujo.<br />

4xxxx+155: 15 Latido <strong>de</strong> funcionamiento <strong>de</strong>l bloque.<br />

4xxxx+155: 16 Flag <strong>de</strong> fin <strong>de</strong> día.<br />

Nota: Este bit <strong>de</strong> estado no aparece en la pantalla DX Zoom pero se<br />

pue<strong>de</strong> utilizar en el programa lógico.<br />

546 31007526 12/2006


Descripción <strong>de</strong> parámetros - Salidas opcionales<br />

Tabla <strong>de</strong><br />

configuración <strong>de</strong><br />

salidas<br />

opcionales<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX<br />

Las salidas opcionales muestran los resultados <strong>de</strong> cálculos <strong>de</strong>l bloque. Sólo están<br />

en estado activo si 4x+3: 9...10 es 1.<br />

Salidas opcionales Descripción<br />

4xxxx+156 a 165 Reservadas para uso futuro (no utilizar)<br />

4xxxx+166 a 167 Supercompresibilidad, Fpv 4xxxx+168 a 169 Densidad relativa <strong>de</strong>l gas, G r<br />

4xxxx+170 a 171 Reservadas para uso futuro (no utilizar)<br />

4xxxx+172 a 173 Factor <strong>de</strong> expansión, Y<br />

4xxxx+174 a 180 Reservadas para uso futuro (no utilizar)<br />

31007526 12/2006 547


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GFNX<br />

548 31007526 12/2006


Presentación<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo<br />

<strong>de</strong> gas con método en bruto<br />

GG92 AGA n.º 3 1992<br />

91<br />

Introducción Este capítulo <strong>de</strong>scribe la instrucción <strong>de</strong>l bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con<br />

método en bruto GG92 AGA n.º 3 y AGA n.º 8 1992.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

Apartado Página<br />

Descripción breve 550<br />

Representación 551<br />

Descripción <strong>de</strong> parámetros - Entradas 553<br />

Descripción <strong>de</strong> parámetros - Salidas 558<br />

Descripción <strong>de</strong> parámetros - Salidas opcionales 559<br />

31007526 12/2006 549


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método en bruto GG92<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

El bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas GG92 sólo se encuentra disponible<br />

en <strong>de</strong>terminados controladores Compact y Micro.<br />

El bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas permite ejecutar las ecuaciones<br />

AGA 3 (1992) y AGA 8 (1992). Las tasas <strong>de</strong> flujo calculadas cumplen, <strong>de</strong>ntro <strong>de</strong>l<br />

límite <strong>de</strong> 1 ppm, las normas publicadas por AGA (American Gas Association). La<br />

GG92 permite el seguimiento <strong>de</strong> auditoría API 21.1. La GG92 permite ocho<br />

transferencias.<br />

La instrucción GG92 utiliza el método <strong>de</strong>tallado <strong>de</strong> caracterización que exige un<br />

conocimiento <strong>de</strong>tallado <strong>de</strong> la composición <strong>de</strong>l gas.<br />

Nota: Debe instalar el cargable LSUP antes que GG92.<br />

Más información Para obtener información más <strong>de</strong>tallada acerca <strong>de</strong> los cargables <strong>de</strong>l bloque <strong>de</strong><br />

funciones <strong>de</strong> flujo <strong>de</strong> gas, en particular en lo referente a<br />

códigos <strong>de</strong> advertencia/error <strong>de</strong>l sistema (4x+0) para cada instrucción,<br />

códigos <strong>de</strong> advertencia/error <strong>de</strong>l programa (4x+1) para cada instrucción,<br />

seguimiento <strong>de</strong> auditoría API 21.1,<br />

programa <strong>de</strong> ayuda GET_LOGS.EXE,<br />

programa <strong>de</strong> ayuda SET_SIZE.EXE,<br />

consulte Modicon Starling Associates Gas Flow Loadable Function Block User<br />

Gui<strong>de</strong> (manual <strong>de</strong>l usuario <strong>de</strong>l bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas<br />

Modicon Starling Associates), (890 USE 137).<br />

550 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

iniciar operación<br />

advertencia <strong>de</strong>finida por<br />

el usuario<br />

error <strong>de</strong>finido por el<br />

usuario<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método en bruto GG92<br />

constante<br />

n.º 0001<br />

registro<br />

método<br />

GG92<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

la operación está activa<br />

advertencia <strong>de</strong>l sistema o<br />

<strong>de</strong>l programa<br />

error <strong>de</strong>l sistema o <strong>de</strong>l<br />

programa<br />

0x, 1x Ninguno ON = en proceso <strong>de</strong> resolución.<br />

Esta entrada inicia el cálculo <strong>de</strong>l flujo <strong>de</strong> gas.<br />

Los cálculos se basan en los parámetros<br />

introducidos en los registros <strong>de</strong> entrada.<br />

Importante: No <strong>de</strong>svincule la entrada superior<br />

mientras se esté ejecutando el bloque. Esto<br />

producirá un error 188 y los datos contenidos en<br />

este bloque se verán dañados.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la introducción <strong>de</strong><br />

valores, consulte p. 553.)<br />

0x, 1x Ninguno Permite establecer una advertencia.<br />

Permite establecer una advertencia y registrar<br />

activida<strong>de</strong>s periféricas en el registro <strong>de</strong> evento <strong>de</strong><br />

seguimiento <strong>de</strong> auditoría sin <strong>de</strong>tener el bloque.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la introducción <strong>de</strong><br />

valores, consulte p. 553.)<br />

31007526 12/2006 551


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método en bruto GG92<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

inferior<br />

Constante<br />

n.º 0001<br />

(nodo<br />

superior)<br />

Registro<br />

(nodo<br />

intermedio)<br />

Método<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Salida<br />

inferior<br />

Tipo <strong>de</strong><br />

datos<br />

0x, 1x Ninguno Permite establecer un error y DETENER la función<br />

<strong>de</strong> flujo.<br />

Permite establecer un error, registrar errores<br />

periféricos en el registro <strong>de</strong> evento <strong>de</strong> seguimiento<br />

<strong>de</strong> auditoría y DETENER la función <strong>de</strong> flujo.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la introducción <strong>de</strong><br />

valores, consulte p. 553.)<br />

4x INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

INT,<br />

UINT<br />

Significado<br />

El nodo superior <strong>de</strong>be contener una constante n.º<br />

0001.<br />

El registro 4x introducido en el nodo intermedio es<br />

el primero <strong>de</strong> un grupo <strong>de</strong> registros en espera<br />

contiguos que incluyen los parámetros <strong>de</strong><br />

configuración y los valores asociados al bloque <strong>de</strong><br />

flujo <strong>de</strong> gas.<br />

Importante: No intente modificar el registro 4x <strong>de</strong>l<br />

nodo intermedio mientras el bloque <strong>de</strong> flujo <strong>de</strong> gas<br />

esté funcionando. Si lo modifica per<strong>de</strong>rá los datos.<br />

Si necesita modificar un registro 4x, DETENGA<br />

primero el PLC.<br />

El nodo inferior especifica el tipo <strong>de</strong> cálculo y <strong>de</strong>be<br />

contener una constante n.º 0003.<br />

El valor entero introducido en el nodo inferior<br />

especifica el método <strong>de</strong> caracterización:<br />

1 – Método en bruto 1 (HV-Gr-CO 2).<br />

2 – Método en bruto 2 (Gr-CO 2-N 2).<br />

0x Ninguno ON = operación correcta.<br />

0x Ninguno ON = advertencia <strong>de</strong>l sistema o <strong>de</strong>l programa.<br />

0x Ninguno ON = error <strong>de</strong>l sistema o <strong>de</strong>l programa.<br />

552 31007526 12/2006


Descripción <strong>de</strong> parámetros - Entradas<br />

Tabla <strong>de</strong><br />

configuración<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método en bruto GG92<br />

Debe rellenar todos los valores pertinentes en la tabla <strong>de</strong> configuración mediante el<br />

editor <strong>de</strong> datos <strong>de</strong> referencia en <strong>ProWORX</strong>, Concept o las pantallas DX Zoom en<br />

Modsoft o Meter Manager. La siguiente tabla <strong>de</strong> entrada muestra todos los<br />

parámetros <strong>de</strong> configuración que <strong>de</strong>ben rellenarse.<br />

Las salidas (tabla <strong>de</strong> resultados <strong>de</strong> salidas) y las salidas opcionales (tabla <strong>de</strong><br />

resultados <strong>de</strong> salidas opcionales) muestran los resultados <strong>de</strong>l cálculo <strong>de</strong>l bloque.<br />

Son necesarios algunos <strong>de</strong> dichos parámetros.<br />

Nota: Sólo se permiten las entradas válidas. No se aceptan las entradas que se<br />

encuentran fuera <strong>de</strong> los rangos válidos. Las entradas no válidas producen errores<br />

o advertencias.<br />

Nota: Pue<strong>de</strong> utilizarse Concept 2.1 o posterior para cargar los <strong>bloques</strong> <strong>de</strong> gas.<br />

Sin embargo, Concept y <strong>ProWORX</strong> no proporcionan ayuda ni pantallas DX Zoom<br />

para la configuración. Cuando se utiliza el software <strong>de</strong> panel <strong>ProWORX</strong> o Concept,<br />

es recomendable utilizar Meter Manager para llevar a cabo la configuración.<br />

Entradas A continuación, se muestra una <strong>de</strong>scripción <strong>de</strong>tallada <strong>de</strong> las variables <strong>de</strong><br />

configuración para el bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GG92.<br />

Entradas Descripción<br />

4xxxx+3: <strong>de</strong> 1 a 2 Ubicación <strong>de</strong> conexiones<br />

1 - Arriba<br />

2 - Abajo<br />

4xxxx+3: <strong>de</strong> 3 a 4 Material <strong>de</strong>l tubo <strong>de</strong>l medidor<br />

1 - Acero inoxidable<br />

2 - Monel<br />

3 - Acero al carbono<br />

4xxxx+3: <strong>de</strong> 5 a 6 Material <strong>de</strong>l orificio<br />

1 - Acero inoxidable<br />

2 - Monel<br />

3 - Acero al carbono<br />

4xxxx+3: <strong>de</strong> 7 a 8 Reservadas para uso futuro (no utilizar)<br />

4xxxx+3: <strong>de</strong> 9 a 10 Salidas opcionales<br />

1 - Sí<br />

2 - No<br />

Nota: Cuando únicamente se utilizan las salidas estándar, la salida<br />

cargable sólo usa 157 registros 4xxxx. Cuando se utilizan las salidas<br />

opcionales, el cargable utiliza 181 registros 4xxxx.<br />

31007526 12/2006 553


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método en bruto GG92<br />

Entradas Descripción<br />

4xxxx+3: <strong>de</strong> 11 a 16 Reservadas para uso futuro (no utilizar)<br />

4xxxx+4: 1 Presión manométrica/absoluta<br />

0 - Presión estática medida en unida<strong>de</strong>s absolutas<br />

1 - Presión estática medida en unida<strong>de</strong>s manométricas<br />

4xxxx+4: 2 Desconexión <strong>de</strong> flujo bajo<br />

0 - No utilizar <strong>de</strong>sconexión <strong>de</strong> flujo<br />

1 - Utilizar <strong>de</strong>sconexión <strong>de</strong> flujo<br />

4xxxx+4: <strong>de</strong> 3 a 6 Cargar comando<br />

0 - Listo para aceptar el comando<br />

1 - CMD: enviar configuración a tabla interna <strong>de</strong>s<strong>de</strong> 4xxxx<br />

2 - CMD: leer configuración <strong>de</strong>s<strong>de</strong> tabla interna a 4xxxx<br />

3 - CMD: restablecer registro <strong>de</strong> cambio <strong>de</strong> configuración API 21.1<br />

4xxxx+4: <strong>de</strong> 7 a 8 Tipo <strong>de</strong> entrada<br />

1 - Pointers 3xxxx introducidos en 4x+6...4x+10<br />

2 - Valores <strong>de</strong> entrada introducidos en 4x+6...4x+10<br />

4xxxx+4: <strong>de</strong> 9 a 10 Porcentaje <strong>de</strong> límites <strong>de</strong> error en moles<br />

1 - Habilitar<br />

2 - Bloquear<br />

4xxxx+4: <strong>de</strong> 11 a 12 Opción <strong>de</strong> presión diferencial <strong>de</strong> rango dual<br />

1 - Sí<br />

2 - No<br />

4xxxx+4: <strong>de</strong> 13 a 14 Compresible/Incompresible<br />

1 - Compresible<br />

2 - Incompresible<br />

4xxxx+4: <strong>de</strong> 15 a 16 Métodos <strong>de</strong> promedio<br />

0 - Lineal pon<strong>de</strong>rado temporalmente y <strong>de</strong>pendiente <strong>de</strong>l flujo<br />

1 - Formulaico pon<strong>de</strong>rado temporalmente y <strong>de</strong>pendiente <strong>de</strong>l flujo<br />

2 - Lineal pon<strong>de</strong>rado por flujo<br />

3 - Formulaico pon<strong>de</strong>rado por flujo<br />

Nota: Para la mayoría <strong>de</strong> las aplicaciones se utilizará 0.<br />

4xxxx+5: <strong>de</strong> 1 a 2 Unida<strong>de</strong>s <strong>de</strong> medida<br />

1 - EE.UU.<br />

2 - Métricas (SI)<br />

4xxxx+5: <strong>de</strong> 3 a 14 Reservadas para uso futuro (no utilizar)<br />

4xxxx+5: <strong>de</strong> 15 a 16 Reservadas para API 21.1.<br />

4xxxx+6 Valor <strong>de</strong> entrada o pointer 3xxxx <strong>de</strong> temperatura<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+7 Valor <strong>de</strong> entrada o pointer 3xxxx <strong>de</strong> presión (absoluta)<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+8 Presión diferencial 1, valor <strong>de</strong> entrada o pointer 3xxxx<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+9 Presión diferencial 2, valor <strong>de</strong> entrada o pointer 3xxxx<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

554 31007526 12/2006


Entradas Descripción<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método en bruto GG92<br />

4xxxx+10 Temperatura mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+11 Temperatura máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+12 Presión mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+13 Presión máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+14 Presión diferencial mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 1<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+15 Presión diferencial máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 1<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+16 Presión diferencial mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 2<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+17 Presión diferencial máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 2<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+18 a 19 Temperatura mínima en unida<strong>de</strong>s físicas<br />

De 14 a 149° F (<strong>de</strong> -10 a 65° C)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+20 a 21 Temperatura máxima en unida<strong>de</strong>s físicas<br />

De 14 a 149° F (<strong>de</strong> -10 a 65° C)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+22 a 23 Presión mínima en unida<strong>de</strong>s físicas<br />

De 0 a 1.470 psia (<strong>de</strong> 0 a 11.996 kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+24 a 25 Presión máxima en unida<strong>de</strong>s físicas<br />

De 0 a 1.470 psia (<strong>de</strong> 0 a 11.996 kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+26 a 27 Presión diferencial mínima en unida<strong>de</strong>s físicas 1<br />

>= 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+28 a 29 Presión diferencial máxima en unida<strong>de</strong>s físicas 1<br />

> 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+30 a 31 Presión diferencial mínima en unida<strong>de</strong>s físicas 2<br />

>= 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+<strong>32</strong> a 33 Presión diferencial máxima en unida<strong>de</strong>s físicas 2<br />

> 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

31007526 12/2006 555


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método en bruto GG92<br />

Entradas Descripción<br />

4xxxx+34 a 35 Diámetro <strong>de</strong> la placa <strong>de</strong> orificio, dr (0 < dr < 100 pulgadas) (0 < dr < 2.540 mm)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+36 a 37 Temperatura <strong>de</strong> medición <strong>de</strong>l diámetro <strong>de</strong> la placa <strong>de</strong> orificio, Tr (<strong>32</strong>


Entradas Descripción<br />

*Rango válido<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método en bruto GG92<br />

4xxxx+60 a 61 Viscosidad absoluta <strong>de</strong>l fluido <strong>de</strong> flujo, μc (0,01


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método en bruto GG92<br />

Descripción <strong>de</strong> parámetros - Salidas<br />

Tabla <strong>de</strong><br />

resultados <strong>de</strong><br />

salidas<br />

Las salidas muestran los resultados <strong>de</strong> cálculos <strong>de</strong>l bloque.<br />

Salidas Descripción<br />

4xxxx+0 Advertencia <strong>de</strong>l sistema/código <strong>de</strong> error (visualizado en modalidad<br />

hexa<strong>de</strong>cimal).<br />

4xxxx+1 Advertencia <strong>de</strong>l programa/código <strong>de</strong> error.<br />

4xxxx+2 Número <strong>de</strong> la versión (visualizado en modalidad hexa<strong>de</strong>cimal).<br />

4xxxx+125 a 126 Temperatura en condiciones <strong>de</strong> flujo (Tf) (°F o °C).<br />

4xxxx+127 a 128 Presión (Pf) (psia o kPa).<br />

4xxxx+129 a 130 Presión diferencial (hw) (en H2O o kPa).<br />

4xxxx+131 a 1<strong>32</strong> Valor integral (IV).<br />

4xxxx+133 a 134 Valor multiplicador integral (IMV).<br />

4xxxx+135 a 136 Tasa <strong>de</strong> flujo <strong>de</strong> volumen en condiciones básicas (Tb, Pb), Qb (pies3 /h o m3 4xxxx+137 a 138<br />

/h.<br />

Tasa <strong>de</strong> flujo <strong>de</strong> masa (Qm) (lbm/h o kg/h).<br />

4xxxx+139 a 140 Volumen acumulado, día actual.<br />

4xxxx+141 a 142 Volumen acumulado, última hora.<br />

4xxxx+143 a 144 Volumen acumulado, último día.<br />

4xxxx+145 a 152 Reservadas para API 21.1.<br />

4xxxx+153 Valor <strong>de</strong> advertencia/error <strong>de</strong>finido por el usuario (para la interfase API<br />

21.1).<br />

4xxxx+155: 13 La tabla 4xxxx difiere con respecto a la configuración real.<br />

4xxxx+155: 14 Latido completo <strong>de</strong> ejecución <strong>de</strong> tasa <strong>de</strong> flujo.<br />

4xxxx+155: 15 Latido <strong>de</strong> funcionamiento <strong>de</strong>l bloque.<br />

4xxxx+155: 16 Flag <strong>de</strong> fin <strong>de</strong> día.<br />

558 31007526 12/2006


Descripción <strong>de</strong> parámetros - Salidas opcionales<br />

Tabla <strong>de</strong><br />

configuración <strong>de</strong><br />

salidas<br />

opcionales<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método en bruto GG92<br />

Las salidas opcionales muestran los resultados <strong>de</strong> cálculos <strong>de</strong>l bloque. Sólo están<br />

en estado activo si 4x+3: 9...10 es 1.<br />

Salidas opcionales Descripción<br />

4xxxx+156 a 157 Compresibilidad en condiciones <strong>de</strong> flujo (Tf , Pf ), Zf .<br />

4xxxx+158 a 159 Compresibilidad en condiciones básicas (Tb, Pb), Zb. 4xxxx+160 a 161 Compresibilidad en condiciones normales (Ts, Ps), Zs. 4xxxx+162 a 163 Densidad en condiciones <strong>de</strong> flujo <strong>de</strong> fluido (Pt,p). 4xxxx+164 a 165 Densidad <strong>de</strong>l fluido en condiciones básicas (ρ).<br />

4xxxx+166 a 167 Supercompresibilidad (Fpv). 4xxxx+168 a 169 Densidad relativa <strong>de</strong>l gas (Gr). 4xxxx+170 a 171 Coeficiente <strong>de</strong> <strong>de</strong>scarga <strong>de</strong> la placa <strong>de</strong> orificio (Cd ).<br />

4xxxx+172 a 173 Factor <strong>de</strong> expansión (Y).<br />

4xxxx+174 a 175 Factor <strong>de</strong> velocidad <strong>de</strong> acercamiento (Ev). 4xxxx+176 a 177 Tasa <strong>de</strong> flujo <strong>de</strong> volumen en condiciones <strong>de</strong> flujo (Tf , Pf ), Qf .<br />

4xxxx+178 a 179 Reservadas para uso futuro (no utilizar)<br />

4xxxx+180 Flag <strong>de</strong> límites <strong>de</strong> coeficiente <strong>de</strong> <strong>de</strong>scarga <strong>de</strong> la placa <strong>de</strong> orificio<br />

en esquema iterativo (Cd-f). 31007526 12/2006 559


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas con método en bruto GG92<br />

560 31007526 12/2006


Presentación<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo<br />

<strong>de</strong> gas con método <strong>de</strong>tallado<br />

GM92 AGA n.º 3 y n.º 8 1992<br />

92<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción <strong>de</strong> método <strong>de</strong>tallado GM92 AGA n.º 3 y<br />

n.º 8 1992 con seguimiento <strong>de</strong> auditoría API 21.1.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

Apartado Página<br />

Descripción breve 562<br />

Representación 563<br />

Descripción <strong>de</strong> parámetros - Entradas 565<br />

Descripción <strong>de</strong> parámetros - Salidas 571<br />

Descripción <strong>de</strong> parámetros - Salidas opcionales 572<br />

31007526 12/2006 561


GM92 - Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

El bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas GM92 sólo se encuentra disponible<br />

en <strong>de</strong>terminados controladores Compact y Micro.<br />

El bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas permite ejecutar las ecuaciones<br />

AGA 3 (1992) y AGA 8 (1992). Las tasas <strong>de</strong> flujo calculadas cumplen, <strong>de</strong>ntro <strong>de</strong>l<br />

límite <strong>de</strong> 1 ppm, las normas publicadas por AGA (American Gas Association).<br />

Este bloque <strong>de</strong> función permite ejecutar el seguimiento <strong>de</strong> auditoría API 21.1. El<br />

bloque dispone <strong>de</strong> ocho ejecuciones <strong>de</strong> contador.<br />

Nota: Debe instalar el cargable LSUP antes que GM92.<br />

Más información Para obtener información más <strong>de</strong>tallada acerca <strong>de</strong> los cargables <strong>de</strong>l bloque <strong>de</strong><br />

funciones <strong>de</strong> flujo <strong>de</strong> gas, en particular en lo referente a<br />

códigos <strong>de</strong> advertencia/error <strong>de</strong>l sistema (4x+0) para cada instrucción,<br />

códigos <strong>de</strong> advertencia/error <strong>de</strong>l programa (4x+1) para cada instrucción,<br />

seguimiento <strong>de</strong> auditoría API 21.1,<br />

programa <strong>de</strong> ayuda GET_LOGS.EXE,<br />

programa <strong>de</strong> ayuda SET_SIZE.EXE,<br />

consulte Modicon Starling Associates Gas Flow Loadable Function Block User<br />

Gui<strong>de</strong> (manual <strong>de</strong>l usuario <strong>de</strong>l bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas<br />

Modicon Starling Associates), (890 USE 137).<br />

562 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

iniciar operación<br />

advertencia <strong>de</strong>finida por<br />

el usuario<br />

error <strong>de</strong>finido por el<br />

usuario<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

constante<br />

n.º 0001<br />

registro<br />

constante<br />

GM92<br />

n.º 0003<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

GM92 - Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas<br />

la operación está activa<br />

advertencia <strong>de</strong>l sistema o<br />

<strong>de</strong>l programa<br />

error <strong>de</strong>l sistema o <strong>de</strong>l<br />

programa<br />

0x, 1x Ninguno ON = en proceso <strong>de</strong> resolución.<br />

Esta entrada inicia el cálculo <strong>de</strong>l flujo <strong>de</strong> gas.<br />

Los cálculos se basan en los parámetros<br />

introducidos en los registros <strong>de</strong> entrada.<br />

Importante: No <strong>de</strong>svincule la entrada superior<br />

mientras se esté ejecutando el bloque. Esto<br />

producirá un error 188 y los datos contenidos en<br />

este bloque se verán dañados.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la introducción <strong>de</strong><br />

valores, consulte p. 565.)<br />

31007526 12/2006 563


GM92 - Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

intermedia<br />

Entrada<br />

inferior<br />

Constante<br />

n.º 0001<br />

(nodo<br />

superior)<br />

Registro<br />

(nodo<br />

intermedio)<br />

n.º 0003<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Salida<br />

inferior<br />

Tipo <strong>de</strong><br />

datos<br />

0x, 1x Ninguno Permite establecer una advertencia.<br />

Permite establecer una advertencia y registrar<br />

activida<strong>de</strong>s periféricas en el registro <strong>de</strong> evento <strong>de</strong><br />

seguimiento <strong>de</strong> auditoría sin <strong>de</strong>tener el bloque.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la introducción <strong>de</strong><br />

valores, consulte p. 565.)<br />

0x, 1x Ninguno Permite establecer un error y DETENER la función<br />

<strong>de</strong> flujo.<br />

Permite establecer un error, registrar errores<br />

periféricos en el registro <strong>de</strong> evento <strong>de</strong> seguimiento<br />

<strong>de</strong> auditoría y DETENER la función <strong>de</strong> flujo.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la introducción <strong>de</strong><br />

valores, consulte p. 565.)<br />

4x INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

INT,<br />

UINT<br />

Significado<br />

El nodo superior <strong>de</strong>be contener una constante n.º<br />

0001.<br />

El registro 4x introducido en el nodo intermedio es<br />

el primero <strong>de</strong> un grupo <strong>de</strong> registros en espera<br />

contiguos que incluyen los parámetros <strong>de</strong><br />

configuración y los valores asociados al bloque <strong>de</strong><br />

flujo <strong>de</strong> gas.<br />

Importante: No intente modificar el registro 4x <strong>de</strong>l<br />

nodo intermedio mientras el bloque <strong>de</strong> flujo <strong>de</strong> gas<br />

esté funcionando. Si lo modifica per<strong>de</strong>rá los datos.<br />

Si necesita modificar un registro 4x, DETENGA<br />

primero el PLC.<br />

El nodo inferior especifica el tipo <strong>de</strong> cálculo y <strong>de</strong>be<br />

contener una constante n.º 0003.<br />

0x Ninguno ON = operación correcta.<br />

0x Ninguno ON = advertencia <strong>de</strong>l sistema o <strong>de</strong>l programa.<br />

0x Ninguno ON = error <strong>de</strong>l sistema o <strong>de</strong>l programa.<br />

564 31007526 12/2006


Descripción <strong>de</strong> parámetros - Entradas<br />

Tabla <strong>de</strong><br />

configuración<br />

GM92 - Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas<br />

Debe rellenar todos los valores pertinentes en la tabla <strong>de</strong> configuración mediante el<br />

editor <strong>de</strong> datos <strong>de</strong> referencia en <strong>ProWORX</strong>, Concept o las pantallas DX Zoom en<br />

Modsoft o Meter Manager. La siguiente tabla <strong>de</strong> entrada muestra todos los<br />

parámetros <strong>de</strong> configuración que <strong>de</strong>ben rellenarse.<br />

Las salidas (tabla <strong>de</strong> resultados <strong>de</strong> salidas) y las salidas opcionales (tabla <strong>de</strong><br />

resultados <strong>de</strong> salidas opcionales) muestran los resultados <strong>de</strong>l cálculo <strong>de</strong>l bloque.<br />

Son necesarios algunos <strong>de</strong> dichos parámetros.<br />

Nota: Sólo se permiten las entradas válidas. No se aceptan las entradas que se<br />

encuentran fuera <strong>de</strong> los rangos válidos. Las entradas no válidas producen errores<br />

o advertencias.<br />

Nota: Pue<strong>de</strong> utilizarse Concept 2.1 o posterior para cargar los <strong>bloques</strong> <strong>de</strong> gas.<br />

Sin embargo, Concept y <strong>ProWORX</strong> no proporcionan ayuda ni pantallas DX Zoom<br />

para la configuración. Cuando se utiliza el software <strong>de</strong> panel <strong>ProWORX</strong> o Concept,<br />

es recomendable utilizar Meter Manager para llevar a cabo la configuración.<br />

Entradas A continuación, se muestra una <strong>de</strong>scripción <strong>de</strong>tallada <strong>de</strong> las variables <strong>de</strong><br />

configuración para el bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas GD92.<br />

Entradas Descripción<br />

4xxxx+3: <strong>de</strong> 1 a 2 Ubicación <strong>de</strong> conexiones<br />

1 - Arriba<br />

2 - Abajo<br />

4xxxx+3: <strong>de</strong> 3 a 4 Material <strong>de</strong>l tubo <strong>de</strong>l medidor<br />

1 - Acero inoxidable<br />

2 - Monel<br />

3 - Acero al carbono<br />

4xxxx+3: <strong>de</strong> 5 a 6 Material <strong>de</strong>l orificio<br />

1 - Acero inoxidable<br />

2 - Monel<br />

3 - Acero al carbono<br />

4xxxx+3: <strong>de</strong> 7 a 8 Reservadas para uso futuro (no utilizar)<br />

4xxxx+3: <strong>de</strong> 9 a 10 Salidas opcionales<br />

1 - Sí<br />

2 - No<br />

Nota: Cuando únicamente se utilizan las salidas estándar, la salida<br />

cargable sólo usa 157 registros 4xxxx. Cuando se utilizan las salidas<br />

opcionales, el cargable utiliza 181 registros 4xxxx.<br />

31007526 12/2006 565


GM92 - Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas<br />

Entradas Descripción<br />

4xxxx+3: <strong>de</strong> 11 a 16 Reservadas para uso futuro (no utilizar)<br />

4xxxx+4: 1 Presión manométrica/absoluta<br />

0 - Presión estática medida en unida<strong>de</strong>s absolutas<br />

1 - Presión estática medida en unida<strong>de</strong>s manométricas<br />

4xxxx+4: 2 Desconexión <strong>de</strong> flujo bajo<br />

0 - No utilizar <strong>de</strong>sconexión <strong>de</strong> flujo<br />

1 - Utilizar <strong>de</strong>sconexión <strong>de</strong> flujo<br />

4xxxx+4: <strong>de</strong> 3 a 6 Cargar comando<br />

0 - Listo para aceptar el comando<br />

1 - CMD: enviar configuración a tabla interna <strong>de</strong>s<strong>de</strong> 4xxxx<br />

2 - CMD: leer configuración <strong>de</strong>s<strong>de</strong> tabla interna a 4xxxx<br />

3 - CMD: restablecer registro <strong>de</strong> cambio <strong>de</strong> configuración API 21.1<br />

4xxxx+4: <strong>de</strong> 7 a 8 Tipo <strong>de</strong> entrada<br />

1 - Pointers 3xxxx introducidos en 4x+6...4x+10<br />

2 - Valores <strong>de</strong> entrada introducidos en 4x+6...4x+10<br />

4xxxx+4: <strong>de</strong> 9 a 10 Porcentaje <strong>de</strong> límites <strong>de</strong> error en moles<br />

1 - Habilitar<br />

2 - Bloquear<br />

4xxxx+4: <strong>de</strong> 11 a 12 Opción <strong>de</strong> presión diferencial <strong>de</strong> rango dual<br />

1 - Sí<br />

2 - No<br />

4xxxx+4: <strong>de</strong> 13 a 14 Compresible/Incompresible<br />

1 - Compresible<br />

2 - Incompresible<br />

4xxxx+4: <strong>de</strong> 15 a 16 Métodos <strong>de</strong> promedio<br />

0 - Lineal pon<strong>de</strong>rado temporalmente y <strong>de</strong>pendiente <strong>de</strong>l flujo<br />

1 - Formulaico pon<strong>de</strong>rado temporalmente y <strong>de</strong>pendiente <strong>de</strong>l flujo<br />

2 - Lineal pon<strong>de</strong>rado por flujo<br />

3 - Formulaico pon<strong>de</strong>rado por flujo<br />

Nota: Para la mayoría <strong>de</strong> las aplicaciones se utilizará 0.<br />

4xxxx+5: <strong>de</strong> 1 a 2 Unida<strong>de</strong>s <strong>de</strong> medida<br />

1 - EE.UU.<br />

2 - Métricas (SI)<br />

4xxxx+5: <strong>de</strong> 3 a 14 Reservadas para uso futuro (no utilizar)<br />

4xxxx+5: <strong>de</strong> 15 a 16 Reservadas para API 21.1.<br />

4xxxx+6 Valor <strong>de</strong> entrada o pointer 3xxxx <strong>de</strong> temperatura<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+7 Valor <strong>de</strong> entrada o pointer 3xxxx <strong>de</strong> presión (absoluta)<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+8 Presión diferencial 1, valor <strong>de</strong> entrada o pointer 3xxxx<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+9 Presión diferencial 2, valor <strong>de</strong> entrada o pointer 3xxxx<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

566 31007526 12/2006


Entradas Descripción<br />

GM92 - Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas<br />

4xxxx+10 Temperatura mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+11 Temperatura máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+12 Presión mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+13 Presión máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+14 Presión diferencial mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 1<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+15 Presión diferencial máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 1<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+16 Presión diferencial mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 2<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+17 Presión diferencial máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 2<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+18 a 19 Temperatura mínima en unida<strong>de</strong>s físicas<br />

De -200 a 760° F (<strong>de</strong> -128,89 a 404,4° C)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+20 a 21 Temperatura máxima en unida<strong>de</strong>s físicas<br />

De -200 a 760° F (<strong>de</strong> -128,89 a 404,4° C)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+22 a 23 Presión mínima en unida<strong>de</strong>s físicas<br />

De 0 a 40.000 psia (<strong>de</strong> 0 a 275.790,28 kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+24 a 25 Presión máxima en unida<strong>de</strong>s físicas<br />

De 0 a 40.000 psia (<strong>de</strong> 0 a 275.790,28 kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+26 a 27 Presión diferencial mínima en unida<strong>de</strong>s físicas 1<br />

>= 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+28 a 29 Presión diferencial máxima en unida<strong>de</strong>s físicas 1<br />

> 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+30 a 31 Presión diferencial mínima en unida<strong>de</strong>s físicas 2<br />

>= 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+<strong>32</strong> a 33 Presión diferencial máxima en unida<strong>de</strong>s físicas 2<br />

> 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

31007526 12/2006 567


GM92 - Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas<br />

Entradas Descripción<br />

4xxxx+34 a 35 Diámetro <strong>de</strong> la placa <strong>de</strong> orificio, dr (0 < dr < 100 pulgadas) (0 < dr < 2.540 mm)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+36 a 37 Temperatura <strong>de</strong> medición <strong>de</strong>l diámetro <strong>de</strong> la placa <strong>de</strong> orificio, Tr (<strong>32</strong>


Entradas Descripción<br />

GM92 - Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas<br />

4xxxx+79 a 80 Presión atmosférica, Pat (3


GM92 - Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas<br />

Entradas Descripción<br />

4xxxx+105 a 106 Porcentaje <strong>de</strong> n-butano en moles, xi *(0,0


Descripción <strong>de</strong> parámetros - Salidas<br />

Tabla <strong>de</strong><br />

resultados <strong>de</strong><br />

salidas<br />

Las salidas muestran los resultados <strong>de</strong> cálculos <strong>de</strong>l bloque.<br />

GM92 - Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas<br />

Salidas Descripción<br />

4xxxx+0 Advertencia <strong>de</strong>l sistema/código <strong>de</strong> error (visualizado en modalidad<br />

hexa<strong>de</strong>cimal).<br />

4xxxx+1 Advertencia <strong>de</strong>l programa/código <strong>de</strong> error.<br />

4xxxx+2 Número <strong>de</strong> la versión (visualizado en modalidad hexa<strong>de</strong>cimal).<br />

4xxxx+125 a 126 Temperatura en condiciones <strong>de</strong> flujo (Tf ) (°F o °C).<br />

4xxxx+127 a 128 Presión (Pf) (psia o kPa).<br />

4xxxx+129 a 130 Presión diferencial (hw) (en H2O o kPa).<br />

4xxxx+131 a 1<strong>32</strong> Valor integral (IV).<br />

4xxxx+133 a 134 Valor multiplicador integral (IMV).<br />

4xxxx+135 a 136 Tasa <strong>de</strong> flujo <strong>de</strong> volumen en condiciones básicas (Tb , Pb ), Qb (pies 3 /h o m 3 4xxxx+137 a 138<br />

/h).<br />

Tasa <strong>de</strong> flujo <strong>de</strong> masa (Qm) (lbm/h o kg/h).<br />

4xxxx+139 a 140 Volumen acumulado, día actual.<br />

4xxxx+141 a 142 Volumen acumulado, última hora.<br />

4xxxx+143 a 144 Volumen acumulado, último día.<br />

4xxxx+145 a 152 Reservadas para API 21.1.<br />

4xxxx+153 Valor <strong>de</strong> advertencia/error <strong>de</strong>finido por el usuario (para la interfase API<br />

21.1).<br />

4xxxx+155: 13 La tabla 4xxxx difiere con respecto a la configuración real.<br />

4xxxx+155: 14 Latido completo <strong>de</strong> ejecución <strong>de</strong> tasa <strong>de</strong> flujo.<br />

4xxxx+155: 15 Latido <strong>de</strong> funcionamiento <strong>de</strong>l bloque.<br />

4xxxx+155: 16 Flag <strong>de</strong> fin <strong>de</strong> día.<br />

31007526 12/2006 571


GM92 - Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas<br />

Descripción <strong>de</strong> parámetros - Salidas opcionales<br />

Tabla <strong>de</strong><br />

configuración <strong>de</strong><br />

salidas<br />

opcionales<br />

Las salidas opcionales muestran los resultados <strong>de</strong> cálculos <strong>de</strong>l bloque. Sólo están<br />

en estado activo si 4x+3: 9...10 es 1.<br />

Salidas opcionales Descripción<br />

4xxxx+156 a 157 Compresibilidad en condiciones <strong>de</strong> flujo (Tf, Pf), Zf. 4xxxx+158 a 159 Compresibilidad en condiciones básicas (Tb, Pb), Zb. 4xxxx+160 a 161 Compresibilidad en condiciones normales (Ts, Ps), Zs. 4xxxx+162 a 163 Densidad en condiciones <strong>de</strong> flujo <strong>de</strong> fluido (Pt,p ).<br />

4xxxx+164 a 165 Densidad <strong>de</strong>l fluido en condiciones básicas (ρ).<br />

4xxxx+166 a 167 Supercompresibilidad (Fpv). 4xxxx+168 a 169 Densidad relativa <strong>de</strong>l gas (Gr ).<br />

4xxxx+170 a 171 Coeficiente <strong>de</strong> <strong>de</strong>scarga <strong>de</strong> la placa <strong>de</strong> orificio (Cd). 4xxxx+172 a 173 Factor <strong>de</strong> expansión (Y).<br />

4xxxx+174 a 175 Factor <strong>de</strong> velocidad <strong>de</strong> acercamiento (Ev ).<br />

4xxxx+176 a 177 Tasa <strong>de</strong> flujo <strong>de</strong> volumen en condiciones <strong>de</strong> flujo (Tf, Pf), Qf. 4xxxx+178 a 179 Reservadas para uso futuro (no utilizar)<br />

4xxxx+180 Flag <strong>de</strong> límites <strong>de</strong> coeficiente <strong>de</strong> <strong>de</strong>scarga <strong>de</strong> la placa <strong>de</strong> orificio<br />

en esquema iterativo (Cd-f ).<br />

572 31007526 12/2006


Presentación<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong><br />

gas G392 AGA n.º 3 1992<br />

93<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción <strong>de</strong> método bruto G392 AGA n.º 3 1992<br />

con seguimiento <strong>de</strong> auditoría API 21.1.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

Apartado Página<br />

Descripción breve 574<br />

Representación 575<br />

Descripción <strong>de</strong> parámetros - Entradas 577<br />

Descripción <strong>de</strong> parámetros - Salidas 582<br />

Descripción <strong>de</strong> parámetros - Salidas opcionales 583<br />

31007526 12/2006 573


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas G392<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

El bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas G392 sólo se encuentra disponible<br />

en <strong>de</strong>terminados controladores Compact y Micro.<br />

El bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas permite ejecutar ecuaciones AGA<br />

3 (1992). Las tasas <strong>de</strong> flujo calculadas cumplen, <strong>de</strong>ntro <strong>de</strong>l límite <strong>de</strong> 1 ppm, las<br />

normas publicadas por AGA (American Gas Association).<br />

Nota: Debe instalar el cargable LSUP antes que G392.<br />

Más información Para obtener información más <strong>de</strong>tallada acerca <strong>de</strong> los cargables <strong>de</strong>l bloque <strong>de</strong><br />

funciones <strong>de</strong> flujo <strong>de</strong> gas, en particular en lo referente a<br />

códigos <strong>de</strong> advertencia/error <strong>de</strong>l sistema (4x+0) para cada instrucción,<br />

códigos <strong>de</strong> advertencia/error <strong>de</strong>l programa (4x+1) para cada instrucción,<br />

seguimiento <strong>de</strong> auditoría API 21.1,<br />

programa <strong>de</strong> ayuda GET_LOGS.EXE,<br />

programa <strong>de</strong> ayuda SET_SIZE.EXE,<br />

consulte Modicon Starling Associates Gas Flow Loadable Function Block User<br />

Gui<strong>de</strong> (manual <strong>de</strong>l usuario <strong>de</strong>l bloque <strong>de</strong> funciones cargables <strong>de</strong> flujo <strong>de</strong> gas<br />

Modicon Starling Associates), (890 USE 137).<br />

574 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

iniciar operación<br />

advertencia <strong>de</strong>finida por<br />

el usuario<br />

error <strong>de</strong>finido por el<br />

usuario<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

constante<br />

n.º 0001<br />

registro<br />

constante<br />

G392<br />

n.º 0017<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas G392<br />

la operación está activa<br />

advertencia <strong>de</strong>l sistema o<br />

<strong>de</strong>l programa<br />

error <strong>de</strong>l sistema o <strong>de</strong>l<br />

programa<br />

0x, 1x Ninguno ON = en proceso <strong>de</strong> resolución.<br />

Esta entrada inicia el cálculo <strong>de</strong>l flujo <strong>de</strong> gas.<br />

Los cálculos se basan en los parámetros<br />

introducidos en los registros <strong>de</strong> entrada.<br />

Importante: No <strong>de</strong>svincule la entrada superior<br />

mientras se esté ejecutando el bloque. Esto<br />

producirá un error 188 y los datos contenidos en<br />

este bloque se verán dañados.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la introducción <strong>de</strong><br />

valores, consulte p. 577.)<br />

31007526 12/2006 575


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas G392<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

intermedia<br />

Entrada<br />

inferior<br />

Constante<br />

n.º 0001<br />

(nodo<br />

superior)<br />

Registro<br />

(nodo<br />

intermedio)<br />

n.º 0017<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Salida<br />

inferior<br />

Tipo <strong>de</strong><br />

datos<br />

0x, 1x Ninguno Permite establecer una advertencia.<br />

Permite establecer una advertencia y registrar<br />

activida<strong>de</strong>s periféricas en el registro <strong>de</strong> evento <strong>de</strong><br />

seguimiento <strong>de</strong> auditoría sin <strong>de</strong>tener el bloque.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la introducción <strong>de</strong><br />

valores, consulte p. 577.)<br />

0x, 1x Ninguno Permite establecer un error y DETENER la función<br />

<strong>de</strong> flujo.<br />

Permite establecer un error, registrar errores<br />

periféricos en el registro <strong>de</strong> evento <strong>de</strong> seguimiento<br />

<strong>de</strong> auditoría y DETENER la función <strong>de</strong> flujo.<br />

Importante: DEBE rellenar todos los valores<br />

pertinentes en la tabla <strong>de</strong> configuración.<br />

(Para obtener información sobre la introducción <strong>de</strong><br />

valores, consulte p. 577.)<br />

4x INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

INT,<br />

UINT<br />

Significado<br />

El nodo superior <strong>de</strong>be contener una constante n.º<br />

0001.<br />

El registro 4x introducido en el nodo intermedio es el<br />

primero <strong>de</strong> un grupo <strong>de</strong> registros en espera<br />

contiguos que incluyen los parámetros <strong>de</strong><br />

configuración y los valores asociados al bloque <strong>de</strong><br />

flujo <strong>de</strong> gas.<br />

Importante: No intente modificar el registro 4x <strong>de</strong>l<br />

nodo intermedio mientras el bloque <strong>de</strong> flujo <strong>de</strong> gas<br />

esté funcionando. Si lo modifica per<strong>de</strong>rá los datos.<br />

Si necesita modificar un registro 4x, DETENGA<br />

primero el PLC.<br />

El nodo inferior especifica el tipo <strong>de</strong> cálculo y <strong>de</strong>be<br />

contener una constante n.º 0017.<br />

0x Ninguno ON = operación correcta.<br />

0x Ninguno ON = advertencia <strong>de</strong>l sistema o <strong>de</strong>l programa.<br />

0x Ninguno ON = error <strong>de</strong>l sistema o <strong>de</strong>l programa.<br />

576 31007526 12/2006


Descripción <strong>de</strong> parámetros - Entradas<br />

Tabla <strong>de</strong><br />

configuración<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas G392<br />

Debe rellenar todos los valores pertinentes en la tabla <strong>de</strong> configuración mediante el<br />

editor <strong>de</strong> datos <strong>de</strong> referencia en <strong>ProWORX</strong>, Concept o las pantallas DX Zoom en<br />

Modsoft o Meter Manager. La siguiente tabla <strong>de</strong> entrada muestra todos los<br />

parámetros <strong>de</strong> configuración que <strong>de</strong>ben rellenarse.<br />

Las salidas (tabla <strong>de</strong> resultados <strong>de</strong> salidas) y las salidas opcionales (tabla <strong>de</strong><br />

resultados <strong>de</strong> salidas opcionales) muestran los resultados <strong>de</strong>l cálculo <strong>de</strong>l bloque.<br />

Son necesarios algunos <strong>de</strong> dichos parámetros.<br />

Nota: Sólo se permiten las entradas válidas. No se aceptan las entradas que se<br />

encuentran fuera <strong>de</strong> los rangos válidos. Las entradas no válidas producen errores<br />

o advertencias.<br />

Nota: Pue<strong>de</strong> utilizarse Concept 2.1 o posterior para cargar los <strong>bloques</strong> <strong>de</strong> gas.<br />

Sin embargo, Concept y <strong>ProWORX</strong> no proporcionan ayuda ni pantallas DX Zoom<br />

para la configuración. Cuando se utiliza el software <strong>de</strong> panel <strong>ProWORX</strong> o Concept,<br />

es recomendable utilizar Meter Manager para llevar a cabo la configuración.<br />

Entradas A continuación, se muestra una <strong>de</strong>scripción <strong>de</strong>tallada <strong>de</strong> las variables <strong>de</strong><br />

configuración para el bloque <strong>de</strong> función <strong>de</strong> flujo <strong>de</strong> gas G392.<br />

Entradas Descripción<br />

4xxxx+3: <strong>de</strong> 1 a 2 Ubicación <strong>de</strong> conexiones<br />

1 - Arriba<br />

2 - Abajo<br />

4xxxx+3: <strong>de</strong> 3 a 4 Material <strong>de</strong>l tubo <strong>de</strong>l medidor<br />

1 - Acero inoxidable<br />

2 - Monel<br />

3 - Acero al carbono<br />

4xxxx+3: <strong>de</strong> 5 a 6 Material <strong>de</strong>l orificio<br />

1 - Acero inoxidable<br />

2 - Monel<br />

3 - Acero al carbono<br />

4xxxx+3: <strong>de</strong> 7 a 8 Tipo <strong>de</strong> entrada <strong>de</strong> compresibilidad (usuario)<br />

1 - Densidad en condiciones básicas y <strong>de</strong> flujo<br />

2 - Factor <strong>de</strong> compresibilidad en condiciones básicas y <strong>de</strong> flujo, y<br />

<strong>de</strong>nsidad relativa <strong>de</strong>l gas en condiciones básicas<br />

31007526 12/2006 577


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas G392<br />

Entradas Descripción<br />

4xxxx+3: <strong>de</strong> 9 a 10 Salidas opcionales<br />

1 - Sí<br />

2 - No<br />

Nota: Cuando únicamente se utilizan las salidas estándar, la salida<br />

cargable sólo usa 157 registros 4xxxx. Cuando se utilizan las salidas<br />

opcionales, el cargable utiliza 181 registros 4xxxx.<br />

4xxxx+3: <strong>de</strong> 11 a 16 Reservadas para uso futuro (no utilizar)<br />

4xxxx+4: 1 Presión manométrica/absoluta<br />

0 - Presión estática medida en unida<strong>de</strong>s absolutas<br />

1 - Presión estática medida en unida<strong>de</strong>s manométricas<br />

4xxxx+4: 2 Desconexión <strong>de</strong> flujo bajo<br />

0 - No utilizar <strong>de</strong>sconexión <strong>de</strong> flujo<br />

1 - Utilizar <strong>de</strong>sconexión <strong>de</strong> flujo<br />

4xxxx+4: <strong>de</strong> 3 a 6 Cargar comando<br />

0 - Listo para aceptar el comando<br />

1 - CMD: enviar configuración a tabla interna <strong>de</strong>s<strong>de</strong> 4xxxx<br />

2 - CMD: leer configuración <strong>de</strong>s<strong>de</strong> tabla interna a 4xxxx<br />

3 - CMD: restablecer registro <strong>de</strong> cambio <strong>de</strong> configuración API 21.1<br />

4xxxx+4: <strong>de</strong> 7 a 8 Tipo <strong>de</strong> entrada<br />

1 - Pointers 3xxxx introducidos en 4x+6...4x+10<br />

2 - Valores <strong>de</strong> entrada introducidos en 4x+6...4x+10<br />

4xxxx+4: <strong>de</strong> 9 a 10 Reservadas para uso futuro (no utilizar)<br />

4xxxx+4: <strong>de</strong> 11 a 12 Opción <strong>de</strong> presión diferencial <strong>de</strong> rango dual<br />

1 - Sí<br />

2 - No<br />

4xxxx+4: <strong>de</strong> 13 a 14 Compresible/Incompresible<br />

1 - Compresible<br />

2 - Incompresible<br />

4xxxx+4: <strong>de</strong> 15 a 16 Métodos <strong>de</strong> promedio<br />

0 - Lineal pon<strong>de</strong>rado temporalmente y <strong>de</strong>pendiente <strong>de</strong>l flujo<br />

1 - Formulaico pon<strong>de</strong>rado temporalmente y <strong>de</strong>pendiente <strong>de</strong>l flujo<br />

2 - Lineal pon<strong>de</strong>rado por flujo<br />

3 - Formulaico pon<strong>de</strong>rado por flujo<br />

Nota: Para la mayoría <strong>de</strong> las aplicaciones se utilizará 0.<br />

4xxxx+5: <strong>de</strong> 1 a 2 Unida<strong>de</strong>s <strong>de</strong> medida<br />

1 - EE.UU.<br />

2 - Métricas (SI)<br />

4xxxx+5: <strong>de</strong> 3 a 14 Reservadas para uso futuro (no utilizar)<br />

4xxxx+5: <strong>de</strong> 15 a 16 Reservadas para API 21.1.<br />

578 31007526 12/2006


Entradas Descripción<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas G392<br />

4xxxx+6 Valor <strong>de</strong> entrada o pointer 3xxxx <strong>de</strong> temperatura<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+7 Valor <strong>de</strong> entrada o pointer 3xxxx <strong>de</strong> presión (absoluta)<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+8 Presión diferencial 1, valor <strong>de</strong> entrada o pointer 3xxxx<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+9 Presión diferencial 2, valor <strong>de</strong> entrada o pointer 3xxxx<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+10 Temperatura mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+11 Temperatura máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+12 Presión mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+13 Presión máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+14 Presión diferencial mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 1<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+15 Presión diferencial máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 1<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+16 Presión diferencial mínima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 2<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+17 Presión diferencial máxima <strong>de</strong> valor analógico bruto <strong>de</strong> entrada 2<br />

Tipo <strong>de</strong> datos: valor entero con signo<br />

4xxxx+18 a 19 Temperatura mínima en unida<strong>de</strong>s físicas<br />

De -200 a 760° F (<strong>de</strong> -128,89 a 404,4° C)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+20 a 21 Temperatura máxima en unida<strong>de</strong>s físicas<br />

De -200 a 760° F (<strong>de</strong> -128,89 a 404,4° C)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+22 a 23 Presión mínima en unida<strong>de</strong>s físicas<br />

De 0 a 40.000 psia (<strong>de</strong> 0 a 275.790,28 kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+24 a 25 Presión máxima en unida<strong>de</strong>s físicas<br />

De 0 a 40.000 psia (<strong>de</strong> 0 a 275.790,28 kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+26 a 27 Presión diferencial mínima en unida<strong>de</strong>s físicas 1<br />

>= 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

31007526 12/2006 579


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas G392<br />

Entradas Descripción<br />

4xxxx+28 a 29 Presión diferencial máxima en unida<strong>de</strong>s físicas 1<br />

> 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+30 a 31 Presión diferencial mínima en unida<strong>de</strong>s físicas 2<br />

>= 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+<strong>32</strong> a 33 Presión diferencial máxima en unida<strong>de</strong>s físicas 2<br />

> 0 (pulgadas H2O o kPa)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+34 a 35 Diámetro <strong>de</strong> la placa <strong>de</strong> orificio, dr (0 < dr < 100 pulgadas) (0 < dr < 2.540 mm)<br />

Tipo <strong>de</strong> datos: número <strong>de</strong> coma flotante<br />

4xxxx+36 a 37 Temperatura <strong>de</strong> medición <strong>de</strong>l diámetro <strong>de</strong> la placa <strong>de</strong> orificio, Tr (<strong>32</strong>


Entradas Descripción<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas G392<br />

4xxxx+64 Inicio <strong>de</strong> hora <strong>de</strong>l día<br />

(0 ... 23)<br />

Tipo <strong>de</strong> datos: valor entero sin signo<br />

4xxxx+65 a 78 Reservadas para configuración API 21.1<br />

4xxxx+79 a 80 Presión atmosférica, Pat (3


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas G392<br />

Descripción <strong>de</strong> parámetros - Salidas<br />

Tabla <strong>de</strong><br />

resultados <strong>de</strong><br />

salidas<br />

Las salidas muestran los resultados <strong>de</strong> cálculos <strong>de</strong>l bloque.<br />

Salidas Descripción<br />

4xxxx+0 Advertencia <strong>de</strong>l sistema/código <strong>de</strong> error (visualizado en modalidad<br />

hexa<strong>de</strong>cimal).<br />

4xxxx+1 Advertencia <strong>de</strong>l programa/código <strong>de</strong> error.<br />

4xxxx+2 Número <strong>de</strong> la versión (visualizado en modalidad hexa<strong>de</strong>cimal).<br />

4xxxx+125 a 126 Temperatura en condiciones <strong>de</strong> flujo (Tf) (ºF o ºC).<br />

4xxxx+127 a 128 Presión (Pf) (psia o kPa).<br />

4xxxx+129 a 130 Presión diferencial (hw) (en H2O o kPa).<br />

4xxxx+131 a 1<strong>32</strong> Valor integral (IV).<br />

4xxxx+133 a 134 Valor multiplicador integral (IMV).<br />

4xxxx+135 a 136 Tasa <strong>de</strong> flujo <strong>de</strong> volumen en condiciones básicas (Tb, Pb), Qb (pies3 /h o m3 4xxxx+137 a 138<br />

/h).<br />

Tasa <strong>de</strong> flujo <strong>de</strong> masa (Qm) 4xxxx+139 a 140 Volumen acumulado, día actual.<br />

4xxxx+141 a 142 Volumen acumulado, última hora.<br />

4xxxx+143 a 144 Volumen acumulado, último día.<br />

4xxxx+145 a 152 Reservadas para API 21.1.<br />

4xxxx+153 Valor <strong>de</strong> advertencia/error <strong>de</strong>finido por el usuario (para la interfase API<br />

21.1).<br />

4xxxx+155: 13 La tabla 4xxxx difiere con respecto a la configuración real.<br />

4xxxx+155: 14 Latido completo <strong>de</strong> ejecución <strong>de</strong> tasa <strong>de</strong> flujo.<br />

4xxxx+155: 15 Latido <strong>de</strong> funcionamiento <strong>de</strong>l bloque.<br />

4xxxx+155: 16 Flag <strong>de</strong> fin <strong>de</strong> día.<br />

582 31007526 12/2006


Descripción <strong>de</strong> parámetros - Salidas opcionales<br />

Tabla <strong>de</strong><br />

configuración <strong>de</strong><br />

salidas<br />

opcionales<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas G392<br />

Las salidas opcionales muestran los resultados <strong>de</strong> cálculos <strong>de</strong>l bloque. Sólo están<br />

en estado activo si 4x+3: 9...10 es 1.<br />

Salidas opcionales Descripción<br />

4xxxx+156 a 157 Compresibilidad en condiciones <strong>de</strong> flujo (Tf , Pf ), Zf .<br />

4xxxx+158 a 159 Compresibilidad en condiciones básicas (Tb, Pb), Zb. 4xxxx+160 a 161 Reservadas para uso futuro (no utilizar)<br />

4xxxx+162 a 163 Densidad en condiciones <strong>de</strong> flujo <strong>de</strong> fluido (Pt,p ).<br />

4xxxx+164 a 165 Densidad <strong>de</strong>l fluido en condiciones básicas (ρ).<br />

4xxxx+166 a 167 Supercompresibilidad (Fpv ).<br />

4xxxx+168 a 169 Densidad relativa <strong>de</strong>l gas (Gr ).<br />

4xxxx+170 a 171 Coeficiente <strong>de</strong> <strong>de</strong>scarga <strong>de</strong> la placa <strong>de</strong> orificio (Cd). 4xxxx+172 a 173 Factor <strong>de</strong> expansión (Y).<br />

4xxxx+174 a 175 Factor <strong>de</strong> velocidad <strong>de</strong> acercamiento (Ev). 4xxxx+176 a 177 Tasa <strong>de</strong> flujo <strong>de</strong> volumen en condiciones <strong>de</strong> flujo (Tf, Pf), Qf. 4xxxx+178 a 179 Reservadas para uso futuro (no utilizar)<br />

4xxxx+180 Flag <strong>de</strong> límites <strong>de</strong> coeficiente <strong>de</strong> <strong>de</strong>scarga <strong>de</strong> la placa <strong>de</strong> orificio<br />

en esquema iterativo (Cd-f ).<br />

31007526 12/2006 583


Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong> gas G392<br />

584 31007526 12/2006


Presentación<br />

HLTH:<br />

Matrices <strong>de</strong> historia y estado<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción HLTH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

94<br />

Apartado Página<br />

Descripción breve 586<br />

Representación 587<br />

Descripción <strong>de</strong> los parámetros 589<br />

Asiento superior <strong>de</strong> la <strong>de</strong>scripción <strong>de</strong> parámetros (matriz <strong>de</strong> historia) 590<br />

Asiento intermedio <strong>de</strong> la <strong>de</strong>scripción <strong>de</strong> parámetros (matriz <strong>de</strong> estado) 595<br />

Asiento inferior <strong>de</strong> la <strong>de</strong>scripción <strong>de</strong> parámetros (longitud) 599<br />

31007526 12/2006 585


HLTH: Matrices <strong>de</strong> historia y estado<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

Nota: Esta instrucción sólo estará disponible si ha expandido e instalado las<br />

instrucciones cargables DX; encontrará más información en p. 49.<br />

La instrucción HLTH crea matrices <strong>de</strong> historia y estado <strong>de</strong>s<strong>de</strong> registros <strong>de</strong> memoria<br />

interna que pue<strong>de</strong>n utilizarse en Lad<strong>de</strong>r <strong>Logic</strong> para <strong>de</strong>tectar cambios en el estado<br />

<strong>de</strong>l PLC y funciones <strong>de</strong> comunicación con las E/S. También se pue<strong>de</strong> utilizar para<br />

avisar al usuario <strong>de</strong> cambios en el sistema <strong>de</strong> un PLC. La instrucción HLTH tiene<br />

dos modos <strong>de</strong> funcionamiento, (aprendizaje) y (vigilancia).<br />

586 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

modalidad <strong>de</strong><br />

aprendizaje/vigilancia<br />

modalidad <strong>de</strong><br />

aprendizaje/vigilancia<br />

Longitud <strong>de</strong> la tabla: 1–131<br />

historia<br />

estado<br />

longitud <strong>de</strong><br />

HLTH<br />

HLTH: Matrices <strong>de</strong> historia y estado<br />

activa<br />

aprendizaje completado<br />

31007526 12/2006 587<br />

error


HLTH: Matrices <strong>de</strong> historia y estado<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Entrada<br />

inferior<br />

Historia<br />

(nodo<br />

superior)<br />

Estado<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la operación <strong>de</strong>signada.<br />

0x, 1x Ninguno Modalidad <strong>de</strong> aprendizaje/vigilancia<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte p. 589.)<br />

0x, 1x Ninguno Modalidad <strong>de</strong> aprendizaje/vigilancia<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte p. 589.)<br />

4x INT, UINT,<br />

WORD<br />

4x INT, UINT,<br />

WORD<br />

Matriz <strong>de</strong> historia (primera entrada <strong>de</strong> un bloque<br />

<strong>de</strong> registros contiguos, rango: 6...135)<br />

Matriz <strong>de</strong> historia (primera entrada <strong>de</strong> un bloque<br />

<strong>de</strong> registros contiguos, rango: 3...1<strong>32</strong>)<br />

INT, UINT Longitud = (número <strong>de</strong> estaciones RIO x 4) + 3.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno Refleja el estado <strong>de</strong> la entrada intermedia.<br />

Salida inferior 0x Ninguno ON = Error.<br />

588 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Modos <strong>de</strong><br />

funcionamiento<br />

Modo <strong>de</strong><br />

aprendizaje/<br />

vigilancia<br />

(entradas<br />

intermedia e<br />

inferior)<br />

La instrucción HLTH tiene dos modos <strong>de</strong> servicio.<br />

Tipo <strong>de</strong> modo Significado<br />

Modo <strong>de</strong><br />

aprendizaje<br />

Modo <strong>de</strong><br />

vigilancia<br />

HLTH: Matrices <strong>de</strong> historia y estado<br />

La instrucción HLTH se pue<strong>de</strong> inicializar para apren<strong>de</strong>r la configuración en<br />

la que se lleva a cabo y guardar la información en una referencia temporal<br />

<strong>de</strong>nominada matriz <strong>de</strong> historia.<br />

Esta matriz contiene:<br />

Un número <strong>de</strong> estación <strong>de</strong>signado por el usuario para supervisar el<br />

estado <strong>de</strong> las comunicaciones.<br />

Suma <strong>de</strong> control <strong>de</strong> la lógica <strong>de</strong> aplicación.<br />

Indicador <strong>de</strong> E/S <strong>de</strong>sactivadas.<br />

Estado <strong>de</strong> funcionamiento <strong>de</strong> S911.<br />

Elección <strong>de</strong> sistema <strong>de</strong> cable sencillo o dual.<br />

Visualización <strong>de</strong> la asignación <strong>de</strong> E/S.<br />

Este modo habilita una operación que comprueba las condiciones <strong>de</strong>l<br />

sistema <strong>de</strong>l PLC. Los cambios <strong>de</strong>tectados se registran en una matriz <strong>de</strong><br />

estado. La matriz <strong>de</strong> estado vigila las condiciones más recientes <strong>de</strong>l<br />

sistema y establece mo<strong>de</strong>los <strong>de</strong> bits para indicar los cambios <strong>de</strong>tectados.<br />

Esta matriz <strong>de</strong> estado contiene:<br />

Estado <strong>de</strong> comunicación <strong>de</strong> la estación <strong>de</strong>signada en la matriz <strong>de</strong><br />

historia.<br />

Un flag para indicar cuándo hay alguna E/S <strong>de</strong>sactivada.<br />

Flags para indicar el estado "activo/inactivo" <strong>de</strong>l ciclo constante y el<br />

conmutador llave <strong>de</strong> protección <strong>de</strong> memoria.<br />

Flags para indicar un estado <strong>de</strong> batería baja y si funciona Hot Standby.<br />

Datos <strong>de</strong> posición <strong>de</strong>l módulo fallido.<br />

Flag <strong>de</strong> suma <strong>de</strong> control <strong>de</strong> la lógica <strong>de</strong> aplicación modificada.<br />

Flag <strong>de</strong> pérdida <strong>de</strong> comunicación RIO.<br />

Los <strong>bloques</strong> <strong>de</strong> instrucciones HLTH tienen tres entradas <strong>de</strong> control y pue<strong>de</strong>n<br />

producir tres salidas.<br />

Los estados combinados <strong>de</strong> las entradas intermedia e inferior controlan el modo <strong>de</strong><br />

funcionamiento:<br />

Entrada<br />

intermedia<br />

Entrada<br />

inferior<br />

Operación<br />

Activa Inactiva Modo <strong>de</strong> aprendizaje como sistema <strong>de</strong> cable dual.<br />

Activa Activa Modo <strong>de</strong> aprendizaje como sistema <strong>de</strong> cable sencillo.<br />

Inactiva Activa Modo <strong>de</strong> vigilancia<br />

Inactiva Inactiva Suma <strong>de</strong> control <strong>de</strong> la lógica <strong>de</strong> actualización <strong>de</strong>l modo <strong>de</strong> vigilancia.<br />

31007526 12/2006 589


HLTH: Matrices <strong>de</strong> historia y estado<br />

Asiento superior <strong>de</strong> la <strong>de</strong>scripción <strong>de</strong> parámetros (matriz <strong>de</strong> historia)<br />

Matriz <strong>de</strong> historia<br />

(asiento<br />

superior)<br />

El registro 4x introducido en el asiento superior es el primero <strong>de</strong> un bloque <strong>de</strong><br />

registros contiguos que incluyen la matriz <strong>de</strong> historia. La instrucción reúne los datos<br />

para la matriz <strong>de</strong> historia durante una operación <strong>de</strong> modo <strong>de</strong> aprendizaje.<br />

Posteriormente se establecen en la matriz cuando el modo cambia a vigilancia.<br />

La matriz <strong>de</strong> historia tiene un rango <strong>de</strong> 6 a 135 registros <strong>de</strong> longitud. A continuación<br />

se muestra una <strong>de</strong>scripción <strong>de</strong> las palabras <strong>de</strong> la matriz <strong>de</strong> historia. La información<br />

<strong>de</strong> la palabra 1 está contenida en el registro visualizado en el asiento superior,<br />

mientras que la información <strong>de</strong> las palabras 2 a 135 se almacena en los registros<br />

implícitos.<br />

Palabra 1 Introduzca el número <strong>de</strong> estación (rango <strong>de</strong> 0 a <strong>32</strong>) en el que se van a supervisar<br />

los reintentos.<br />

Palabra 2 Palabra superior <strong>de</strong> la suma <strong>de</strong> control aprendida.<br />

Palabra 3 Palabra inferior <strong>de</strong> la suma <strong>de</strong> control aprendida.<br />

Palabra 4 El estado y un contador para multiplexar las entradas. La instrucción HLTH procesa<br />

16 palabras <strong>de</strong> entrada (256 entradas) por ciclo <strong>de</strong> programa. Esta palabra<br />

mantiene la última ubicación <strong>de</strong> palabra <strong>de</strong>l último ciclo <strong>de</strong> programa. El registro se<br />

sobrescribe en cada ciclo <strong>de</strong> programa. El valor en la parte <strong>de</strong> contador <strong>de</strong> la<br />

palabra se incrementa hasta el número máximo <strong>de</strong> entradas, luego vuelve a<br />

iniciarse <strong>de</strong>s<strong>de</strong> 0.<br />

Utilización <strong>de</strong> la palabra 4<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = se ha encontrado al menos una entrada bloqueada.<br />

2 - 16 Conteo <strong>de</strong>l número <strong>de</strong> palabras comprobadas para las entradas bloqueadas<br />

antes <strong>de</strong> este ciclo <strong>de</strong> programa.<br />

590 31007526 12/2006


HLTH: Matrices <strong>de</strong> historia y estado<br />

Palabra 5 Estado y un contador para multiplexar salidas y <strong>de</strong>tectar si hay alguna<br />

<strong>de</strong>sconectada. La instrucción HLTH explora 16 palabras (256 salidas) por cada ciclo<br />

<strong>de</strong> programa para saber si hay alguna bloqueada. Mantiene la última ubicación <strong>de</strong><br />

palabra <strong>de</strong>l último ciclo <strong>de</strong> programa. El bloque se sobrescribe en cada ciclo <strong>de</strong><br />

programa. El valor <strong>de</strong> la parte <strong>de</strong>l contador se incrementa hasta las salidas máximas<br />

y luego vuelve a iniciarse <strong>de</strong>s<strong>de</strong> 0.<br />

Utilización <strong>de</strong> la palabra 5.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = se ha encontrado al menos una salida bloqueada.<br />

2 - 16 Conteo <strong>de</strong>l número <strong>de</strong> palabras comprobadas para las salidas bloqueadas<br />

antes <strong>de</strong> este ciclo <strong>de</strong> programa.<br />

Palabra 6 Datos aprendidos <strong>de</strong>l cable Hot Standby<br />

Utilización <strong>de</strong> la palabra 6.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = S911 presente durante el aprendizaje.<br />

2 - 8 No utilizado.<br />

9 1 = el cable A está vigilado.<br />

10 1 = el cable B está vigilado.<br />

11 - 16 No utilizado.<br />

Palabras 7 a 134 Estas palabras <strong>de</strong>finen el estado aprendido <strong>de</strong> las estaciones 1 a <strong>32</strong> <strong>de</strong>l siguiente<br />

modo.<br />

Palabra Nº <strong>de</strong> estación<br />

7 - 10 1<br />

11 - 14 2<br />

15 - 18 3<br />

:<br />

:<br />

:<br />

:<br />

131 - 134 <strong>32</strong><br />

31007526 12/2006 591


HLTH: Matrices <strong>de</strong> historia y estado<br />

La estructura <strong>de</strong> las cuatro palabras asignadas a cada estación es la siguiente:<br />

Primera palabra<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 Bit <strong>de</strong> retardo <strong>de</strong> estación 1.<br />

Nota: El software utiliza los bits <strong>de</strong> retardo <strong>de</strong> estación para retardar la vigilancia<br />

<strong>de</strong> la estación durante cuatro ciclos <strong>de</strong> programa <strong>de</strong>spués <strong>de</strong> restablecer las<br />

comunicaciones con una estación. El valor <strong>de</strong> retardo sólo tiene un uso interno<br />

y no precisa la intervención <strong>de</strong>l usuario.<br />

2 Bit <strong>de</strong> retardo <strong>de</strong> estación 2.<br />

3 Bit <strong>de</strong> retardo <strong>de</strong> estación 3.<br />

4 Bit <strong>de</strong> retardo <strong>de</strong> estación 4.<br />

5 Bit <strong>de</strong> retardo <strong>de</strong> estación 5.<br />

6 Bastidor 1, slot 1, módulo encontrado.<br />

7 Bastidor 1, slot 2, módulo encontrado.<br />

8 Bastidor 1, slot 3, módulo encontrado.<br />

9 Bastidor 1, slot 4, módulo encontrado.<br />

10 Bastidor 1, slot 5, módulo encontrado.<br />

11 Bastidor 1, slot 6, módulo encontrado.<br />

12 Bastidor 1, slot 7, módulo encontrado.<br />

13 Bastidor 1, slot 8, módulo encontrado.<br />

14 Bastidor 1, slot 9, módulo encontrado.<br />

15 Bastidor 1, slot 10, módulo encontrado.<br />

16 Bastidor 1, slot 11, módulo encontrado.<br />

Segunda palabra<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 Bastidor 2, slot 1, módulo encontrado.<br />

2 Bastidor 2, slot 2, módulo encontrado.<br />

3 Bastidor 2, slot 3, módulo encontrado.<br />

4 Bastidor 2, slot 4, módulo encontrado.<br />

5 Bastidor 2, slot 5, módulo encontrado.<br />

6 Bastidor 2, slot 6, módulo encontrado.<br />

7 Bastidor 2, slot 7, módulo encontrado.<br />

592 31007526 12/2006


Bit Función<br />

8 Bastidor 2, slot 8, módulo encontrado.<br />

9 Bastidor 2, slot 9, módulo encontrado.<br />

10 Bastidor 2, slot 10, módulo encontrado.<br />

11 Bastidor 2, slot 11, módulo encontrado.<br />

12 Bastidor 3, slot 1, módulo encontrado.<br />

13 Bastidor 3, slot 2, módulo encontrado.<br />

14 Bastidor 3, slot 3, módulo encontrado.<br />

15 Bastidor 3, slot 4, módulo encontrado.<br />

16 Bastidor 3, slot 5, módulo encontrado.<br />

Tercera palabra<br />

Bit Función<br />

1 Bastidor 3, slot 6, módulo encontrado.<br />

2 Bastidor 3, slot 7, módulo encontrado.<br />

3 Bastidor 3, slot 8, módulo encontrado.<br />

4 Bastidor 3, slot 9, módulo encontrado.<br />

5 Bastidor 3, slot 10, módulo encontrado.<br />

6 Bastidor 3, slot 11, módulo encontrado.<br />

7 Bastidor 4, slot 1, módulo encontrado.<br />

8 Bastidor 4, slot 2, módulo encontrado.<br />

9 Bastidor 4, slot 3, módulo encontrado.<br />

10 Bastidor 4, slot 4, módulo encontrado.<br />

11 Bastidor 4, slot 5, módulo encontrado.<br />

12 Bastidor 4, slot 6, módulo encontrado.<br />

13 Bastidor 4, slot 7, módulo encontrado.<br />

14 Bastidor 4, slot 8, módulo encontrado.<br />

15 Bastidor 4, slot 9, módulo encontrado.<br />

16 Bastidor 4, slot 10, módulo encontrado.<br />

HLTH: Matrices <strong>de</strong> historia y estado<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

31007526 12/2006 593


HLTH: Matrices <strong>de</strong> historia y estado<br />

Cuarta palabra<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 Bastidor 4, slot 11, módulo encontrado.<br />

2 Bastidor 5, slot 1, módulo encontrado.<br />

3 Bastidor 5, slot 2, módulo encontrado.<br />

4 Bastidor 5, slot 3, módulo encontrado.<br />

5 Bastidor 5, slot 4, módulo encontrado.<br />

6 Bastidor 5, slot 5, módulo encontrado.<br />

7 Bastidor 5, slot 6, módulo encontrado.<br />

8 Bastidor 5, slot 7, módulo encontrado.<br />

9 Bastidor 5, slot 8, módulo encontrado.<br />

10 Bastidor 5, slot 9, módulo encontrado.<br />

11 Bastidor 5, slot 10, módulo encontrado.<br />

12 Bastidor 5, slot 11, módulo encontrado.<br />

13 - 16 No utilizado<br />

594 31007526 12/2006


HLTH: Matrices <strong>de</strong> historia y estado<br />

Asiento intermedio <strong>de</strong> la <strong>de</strong>scripción <strong>de</strong> parámetros (matriz <strong>de</strong> estado)<br />

Matriz <strong>de</strong> estado<br />

(asiento<br />

intermedio)<br />

El registro 4x introducido en el asiento intermedio es el primero <strong>de</strong> un bloque <strong>de</strong><br />

registros <strong>de</strong> salida contiguos que incluyen la matriz <strong>de</strong> estado. La instrucción HLTH<br />

actualiza la matriz <strong>de</strong> estado durante el modo <strong>de</strong> vigilancia (la entrada superior está<br />

activa y la entrada intermedia está inactiva).<br />

La matriz <strong>de</strong> estado tiene un rango <strong>de</strong> 3 a 1<strong>32</strong> registros <strong>de</strong> longitud. A continuación<br />

se muestra una <strong>de</strong>scripción <strong>de</strong> las palabras <strong>de</strong> la matriz <strong>de</strong> estado. La información<br />

<strong>de</strong> la palabra 1 está incluida en el registro visualizado en el asiento intermedio,<br />

mientras que la información <strong>de</strong> las palabras 2 a 131 está almacenada en los<br />

registros implícitos.<br />

Palabra 1 Esta palabra es un contador <strong>de</strong> comunicaciones perdidas en la estación que se está<br />

vigilando.<br />

Utilización <strong>de</strong> la palabra 1.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 8 Indica el número <strong>de</strong> la estación que se está vigilando (0 a <strong>32</strong>).<br />

9 - 16 Cantidad <strong>de</strong> inci<strong>de</strong>ncias <strong>de</strong> comunicaciones perdidas (0 a 15).<br />

Palabra 2 Esta palabra es el contador acumulativo <strong>de</strong> reintentos para la estación que se está<br />

vigilando (el número <strong>de</strong> estación se indica en el byte <strong>de</strong> mayor valor <strong>de</strong> la palabra 1).<br />

Utilización <strong>de</strong> la palabra 2.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 4 No utilizado.<br />

5 - 16 Conteo acumulativo <strong>de</strong> reintentos (0 a 255).<br />

31007526 12/2006 595


HLTH: Matrices <strong>de</strong> historia y estado<br />

Palabra 3 Esta palabra actualiza el estado <strong>de</strong>l PLC (incluido el estado <strong>de</strong> funcionamiento en<br />

Hot Standby) en cada ciclo <strong>de</strong> programa.<br />

Utilización <strong>de</strong> la palabra 3.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 Activo = no todas las estaciones se comunican.<br />

2 No utilizado.<br />

3 Activo = la suma <strong>de</strong> control lógica ha cambiando <strong>de</strong>s<strong>de</strong> el último aprendizaje.<br />

4 Activo = se ha <strong>de</strong>tectado al menos una entrada 1x bloqueada.<br />

5 Activo = se ha <strong>de</strong>tectado al menos una salida 0x bloqueada.<br />

6 Activo = ciclo constante habilitado.<br />

7 - 10 No utilizados.<br />

11 Activo = protección <strong>de</strong> memoria inactiva.<br />

12 Activo = batería no válida.<br />

13 Activo = un S911 no es válido.<br />

14 Activo = Hot Standby no activo.<br />

15 - 16 No utilizados.<br />

Palabras 4 a 131 Estas palabras indican el estado <strong>de</strong> las estaciones 1 a <strong>32</strong> <strong>de</strong>l siguiente modo.<br />

Palabra Nº <strong>de</strong> estación<br />

4 - 7 1<br />

8 - 11 2<br />

12 - 15 3<br />

:<br />

:<br />

:<br />

:<br />

128 - 131 <strong>32</strong><br />

La estructura <strong>de</strong> las cuatro palabras asignadas a cada estación es la siguiente:<br />

Primera palabra<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 Se ha <strong>de</strong>tectado un fallo en las comunicaciones <strong>de</strong> la estación.<br />

2 Bastidor 1, slot 1, fallo <strong>de</strong>l módulo.<br />

3 Bastidor 1, slot 2, fallo <strong>de</strong>l módulo.<br />

596 31007526 12/2006


Bit Función<br />

4 Bastidor 1, slot 3, fallo <strong>de</strong>l módulo.<br />

5 Bastidor 1, slot 4, fallo <strong>de</strong>l módulo.<br />

6 Bastidor 1, slot 5, fallo <strong>de</strong>l módulo.<br />

7 Bastidor 1, slot 6, fallo <strong>de</strong>l módulo.<br />

8 Bastidor 1, slot 7, fallo <strong>de</strong>l módulo.<br />

9 Bastidor 1, slot 8, fallo <strong>de</strong>l módulo.<br />

10 Bastidor 1, slot 9, fallo <strong>de</strong>l módulo.<br />

11 Bastidor 1, slot 10, fallo <strong>de</strong>l módulo.<br />

12 Bastidor 1, slot 11, fallo <strong>de</strong>l módulo.<br />

13 Bastidor 2, slot 1, fallo <strong>de</strong>l módulo.<br />

14 Bastidor 2, slot 2, fallo <strong>de</strong>l módulo.<br />

15 Bastidor 2, slot 3, fallo <strong>de</strong>l módulo.<br />

16 Bastidor 2, slot 4, fallo <strong>de</strong>l módulo.<br />

Segunda palabra<br />

Bit Función<br />

1 Bastidor 2, slot 5, fallo <strong>de</strong>l módulo.<br />

2 Bastidor 2, slot 6, fallo <strong>de</strong>l módulo.<br />

3 Bastidor 2, slot 7, fallo <strong>de</strong>l módulo.<br />

4 Bastidor 2, slot 8, fallo <strong>de</strong>l módulo.<br />

5 Bastidor 2, slot 9, fallo <strong>de</strong>l módulo.<br />

6 Bastidor 2, slot 10, fallo <strong>de</strong>l módulo.<br />

7 Bastidor 2, slot 11, fallo <strong>de</strong>l módulo.<br />

8 Bastidor 3, slot 1, fallo <strong>de</strong>l módulo.<br />

9 Bastidor 3, slot 2, fallo <strong>de</strong>l módulo.<br />

10 Bastidor 3, slot 3, fallo <strong>de</strong>l módulo.<br />

11 Bastidor 3, slot 4, fallo <strong>de</strong>l módulo.<br />

12 Bastidor 3, slot 5, fallo <strong>de</strong>l módulo.<br />

13 Bastidor 3, slot 6, fallo <strong>de</strong>l módulo.<br />

14 Bastidor 3, slot 7, fallo <strong>de</strong>l módulo.<br />

15 Bastidor 3, slot 8, fallo <strong>de</strong>l módulo.<br />

16 Bastidor 3, slot 9, fallo <strong>de</strong>l módulo.<br />

HLTH: Matrices <strong>de</strong> historia y estado<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

31007526 12/2006 597


HLTH: Matrices <strong>de</strong> historia y estado<br />

Tercera palabra<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 Bastidor 3, slot 10, fallo <strong>de</strong>l módulo.<br />

2 Bastidor 3, slot 11, fallo <strong>de</strong>l módulo.<br />

3 Bastidor 4, slot 1, fallo <strong>de</strong>l módulo.<br />

4 Bastidor 4, slot 2, fallo <strong>de</strong>l módulo.<br />

5 Bastidor 4, slot 3, fallo <strong>de</strong>l módulo.<br />

6 Bastidor 4, slot 4, fallo <strong>de</strong>l módulo.<br />

7 Bastidor 4, slot 5, fallo <strong>de</strong>l módulo.<br />

8 Bastidor 4, slot 6, fallo <strong>de</strong>l módulo.<br />

9 Bastidor 4, slot 7, fallo <strong>de</strong>l módulo.<br />

10 Bastidor 4, slot 8, fallo <strong>de</strong>l módulo.<br />

11 Bastidor 4, slot 9, fallo <strong>de</strong>l módulo.<br />

12 Bastidor 4, slot 10, fallo <strong>de</strong>l módulo.<br />

13 Bastidor 4, slot 11, fallo <strong>de</strong>l módulo.<br />

14 Bastidor 5, slot 1, fallo <strong>de</strong>l módulo.<br />

15 Bastidor 5, slot 2, fallo <strong>de</strong>l módulo.<br />

16 Bastidor 5, slot 3, fallo <strong>de</strong>l módulo.<br />

Cuarta palabra<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 Bastidor 5, slot 4, fallo <strong>de</strong>l módulo.<br />

2 Bastidor 5, slot 5, fallo <strong>de</strong>l módulo.<br />

3 Bastidor 5, slot 6, fallo <strong>de</strong>l módulo.<br />

4 Bastidor 5, slot 7, fallo <strong>de</strong>l módulo.<br />

5 Bastidor 5, slot 8, fallo <strong>de</strong>l módulo.<br />

6 Bastidor 5, slot 9, fallo <strong>de</strong>l módulo.<br />

7 Bastidor 5, slot 10, fallo <strong>de</strong>l módulo.<br />

8 Bastidor 5, slot 11, fallo <strong>de</strong>l módulo.<br />

9 Fallo en el cable A.<br />

10 Fallo en el cable B.<br />

11 - 16 No utilizados.<br />

598 31007526 12/2006


Asiento inferior <strong>de</strong> la <strong>de</strong>scripción <strong>de</strong> parámetros (longitud)<br />

Longitud<br />

(asiento inferior)<br />

HLTH: Matrices <strong>de</strong> historia y estado<br />

El valor <strong>de</strong>cimal introducido en el asiento inferior correspon<strong>de</strong> a una función que<br />

indica cuántas estaciones <strong>de</strong> E/S se <strong>de</strong>sean supervisar. Cada estación requiere<br />

cuatro registros/matrices. El valor <strong>de</strong> la longitud se calcula utilizando la siguiente<br />

fórmula:<br />

longitud = (Nº <strong>de</strong> estaciones <strong>de</strong> E/S x 4) + 3<br />

Este valor indica el número <strong>de</strong> registros <strong>de</strong> la matriz <strong>de</strong> estado. Sólo será necesario<br />

introducir este valor como la longitud, ya que la longitud <strong>de</strong> la matriz <strong>de</strong> historia<br />

aumenta en tres registros <strong>de</strong> forma automática, es <strong>de</strong>cir, el tamaño <strong>de</strong> la matriz <strong>de</strong><br />

historia es longitud + 3.<br />

31007526 12/2006 599


HLTH: Matrices <strong>de</strong> historia y estado<br />

600 31007526 12/2006


Presentación<br />

HSBY - Hot Standby<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción HSBY.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

95<br />

Apartado Página<br />

Descripción breve 602<br />

Representación: HSBY - Hot Standby 603<br />

Descripción <strong>de</strong> parámetros - Nodo superior 605<br />

Descripción <strong>de</strong> parámetros - Nodo intermedio: HSBY - Hot Standby 606<br />

31007526 12/2006 601


HSBY - Hot Standby<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

La instrucción cargable HSBY gestiona un sistema <strong>de</strong> control 984 Hot Standby. Esta<br />

instrucción <strong>de</strong>be sustituirse en la red 1 <strong>de</strong>l segmento 1 en la lógica <strong>de</strong> aplicación<br />

para los controladores primarios y standby. Permite programar un área no<br />

transferible en la memoria <strong>de</strong> señal <strong>de</strong>l sistema (un área que evite que el<br />

controlador primario modifique un grupo serie <strong>de</strong> registros en el controlador<br />

standby).<br />

Mediante la instrucción HSBY, pue<strong>de</strong> acce<strong>de</strong>r a dos registros: un registro <strong>de</strong><br />

comando y uno <strong>de</strong> estado. El acceso permite supervisar y controlar las operaciones<br />

<strong>de</strong> Hot Standby. El registro <strong>de</strong> estado es el tercero en el área no transferible<br />

especificada.<br />

602 31007526 12/2006


Representación: HSBY - Hot Standby<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

registro <strong>de</strong> comando<br />

estado RAM<br />

registro <strong>de</strong><br />

comando<br />

área no<br />

transferible<br />

longitud <strong>de</strong><br />

HSBY<br />

activa<br />

HSBY - Hot Standby<br />

31007526 12/2006 603<br />

error<br />

Longitud NB = longitud <strong>de</strong>l<br />

área no transferible


HSBY - Hot Standby<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno Ejecutar HSBY (incondicionalmente).<br />

ON = función habilitada.<br />

0x, 1x Ninguno Habilitar registro <strong>de</strong> comando.<br />

ON = función habilitada.<br />

Entrada inferior 0x, 1x Ninguno Habilitar área no transferible.<br />

ON = función habilitada.<br />

Registro <strong>de</strong><br />

comando<br />

(nodo superior)<br />

Área no<br />

transferible<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

4x INT, UINT El registro 4xxxx introducido en el nodo<br />

superior es el registro <strong>de</strong> comando HSBY; en<br />

este registro es posible configurar y controlar<br />

ocho bits por medio <strong>de</strong>l software <strong>de</strong> panel.<br />

(Para obtener más información,<br />

consulte p. 605.)<br />

4x INT, UINT El registro 4xxxx introducido en el nodo<br />

intermedio es el primer registro reservado<br />

para el área no transferible <strong>de</strong> la memoria <strong>de</strong><br />

señal. Los tres primeros registros <strong>de</strong> esta área<br />

son registros especiales.<br />

(Para obtener más información,<br />

consulte p. 606 o p. 606.)<br />

INT, UINT El valor entero introducido en el nodo inferior<br />

<strong>de</strong>fine la longitud (número <strong>de</strong> registros) <strong>de</strong>l<br />

área no transferible HSBY en la memoria <strong>de</strong><br />

señal. La longitud <strong>de</strong>be ser como mínimo <strong>de</strong><br />

cuatro registros; <strong>de</strong>ntro <strong>de</strong>l rango <strong>de</strong> 4 a 255<br />

registros en una CPU <strong>de</strong> 16 bits y <strong>de</strong>ntro <strong>de</strong>l<br />

rango <strong>de</strong> 4 a 8.000 registros en una CPU <strong>de</strong> 24<br />

bits.<br />

Salida superior 0x Ninguno Sistema Hot Standby ACTIVE.<br />

Salida<br />

intermedia<br />

0x Ninguno El PLC no pue<strong>de</strong> comunicarse con su módulo<br />

HSBY.<br />

604 31007526 12/2006


Descripción <strong>de</strong> parámetros - Nodo superior<br />

Configuración<br />

<strong>de</strong>l registro<br />

Pue<strong>de</strong> configurar los bits <strong>de</strong>l 6 al 8 y <strong>de</strong>l 12 al 16.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Siga estas directrices para configurar dichos bits.<br />

HSBY - Hot Standby<br />

Bit Función<br />

6 0 = intercambiar dirección <strong>de</strong>l puerto Modbus 2 al conmutar.<br />

1 = no intercambiar dirección <strong>de</strong>l puerto Modbus 3 al conmutar.<br />

7 0 = intercambiar dirección <strong>de</strong>l puerto Modbus 2 al conmutar.<br />

1 = no intercambiar dirección <strong>de</strong>l puerto Modbus 2 al conmutar.<br />

8 0 = intercambiar dirección <strong>de</strong>l puerto Modbus 1 al conmutar.<br />

1 = no intercambiar dirección <strong>de</strong>l puerto Modbus q al conmutar.<br />

12 0 = permitir actualización Exec sólo <strong>de</strong>spués <strong>de</strong> que se <strong>de</strong>tenga la aplicación.<br />

1 = permitir la actualización Exec sin <strong>de</strong>tener la aplicación.<br />

13 0 = forzar Standby Offline, en caso <strong>de</strong> que aparezca una discrepancia <strong>de</strong> lógica.<br />

1 = no forzar Standby Offline, en caso <strong>de</strong> que aparezca una discrepancia <strong>de</strong><br />

lógica.<br />

14 0 = el controlador B se encuentra en modalidad OFFLINE.<br />

1 = el controlador B se encuentra en modalidad RUN.<br />

15 0 = el controlador A se encuentra en modalidad OFFLINE.<br />

1 = el controlador A se encuentra en modalidad RUN.<br />

16 0 = <strong>de</strong>sactivar sobrescritura <strong>de</strong> conmutador llave.<br />

1 = activar sobrescritura <strong>de</strong> conmutador llave.<br />

31007526 12/2006 605


HSBY - Hot Standby<br />

Descripción <strong>de</strong> parámetros - Nodo intermedio: HSBY - Hot Standby<br />

Registros<br />

especiales <strong>de</strong>l<br />

área no<br />

transferible<br />

Registros<br />

específicos <strong>de</strong><br />

aplicación<br />

Los tres primeros registros <strong>de</strong> esta área son registros especiales.<br />

Registro Contenido<br />

Visualizado y primer implícito Estos dos registros son registros <strong>de</strong> transferencia inversa<br />

para pasar información <strong>de</strong>l standby al PLC primario.<br />

Segundo implícito Registro <strong>de</strong> estado <strong>de</strong> HSBY.<br />

Los bits 11 a 16 son específicos <strong>de</strong> la aplicación.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

El contenido <strong>de</strong> los registros restantes es específico <strong>de</strong> la aplicación. La longitud se<br />

<strong>de</strong>fine en el nodo inferior.<br />

Bit Función<br />

11 0 = el conmutador <strong>de</strong> este PLC está establecido en A.<br />

1 = el conmutador <strong>de</strong> este PLC está establecido en B.<br />

12 0 = los PLC tienen una lógica congruente.<br />

1 = los PLC no tienen una lógica congruente.<br />

13<br />

14<br />

15<br />

16<br />

0 1 = el otro PLC se encuentra en modalidad OFFLINE.<br />

1 0 = el otro PLC está funcionando en modalidad primaria.<br />

1 1 = el otro PLC está funcionando en modalidad standby.<br />

0 1 = este PLC se encuentra en modalidad OFFLINE.<br />

1 0 = este PLC está funcionando en modalidad primaria.<br />

1 1 = este PLC está funcionando en modalidad standby.<br />

606 31007526 12/2006


Presentación<br />

IBKR: Lectura indirecta <strong>de</strong> bloque<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción IBKR.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

96<br />

Apartado Página<br />

Descripción breve 608<br />

Representación: IBKR - Lectura indirecta <strong>de</strong> bloque 609<br />

31007526 12/2006 607


IBKR: Lectura indirecta <strong>de</strong> bloque<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción IBKR (lectura indirecta <strong>de</strong> bloque) permite acce<strong>de</strong>r a registros no<br />

contiguos repartidos por la aplicación y copiar el contenido en un bloque <strong>de</strong> <strong>de</strong>stino<br />

<strong>de</strong> registros contiguos. Esta instrucción se pue<strong>de</strong> utilizar con subrutinas o para un<br />

acceso eficaz a los datos por medio <strong>de</strong> equipos <strong>de</strong> programación u otros PLC.<br />

608 31007526 12/2006


Representación: IBKR - Lectura indirecta <strong>de</strong> bloque<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

ENTRADA DE<br />

CONTROL<br />

Longitud: 1–255<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

tabla <strong>de</strong><br />

fuente<br />

bloque <strong>de</strong><br />

<strong>de</strong>stino<br />

longitud <strong>de</strong><br />

IBKR<br />

(1...255)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

IBKR: Lectura indirecta <strong>de</strong> bloque<br />

ACTIVA<br />

ERROR<br />

Entrada superior 0x, 1x Ninguno ON = inicia la operación <strong>de</strong> lectura indirecta.<br />

Tabla <strong>de</strong> fuente<br />

(nodo superior)<br />

Bloque <strong>de</strong> <strong>de</strong>stino<br />

(nodo intermedio)<br />

Longitud (1 a 255)<br />

(nodo inferior)<br />

4x INT, UINT Primer registro en espera <strong>de</strong> una tabla <strong>de</strong><br />

fuente: contiene valores que son pointers<br />

para los registros no contiguos que se han <strong>de</strong><br />

recoger en la operación.<br />

4x INT, UINT El primero <strong>de</strong> un bloque <strong>de</strong> registros <strong>de</strong><br />

<strong>de</strong>stino contiguos, es <strong>de</strong>cir, el bloque en el<br />

que se van a copiar los datos <strong>de</strong> fuente.<br />

INT, UINT Número <strong>de</strong> registros <strong>de</strong> la tabla <strong>de</strong> fuente y<br />

<strong>de</strong>l bloque <strong>de</strong> <strong>de</strong>stino, rango: 1...255<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida inferior 0x Ninguno ON = error en la tabla <strong>de</strong> fuente.<br />

31007526 12/2006 609


IBKR: Lectura indirecta <strong>de</strong> bloque<br />

610 31007526 12/2006


Presentación<br />

IBKW:<br />

Escritura indirecta <strong>de</strong> bloque<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción IBKW.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

97<br />

Apartado Página<br />

Descripción breve 612<br />

Representación 613<br />

31007526 12/2006 611


IBKW: Escritura indirecta <strong>de</strong> bloque<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción IBKW (escritura indirecta <strong>de</strong> bloque) permite copiar los datos <strong>de</strong> una<br />

tabla <strong>de</strong> registros contiguos en varios registros no contiguos repartidos por la<br />

aplicación.<br />

612 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

bloque <strong>de</strong><br />

fuente<br />

Longitud: 1–255<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Bloque <strong>de</strong><br />

fuente<br />

(nodo superior)<br />

Pointers <strong>de</strong><br />

<strong>de</strong>stino<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(1 a 255)<br />

(nodo inferior)<br />

pointers <strong>de</strong><br />

<strong>de</strong>stino<br />

longitud <strong>de</strong><br />

IBKW<br />

(1...255)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

IBKW: Escritura indirecta <strong>de</strong> bloque<br />

31007526 12/2006 613<br />

error<br />

0x, 1x Ninguno ON = inicia la operación <strong>de</strong> escritura<br />

indirecta.<br />

4x INT, UINT El primero <strong>de</strong> un bloque <strong>de</strong> registros <strong>de</strong><br />

fuente: contiene valores que se copiarán en<br />

registros no contiguos repartidos por todo el<br />

programa lógico.<br />

4x INT, UINT El primero <strong>de</strong> un bloque <strong>de</strong> registros <strong>de</strong><br />

pointer <strong>de</strong> <strong>de</strong>stino contiguos. Cada uno <strong>de</strong><br />

estos registros contiene un valor que indica la<br />

dirección <strong>de</strong> un registro en el que se van a<br />

copiar los datos <strong>de</strong> fuente.<br />

INT, UINT Número <strong>de</strong> registros <strong>de</strong>l bloque <strong>de</strong> fuente y el<br />

bloque <strong>de</strong> pointer <strong>de</strong> <strong>de</strong>stino, rango: 1 a 255.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida inferior 0x Ninguno ON = error en la tabla <strong>de</strong> <strong>de</strong>stino.


IBKW: Escritura indirecta <strong>de</strong> bloque<br />

614 31007526 12/2006


Presentación<br />

ICMP: Comparación <strong>de</strong> entrada<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción ICMP.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

98<br />

Apartado Página<br />

Descripción breve 616<br />

Representación: ICMP - Comparación <strong>de</strong> entrada 617<br />

Descripción <strong>de</strong> los parámetros 619<br />

Bloques DRUM/ICMP en cascada 621<br />

31007526 12/2006 615


ICMP: Comparación <strong>de</strong> entrada<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción sólo estará disponible si ha expandido e instalado las<br />

instrucciones cargables DX; encontrará más información en p. 49.<br />

La instrucción ICMP (comparación <strong>de</strong> entrada) proporciona lógica para verificar el<br />

correcto funcionamiento los pasos procesados por una instrucción DRUM. Los<br />

errores <strong>de</strong>tectados por ICMP pue<strong>de</strong>n utilizarse para activar la lógica <strong>de</strong> corrección<br />

<strong>de</strong> errores adicional o para apagar el sistema.<br />

Las instrucciones ICMP y DRUM están sincronizadas gracias a la utilización <strong>de</strong> un<br />

registro común <strong>de</strong> pointer <strong>de</strong> paso. A medida que se incrementa el pointer, ICMP se<br />

mueve por su tabla <strong>de</strong> datos en paso sincronizado con DRUM. Al moverse a través<br />

<strong>de</strong> cada nuevo paso, la instrucción ICMP compara bit a bit los datos <strong>de</strong> entrada<br />

reales con el estado esperado <strong>de</strong> cada punto en su tabla <strong>de</strong> datos.<br />

616 31007526 12/2006


Representación: ICMP - Comparación <strong>de</strong> entrada<br />

Símbolo Representación <strong>de</strong> la instrucción.<br />

ENTRADA DE<br />

CONTROL<br />

ENTRADA EN<br />

CASCADA<br />

Nº MÁX. DE PASOS<br />

00NNN = 255, PLC <strong>de</strong> 16 bits<br />

999, PLC <strong>de</strong> 24 bits<br />

pointer<br />

<strong>de</strong><br />

paso<br />

tabla <strong>de</strong><br />

datos<br />

<strong>de</strong> pasos<br />

ICMP<br />

longitud<br />

ICMP: Comparación <strong>de</strong> entrada<br />

ACTIVO<br />

SALIDA DE CONTROL<br />

ERROR<br />

31007526 12/2006 617


ICMP: Comparación <strong>de</strong> entrada<br />

Descripción <strong>de</strong><br />

los parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Pointer <strong>de</strong> paso<br />

(asiento<br />

superior)<br />

Tabla <strong>de</strong> datos<br />

<strong>de</strong> pasos<br />

(asiento<br />

intermedio)<br />

Longitud<br />

(asiento<br />

inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno Activo = inicia la comparación <strong>de</strong><br />

entradas.<br />

0x, 1x Ninguno Una entrada en cascada que informa al<br />

bloque <strong>de</strong> que la anterior comparación <strong>de</strong><br />

ICMP se <strong>de</strong>sarrolló sin problemas.<br />

Activo = el estado <strong>de</strong> comparación está<br />

pasando a la salida intermedia.<br />

4x INT, UINT Número <strong>de</strong>l paso actual.<br />

4x INT, UINT Primer registro <strong>de</strong> una tabla <strong>de</strong><br />

información <strong>de</strong> datos <strong>de</strong> pasos.<br />

INT, UINT Número <strong>de</strong> registros específicos <strong>de</strong> la<br />

aplicación utilizados en la tabla <strong>de</strong> datos<br />

<strong>de</strong> pasos, rango: 1 a 999.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno Activo = esta comparación y todas las<br />

acciones anteriores <strong>de</strong> ICMP en cascada<br />

se han <strong>de</strong>sarrollado sin problemas.<br />

Salida inferior 0x Ninguno Activo = Error.<br />

618 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Pointer <strong>de</strong> paso<br />

(asiento<br />

superior)<br />

Tabla <strong>de</strong> datos<br />

<strong>de</strong> pasos<br />

(asiento<br />

intermedio)<br />

ICMP: Comparación <strong>de</strong> entrada<br />

El registro 4x introducido en el asiento superior almacena el pointer <strong>de</strong> paso, es<br />

<strong>de</strong>cir, el número <strong>de</strong>l paso actual en la tabla <strong>de</strong> datos <strong>de</strong> pasos. ICMP hará referencia<br />

a este valor cada vez que se ejecute la instrucción. El valor <strong>de</strong>berá estar controlado<br />

externamente por una instrucción DRUM o por otra lógica <strong>de</strong> aplicación. Se <strong>de</strong>berá<br />

utilizar el mismo registro en el asiento superior <strong>de</strong> todas las instrucciones ICMP y<br />

DRUM que se ejecuten en un solo secuenciador.<br />

El registro 4x introducido en el asiento intermedio es el primer registro <strong>de</strong> una tabla<br />

<strong>de</strong> información <strong>de</strong> datos <strong>de</strong> pasos. Los ocho primeros registros <strong>de</strong> la tabla<br />

mantienen datos constantes y variables necesarios para ejecutar la instrucción.<br />

Registro Nombre Contenido<br />

Visualizado Datos brutos <strong>de</strong><br />

entrada<br />

Primer<br />

implícito<br />

Segundo<br />

implícito<br />

Tercer<br />

implícito<br />

Datos <strong>de</strong> paso en<br />

curso<br />

Cargado por el usuario <strong>de</strong>s<strong>de</strong> un grupo <strong>de</strong> entradas<br />

secuenciales para que ICMP lo utilice en el paso<br />

actual.<br />

Cargado por ICMP cada vez que se ejecuta el<br />

bloque; contiene una copia <strong>de</strong> los datos en el pointer<br />

<strong>de</strong> paso; hace que la lógica <strong>de</strong>l bloque calcule<br />

automáticamente los Offset <strong>de</strong> los registros al<br />

acce<strong>de</strong>r a los datos <strong>de</strong>l paso recogidos en la tabla<br />

<strong>de</strong> datos <strong>de</strong> pasos.<br />

Máscara <strong>de</strong> entrada Cargada por el usuario antes <strong>de</strong> utilizar el bloque;<br />

contiene un máscara a la que se <strong>de</strong>ben añadir,<br />

mediante la función AND, datos brutos <strong>de</strong> entrada<br />

para cada paso (los bits enmascarados no se<br />

compararán); los datos enmascarados se<br />

<strong>de</strong>positarán en el registro <strong>de</strong> datos <strong>de</strong> entrada<br />

enmascarados.<br />

Datos <strong>de</strong> entrada<br />

enmascarados<br />

Cargado por ICMP cada vez que se ejecuta el<br />

bloque; contiene el resultado <strong>de</strong> la máscara <strong>de</strong><br />

entrada y los datos brutos <strong>de</strong> entrada añadidos<br />

mediante AND.<br />

31007526 12/2006 619


ICMP: Comparación <strong>de</strong> entrada<br />

Longitud<br />

(asiento inferior)<br />

Registro Nombre Contenido<br />

Cuarto<br />

implícito<br />

Quinto<br />

implícito<br />

Sexto<br />

implícito<br />

Séptimo<br />

implícito<br />

Estado <strong>de</strong><br />

comparación<br />

Número <strong>de</strong><br />

i<strong>de</strong>ntificación <strong>de</strong><br />

máquina<br />

Número <strong>de</strong><br />

i<strong>de</strong>ntificación <strong>de</strong> perfil<br />

Cargado por ICMP cada vez que se ejecuta el<br />

bloque; contiene el resultado <strong>de</strong> una instrucción<br />

XOR <strong>de</strong> los datos <strong>de</strong> entrada enmascarados y los<br />

datos <strong>de</strong> paso en curso; las entradas no<br />

enmascaradas que no están en el estado lógico<br />

correcto hacen que el bit <strong>de</strong> registro asociado pase<br />

a 1. Los bits distintos <strong>de</strong> cero provocan una<br />

comparación errónea y la salida intermedia no se<br />

activará.<br />

I<strong>de</strong>ntifica los <strong>bloques</strong> DRUM/ICMP que pertenecen<br />

a la configuración <strong>de</strong> una máquina específica; rango<br />

<strong>de</strong> valores: 0 a 9.999 (0 = bloque no configurado);<br />

todos los <strong>bloques</strong> que pertenecen a la misma<br />

configuración <strong>de</strong> máquina <strong>de</strong>ben tener la misma<br />

i<strong>de</strong>ntificación <strong>de</strong> máquina.<br />

I<strong>de</strong>ntifica datos <strong>de</strong> perfil cargados actualmente en el<br />

secuenciador; rango <strong>de</strong> valor: 0 a 9.999 (0 = bloque<br />

no configurado); todos los <strong>bloques</strong> con el mismo<br />

número <strong>de</strong> i<strong>de</strong>ntificación <strong>de</strong> máquina <strong>de</strong>ben tener el<br />

mismo número <strong>de</strong> i<strong>de</strong>ntificación <strong>de</strong> perfil.<br />

Pasos utilizados Cargado por el usuario antes <strong>de</strong> utilizar el bloque;<br />

DRUM no alterará el contenido <strong>de</strong> los pasos<br />

utilizados durante una ejecución lógica: contiene<br />

entre 1 y 999 para las CPU <strong>de</strong> 24 bits y especifica el<br />

número real <strong>de</strong> pasos que se <strong>de</strong>ben ejecutar; el<br />

número <strong>de</strong>be ser mayor que la longitud <strong>de</strong> la tabla<br />

<strong>de</strong>l asiento inferior <strong>de</strong>l bloque ICMP.<br />

Los registros restantes contienen datos para cada paso <strong>de</strong> la secuencia.<br />

El valor entero introducido en el asiento inferior especifica la longitud, es <strong>de</strong>cir, el<br />

número <strong>de</strong> registros específicos <strong>de</strong> la aplicación que se utilizan en la tabla <strong>de</strong> datos<br />

<strong>de</strong> pasos. La longitud pue<strong>de</strong> ir <strong>de</strong> 1 a 999 en una CPU <strong>de</strong> 24 bits.<br />

El número total <strong>de</strong> registros necesarios para una tabla <strong>de</strong> datos <strong>de</strong> pasos es la<br />

longitud + 8. La longitud <strong>de</strong>be ser > el valor indicado en el registro <strong>de</strong> pasos<br />

utilizados <strong>de</strong>l asiento intermedio.<br />

620 31007526 12/2006


Bloques DRUM/ICMP en cascada<br />

Bloques DRUM/<br />

ICMP en cascada<br />

ICMP: Comparación <strong>de</strong> entrada<br />

Se pue<strong>de</strong> utilizar una serie <strong>de</strong> <strong>bloques</strong> DRUM y ICMP en cascada para simular un<br />

conmutador <strong>de</strong> tambor mecánico <strong>de</strong> hasta 512 bits. La programación <strong>de</strong> la misma<br />

referencia <strong>de</strong> registro 4x en el asiento superior <strong>de</strong> cada bloque relacionado hace<br />

que se apliquen en cascada y realicen los pasos como una unidad agrupada sin<br />

necesidad <strong>de</strong> ninguna lógica <strong>de</strong> aplicación adicional.<br />

Todos los <strong>bloques</strong> DRUM/ICMP con la misma referencia <strong>de</strong> registro en el asiento<br />

superior se sincronizan automáticamente. También <strong>de</strong>ben tener el mismo valor <strong>de</strong><br />

constante en el asiento inferior y <strong>de</strong>ben configurarse para que utilicen el mismo<br />

valor en el registro <strong>de</strong> pasos utilizados <strong>de</strong>l asiento intermedio.<br />

31007526 12/2006 621


ICMP: Comparación <strong>de</strong> entrada<br />

622 31007526 12/2006


Presentación<br />

ID: Bloquear interrupt<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción ID.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

99<br />

Apartado Página<br />

Descripción breve 624<br />

Representación 625<br />

Descripción <strong>de</strong> parámetros 626<br />

31007526 12/2006 623


ID: Bloquear interrupt<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

Existen tres instrucciones <strong>de</strong> control <strong>de</strong> interrupt enmascaradas/no enmascaradas<br />

para proteger datos tanto en Lad<strong>de</strong>r <strong>Logic</strong> normal (programado) como en la lógica<br />

<strong>de</strong> subrutina <strong>de</strong> gestión <strong>de</strong> interrupt (sin programar). Se trata <strong>de</strong> las instrucciones<br />

Bloquear interrupt (ID), Habilitar interrupt (IE) y Mover bloque con interrupts<br />

bloqueados (BMDI).<br />

La instrucción ID enmascara interrupts generados por un temporizador o por E/S<br />

locales.<br />

Los interrupts que se ejecutan en el periodo comprendido entre la ejecución <strong>de</strong> una<br />

instrucción ID y la ejecución <strong>de</strong> la siguiente instrucción IE se almacenan en un búfer.<br />

Los interrupts almacenados en un búfer se ejecutan al mismo tiempo que se<br />

resuelve la instrucción IE. Si se producen dos o más interrupts <strong>de</strong>l mismo tipo entre<br />

la ejecución <strong>de</strong> las instrucciones ID e IE, se establecerá el bit <strong>de</strong> error <strong>de</strong> <strong>de</strong>sbor<strong>de</strong><br />

<strong>de</strong>l interrupt <strong>de</strong> máscara y la subrutina iniciada por el interrupt sólo se ejecutará una<br />

vez.<br />

624 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

tipo<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Tipo<br />

Nodo inferior<br />

ID: Bloquear interrupt<br />

31007526 12/2006 625<br />

ID<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = la instrucción ID enmascara<br />

interrupts generados por un temporizador<br />

o por E/S locales.<br />

INT, UINT Tipo <strong>de</strong> interrupt que se va a enmascarar<br />

(constante <strong>de</strong> valor entero).<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte p. 626.)<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.


ID: Bloquear interrupt<br />

Descripción <strong>de</strong> parámetros<br />

Tipo<br />

(nodo inferior)<br />

Introduzca una constante <strong>de</strong> valor entero <strong>de</strong>l rango 13 en el nodo. El valor<br />

representa el tipo <strong>de</strong> interrupt que la instrucción ID va a enmascarar, don<strong>de</strong>:<br />

Valor entero Tipo <strong>de</strong> interrupt<br />

3 Interrupt <strong>de</strong> temporizador enmascarado<br />

2 Interrupt <strong>de</strong> módulo <strong>de</strong> E/S locales enmascarado<br />

1 Ambos tipos <strong>de</strong> interrupt enmascarados<br />

626 31007526 12/2006


Presentación<br />

IE: Habilitar interrupt<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción IE.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

100<br />

Apartado Página<br />

Descripción breve 628<br />

Representación 629<br />

Descripción <strong>de</strong> parámetros 630<br />

31007526 12/2006 627


IE: Habilitar interrupt<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

Existen tres instrucciones <strong>de</strong> control <strong>de</strong> interrupt enmascaradas/no enmascaradas<br />

para proteger datos tanto en Lad<strong>de</strong>r <strong>Logic</strong> normal (programado) como en la lógica<br />

<strong>de</strong> subrutina <strong>de</strong> gestión <strong>de</strong> interrupt (sin programar). Se trata <strong>de</strong> las instrucciones<br />

Bloquear interrupt (ID), Habilitar interrupt (IE) y Mover bloque con interrupts<br />

bloqueados (BMDI).<br />

La instrucción IE <strong>de</strong>senmascara interrupts <strong>de</strong>l temporizador o <strong>de</strong>l módulo <strong>de</strong> E/S<br />

locales y respon<strong>de</strong> a los interrupts pendientes mediante la ejecución <strong>de</strong> las<br />

subrutinas correspondientes.<br />

Los interrupts que se ejecutan en el periodo comprendido entre la ejecución <strong>de</strong> una<br />

instrucción ID y la ejecución <strong>de</strong> la siguiente instrucción IE se almacenan en un búfer.<br />

Los interrupts almacenados en un búfer se ejecutan al mismo tiempo que se<br />

resuelve la instrucción IE. Si se producen dos o más interrupts <strong>de</strong>l mismo tipo entre<br />

la ejecución <strong>de</strong> las instrucciones ID e IE, se establecerá el bit <strong>de</strong> error <strong>de</strong> <strong>de</strong>sbor<strong>de</strong><br />

<strong>de</strong>l interrupt <strong>de</strong> máscara y la subrutina iniciada por el interrupt sólo se ejecutará una<br />

vez.<br />

628 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

tipo<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Tipo<br />

Nodo inferior<br />

IE: Habilitar interrupt<br />

31007526 12/2006 629<br />

IE<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = la instrucción <strong>de</strong>senmascara<br />

interrupts y respon<strong>de</strong> a los interrupts<br />

pendientes.<br />

INT, UINT Tipo <strong>de</strong> interrupt que se va a<br />

<strong>de</strong>senmascarar (constante <strong>de</strong> valor<br />

entero).<br />

Para obtener más información,<br />

consulte p. 630.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.


IE: Habilitar interrupt<br />

Descripción <strong>de</strong> parámetros<br />

Entrada superior Cuando se activa la entrada, la instrucción IE <strong>de</strong>senmascara interrupts <strong>de</strong>l<br />

temporizador o <strong>de</strong>l módulo <strong>de</strong> E/S locales y respon<strong>de</strong> a los interrupts pendientes<br />

ejecutando las subrutinas correspondientes.<br />

Tipo<br />

(nodo inferior)<br />

Introduzca una constante <strong>de</strong> valor entero <strong>de</strong>l rango 13 en el nodo. El valor<br />

representa el tipo <strong>de</strong> interrupt que la instrucción IE va a <strong>de</strong>senmascarar. Esta tabla<br />

muestra las correspon<strong>de</strong>ncias.<br />

Valor entero Tipo <strong>de</strong> interrupt<br />

3 Interrupt <strong>de</strong> temporizador <strong>de</strong>senmascarado<br />

2 Interrupt <strong>de</strong> módulo <strong>de</strong> E/S locales <strong>de</strong>senmascarado<br />

1 Ambos tipos <strong>de</strong> interrupt <strong>de</strong>senmascarados<br />

630 31007526 12/2006


Presentación<br />

IMIO: E/S inmediatas<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción IMIO.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

101<br />

Nota: Esta instrucción sólo estará disponible <strong>de</strong>spués <strong>de</strong> haber configurado una<br />

CPU sin extensión.<br />

Apartado Página<br />

Descripción breve 6<strong>32</strong><br />

Representación 633<br />

Descripción <strong>de</strong> parámetros 635<br />

Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución 637<br />

31007526 12/2006 631


IMIO: E/S inmediatas<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

La instrucción IMIO permite acce<strong>de</strong>r a módulos <strong>de</strong> E/S especificados <strong>de</strong>s<strong>de</strong> Lad<strong>de</strong>r<br />

<strong>Logic</strong>. Difiere <strong>de</strong>l procesamiento normal <strong>de</strong> E/S, don<strong>de</strong> se acce<strong>de</strong> a las entradas al<br />

comenzar la ejecución <strong>de</strong> la lógica <strong>de</strong>l segmento en que se utilizan y las salidas se<br />

actualizan al final <strong>de</strong> la resolución <strong>de</strong>l segmento. Los módulos <strong>de</strong> E/S a los que se<br />

acceda <strong>de</strong>ben estar ubicados en la platina principal local con el PLC Quantum.<br />

Para po<strong>de</strong>r utilizar las instrucciones IMIO, los módulos <strong>de</strong> E/S a los que se ha <strong>de</strong><br />

acce<strong>de</strong>r <strong>de</strong>ben estar <strong>de</strong>signados en la asignación <strong>de</strong> E/S <strong>de</strong>l software <strong>de</strong> panel.<br />

6<strong>32</strong> 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control activa<br />

registros <strong>de</strong> control<br />

bloque <strong>de</strong><br />

control<br />

función <strong>de</strong> E/S (1–3)<br />

AS-BADU-204<br />

AS-BADU-205<br />

AS-BADU-206<br />

AS-BADU-216<br />

IMIO: E/S inmediatas<br />

Nota: Este bloque IMIO no funciona en los siguientes módulos <strong>de</strong> E/S Compact<br />

<strong>de</strong>bido a una serie <strong>de</strong> restricciones <strong>de</strong>l diseño <strong>de</strong> hardware inherentes a estos<br />

módulos.<br />

31007526 12/2006 633<br />

tipo<br />

IMIO<br />

error


IMIO: E/S inmediatas<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Bloque <strong>de</strong><br />

control<br />

Nodo superior<br />

Tipo<br />

Nodo inferior<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = Habilita el acceso a las E/S<br />

inmediatas.<br />

4x INT, UINT,<br />

WORD<br />

Bloque <strong>de</strong> control (el primero <strong>de</strong> dos<br />

registros contiguos).<br />

Para obtener más información,<br />

consulte p. 637.<br />

INT, UINT Tipo <strong>de</strong> operación (constante <strong>de</strong> valor<br />

entero en el rango 13)<br />

Ésta es la función que se va a realizar:<br />

1 – Operación <strong>de</strong> entrada: transferir<br />

datos <strong>de</strong>l módulo a la memoria <strong>de</strong><br />

señal.<br />

2 – Operación <strong>de</strong> salida: transferir<br />

datos <strong>de</strong> la memoria <strong>de</strong> señal al<br />

módulo.<br />

3 – Operación <strong>de</strong> E/S o bidireccional:<br />

permite entradas y salidas para<br />

módulos bidireccionales.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida inferior 0x Ninguno Error (indicado con un código en el<br />

registro <strong>de</strong> estado <strong>de</strong> error en el bloque <strong>de</strong><br />

control IMIO).<br />

634 31007526 12/2006


Descripción <strong>de</strong> parámetros<br />

Bloque<br />

<strong>de</strong> control<br />

(nodo superior)<br />

Dirección<br />

física <strong>de</strong>l<br />

módulo <strong>de</strong> E/S<br />

IMIO: E/S inmediatas<br />

Se introduce en el nodo superior el primero <strong>de</strong> dos registros 4x contiguos. El<br />

segundo registro está implícito.<br />

Registro Contenido<br />

Visualizado Este registro especifica la dirección física <strong>de</strong>l módulo <strong>de</strong> E/S al que<br />

se <strong>de</strong>sea acce<strong>de</strong>r.<br />

Primer implícito Este registro registra el estado <strong>de</strong> error que la mantiene instrucción.<br />

El byte alto <strong>de</strong>l registro visualizado en el bloque <strong>de</strong> control permite especificar en<br />

qué bastidor resi<strong>de</strong> el módulo <strong>de</strong> E/S al que se ha <strong>de</strong> acce<strong>de</strong>r. El byte bajo permite<br />

especificar el número <strong>de</strong> slot <strong>de</strong>ntro <strong>de</strong>l bastidor indicado en el que resi<strong>de</strong> el módulo<br />

<strong>de</strong> E/S.<br />

Utilización <strong>de</strong> la palabra:<br />

MSB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 LSB<br />

Bit Función<br />

1 - 5 Sin utilizar<br />

Bastidor 1 sólo para Quantum<br />

Los bastidores locales 1–4 se pue<strong>de</strong>n utilizar para Compact <strong>de</strong> <strong>32</strong> bits<br />

6 - 8 Número <strong>de</strong> bastidor <strong>de</strong> 1–4 (actualmente sólo se admite el bastidor 1)<br />

9 - 11 Sin utilizar<br />

12 - 16 Número <strong>de</strong> slot<br />

Número <strong>de</strong> bastidor<br />

Número <strong>de</strong> bit Número <strong>de</strong> bastidor<br />

6 7 8<br />

0 0 1 Bastidor 1<br />

Bastidor 1 sólo para Quantum<br />

Los bastidores 1–4 se pue<strong>de</strong>n utilizar para Compact <strong>de</strong> <strong>32</strong> bits<br />

0 1 0 Bastidor 2<br />

Los bastidores 1–4 se pue<strong>de</strong>n utilizar para Compact <strong>de</strong> <strong>32</strong> bits<br />

0 1 1 Bastidor 3<br />

Los bastidores 1–4 se pue<strong>de</strong>n utilizar para Compact <strong>de</strong> <strong>32</strong> bits<br />

1 0 0 Bastidor 4<br />

Los bastidores 1–4 se pue<strong>de</strong>n utilizar para Compact <strong>de</strong> <strong>32</strong> bits<br />

31007526 12/2006 635


IMIO: E/S inmediatas<br />

Tipo<br />

(nodo inferior)<br />

Número <strong>de</strong> slot<br />

Número <strong>de</strong> bit Número <strong>de</strong> slot<br />

12 13 14 15 16<br />

0 0 0 0 1 Slot 1<br />

0 0 0 1 0 Slot 2<br />

0 0 0 1 1 Slot 3<br />

0 0 1 0 0 Slot 4<br />

0 0 1 0 1 Slot 5<br />

0 0 1 1 0 Slot 6<br />

0 0 1 1 1 Slot 7<br />

0 1 0 0 0 Slot 8<br />

0 1 0 0 1 Slot 9<br />

0 1 0 1 0 Slot 10<br />

0 1 0 1 1 Slot 11<br />

0 1 1 0 0 Slot 12<br />

0 1 1 0 1 Slot 13<br />

0 1 1 1 0 Slot 14<br />

0 1 1 1 1 Slot 15<br />

1 0 0 0 0 Slot 16<br />

Introduzca una constante <strong>de</strong> valor entero <strong>de</strong>l rango 13 en el nodo inferior. El valor<br />

representa el tipo <strong>de</strong> operación que va a llevar a cabo la instrucción IMIO, don<strong>de</strong>:<br />

Valor entero Tipo <strong>de</strong> acceso inmediato<br />

1 Operación <strong>de</strong> entrada: transfiere datos <strong>de</strong>l módulo especificado a la<br />

memoria <strong>de</strong> señal.<br />

2 Operación <strong>de</strong> salida: transfiere datos <strong>de</strong> la memoria <strong>de</strong> señal al módulo<br />

especificado.<br />

3 Operación <strong>de</strong> E/S: realiza tanto la operación <strong>de</strong> entrada como la <strong>de</strong><br />

salida si el módulo es bidireccional.<br />

636 31007526 12/2006


Tratamiento <strong>de</strong> errores <strong>de</strong> ejecución<br />

Errores <strong>de</strong><br />

ejecución<br />

IMIO: E/S inmediatas<br />

El registro implícito en el bloque <strong>de</strong> control contendrá el siguiente código <strong>de</strong> error<br />

cuando la instrucción <strong>de</strong>tecte un error.<br />

Código <strong>de</strong> error Significado<br />

2001 Se ha especificado un tipo no válido en el asiento inferior.<br />

2002 Problema con el slot <strong>de</strong> E/S especificado, o bien se ha introducido un<br />

número <strong>de</strong> slot no válido en el registro visualizado <strong>de</strong>l bloque <strong>de</strong> control<br />

o la asignación <strong>de</strong> E/S no contiene la <strong>de</strong>finición <strong>de</strong> módulo correcta para<br />

este slot.<br />

2003 Se ha especificado una operación <strong>de</strong> tipo 3 en el asiento inferior y el<br />

módulo no es bidireccional.<br />

F001 El módulo <strong>de</strong> E/S especificado no funciona correctamente.<br />

31007526 12/2006 637


IMIO: E/S inmediatas<br />

638 31007526 12/2006


Presentación<br />

IMOD: Instrucción <strong>de</strong>l módulo<br />

<strong>de</strong> interrupt<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción IMOD.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

102<br />

Apartado Página<br />

Descripción breve 640<br />

Representación 641<br />

Descripción <strong>de</strong> parámetros 643<br />

31007526 12/2006 639


IMOD: Instrucción <strong>de</strong>l módulo <strong>de</strong> interrupt<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

La instrucción IMOD inicia una subrutina <strong>de</strong> gestor <strong>de</strong> interrupt <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong><br />

cuando el módulo <strong>de</strong> interrupt local ha generado el interrupt apropiado y el PLC lo<br />

ha recibido. Cada instrucción IMOD en una aplicación se configura para que se<br />

corresponda con un slot específico en la platina principal local en la que se<br />

encuentra ubicado el módulo <strong>de</strong> interrupt. La instrucción IMOD pue<strong>de</strong> <strong>de</strong>signar la<br />

misma subrutina <strong>de</strong> gestor <strong>de</strong> interrupt o subrutinas separadas para cada punto <strong>de</strong><br />

interrupt en el módulo <strong>de</strong> interrupt asociado.<br />

640 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

borra errores<br />

anteriores<br />

número <strong>de</strong><br />

slot<br />

bloque <strong>de</strong><br />

control<br />

número<br />

<strong>de</strong><br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia <strong>de</strong><br />

memoria <strong>de</strong><br />

señal<br />

Tipo <strong>de</strong><br />

datos<br />

IMOD: Instrucción <strong>de</strong>l módulo <strong>de</strong> interrupt<br />

activa<br />

31007526 12/2006 641<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = inicia un interrupt.<br />

Entrada inferior 0x, 1x Ninguno ON = borra un error <strong>de</strong>tectado previamente.<br />

Número <strong>de</strong> slot<br />

INT, Indica el número <strong>de</strong> slot en que se encuentra<br />

(nodo superior)<br />

UINT ubicado el módulo <strong>de</strong> interrupt local (constante<br />

<strong>de</strong> valor entero <strong>de</strong>l rango 116)<br />

Bloque <strong>de</strong> 4x INT, Bloque <strong>de</strong> control (el primero <strong>de</strong> un máximo <strong>de</strong><br />

control<br />

UINT, 19 registros, según el número <strong>de</strong> interrupts).<br />

(nodo<br />

WORD El nodo intermedio contiene el registro 4x en el<br />

intermedio)<br />

bloque <strong>de</strong> control IMOD. El bloque <strong>de</strong> control<br />

contiene parámetros necesarios para programar<br />

una instrucción IMOD. El tamaño (cantidad <strong>de</strong><br />

registros) <strong>de</strong>l bloque <strong>de</strong> control será igual al<br />

número total <strong>de</strong> puntos <strong>de</strong> interrupt programados<br />

+ 3.<br />

Los tres primeros registros <strong>de</strong>l bloque <strong>de</strong> control<br />

contienen información acerca <strong>de</strong>l estado. Los<br />

registros restantes proporcionan un medio para<br />

especificar el número <strong>de</strong> etiqueta (LAB) <strong>de</strong> la<br />

subrutina <strong>de</strong> gestor <strong>de</strong> interrupt. La subrutina <strong>de</strong><br />

gestor <strong>de</strong> interrupt está en el último segmento<br />

(sin programar) <strong>de</strong>l programa Lad<strong>de</strong>r <strong>Logic</strong>.<br />

(Para obtener información ampliada y <strong>de</strong>tallada<br />

consulte p. 644.)


IMOD: Instrucción <strong>de</strong>l módulo <strong>de</strong> interrupt<br />

Parámetros Referencia <strong>de</strong><br />

memoria <strong>de</strong><br />

señal<br />

Número <strong>de</strong><br />

interrupts<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

INT,<br />

UINT<br />

Significado<br />

Indica la cantidad <strong>de</strong> interrupts que se pue<strong>de</strong>n<br />

generar <strong>de</strong>s<strong>de</strong> el interrupt <strong>de</strong> módulo asociado<br />

(constante <strong>de</strong> valor entero en el rango 116)<br />

El nodo inferior contiene un número entero que<br />

indica la cantidad <strong>de</strong> interrupts que se pue<strong>de</strong>n<br />

generar <strong>de</strong>s<strong>de</strong> el módulo <strong>de</strong> interrupt asociado.<br />

El tamaño (número <strong>de</strong> registros) <strong>de</strong>l bloque <strong>de</strong><br />

control será el número <strong>de</strong> interrupts + 3.<br />

El PLC pue<strong>de</strong> configurarse para un máximo <strong>de</strong><br />

64 interrupts <strong>de</strong> módulo (<strong>de</strong> todos los módulos <strong>de</strong><br />

interrupt que resi<strong>de</strong>n en la placa <strong>de</strong> conexiones<br />

local). Si el número introducido en el nodo inferior<br />

<strong>de</strong> una instrucción IMOD hace que la cantidad<br />

total <strong>de</strong> interrupts <strong>de</strong> módulo en todo el sistema<br />

exceda las 64, se registrará un error en el bit 7<br />

<strong>de</strong>l primer registro <strong>de</strong>l bloque <strong>de</strong> control.<br />

Por ejemplo, si utiliza cuatro módulos <strong>de</strong> interrupt<br />

en la platina principal local y asigna 16 interrupts<br />

a cada uno <strong>de</strong> esos módulos (introduciendo 16<br />

en el nodo inferior <strong>de</strong> cada instrucción IMOD<br />

asociada), el PLC no podrá gestionar ningún<br />

interrupt <strong>de</strong> módulo más. Si intenta crear una<br />

quinta instrucción IMOD, se registrará un error en<br />

el bloque <strong>de</strong> control <strong>de</strong> esa instrucción IMOD<br />

cuando especifique un valor en el nodo inferior.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida inferior 0x Ninguno ON = error <strong>de</strong>tectado. El origen <strong>de</strong>l error pue<strong>de</strong><br />

proce<strong>de</strong>r <strong>de</strong> cualquiera <strong>de</strong> los puntos <strong>de</strong><br />

coor<strong>de</strong>nadas <strong>de</strong> interrupt habilitados en el<br />

módulo interrupt.<br />

642 31007526 12/2006


Descripción <strong>de</strong> parámetros<br />

Información<br />

general acerca<br />

<strong>de</strong> IMOD<br />

Habilitación <strong>de</strong> la<br />

instrucción<br />

(entrada<br />

superior)<br />

Borrar error<br />

(entrada inferior)<br />

Número <strong>de</strong> slot<br />

(nodo superior)<br />

IMOD: Instrucción <strong>de</strong>l módulo <strong>de</strong> interrupt<br />

Se pue<strong>de</strong> programar un máximo <strong>de</strong> 14 instrucciones IMOD en una aplicación <strong>de</strong><br />

Lad<strong>de</strong>r <strong>Logic</strong>, una para cada uno <strong>de</strong> los slots que pue<strong>de</strong> contener una placa <strong>de</strong><br />

conexiones local.<br />

Cada punto <strong>de</strong> interrupción <strong>de</strong> cada módulo <strong>de</strong> interrupt pue<strong>de</strong> iniciar una subrutina<br />

<strong>de</strong> gestor <strong>de</strong> interrupt diferente.<br />

Se pue<strong>de</strong> <strong>de</strong>finir un máximo <strong>de</strong> 64 puntos <strong>de</strong> interrupt en una aplicación <strong>de</strong> lógica<br />

<strong>de</strong> usuario. No es necesario que todos los posibles puntos <strong>de</strong> entrada <strong>de</strong> un módulo<br />

<strong>de</strong> interrupt local estén <strong>de</strong>finidos en la instrucción IMOD como interrupts.<br />

Cuando la entrada <strong>de</strong>l nodo superior esté activada, la instrucción IMOD estará<br />

habilitada. El PLC respon<strong>de</strong>rá a los interrupts generados por el módulo <strong>de</strong> interrupt<br />

local en el número <strong>de</strong> slot correspondiente. Cuando la entrada superior no esté<br />

activada, los interrupts proce<strong>de</strong>ntes <strong>de</strong>l módulo en el slot <strong>de</strong>signado se<br />

<strong>de</strong>sactivarán y todos los errores <strong>de</strong>tectados previamente se borrarán, incluido<br />

cualquier interrupt enmascarado pendiente.<br />

Esta entrada borra los errores previos.<br />

El nodo superior contiene un valor <strong>de</strong>cimal <strong>de</strong>l rango 116, que indica el número <strong>de</strong><br />

slot don<strong>de</strong> se encuentra ubicado el módulo <strong>de</strong> interrupt local. Este número se utiliza<br />

para in<strong>de</strong>xar una matriz <strong>de</strong> estructuras <strong>de</strong> control utilizada para ejecutar la<br />

instrucción.<br />

Nota: El número <strong>de</strong> slot en una instrucción IMOD <strong>de</strong>be ser único con respecto a<br />

los números <strong>de</strong> slot utilizados en el resto <strong>de</strong> la instrucción IMOD en una aplicación.<br />

De lo contrario, la siguiente instrucción IMOD con ese número <strong>de</strong> slot tendrá un<br />

error.<br />

Nota: Los números <strong>de</strong> slot don<strong>de</strong> se encuentran ubicados el PLC y la fuente <strong>de</strong><br />

alimentación no son entradas válidas, es <strong>de</strong>cir, sólo se pue<strong>de</strong>n utilizar 14 <strong>de</strong> los<br />

16 posibles números <strong>de</strong> slot como slot para un módulo <strong>de</strong> interrupt. Si el número<br />

<strong>de</strong> slot <strong>de</strong> la instrucción IMOD es el mismo que el <strong>de</strong>l PLC, dicha instrucción tendrá<br />

un error.<br />

31007526 12/2006 643


IMOD: Instrucción <strong>de</strong>l módulo <strong>de</strong> interrupt<br />

Bloque<br />

<strong>de</strong> control (nodo<br />

intermedio)<br />

Bits <strong>de</strong> estado <strong>de</strong><br />

función<br />

El nodo intermedio contiene el primer registro 4x en el bloque <strong>de</strong> control IMOD. El<br />

bloque <strong>de</strong> control contiene parámetros necesarios para programar una instrucción<br />

IMOD. El tamaño (cantidad <strong>de</strong> registros) <strong>de</strong>l bloque <strong>de</strong> control será igual al número<br />

total <strong>de</strong> puntos <strong>de</strong> interrupt programados + 3.<br />

Los tres primeros registros <strong>de</strong>l bloque <strong>de</strong> control contienen información <strong>de</strong> estado.<br />

Los registros restantes proporcionan los medios para especificar el número <strong>de</strong><br />

etiqueta (LAB) <strong>de</strong> la subrutina <strong>de</strong> gestor <strong>de</strong> interrupt que se encuentra en el último<br />

segmento (sin programar) <strong>de</strong>l programa <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong>.<br />

Bloque <strong>de</strong> control para IMOD<br />

Registro Contenido<br />

Visualizado Bits <strong>de</strong> estado <strong>de</strong> función.<br />

Primer implícito Estado <strong>de</strong> las entradas 116 <strong>de</strong>l módulo <strong>de</strong> interrupt en el momento<br />

<strong>de</strong> producirse el interrupt.<br />

Segundo implícito Estado <strong>de</strong> las entradas 17<strong>32</strong> <strong>de</strong>l módulo <strong>de</strong> interrupt en el momento<br />

<strong>de</strong> producirse el interrupt (datos no válidos para un módulo <strong>de</strong><br />

interrupt <strong>de</strong> 16 bits).<br />

Tercer implícito Número LAB y estado <strong>de</strong>l primer punto <strong>de</strong> interrupt programado en<br />

el módulo <strong>de</strong> interrupt.<br />

... ...<br />

Último implícito Número LAB y estado <strong>de</strong>l último punto <strong>de</strong> interrupt programado en<br />

el módulo <strong>de</strong> interrupt.<br />

Bits <strong>de</strong> estado <strong>de</strong> función<br />

MSB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 LSB<br />

Bit Función<br />

1 - 2 Sin utilizar<br />

3 Error: slot <strong>de</strong>l controlador<br />

El número <strong>de</strong> slot indicado en el nodo superior <strong>de</strong> la instrucción IMOD es el<br />

número <strong>de</strong> slot <strong>de</strong> la CPU.<br />

4 Error: pérdida <strong>de</strong> interrupt <strong>de</strong>bido a un error <strong>de</strong> comunicación en la placa <strong>de</strong><br />

conexiones.<br />

Se ha producido un error <strong>de</strong> cálculo al leer el módulo <strong>de</strong> interrupt y los datos no<br />

son válidos. Los interrupts se pier<strong>de</strong>n porque los puntos con interrupción se<br />

borran durante la lectura.<br />

644 31007526 12/2006


Pérdida <strong>de</strong><br />

interrupts<br />

IMOD: Instrucción <strong>de</strong>l módulo <strong>de</strong> interrupt<br />

Bit Función<br />

5 El módulo no funciona correctamente o no existe en la asignación <strong>de</strong> E/S<br />

El módulo <strong>de</strong> E/S que ocupa el slot indicado en el nodo superior no funciona<br />

a<strong>de</strong>cuadamente (es <strong>de</strong>cir, no funciona o no se encuentra en su ubicación) o no<br />

se ha especificado en la asignación <strong>de</strong> E/S.<br />

6 Error: pérdida <strong>de</strong> interrupt a causa <strong>de</strong> la edición online.<br />

Mientras el operador editaba Lad<strong>de</strong>r <strong>Logic</strong> (esto incluye solicitar una<br />

visualización <strong>de</strong> flujo <strong>de</strong> señal <strong>de</strong> una red distinta, es <strong>de</strong>cir, avance o retroceso<br />

<strong>de</strong> página) se han producido dos o más interrupts en el mismo punto. Sólo se<br />

procesa uno.<br />

7 Error: se ha superado la cantidad máxima <strong>de</strong> interrupts.<br />

Se han especificado más <strong>de</strong> 64 interrupts en Lad<strong>de</strong>r <strong>Logic</strong> y esta instrucción<br />

«IMOD» es la que provoca que el conteo exceda <strong>de</strong> 64.<br />

8 Error: el número <strong>de</strong> slot se ha utilizado en una red anterior<br />

(AVISO: consulte p. 645)<br />

El número <strong>de</strong> slot especificado en el nodo superior se utiliza en otro bloque<br />

«IMOD» <strong>de</strong>ntro <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong>. El primer bloque funcionará correctamente,<br />

pero éste no se tendrá en cuenta.<br />

9 - 15 Sin utilizar<br />

16 0 = IMOD bloqueado.<br />

1 = IMOD habilitado.<br />

Este bit refleja el estado <strong>de</strong> alimentación en el nodo superior.<br />

AVISO<br />

PÉRDIDA DE INTERRUPTS: INSTRUCCIÓN IMOD EN CURSO<br />

Si se asignan dos instrucciones IMOD al mismo número <strong>de</strong> slot, se indicará un<br />

error en el bit 8. En tal caso, es posible que se pierdan interrupts <strong>de</strong> la instrucción<br />

IMOD activa sin que se produzca ninguna notificación si el número especificado<br />

en el nodo inferior <strong>de</strong> las dos instrucciones es distinto.<br />

Si no se respetan estas instrucciones, pue<strong>de</strong>n producirse daños corporales<br />

o materiales.<br />

31007526 12/2006 645


IMOD: Instrucción <strong>de</strong>l módulo <strong>de</strong> interrupt<br />

Bits <strong>de</strong> estado y<br />

número LAB <strong>de</strong><br />

cada punto <strong>de</strong><br />

interrupt<br />

Los bits 15 <strong>de</strong>s<strong>de</strong> el tercer registro implícito hasta el último implícito son bits <strong>de</strong><br />

estado para cada punto <strong>de</strong> interrupt. Los bits 716 se utilizan para especificar el<br />

número LAB <strong>de</strong> la subrutina <strong>de</strong> gestor <strong>de</strong> interrupt. El número LAB es un valor<br />

<strong>de</strong>cimal <strong>de</strong>l rango 11.023.<br />

Bits <strong>de</strong> estado <strong>de</strong> función<br />

MSB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 LSB<br />

Bit Función<br />

Estado <strong>de</strong>l punto <strong>de</strong> interrupt<br />

1 Ejecución retardada <strong>de</strong>bido a una máscara <strong>de</strong> interrupt.<br />

Este estado no es un error, sino una indicación <strong>de</strong> que los interrupts están<br />

bloqueados y al menos se ha producido uno en este punto, que se procesará<br />

cuando se habiliten los interrupts.<br />

2 Error: bloque no válido en la subrutina <strong>de</strong> gestor <strong>de</strong> interrupt.<br />

Se ha utilizado un bloque DX no válido en la subrutina <strong>de</strong> gestor <strong>de</strong> interrupt para<br />

este punto <strong>de</strong> entrada (consulte Instrucciones que no pue<strong>de</strong>n utilizarse en una<br />

rutina <strong>de</strong> gestor <strong>de</strong> interrupt para obtener más información).<br />

3 Error: Desbor<strong>de</strong> <strong>de</strong>l interrupt <strong>de</strong> máscara<br />

Se han producido dos o más interrupts en este punto mientras el interrupt se<br />

encontraba bloqueado, es <strong>de</strong>cir, la utilización <strong>de</strong>l bloque Bloquear interrupt (ID)<br />

durante la edición online o sin utilizar el bloque Habilitar interrupt (IE).<br />

4 Error: <strong>de</strong>sbor<strong>de</strong> <strong>de</strong> ejecución.<br />

Se ha producido un segundo interrupt (o más) mientras la subrutina <strong>de</strong> gestor <strong>de</strong><br />

interrupt aún estaba ejecutándose.<br />

5 Error: número LAB no válido.<br />

El número LAB especificado en los bits 7 a 16 es cero o ese número LAB no se<br />

utiliza en el último segmento <strong>de</strong> la lógica <strong>de</strong> usuario. Este error se borrará<br />

automáticamente.<br />

6 Sin utilizar<br />

Número LAB<br />

7 - 16 Número LAB para el gestor <strong>de</strong> interrupt asociado.<br />

Valor <strong>de</strong>l rango 11.023<br />

Siempre que esté habilitada la entrada al nodo inferior <strong>de</strong> la instrucción IMOD, se<br />

borrarán los bits <strong>de</strong> estado (bits 15). Si el número LAB se ha especificado (en los<br />

bits 716) como 0 o como un número no válido, el PLC no tendrá en cuenta los<br />

interrupts generados <strong>de</strong>s<strong>de</strong> ese punto.<br />

646 31007526 12/2006


Cantidad<br />

<strong>de</strong> interrupts<br />

(nodo inferior)<br />

IMOD: Instrucción <strong>de</strong>l módulo <strong>de</strong> interrupt<br />

El nodo inferior contiene un número entero que indica la cantidad <strong>de</strong> interrupts que<br />

se pue<strong>de</strong>n generar <strong>de</strong>s<strong>de</strong> el módulo <strong>de</strong> interrupt asociado. El tamaño (cantidad <strong>de</strong><br />

registros) <strong>de</strong>l bloque <strong>de</strong> control será ese número + 3.<br />

El PLC pue<strong>de</strong> configurarse para un máximo <strong>de</strong> 64 interrupts <strong>de</strong> módulo (<strong>de</strong> todos<br />

los módulos <strong>de</strong> interrupt que resi<strong>de</strong>n en la placa <strong>de</strong> conexiones local). Si el número<br />

introducido en el nodo inferior <strong>de</strong> una instrucción IMOD hace que la cantidad total<br />

<strong>de</strong> interrupts <strong>de</strong> módulo en todo el sistema exceda las 64, se registrará un error en<br />

el bit 7 <strong>de</strong>l primer registro <strong>de</strong>l bloque <strong>de</strong> control.<br />

Por ejemplo, si utiliza cuatro módulos <strong>de</strong> interrupt en la placa <strong>de</strong> conexiones local y<br />

asigna 16 interrupts a cada uno <strong>de</strong> esos módulos (introduciendo 16 en el nodo<br />

inferior <strong>de</strong> cada instrucción IMOD asociada), el PLC no podrá gestionar ningún otro<br />

interrupt <strong>de</strong> módulo. Si intenta crear una quinta instrucción IMOD, se registrará un<br />

error en el bloque <strong>de</strong> control <strong>de</strong> dicha instrucción al especificar un valor en el nodo<br />

inferior.<br />

31007526 12/2006 647


IMOD: Instrucción <strong>de</strong>l módulo <strong>de</strong> interrupt<br />

648 31007526 12/2006


Presentación<br />

INDX - Movimiento<br />

incremental inmediato<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción INDX.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

103<br />

Apartado Página<br />

Descripción breve 650<br />

Descripción <strong>de</strong> los parámetros 651<br />

31007526 12/2006 649


INDX<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> funciones<br />

El bloque <strong>de</strong> funciones INDX emite un movimiento incremental inmediato MMFStart<br />

en el eje especificado. La velocidad y el incremento se especifican en la tabla<br />

asociada.<br />

650 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Símbolo El siguiente diagrama muestra una función INDX.<br />

ON inicia<br />

movimiento<br />

sin utilizar<br />

sin utilizar<br />

MMFSTART<br />

registro 4X<br />

dirección <strong>de</strong>l<br />

bloque <strong>de</strong> la<br />

tabla<br />

longitud <strong>de</strong> la<br />

tabla (8)<br />

movimiento iniciado<br />

sin errores<br />

error <strong>de</strong> movimiento no iniciado<br />

(consulte el registro <strong>de</strong> errores)<br />

longitud <strong>de</strong> tabla incorrecta/timeout/<br />

revisión<br />

INDX<br />

31007526 12/2006 651


INDX<br />

Descripción <strong>de</strong><br />

parámetros<br />

En la tabla siguiente se <strong>de</strong>scriben los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x Ninguno ON inicia la función <strong>de</strong> movimiento. Cuando<br />

esta entrada se <strong>de</strong>sactiva, la función vuelve a<br />

cero y se pue<strong>de</strong> iniciar <strong>de</strong> nuevo.<br />

Nodo superior 4x INT, UINT Dirección <strong>de</strong> la tabla <strong>de</strong> comunicación <strong>de</strong><br />

registro MMFSTART 200. Suele ser 401001.<br />

Esta dirección se pue<strong>de</strong> configurar mediante<br />

la modificación <strong>de</strong>l archivo MMFSTART.CFG<br />

<strong>de</strong>s<strong>de</strong> el controlador SERCOS <strong>de</strong> QUANTUM.<br />

Nodo<br />

intermedio<br />

4x INT, UINT Este registro hace referencia a un módulo <strong>de</strong><br />

registros que <strong>de</strong>fine todos los argumentos <strong>de</strong>l<br />

movimiento. Los dos últimos registros se<br />

<strong>de</strong>stinan al control <strong>de</strong> estado.<br />

Nodo inferior 4x INT El valor entero introducido en el nodo inferior<br />

especifica la longitud <strong>de</strong> la tabla. En ese caso,<br />

el número <strong>de</strong> registros en la tabla ha <strong>de</strong> ser 8.<br />

Salida superior 0x Ninguno Se activa cuando el inicio <strong>de</strong>l movimiento ha<br />

finalizado <strong>de</strong> forma correcta.<br />

Salida<br />

intermedia<br />

0x Ninguno Se encien<strong>de</strong> cuando el movimiento no se<br />

inicia y se genera un código <strong>de</strong> error en el<br />

registro 4xxxx5.<br />

Salida inferior 0x Ninguno Se activa cuando la longitud <strong>de</strong>l registro no se<br />

<strong>de</strong>fine como 8, la revisión MMFSTART no es<br />

correcta o la función ha agotado el tiempo.<br />

Registros En la tabla siguiente se <strong>de</strong>scriben los registros <strong>de</strong> la instrucción.<br />

Registro Tipo <strong>de</strong> datos Descripción<br />

4xxxxx Corto ID <strong>de</strong>l eje <strong>de</strong>l movimiento incremental.<br />

4xxxx1 Coma flotante Longitud <strong>de</strong>l movimiento incremental.<br />

4xxxx3 Coma flotante Velocidad <strong>de</strong>l movimiento incremental.<br />

4xxxx5 Corto Código <strong>de</strong> error generado al iniciar el movimiento.<br />

4xxxx6 Corto Número <strong>de</strong> estado <strong>de</strong> funcionamiento actual<br />

4xxxx7 Corto Conteo <strong>de</strong> entrada <strong>de</strong> estado actual.<br />

652 31007526 12/2006


Presentación<br />

ITMR: Temporizador <strong>de</strong> interrupt<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción ITMR.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

104<br />

Apartado Página<br />

Descripción breve 654<br />

Representación 655<br />

Descripción <strong>de</strong> parámetros 657<br />

31007526 12/2006 653


ITMR: Temporizador <strong>de</strong> interrupt<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

La instrucción ITMR permite <strong>de</strong>finir un temporizador <strong>de</strong> intervalo que genere<br />

interrupts <strong>de</strong>ntro <strong>de</strong>l ciclo normal <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong> e inicie la ejecución <strong>de</strong> una<br />

subrutina <strong>de</strong> gestión <strong>de</strong> interrupt. El gestor <strong>de</strong> interrupt <strong>de</strong>finido por el usuario es<br />

una subrutina que se ha creado en el último segmento sin administrar <strong>de</strong> Lad<strong>de</strong>r<br />

<strong>Logic</strong> con su primera red marcada con una instrucción LAB. La ejecución <strong>de</strong> la<br />

subrutina es asíncrona con respecto al ciclo normal.<br />

Se pue<strong>de</strong>n programar hasta 16 instrucciones ITMR en una aplicación. Cada<br />

temporizador <strong>de</strong> intervalos se pue<strong>de</strong> programar para que inicie la misma o<br />

diferentes subrutinas <strong>de</strong> gestor <strong>de</strong> interrupt, controladas por el método JSR/LAB<br />

que se <strong>de</strong>scribe en el capítulo General.<br />

Cada instancia <strong>de</strong>l temporizador <strong>de</strong> intervalos se retrasa durante el intervalo<br />

programado mientras el PLC está en funcionamiento; a continuación generará un<br />

interrupt <strong>de</strong>l procesador cuando ese intervalo haya transcurrido.<br />

Un temporizador <strong>de</strong> intervalos pue<strong>de</strong> ejecutarse en cualquier momento durante el<br />

ciclo <strong>de</strong> lógica normal, incluida la actualización <strong>de</strong> E/S <strong>de</strong>l sistema u otras<br />

operaciones <strong>de</strong> mantenimiento <strong>de</strong>l sistema. La resolución <strong>de</strong> cada temporizador <strong>de</strong><br />

intervalos es <strong>de</strong> 1 ms. Se pue<strong>de</strong> programar un intervalo en unida<strong>de</strong>s <strong>de</strong> 1 ms, 10<br />

ms ó 1 s. Un contador interno se incrementará según la resolución especificada.<br />

Tenga en cuenta que si el tiempo ITMR es inferior a la fracción <strong>de</strong> tiempo <strong>de</strong> edición<br />

<strong>de</strong> L/L, no se permitirá visualizar el flujo <strong>de</strong> señal ni editar la lógica <strong>de</strong> aplicación.<br />

654 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

habilitar activa<br />

bloque <strong>de</strong><br />

control<br />

Función <strong>de</strong> E/S (1...3)<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

número <strong>de</strong><br />

temporizador<br />

ITMR<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

ITMR: Temporizador <strong>de</strong> interrupt<br />

31007526 12/2006 655<br />

error<br />

0x, 1x Ninguno ON = habilita la instrucción.<br />

(Para obtener información <strong>de</strong>tallada, consulte la<br />

sección Entrada superior.)


ITMR: Temporizador <strong>de</strong> interrupt<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Bloque <strong>de</strong><br />

control<br />

(nodo superior)<br />

Número <strong>de</strong><br />

temporizador<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

4x INT,<br />

UINT,<br />

WORD<br />

INT,<br />

UINT<br />

Significado<br />

Bloque <strong>de</strong> control (el primero <strong>de</strong> tres registros<br />

contiguos)<br />

El nodo superior contiene el primero 4xxxx <strong>de</strong><br />

tres registros contiguos en el bloque <strong>de</strong> control<br />

ITMR. Estos registros se utilizan para<br />

especificar los parámetros necesarios para<br />

programar cada instrucción ITMR.<br />

Los ocho bits inferiores <strong>de</strong>l primer registro<br />

(visualizado) <strong>de</strong>l bloque <strong>de</strong> control permiten<br />

especificar los parámetros <strong>de</strong> control <strong>de</strong> la<br />

función, y los ocho bits superiores se utilizan<br />

para visualizar el estado <strong>de</strong> ésta.<br />

En el segundo registro <strong>de</strong>l bloque <strong>de</strong> control, se<br />

especifica un valor que representa el intervalo<br />

en el que la instrucción ITMR generará<br />

interrupts e iniciará la ejecución <strong>de</strong>l gestor <strong>de</strong><br />

interrupt. El intervalo se incrementará en las<br />

unida<strong>de</strong>s especificadas en los bits 12 y 13 <strong>de</strong>l<br />

primer registro <strong>de</strong>l bloque <strong>de</strong> control, es <strong>de</strong>cir<br />

unida<strong>de</strong>s <strong>de</strong> 1 ms, 10 ms o 1 s.<br />

En este registro se especifica un valor que<br />

indica el número <strong>de</strong> etiqueta (LAB) que iniciará<br />

la subrutina <strong>de</strong> gestor <strong>de</strong> interrupt. El número<br />

<strong>de</strong>be estar entre 1 y 1.023.<br />

Nota:Se recomienda que el tamaño <strong>de</strong> la<br />

subrutina lógica asociada a la etiqueta se<br />

minimice <strong>de</strong> modo que la aplicación no que<strong>de</strong><br />

controlada por los interrupts.<br />

(Para obtener más información,<br />

consulte p. 657.)<br />

Número <strong>de</strong> temporizador asignado a esta<br />

instrucción ITMR (<strong>de</strong>be ser único con respecto<br />

a las <strong>de</strong>más instrucciones ITMR <strong>de</strong> la<br />

aplicación); rango: 1...16<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida inferior 0x Ninguno Error (la fuente <strong>de</strong>l error pue<strong>de</strong> estar en los<br />

parámetros programados o tratarse <strong>de</strong> un error<br />

<strong>de</strong> ejecución).<br />

656 31007526 12/2006


Descripción <strong>de</strong> parámetros<br />

ITMR: Temporizador <strong>de</strong> interrupt<br />

Entrada superior Cuando se active la entrada superior, se habilitará la instrucción ITMR. Comenzará<br />

contando el intervalo <strong>de</strong> tiempo programado. Cuando haya pasado ese intervalo, el<br />

contador se restablecerá y se ejecutará la lógica <strong>de</strong> gestor <strong>de</strong> errores<br />

correspondiente.<br />

Bloque<br />

<strong>de</strong> control<br />

(nodo superior)<br />

Cuando la entrada superior no está activada, suce<strong>de</strong> lo siguiente:<br />

Se borran todos los errores indicados.<br />

El temporizador se <strong>de</strong>tiene.<br />

El conteo <strong>de</strong> tiempo se mantiene o se restablece según el estado <strong>de</strong>l bit 15 <strong>de</strong>l<br />

primer registro que hay en el bloque <strong>de</strong> control (el registro visualizado en el nodo<br />

superior).<br />

Se borra cualquier interrupt enmascarado pendiente para este temporizador.<br />

El nodo superior contiene el primero <strong>de</strong> tres registros 4x contiguos en el bloque <strong>de</strong><br />

control ITMR. Estos registros se utilizan para especificar los parámetros necesarios<br />

para programar cada instrucción ITMR.<br />

Bloque <strong>de</strong> control para ITMR<br />

Registro Contenido<br />

Visualizado Bits <strong>de</strong> control <strong>de</strong> función y estado <strong>de</strong> función<br />

Primer implícito En este registro se especifica un valor que representa el intervalo en<br />

el que la instrucción ITMR generará interrupts e iniciará la ejecución<br />

<strong>de</strong>l gestor <strong>de</strong> interrupt.<br />

El intervalo se incrementará en las unida<strong>de</strong>s especificadas en los<br />

bits 12 y 13 <strong>de</strong>l primer registro <strong>de</strong>l bloque <strong>de</strong> control, es <strong>de</strong>cir<br />

unida<strong>de</strong>s <strong>de</strong> 1 ms, 10 ms, 100 ms o 1 s.<br />

Segundo implícito En este registro se especifica un valor que indica el número <strong>de</strong><br />

etiqueta (LAB) que iniciará la subrutina <strong>de</strong> gestor <strong>de</strong> interrupt.<br />

El número <strong>de</strong>be estar en el rango 11.023.<br />

Nota: Se recomienda que el tamaño <strong>de</strong> la subrutina <strong>de</strong> lógica asociada al LAB se<br />

minimice <strong>de</strong> modo que la aplicación no que<strong>de</strong> controlada por los interrupts.<br />

31007526 12/2006 657


ITMR: Temporizador <strong>de</strong> interrupt<br />

Bits <strong>de</strong> control<br />

<strong>de</strong> función y<br />

estado <strong>de</strong><br />

función<br />

Número <strong>de</strong><br />

temporizador<br />

(nodo inferior)<br />

Los ocho bits <strong>de</strong> menor valor <strong>de</strong>l registro visualizado en el bloque <strong>de</strong> control<br />

permiten especificar los parámetros <strong>de</strong> control <strong>de</strong> la función, mientras que los ocho<br />

bits <strong>de</strong> mayor valor se utilizan para visualizar el estado <strong>de</strong> función.<br />

MSB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 LSB<br />

Bit Función<br />

Estado <strong>de</strong> función<br />

1 Ejecución retrasada <strong>de</strong>bido a una máscara <strong>de</strong> interrupt.<br />

2 Bloque no válido en la subrutina <strong>de</strong> gestor <strong>de</strong> interrupt.<br />

3 Sin utilizar<br />

4 Tiempo = 0<br />

5 Desbor<strong>de</strong> <strong>de</strong> interrupt <strong>de</strong> máscara.<br />

6 Desbor<strong>de</strong> <strong>de</strong> ejecución.<br />

7 Sin LAB o LAB no válido.<br />

8 Número <strong>de</strong> temporizador utilizado en la red anterior.<br />

Control <strong>de</strong> función<br />

9–11 Sin utilizar<br />

12–13 0 0 = Base <strong>de</strong> tiempo 1 ms.<br />

0 1 = Base <strong>de</strong> tiempo 10 ms.<br />

1 0 = Base <strong>de</strong> tiempo 100 ms.<br />

1 1 = Base <strong>de</strong> tiempo 1 s.<br />

14 1 = Contador <strong>de</strong> pausas <strong>de</strong> parada <strong>de</strong>l PLC.<br />

0 = Contador <strong>de</strong> restablecimientos <strong>de</strong> parada <strong>de</strong>l PLC.<br />

15 1 = Habilitar contador <strong>de</strong> pausas OFF.<br />

0 = Habilitar contador <strong>de</strong> restablecimientos OFF.<br />

16 1 = Instrucción habilitada.<br />

0 = Instrucción bloqueada.<br />

Se pue<strong>de</strong>n programar hasta 16 instrucciones ITMR en una aplicación. Los interrupts<br />

se distinguen entre ellos por un número único <strong>de</strong>l rango 116 que se pue<strong>de</strong> asignar<br />

a cada instrucción en el nodo inferior. El número inferior <strong>de</strong> interrupt tendrá la mayor<br />

prioridad <strong>de</strong> ejecución.<br />

Por ejemplo, si ITMR 4 e ITMR 5 tienen lugar al mismo tiempo, ITMR 4 se ejecutará<br />

primero. Después <strong>de</strong> que ITMR 4 haya finalizado, ITMR 5 comenzará a ejecutarse.<br />

Podría darse una excepción si tuviera lugar otro interrupt <strong>de</strong> ITMR con mayor<br />

prioridad durante la ejecución <strong>de</strong> ITMR 4. Por ejemplo, supongamos que ITMR 3<br />

tiene lugar mientras ITMR 5 está esperando a que ITMR 4 acabe <strong>de</strong> ejecutarse. En<br />

este caso, ITMR 3 comenzará la ejecución cuando finalice ITMR 4, mientras que<br />

ITMR 5 continuará esperando.<br />

658 31007526 12/2006


Presentación<br />

ITOF: De entero a coma flotante<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción ITOF.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

105<br />

Apartado Página<br />

Descripción breve 660<br />

Representación 661<br />

31007526 12/2006 659


ITOF: De entero a coma flotante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción ITOF realiza la conversión <strong>de</strong> un valor entero con o sin signo (asiento<br />

superior) a valor <strong>de</strong> coma flotante y almacena este último en dos registros 4x<br />

contiguos <strong>de</strong>l asiento intermedio.<br />

660 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

con signo<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

entero<br />

coma<br />

flotante<br />

convertida<br />

ITOF: De entero a coma flotante<br />

convertida correctamente<br />

<strong>de</strong>sbor<strong>de</strong><br />

31007526 12/2006 661<br />

ITOF<br />

1<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la conversión.<br />

Entrada inferior 0x, 1x Ninguno ON = operación con signo.<br />

OFF = operación sin signo.<br />

Entero<br />

(nodo superior)<br />

Coma flotante<br />

convertida<br />

(nodo intermedio)<br />

1<br />

(nodo inferior)<br />

3x, 4x INT, UINT Valor entero, pue<strong>de</strong> mostrarse <strong>de</strong> forma<br />

explícita como número entero (rango<br />

165.535) o almacenarse en un registro<br />

4x REAL Valor <strong>de</strong> coma flotante convertido<br />

(el primero <strong>de</strong> dos registros en espera<br />

contiguos).<br />

INT, UINT Valor constante <strong>de</strong> 1, no se pue<strong>de</strong><br />

modificar.<br />

Salida superior 0x Ninguno ON = conversión a coma flotante<br />

completada satisfactoriamente.


ITOF: De entero a coma flotante<br />

662 31007526 12/2006


Presentación<br />

JOGS - Movimiento JOG<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción JOGS.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

106<br />

Apartado Página<br />

Descripción breve 664<br />

Representación 665<br />

31007526 12/2006 663


JOGS<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> funciones<br />

Este bloque <strong>de</strong> funciones <strong>de</strong>splaza un eje positivo o negativo mediante una parada<br />

y movimiento continuo inmediato MMFStart. La velocidad <strong>de</strong>l <strong>de</strong>splazamiento se<br />

especifica en la tabla <strong>de</strong> registro asociada.<br />

664 31007526 12/2006


Representación<br />

Símbolo El siguiente diagrama muestra una función JOGS.<br />

ON <strong>de</strong>splazamiento<br />

positivo<br />

ON <strong>de</strong>splazamiento<br />

negativo<br />

sin utilizar<br />

MMFSTART<br />

registro 4X<br />

dirección <strong>de</strong>l<br />

bloque <strong>de</strong> la<br />

tabla<br />

longitud <strong>de</strong> la<br />

tabla (6)<br />

<strong>de</strong>splazamiento iniciado<br />

sin errores<br />

JOGS<br />

<strong>de</strong>splazamiento realizado con errores<br />

(consulte el registro <strong>de</strong> errores)<br />

longitud <strong>de</strong> tabla incorrecta<br />

31007526 12/2006 665


JOGS<br />

Descripción <strong>de</strong><br />

parámetros<br />

En la tabla siguiente se <strong>de</strong>scriben los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Entrada superior 0x Ninguno ON activa un JOG positivo. Se utiliza un<br />

comando HALT cuando la entrada se bloquea.<br />

Entrada<br />

intermedia<br />

0x Ninguno ON activa un JOG negativo. Se utiliza un<br />

comando HALT cuando la entrada se bloquea.<br />

Nodo superior 4x INT, UINT Dirección <strong>de</strong> la tabla <strong>de</strong> comunicación <strong>de</strong><br />

registro MMFSTART 200. Suele ser 401001.<br />

Esta dirección se pue<strong>de</strong> configurar mediante la<br />

modificación <strong>de</strong>l archivo MMFSTART.CFG<br />

<strong>de</strong>s<strong>de</strong> el controlador SERCOS <strong>de</strong> QUANTUM.<br />

Nodo intermedio 4x INT, UINT Este registro hace referencia a un módulo <strong>de</strong><br />

registros que <strong>de</strong>fine todos los argumentos <strong>de</strong>l<br />

<strong>de</strong>splazamiento. Los dos últimos registros se<br />

<strong>de</strong>stinan al control <strong>de</strong> estado.<br />

Nodo inferior 4x INT El valor entero introducido en el nodo inferior<br />

especifica la longitud <strong>de</strong> la tabla. En ese caso,<br />

el número <strong>de</strong> registros en la tabla ha <strong>de</strong> ser 6.<br />

Salida superior 0x Ninguno Se activa cuando el <strong>de</strong>splazamiento se ha<br />

producido sin errores y refleja el estado <strong>de</strong> las<br />

entradas superiores o intermedias.<br />

Salida<br />

intermedia<br />

0x Ninguno Se activa cuando el <strong>de</strong>splazamiento se ha<br />

producido sin errores y refleja el estado <strong>de</strong> las<br />

entradas superiores o intermedias.<br />

Salida inferior 0x Ninguno Se activa cuando la longitud <strong>de</strong>l registro no se<br />

<strong>de</strong>fine como 6.<br />

Registros En la tabla siguiente se <strong>de</strong>scriben los registros <strong>de</strong> la instrucción.<br />

Registro Tipo <strong>de</strong> datos Descripción<br />

4xxxxx Corto ID <strong>de</strong>l eje <strong>de</strong>l movimiento incremental.<br />

4xxxx1 Coma flotante Velocidad empleada para <strong>de</strong>splazar el eje.<br />

4xxxx3 Corto Código <strong>de</strong> error generado al iniciar el movimiento.<br />

4xxxx4 Corto Número <strong>de</strong> estado <strong>de</strong> funcionamiento actual<br />

4xxxx5 Corto Conteo <strong>de</strong> entrada <strong>de</strong> estado actual.<br />

666 31007526 12/2006


Presentación<br />

JSR: Saltar a subrutina<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción JSR.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

107<br />

Apartado Página<br />

Descripción breve 668<br />

Representación 669<br />

31007526 12/2006 667


JSR: Saltar a subrutina<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Ejemplo <strong>de</strong><br />

utilización <strong>de</strong><br />

subrutinas<br />

Cuando el ciclo lógico encuentra una instrucción JSR activada, <strong>de</strong>tiene el ciclo<br />

lógico normal y salta a la subrutina <strong>de</strong> origen especificada en el último segmento <strong>de</strong><br />

Lad<strong>de</strong>r <strong>Logic</strong> (sin administrar).<br />

Pue<strong>de</strong> utilizar una instrucción JSR en cualquier lugar <strong>de</strong>ntro <strong>de</strong> la lógica <strong>de</strong><br />

aplicación, incluso <strong>de</strong>ntro <strong>de</strong>l segmento <strong>de</strong> la subrutina. El proceso <strong>de</strong> llamar a una<br />

subrutina <strong>de</strong>s<strong>de</strong> otra se <strong>de</strong>nomina intercalado <strong>de</strong> programa. El sistema permite<br />

intercalar un máximo <strong>de</strong> 100 subrutinas; sin embargo, se recomienda no utilizar más<br />

<strong>de</strong> tres niveles <strong>de</strong> intercalado. También pue<strong>de</strong> realizar una forma <strong>de</strong> intercalado<br />

recursivo <strong>de</strong>nominado generación <strong>de</strong> bucles, don<strong>de</strong> una llamada a la instrucción<br />

JSR en la subrutina vuelve a llamar a la misma subrutina.<br />

Encontrará un ejemplo <strong>de</strong> utilización <strong>de</strong> subrutinas en p. 47.<br />

668 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control salida <strong>de</strong> copia<br />

fuente<br />

salto condicional a subrutina<br />

(pue<strong>de</strong> aparecer en cualquier<br />

lugar, incluso anidada)<br />

error<br />

JSR<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Fuente<br />

(nodo superior)<br />

1<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

JSR: Saltar a subrutina<br />

31007526 12/2006 669<br />

n.º 1<br />

Significado<br />

0x, 1x Ninguno Habilita la subrutina <strong>de</strong> origen.<br />

4x INT, UINT Pointer <strong>de</strong> fuente (indicador <strong>de</strong> la<br />

subrutina a la que va a saltar el ciclo<br />

lógico), pue<strong>de</strong> introducirse <strong>de</strong> forma<br />

explícita como un número entero o<br />

almacenarse en un registro; rango:<br />

1a1.023<br />

INT, UINT Siempre se introduce el valor constante 1.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida inferior 0x Ninguno Error en el salto a la subrutina.<br />

ON si no se pue<strong>de</strong> ejecutar el salto.<br />

La etiqueta no existe<br />

o<br />

el nivel <strong>de</strong> anidamiento <strong>de</strong> programa > 100


JSR: Saltar a subrutina<br />

670 31007526 12/2006


Presentación<br />

LAB: Etiqueta <strong>de</strong> una subrutina<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción LAB.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

108<br />

Apartado Página<br />

Descripción breve 672<br />

Representación 673<br />

Descripción <strong>de</strong> los parámetros 674<br />

31007526 12/2006 671


LAB: Etiqueta <strong>de</strong> una subrutina<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

Ejemplo <strong>de</strong><br />

gestión <strong>de</strong><br />

subrutinas<br />

La instrucción LAB se utiliza para etiquetar el punto <strong>de</strong> inicio <strong>de</strong> una subrutina en el<br />

último segmento <strong>de</strong> la lógica <strong>de</strong> usuario (sin programar). Esta instrucción <strong>de</strong>be<br />

programarse en la fila 1, columna 1 <strong>de</strong> una red en el último segmento <strong>de</strong> la lógica<br />

<strong>de</strong> usuario (sin programar). LAB es un bloque <strong>de</strong> función <strong>de</strong> un solo nodo.<br />

LAB también sirve como retorno pre<strong>de</strong>terminado <strong>de</strong>s<strong>de</strong> la subrutina en las re<strong>de</strong>s<br />

anteriores. Si está ejecutando una serie <strong>de</strong> re<strong>de</strong>s <strong>de</strong> subrutinas y encuentra una red<br />

que comienza con LAB, el sistema sabrá que la subrutina previa ya ha finalizado, y<br />

<strong>de</strong>volverá el ciclo lógico al nodo inmediatamente posterior al bloque JSR que se<br />

haya ejecutado más recientemente.<br />

Nota: Si necesita procesar las E/S reales durante la subrutina <strong>de</strong> interrupt, <strong>de</strong>berá<br />

utilizar el bloque <strong>de</strong> funciones IMIO (véase p. 631) (lectura/escritura) en la misma<br />

subrutina. De lo contrario, las E/S reales referenciadas en dicha subrutina NO se<br />

procesarán hasta que se resuelva el segmento a<strong>de</strong>cuado.<br />

Para ver un ejemplo <strong>de</strong> gestión <strong>de</strong> subrutinas, consulte p. 47.<br />

672 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

la etiqueta <strong>de</strong>be estar en<br />

subrutina<br />

error<br />

la fila 1, columna 1 <strong>de</strong> LAB<br />

una red en el último<br />

segmento<br />

(1...255)<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Subrutina<br />

(nodo superior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

LAB: Etiqueta <strong>de</strong> una subrutina<br />

0x, 1x Ninguno Inicia la subrutina especificada por el<br />

número en el nodo inferior.<br />

INT, UINT Valor entero, i<strong>de</strong>ntifica la subrutina que va<br />

a ejecutar.<br />

Rango: 1...255, PLC <strong>de</strong> 16 bits.<br />

Rango: 1...1.023, PLC <strong>de</strong> 24 bits.<br />

Tamaño = constante 1–255.<br />

Tamaño = constante 1–1.023 para 785L.<br />

Error <strong>de</strong> número <strong>de</strong> subrutina activo si no<br />

se pue<strong>de</strong> ejecutar el retorno.<br />

Si hay más <strong>de</strong> una red que comience con<br />

una instrucción LAB con el mismo valor <strong>de</strong><br />

subrutina, la red con el número más<br />

pequeño se utilizará como el punto <strong>de</strong><br />

inicio <strong>de</strong> la subrutina.<br />

Salida superior 0x Ninguno ON = error en el inicio <strong>de</strong> subrutina<br />

especificado.<br />

31007526 12/2006 673


LAB: Etiqueta <strong>de</strong> una subrutina<br />

Descripción <strong>de</strong> los parámetros<br />

Subrutina<br />

(asiento inferior)<br />

El valor entero introducido en el asiento i<strong>de</strong>ntifica la subrutina que va a ejecutar. El<br />

valor pue<strong>de</strong> ir <strong>de</strong> 1 a 255. Si hay más <strong>de</strong> una red <strong>de</strong> subrutinas con el mismo valor<br />

LAB, la red con el número menor se utilizará como punto <strong>de</strong> partida para la<br />

subrutina.<br />

674 31007526 12/2006


Presentación<br />

LOAD: Cargar flash<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción LOAD.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

109<br />

Apartado Página<br />

Descripción breve 676<br />

Representación 677<br />

Descripción <strong>de</strong> los parámetros 678<br />

31007526 12/2006 675


LOAD: Cargar flash<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción está disponible en la familia <strong>de</strong> PLC Compact TSX, en CPU<br />

Quantum 434 12/534 14 y Momentum CCC 960 x0/980 x0.<br />

La instrucción LOAD carga un bloque <strong>de</strong> registros 4x (que se hayan guardado<br />

previamente con la instrucción SAVE) <strong>de</strong>s<strong>de</strong> la memoria <strong>de</strong> señal en la que están<br />

protegidos frente a modificaciones no autorizadas.<br />

676 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

registro<br />

Longitud: 1–512<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Registro<br />

(nodo superior)<br />

1, 2, 3, 4<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

1, 2, 3, 4<br />

longitud <strong>de</strong><br />

LOAD<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

no se ha guardado nada<br />

longitud = longitud<br />

guardada<br />

LOAD: Cargar flash<br />

0x, 1x Ninguno Inicia la operación LOAD: <strong>de</strong>berá permanecer<br />

activo hasta que la operación haya finalizado<br />

correctamente o se produzca un error.<br />

4x INT, UINT,<br />

WORD<br />

Primero <strong>de</strong> un máximo <strong>de</strong> 512 registros 4x<br />

contiguos que se han <strong>de</strong> cargar en la memoria<br />

<strong>de</strong> señal.<br />

INT Valor entero que <strong>de</strong>fine el búfer específico en<br />

el que se va a cargar el bloque <strong>de</strong> datos.<br />

INT Cantidad <strong>de</strong> palabras que se van a cargar,<br />

rango: 1 a 512<br />

Salida superior 0x Ninguno ON = la instrucción LOAD está activa.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = se solicita la instrucción LOAD <strong>de</strong>s<strong>de</strong> un<br />

búfer en el que no se han guardado datos.<br />

Salida inferior 0x Ninguno ON = longitud distinta <strong>de</strong> la longitud SAVE.<br />

31007526 12/2006 677


LOAD: Cargar flash<br />

Descripción <strong>de</strong> los parámetros<br />

1, 2, 3, 4<br />

(asiento<br />

intermedio)<br />

El asiento intermedio <strong>de</strong>fine el búfer específico en el que se va a cargar el bloque<br />

<strong>de</strong> datos. Se admiten cuatro búferes <strong>de</strong> 512 palabras. Cada búfer se <strong>de</strong>fine<br />

colocando su valor correspondiente en el asiento intermedio, es <strong>de</strong>cir, el valor 1<br />

representa el primer búfer, el valor 2, el segundo, y así sucesivamente. Los valores<br />

permitidos son 1, 2, 3 y 4. Cuando se inicia el PLC, los cuatro búferes se ponen a<br />

cero. Por lo tanto, no podrá cargar datos <strong>de</strong>l mismo búfer sin guardarlos primero con<br />

la instrucción SAVE. Al intentar realizar esta operación, la salida intermedia se<br />

activa. En otras palabras, una vez utilizado un búfer, no se podrá volver a utilizar<br />

hasta que se hayan eliminado los datos.<br />

Salida inferior La salida <strong>de</strong>l asiento inferior se activará cuando la solicitud <strong>de</strong> la instrucción LOAD<br />

no sea igual a los registros que se hayan guardado (SAVE). Este tipo <strong>de</strong> transacción<br />

está permitido, aunque <strong>de</strong>berá asegurarse <strong>de</strong> que no cree ningún problema en la<br />

aplicación.<br />

678 31007526 12/2006


Presentación<br />

MAP3: Transacción MAP<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción MAP3.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

110<br />

Apartado Página<br />

Descripción breve 680<br />

Representación 681<br />

Descripción <strong>de</strong> parámetros 682<br />

31007526 12/2006 679


MAP3: Transacción MAP<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción sólo estará disponible si ha expandido e instalado las<br />

instrucciones cargables DX; encontrará más información en p. 49.<br />

Las aplicaciones <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong> que funcionan en el controlador inician la<br />

comunicación con los participantes <strong>de</strong> la red MAP mediante la instrucción MAP 3.<br />

680 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

bloque <strong>de</strong><br />

control<br />

fuente <strong>de</strong><br />

datos<br />

longitud <strong>de</strong><br />

MAP3<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = inicia una transacción.<br />

Entrada<br />

intermedia<br />

Bloque <strong>de</strong> control<br />

(nodo superior)<br />

Fuente <strong>de</strong> datos<br />

(nodo intermedio)<br />

Longitud<br />

(nodo inferior)<br />

MAP3: Transacción MAP<br />

0x, 1x Ninguno ON = nueva transacción que se ha <strong>de</strong><br />

iniciar en el mismo ciclo.<br />

4x INT, UINT,<br />

WORD<br />

4x INT, UINT,<br />

WORD<br />

Bloque <strong>de</strong> control (primer registro <strong>de</strong> un<br />

bloque).<br />

Fuente <strong>de</strong> datos (registro <strong>de</strong> inicio).<br />

INT, UINT Longitud <strong>de</strong> un área <strong>de</strong> datos local, rango:<br />

1 a 255)<br />

Salida superior 0x Ninguno Transacción finalizada correctamente.<br />

Salida intermedia 0x Ninguno Se está llevando a cabo la transacción.<br />

Salida inferior 0x Ninguno Error<br />

31007526 12/2006 681


MAP3: Transacción MAP<br />

Descripción <strong>de</strong> parámetros<br />

Entrada superior Esta entrada inicia una transacción. Para iniciar una transacción, la entrada <strong>de</strong>be<br />

mantenerse activa (ALTO) durante al menos un ciclo. Si S980 cuenta con recursos<br />

suficientes para procesar la transacción, la salida intermedia transmitirá corriente.<br />

Si no se dispone <strong>de</strong> recursos, ninguna salida transmitirá corriente.<br />

Una vez iniciada, la transacción se ejecutará hasta que se reciba una respuesta, se<br />

<strong>de</strong>tecte un error <strong>de</strong> comunicación o se produzca un timeout. Los valores <strong>de</strong>l bloque<br />

<strong>de</strong> control, la longitud y la fuente <strong>de</strong> datos no <strong>de</strong>ben modificarse, ya que, <strong>de</strong> lo<br />

contrario, la transacción no se completará y la salida inferior transmitirá corriente.<br />

No se podrá iniciar una segunda transacción a través <strong>de</strong>l mismo bloque hasta que<br />

se haya completado la primera.<br />

Entrada<br />

intermedia<br />

Bloque<br />

<strong>de</strong> control<br />

(nodo superior)<br />

Si la entrada superior también se encuentra en estado ALTO, cuando la entrada<br />

intermedia se activa, permite el inicio <strong>de</strong> una nueva transacción en el mismo ciclo<br />

<strong>de</strong>spués <strong>de</strong> que concluya la anterior. La nueva transacción comenzará cuando la<br />

salida superior transmita corriente <strong>de</strong>s<strong>de</strong> la primera transacción.<br />

El nodo superior es el registro 4x <strong>de</strong> inicio <strong>de</strong> un bloque <strong>de</strong> registros que controla el<br />

funcionamiento <strong>de</strong>l bloque.<br />

El contenido <strong>de</strong> cada registro está <strong>de</strong>terminado por el tipo <strong>de</strong> operación que vaya a<br />

realizar el bloque MAP 3:<br />

Lectura o escritura<br />

Informe<br />

Estado no solicitado<br />

Finalización<br />

Cancelación<br />

Registros <strong>de</strong>l bloque <strong>de</strong> control:<br />

Palabra Significado<br />

1 Dispositivo <strong>de</strong> <strong>de</strong>stino<br />

2 Descriptor/código <strong>de</strong> función<br />

3 Modalidad <strong>de</strong> red/tipo <strong>de</strong> red<br />

4 Estado <strong>de</strong> función<br />

5 Registro A, tipo <strong>de</strong> referencia<br />

Esta palabra tiene la etiqueta Registro A* y contiene el tipo <strong>de</strong> referencia para<br />

cuatro tipos <strong>de</strong> lectura (registros 0x, 1x, 3x y 4x) y dos tipos <strong>de</strong> escritura (0x y 4x).<br />

6 Registro B, número <strong>de</strong> referencia<br />

Esta palabra tiene la etiqueta Registro B* y contiene el número <strong>de</strong> referencia <strong>de</strong><br />

inicio <strong>de</strong>ntro <strong>de</strong>l rango <strong>de</strong> 1 a 99.999.<br />

682 31007526 12/2006


Dispositivo <strong>de</strong><br />

<strong>de</strong>stino<br />

Descriptor/<br />

código <strong>de</strong><br />

función<br />

MAP3: Transacción MAP<br />

Palabra Significado<br />

7 Registro C, longitud <strong>de</strong> referencia<br />

Esta palabra tiene la etiqueta Registro C* y contiene la cantidad <strong>de</strong> referencias<br />

solicitada.<br />

8 Registro D, timeout<br />

Esta palabra tiene la etiqueta Registro D* y contiene el parámetro <strong>de</strong> timeout.<br />

Este valor <strong>de</strong>fine la duración máxima asignada para completar una transacción,<br />

incluidos los reintentos.<br />

La palabra 1 contiene el equipo <strong>de</strong> <strong>de</strong>stino en las posiciones <strong>de</strong> bit 9 a 16. El<br />

or<strong>de</strong>nador trabaja con este byte como el <strong>de</strong> menor valor (LSB) y acepta un rango<br />

<strong>de</strong> 1 a 255.<br />

Utilización <strong>de</strong> la palabra 1:<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 8 Sin utilizar<br />

9–16 Dispositivo <strong>de</strong> <strong>de</strong>stino<br />

La palabra 2 contiene dos bytes <strong>de</strong> información. Los bits <strong>de</strong>l <strong>de</strong>scriptor van <strong>de</strong> 1 a<br />

8 y el código <strong>de</strong> función se encuentra en los bits <strong>de</strong> 9 a 16.<br />

Utilización <strong>de</strong> la palabra 2:<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

Descriptor<br />

1 - 8 0 = Direccionado<br />

>0 = Denominado<br />

Código <strong>de</strong> función<br />

9 - 16 4 = Lectura<br />

5 = Escritura<br />

31007526 12/2006 683


MAP3: Transacción MAP<br />

Modalidad <strong>de</strong><br />

red/tipo <strong>de</strong> red<br />

Estado <strong>de</strong><br />

función<br />

La palabra 3 contiene dos bytes <strong>de</strong> información. La modalidad se indica en los bits<br />

<strong>de</strong> 5 a 8 y el tipo se indica en los bits <strong>de</strong> 9 a 16.<br />

Utilización <strong>de</strong> la palabra 3:<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 4<br />

Modalidad<br />

Sin utilizar<br />

5 - 8<br />

Tipo<br />

1 = Asociación<br />

9 - 12 7 = Red MAP <strong>de</strong> siete capas<br />

13 - 16 1 = Servicio <strong>de</strong> tipo 1<br />

La palabra 4 contiene el estado <strong>de</strong> función. Aparecerá un código <strong>de</strong> error si se<br />

produce un error en una función iniciada <strong>de</strong> un bloque.<br />

A continuación, se indican los códigos <strong>de</strong>cimales:<br />

Código Significado<br />

1 Solicitud <strong>de</strong> asociación rechazada<br />

4 Respuesta <strong>de</strong> aplicación <strong>de</strong> timeout <strong>de</strong> mensaje<br />

5 Dispositivo <strong>de</strong> <strong>de</strong>stino no válido<br />

6 Tamaño <strong>de</strong> mensaje excedido<br />

8 Código <strong>de</strong> función no válido<br />

17 Dispositivo no disponible<br />

19 Tipo <strong>de</strong> red incompatible<br />

22 Ningún canal disponible<br />

23 Mensaje MMS no enviado<br />

24 Bloque <strong>de</strong> control cambiado<br />

25 Fallo en el inicio<br />

26 Descarga <strong>de</strong>l sistema en curso<br />

28 Canal no listo<br />

99 Error in<strong>de</strong>terminado<br />

103 Acceso <strong>de</strong>negado<br />

105 Dirección no válida<br />

110 Objeto no existente<br />

684 31007526 12/2006


Resumen<br />

<strong>de</strong> funciones<br />

Fuente<br />

<strong>de</strong> datos (nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

MAP3: Transacción MAP<br />

El dispositivo <strong>de</strong> control <strong>de</strong> la red pue<strong>de</strong> emitir un código <strong>de</strong> función que altere la<br />

asignación <strong>de</strong> registros <strong>de</strong> <strong>bloques</strong> <strong>de</strong> control, tal como se ha indicado<br />

anteriormente para los registros <strong>de</strong> lectura/escritura. Estas diferencias <strong>de</strong><br />

información, estado, finalización y cancelación se i<strong>de</strong>ntifican en este resumen en la<br />

parte inferior <strong>de</strong> la pantalla.<br />

Consulte el Manual <strong>de</strong>l usuario <strong>de</strong> la interfase <strong>de</strong> red Modicon S980 MAP 3.0, don<strong>de</strong><br />

se <strong>de</strong>scribe el contenido <strong>de</strong> los registros para cada operación.<br />

El nodo intermedio es el registro 4x <strong>de</strong> inicio <strong>de</strong> la fuente <strong>de</strong> datos local (para una<br />

petición <strong>de</strong> escritura) o <strong>de</strong>l <strong>de</strong>stino <strong>de</strong> datos local (para una petición <strong>de</strong> lectura).<br />

El nodo inferior <strong>de</strong>fine el tamaño máximo <strong>de</strong>l área <strong>de</strong> datos local (cantidad <strong>de</strong><br />

registros), comenzando por el registro 4x <strong>de</strong> la fuente <strong>de</strong> datos, con un rango <strong>de</strong> 1<br />

a 255 <strong>de</strong>cimal. La cantidad <strong>de</strong> datos que se han <strong>de</strong> transferir realmente en la<br />

operación viene <strong>de</strong>terminada por un parámetro <strong>de</strong> longitud <strong>de</strong> referencia <strong>de</strong> uno <strong>de</strong><br />

los registros <strong>de</strong> control.<br />

Salida superior La salida superior transmite corriente durante un ciclo <strong>de</strong> programa cuando una<br />

transacción se completa correctamente.<br />

Salida<br />

intermedia<br />

La salida intermedia transmite corriente cuando se está <strong>de</strong>sarrollando una<br />

transacción. Si la entrada superior está activa y la entrada intermedia está inactiva,<br />

la salida intermedia se <strong>de</strong>sactivará en el mismo ciclo <strong>de</strong> programa en que se active<br />

la salida superior. Si tanto la entrada superior como la intermedia se encuentran<br />

activas, la salida intermedia permanecerá activa.<br />

Salida inferior La salida inferior transmite corriente durante un ciclo <strong>de</strong> programa cuando no se<br />

pue<strong>de</strong> completar una transacción. Se <strong>de</strong>volverá un código <strong>de</strong> error a la palabra <strong>de</strong><br />

estado <strong>de</strong> función (registro 4x+3) <strong>de</strong>l bloque <strong>de</strong> control <strong>de</strong> la función.<br />

31007526 12/2006 685


MAP3: Transacción MAP<br />

686 31007526 12/2006


Presentación<br />

MATH – Operaciones con enteros<br />

111<br />

Introducción En este capítulo se <strong>de</strong>scriben las cuatro operaciones con enteros ejecutadas por la<br />

instrucción MATH. Las cuatro operaciones son raíz cuadrada <strong>de</strong>cimal, raíz<br />

cuadrada <strong>de</strong> proceso, logaritmo (base 10) y antilogaritmo (base 10).<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

Apartado Página<br />

Descripción breve 688<br />

Representación 689<br />

31007526 12/2006 687


MATH – Operaciones con enteros<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

La instrucción MATH realiza alguna <strong>de</strong> las cuatro operaciones matemáticas con<br />

enteros, que se inician introduciendo un código <strong>de</strong> función <strong>de</strong>l rango 14 en el nodo<br />

inferior. 4 en el nodo inferior.<br />

Tabla con dos columnas:<br />

Código Función <strong>de</strong> la instrucción MATH<br />

1 Raíz cuadrada <strong>de</strong>cimal<br />

2 Raíz cuadrada <strong>de</strong> proceso<br />

3 Logaritmo (base 10)<br />

4 Antilogaritmo (base 10)<br />

Cada función <strong>de</strong> la instrucción MATH trabaja sobre el contenido <strong>de</strong> los registros <strong>de</strong>l<br />

nodo superior y coloca un resultado en los registros <strong>de</strong>l nodo intermedio.<br />

Por ejemplo, la raíz cuadrada normal utiliza registros 3/4xxxx y 3/4xxxx+1 como un<br />

operando <strong>de</strong> ocho dígitos y almacena el resultado en registros 4yyyy o 4yyyy+1. El<br />

formato <strong>de</strong> almacenamiento <strong>de</strong>l resultado es XXXX.XX00, don<strong>de</strong> hay dos lugares<br />

<strong>de</strong> precisión <strong>de</strong>spués <strong>de</strong> una coma <strong>de</strong>cimal implícita.<br />

La instrucción realizará la función que indique el nodo inferior:<br />

Código Función Registros <strong>de</strong><br />

operando<br />

Rango Registros<br />

<strong>de</strong> resultado<br />

Rango<br />

1 Normal 3/4x, 3/4x + 1 Ocho dígitos 4y, 4y + 1 xxxx.xxoo<br />

2 Proceso 3/4x Cuatro dígitos 4y, 4y + 1 xxxx.xxoo<br />

3 Logaritmo (x) 3/4x, 3/4x + 1 Ocho dígitos 4y De 1 a 7.999<br />

4 Antilogaritmo (x) 3/4x De 1 a 7.999 4y, 4y + 1 Ocho dígitos<br />

688 31007526 12/2006


Representación<br />

Símbolo: raíz<br />

cuadrada<br />

<strong>de</strong>cimal<br />

Descripción <strong>de</strong><br />

los parámetros:<br />

raíz cuadrada<br />

<strong>de</strong>cimal<br />

MATH – Operaciones con enteros<br />

Representación <strong>de</strong> la instrucción para la operación <strong>de</strong> raíz cuadrada <strong>de</strong>cimal.<br />

entrada <strong>de</strong> control activa<br />

fuente<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción para la operación <strong>de</strong> raíz cuadrada<br />

<strong>de</strong>cimal.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

resultado<br />

MATH<br />

31007526 12/2006 689<br />

1<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

error<br />

0x, 1x Ninguna En estado activo inicia una operación <strong>de</strong> raíz<br />

cuadrada estándar.


MATH – Operaciones con enteros<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Fuente<br />

(nodo<br />

superior)<br />

Resultado<br />

(nodo<br />

intermedio)<br />

Salida<br />

superior<br />

Salida<br />

inferior<br />

Tipo <strong>de</strong><br />

datos<br />

3x. 4x INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

Significado<br />

0x Ninguna ON: operación correcta<br />

El primero <strong>de</strong> dos registros contiguos 3xxxx o 4xxxx<br />

se introduce en el nodo superior. El segundo<br />

registro está implícito. Aquí se guarda el valor <strong>de</strong><br />

fuente, es <strong>de</strong>cir, el valor a partir <strong>de</strong>l cual se ha <strong>de</strong><br />

calcular la raíz cuadrada.<br />

Si especifica un registro 4xxxx, el valor <strong>de</strong> fuente<br />

<strong>de</strong>berá estar comprendido en el rango que va <strong>de</strong> 0<br />

a 99.999.999. La mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l valor se<br />

almacena en el registro implícito, mientras que la<br />

<strong>de</strong> mayor or<strong>de</strong>n se almacena en el registro<br />

visualizado.<br />

Si especifica un registro 3xxxx, el valor <strong>de</strong> fuente<br />

<strong>de</strong>berá estar comprendido en el rango que va <strong>de</strong> 0<br />

a 9.999. La raíz cuadrada sólo se calcula sobre el<br />

valor <strong>de</strong>l registro visualizado; el registro implícito es<br />

necesario pero no se utiliza.<br />

Introduzca, en el nodo intermedio, el primero <strong>de</strong><br />

dos registros 4xxxx contiguos. El segundo registro<br />

está implícito. El resultado <strong>de</strong> la operación <strong>de</strong> raíz<br />

cuadrada estándar se almacena aquí.<br />

El resultado se almacena en el formato <strong>de</strong>cimal<br />

fijado: 1.234,5600, don<strong>de</strong> el registro visualizado<br />

almacena el valor <strong>de</strong> cuatro dígitos a la izquierda<br />

<strong>de</strong> la primera coma <strong>de</strong>cimal, mientras que el<br />

registro implícito lo almacena a la <strong>de</strong>recha <strong>de</strong> la<br />

primera coma <strong>de</strong>cimal. Los números que aparecen<br />

<strong>de</strong>trás <strong>de</strong> la segunda coma <strong>de</strong>cimal se truncarán;<br />

no se realizarán cálculos redon<strong>de</strong>ando.<br />

0x Ninguna ON = valor <strong>de</strong>l nodo superior fuera <strong>de</strong> rango.<br />

690 31007526 12/2006


Símbolo: raíz<br />

cuadrada <strong>de</strong><br />

proceso<br />

Descripción <strong>de</strong><br />

los parámetros:<br />

raíz cuadrada <strong>de</strong><br />

proceso<br />

MATH – Operaciones con enteros<br />

Representación <strong>de</strong> la instrucción para la operación <strong>de</strong> raíz cuadrada <strong>de</strong> proceso.<br />

entrada <strong>de</strong> control activa<br />

fuente<br />

resultado<br />

linealizado<br />

MATH<br />

La función <strong>de</strong> raíz cuadrada <strong>de</strong> proceso realiza la función <strong>de</strong> raíz cuadrada estándar<br />

para aplicaciones <strong>de</strong> regulación analógica <strong>de</strong> bucle cerrado. Toma el resultado <strong>de</strong><br />

una raíz cuadrada estándar, lo multiplica por 63,9922 (la raíz cuadrada <strong>de</strong> 4.095) y<br />

guarda el resultado linealizado en los registros <strong>de</strong>l nodo intermedio.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Fuente<br />

(nodo superior)<br />

31007526 12/2006 691<br />

2<br />

Tipo <strong>de</strong><br />

datos<br />

error<br />

Significado<br />

0x, 1x Ninguna ON = inicia una operación <strong>de</strong> raíz cuadrada<br />

<strong>de</strong> proceso.<br />

3x. 4x INT, UINT El primero <strong>de</strong> dos registros contiguos 3xxxx<br />

o 4xxxx se introduce en el nodo superior. El<br />

segundo registro está implícito. El valor <strong>de</strong><br />

fuente, es <strong>de</strong>cir, el valor a partir <strong>de</strong>l cual se<br />

ha <strong>de</strong> calcular la raíz cuadrada, se<br />

almacena en estos dos registros.<br />

Para generar valores que tengan<br />

significado, el valor <strong>de</strong> fuente no <strong>de</strong>be ser<br />

superior a 4.095. Por tanto, en un grupo <strong>de</strong><br />

registros 4xxxx, el valor <strong>de</strong> fuente se<br />

almacenará en el registro implícito,<br />

mientras que en un grupo <strong>de</strong> registros<br />

3xxxx se almacenará en el registro<br />

visualizado.


MATH – Operaciones con enteros<br />

Símbolo:<br />

logaritmo<br />

(base 10)<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Resultado<br />

(nodo<br />

intermedio)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

4x INT, UINT El primero <strong>de</strong> dos registros contiguos 4xxxx<br />

se introduce en el nodo intermedio. El<br />

segundo registro está implícito. Aquí se<br />

almacena el resultado linealizado <strong>de</strong> la<br />

operación <strong>de</strong> raíz cuadrada <strong>de</strong> proceso.<br />

El resultado se almacena en el formato<br />

<strong>de</strong>cimal fijado: 1.234,5600, don<strong>de</strong> el<br />

registro visualizado almacena el valor <strong>de</strong><br />

cuatro dígitos a la izquierda <strong>de</strong> la primera<br />

coma <strong>de</strong>cimal, mientras que el registro<br />

implícito lo almacena a la <strong>de</strong>recha <strong>de</strong> la<br />

primera coma <strong>de</strong>cimal. Los números que<br />

aparecen <strong>de</strong>trás <strong>de</strong> la segunda coma<br />

<strong>de</strong>cimal se truncarán; no se realizarán<br />

cálculos redon<strong>de</strong>ando.<br />

Salida superior 0x Ninguna ON = operación correcta.<br />

Salida inferior 0x Ninguna ON = valor <strong>de</strong> fuente fuera <strong>de</strong> rango.<br />

Representación <strong>de</strong> la instrucción para la operación <strong>de</strong> logaritmo (base 10).<br />

entrada <strong>de</strong> control activa<br />

fuente<br />

resultado<br />

MATH<br />

3<br />

692 31007526 12/2006<br />

error


Descripción <strong>de</strong><br />

los parámetros:<br />

logaritmo<br />

(base 10)<br />

MATH – Operaciones con enteros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción para la operación <strong>de</strong> logaritmo<br />

(base 10).<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Fuente<br />

(nodo superior)<br />

Resultado<br />

(nodo<br />

intermedio)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguna ON habilita la operación log(x).<br />

3x. 4x INT, UINT El primero <strong>de</strong> dos registros contiguos 3xxxx<br />

o 4xxxx se introduce en el nodo superior. El<br />

segundo registro está implícito. El valor <strong>de</strong><br />

fuente a partir <strong>de</strong>l cual se ha <strong>de</strong> realizar el<br />

cálculo se guarda en estos registros.<br />

Si especifica un registro 4xxxx, el valor <strong>de</strong><br />

fuente <strong>de</strong>berá estar comprendido en el<br />

rango que va <strong>de</strong> 0 a 99.999.999. La mitad<br />

<strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l valor se almacena en el<br />

registro implícito, mientras que la <strong>de</strong> mayor<br />

or<strong>de</strong>n se almacena en el registro<br />

visualizado.<br />

El cálculo logarítmico sólo se realiza sobre<br />

el valor <strong>de</strong>l registro visualizado; el registro<br />

implícito es necesario pero no se utiliza.<br />

4x INT, UINT El nodo intermedio contiene un solo registro<br />

<strong>de</strong> salida 4xxxx a la que se traslada el<br />

resultado <strong>de</strong>l cálculo <strong>de</strong> logaritmo en base<br />

10. El resultado se expresa en el formato<br />

<strong>de</strong>cimal fijo 1,234 y se trunca <strong>de</strong>spués <strong>de</strong> la<br />

tercera posición <strong>de</strong>cimal.<br />

El mayor resultado que se pue<strong>de</strong> calcular<br />

es 7,999, que se pue<strong>de</strong> trasladar al registro<br />

intermedio como 7.999.<br />

Salida superior 0x Ninguna ON = operación correcta.<br />

Salida inferior 0x Ninguna ON = error o valor fuera <strong>de</strong> rango.<br />

31007526 12/2006 693


MATH – Operaciones con enteros<br />

Símbolo:<br />

antilogaritmo<br />

(base 10)<br />

Descripción <strong>de</strong><br />

los parámetros:<br />

antilogaritmo<br />

(base 10)<br />

Representación <strong>de</strong> la instrucción para la operación <strong>de</strong> antilogaritmo (base 10).<br />

entrada <strong>de</strong> control activa<br />

fuente<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción para la operación <strong>de</strong> antilogaritmo<br />

(base 10).<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Fuente<br />

(nodo<br />

superior)<br />

Resultado<br />

(nodo<br />

intermedio)<br />

Salida<br />

superior<br />

Salida<br />

inferior<br />

resultado<br />

MATH<br />

4<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

694 31007526 12/2006<br />

error<br />

0x, 1x Ninguna ON habilita la operación antilog(x).<br />

3x. 4x INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

El nodo superior es un único registro <strong>de</strong> salida<br />

4xxxx o registro <strong>de</strong> entrada 3xxxx. El valor <strong>de</strong><br />

fuente, es <strong>de</strong>cir, el valor al que se aplicará el<br />

cálculo <strong>de</strong>l antilogaritmo, se guardará aquí en el<br />

formato fijo <strong>de</strong>cimal 1,234. Debe estar<br />

comprendido en el rango <strong>de</strong> 0 a 7.999,<br />

representando un valor <strong>de</strong> fuente que no pue<strong>de</strong> ser<br />

superior a 7,999.<br />

El primero <strong>de</strong> dos registros contiguos 4xxxx se<br />

introduce en el nodo intermedio. El segundo<br />

registro está implícito. El resultado <strong>de</strong>l cálculo <strong>de</strong>l<br />

antilogaritmo se traslada aquí en el formato<br />

<strong>de</strong>cimal fijo 12.345.678.<br />

El mayor valor <strong>de</strong> antilogaritmo que se pue<strong>de</strong><br />

calcular es 99.770.006 (9.977 para el registro<br />

visualizado y 0006 para el registro implícito).<br />

0x Ninguna ON = operación correcta.<br />

0x Ninguna ON = error o valor fuera <strong>de</strong> rango.


Presentación<br />

MBIT: Modificar bit<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción MBIT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

112<br />

Apartado Página<br />

Descripción breve 696<br />

Representación 697<br />

Descripción <strong>de</strong> los parámetros 699<br />

31007526 12/2006 695


MBIT: Modificar bit<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

La instrucción MBIT modifica ubicaciones <strong>de</strong> bits en una matriz <strong>de</strong> datos, es <strong>de</strong>cir,<br />

establece los bits en 1 o los borra a 0. Se pue<strong>de</strong> modificar una ubicación <strong>de</strong> bit por<br />

cada ciclo.<br />

ADVERTENCIA<br />

BOBINAS BLOQUEADAS<br />

Antes <strong>de</strong> utilizar la instrucción MBIT, compruebe que no hay bobinas bloqueadas.<br />

La instrucción MBIT sobrescribirá las bobinas bloqueadas <strong>de</strong>ntro <strong>de</strong> un grupo <strong>de</strong><br />

<strong>de</strong>stino sin habilitarlas. Esto pue<strong>de</strong> provocar daños si se ha bloqueado una bobina<br />

para su reparación o mantenimiento, ya que el estado <strong>de</strong> la bobina pue<strong>de</strong> cambiar<br />

como resultado <strong>de</strong> la instrucción MBIT.<br />

Si no se respetan estas precauciones pue<strong>de</strong>n producirse graves lesiones,<br />

daños materiales o incluso la muerte.<br />

696 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

pointer: (999 PLC <strong>de</strong> 16 bits)<br />

(9.600 PLC <strong>de</strong> 24 bits)<br />

borrar/establecer ubic. <strong>de</strong><br />

bit<br />

aumentar pointer<br />

longitud <strong>de</strong> matriz (máx.)<br />

255 (4.080 bits) PLC <strong>de</strong> 16 bits<br />

600 (9.600 bits) PLC <strong>de</strong> 24 bits<br />

ubicación<br />

<strong>de</strong> bit<br />

matriz <strong>de</strong><br />

datos<br />

longitud <strong>de</strong><br />

MBIT<br />

activa<br />

<strong>de</strong>tectar bit<br />

(copiar entrada<br />

intermedia)<br />

MBIT: Modificar bit<br />

pointer<br />

<strong>de</strong> error > tamaño <strong>de</strong><br />

matriz<br />

31007526 12/2006 697


MBIT: Modificar bit<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = realiza la modificación <strong>de</strong>l bit.<br />

0x, 1x Ninguno OFF = se borran ubicaciones <strong>de</strong> bit a 0.<br />

ON = se establecen ubicaciones <strong>de</strong> bit en<br />

1.<br />

Entrada inferior 0x, 1x Ninguno Se incrementa en uno la ubicación <strong>de</strong> bit<br />

<strong>de</strong>spués <strong>de</strong> una modificación.<br />

Ubicación <strong>de</strong> bit<br />

(nodo superior)<br />

Matriz <strong>de</strong> datos<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

3x, 4x INT, UINT,<br />

WORD<br />

0x, 4x INT, UINT,<br />

WORD<br />

Ubicación <strong>de</strong> bit específica que se ha <strong>de</strong><br />

establecer o borrar en la matriz <strong>de</strong> datos;<br />

se introduce explícitamente como un valor<br />

entero o se almacena en un registro<br />

(rango 19.600)<br />

Primera palabra o registro <strong>de</strong> la matriz <strong>de</strong><br />

datos.<br />

INT, UINT Longitud <strong>de</strong> la matriz; rango: 1...600<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno Refleja el estado <strong>de</strong> la entrada intermedia.<br />

Salida inferior 0x Ninguno ON = error: ubicación <strong>de</strong> bit > longitud <strong>de</strong><br />

matriz.<br />

698 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Ubicación <strong>de</strong> bit<br />

(asiento<br />

superior)<br />

Longitud<br />

<strong>de</strong> la matriz<br />

(asiento inferior)<br />

MBIT: Modificar bit<br />

Nota: Si se introduce la ubicación <strong>de</strong> bit como un entero o en un registro 3x, la<br />

instrucción ignorará el estado <strong>de</strong> la entrada inferior.<br />

El valor entero introducido en el asiento inferior especifica la longitud <strong>de</strong> la matriz,<br />

es <strong>de</strong>cir, el número <strong>de</strong> registros o palabras <strong>de</strong> 16 bits que hay en la matriz <strong>de</strong> datos.<br />

La longitud pue<strong>de</strong> ir <strong>de</strong> 1 a 600 en una CPU <strong>de</strong> 24 bits; por ejemplo, una longitud<br />

<strong>de</strong> matriz <strong>de</strong> 200 indica 3.200 ubicaciones <strong>de</strong> bit.<br />

31007526 12/2006 699


MBIT: Modificar bit<br />

700 31007526 12/2006


Presentación<br />

MBUS: Transacción MBUS<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción MBUS.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

113<br />

Apartado Página<br />

Descripción breve 702<br />

Representación 703<br />

Descripción <strong>de</strong> los parámetros 705<br />

Función MBUS para obtener estadísticas 707<br />

31007526 12/2006 701


MBUS: Transacción MBUS<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción sólo estará disponible si ha expandido e instalado las<br />

instrucciones cargables DX; encontrará más información en p. 49.<br />

Los módulos opcionales <strong>de</strong> interfase S975 Modbus II utilizan dos <strong>bloques</strong> <strong>de</strong><br />

función cargables: MBUS y PEER. MBUS se utiliza para iniciar una transacción<br />

sencilla con otro equipo <strong>de</strong> la red II. En una transacción MBUS, se pue<strong>de</strong>n leer y<br />

escribir datos binarios o <strong>de</strong> registros.<br />

Los PLC en una red Modbus II pue<strong>de</strong>n realizar hasta 16 transacciones <strong>de</strong> forma<br />

simultánea. Las transacciones incluyen mensajes <strong>de</strong> entrada (no solicitados) y <strong>de</strong><br />

salida. De este modo, la cantidad <strong>de</strong> inicializaciones <strong>de</strong> mensajes que pue<strong>de</strong><br />

administrar un PLC en todo momento es 16 - Nº <strong>de</strong> mensajes <strong>de</strong> entrada.<br />

No se pue<strong>de</strong> iniciar una transacción a menos que el S975 tenga recursos<br />

suficientes para realizar toda la transacción. Una vez se haya iniciado la<br />

transacción, ésta permanecerá en ejecución hasta que se reciba una respuesta, se<br />

<strong>de</strong>tecte un error o tenga lugar un timeout. No se podrá iniciar una segunda<br />

transacción en el mismo ciclo <strong>de</strong> programa que completa la transacción previa, a<br />

menos que la entrada intermedia se encuentre activa. La misma instrucción MBUS<br />

no pue<strong>de</strong> iniciar una segunda transacción hasta que se haya completado la primera.<br />

702 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

bloque <strong>de</strong> control<br />

repetir transacción<br />

en el mismo ciclo<br />

borrar estadísticas<br />

<strong>de</strong>l sistema<br />

tamaño <strong>de</strong>l área <strong>de</strong> datos<br />

bloque <strong>de</strong><br />

control<br />

bloque <strong>de</strong><br />

datos<br />

longitud <strong>de</strong><br />

MBUS<br />

completa<br />

MBUS: Transacción MBUS<br />

transacción en curso<br />

o<br />

inicio <strong>de</strong> nueva transacción<br />

31007526 12/2006 703<br />

error


MBUS: Transacción MBUS<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno Habilita la transacción MBUS.<br />

0x, 1x Ninguno Repite la transacción en el mismo ciclo.<br />

Entrada inferior 0x, 1x Ninguno Borra las estadísticas <strong>de</strong>l sistema.<br />

Bloque <strong>de</strong><br />

control<br />

(nodo superior)<br />

Bloque <strong>de</strong><br />

datos<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

4x INT, UINT,<br />

WORD<br />

4x INT, UINT,<br />

WORD<br />

Primero <strong>de</strong> siete registros contiguos en el<br />

bloque <strong>de</strong> control MBUS.<br />

(Para obtener más información,<br />

consulte p. 705.)<br />

Primer registro 4x <strong>de</strong> un bloque <strong>de</strong> datos<br />

que se va a transmitir o recibir en la<br />

transacción MBUS.<br />

INT, UINT Número <strong>de</strong> palabras reservadas para el<br />

bloque <strong>de</strong> datos; se introduce como un<br />

valor constante.<br />

(Para obtener más información,<br />

consulte p. 706.)<br />

Salida superior 0x Ninguno Transacción finalizada.<br />

Salida<br />

intermedia<br />

0x Ninguno Transacción en curso o inicio <strong>de</strong> nueva<br />

transacción.<br />

Salida inferior 0x Ninguno Error <strong>de</strong>tectado en la transacción.<br />

704 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

control (asiento<br />

superior)<br />

Código <strong>de</strong><br />

función<br />

Tipo <strong>de</strong><br />

referencia<br />

MBUS: Transacción MBUS<br />

El registro 4x introducido en el asiento superior es el primero <strong>de</strong> siete registros<br />

contiguos <strong>de</strong>l bloque <strong>de</strong> control MBUS.<br />

Registro Contenido<br />

Visualizado Dirección <strong>de</strong>l equipo <strong>de</strong> <strong>de</strong>stino (rango: 0 a 246).<br />

Primer implícito No utilizado.<br />

Segundo implícito Código <strong>de</strong> función.<br />

Tercer implícito Tipo <strong>de</strong> referencia.<br />

Cuarto implícito Número <strong>de</strong> referencia; por ejemplo, si ha colocado un 4 en el tercer<br />

registro implícito y coloca un 23 en este registro, la referencia<br />

contendrá el registro 400023.<br />

Quinto implícito Número <strong>de</strong> palabras <strong>de</strong> referencias binarias o <strong>de</strong> registro que se han<br />

<strong>de</strong> leer o escribir.<br />

Sexto implícito Tiempo asignado para que se complete una transacción antes <strong>de</strong><br />

que se <strong>de</strong>clare un error; se indica como un múltiplo <strong>de</strong> 10 ms; por<br />

ejemplo, 100 indica 1.000 ms; el timeout pre<strong>de</strong>terminado es 250 ms.<br />

Este registro contiene el código <strong>de</strong> función para la acción solicitada.<br />

Valor Significado<br />

01 Leer registros binarios<br />

02 Leer registros<br />

03 Escribir salidas binarias<br />

04 Escribir salidas <strong>de</strong> registro<br />

255 Obtener estadísticas <strong>de</strong>l sistema<br />

Este registro contiene uno <strong>de</strong> los 4 tipos posibles <strong>de</strong> referencias binarias o <strong>de</strong><br />

registros:<br />

Valor Tipo <strong>de</strong> referencia<br />

0 Salida binaria (0x)<br />

1 Entrada binaria (1x)<br />

2 Registro <strong>de</strong> entrada (3x)<br />

3 Registro <strong>de</strong> salida (4x)<br />

31007526 12/2006 705


MBUS: Transacción MBUS<br />

Número <strong>de</strong><br />

palabras para<br />

lectura o<br />

escritura<br />

Longitud<br />

(asiento inferior)<br />

Número <strong>de</strong> palabras <strong>de</strong> referencias binarias o <strong>de</strong> registro que se van a leer o<br />

escribir; los límites <strong>de</strong> longitud son los siguientes.<br />

Registro <strong>de</strong> lectura 251 registros<br />

Registro <strong>de</strong> escritura 249 registros<br />

Bobinas <strong>de</strong> lectura 7.848 registros <strong>de</strong> salida<br />

Bobinas <strong>de</strong> escritura 7.800 registros binarios<br />

El número <strong>de</strong> palabras reservadas para el bloque <strong>de</strong> datos se introduce en el<br />

asiento inferior como un valor constante. Este número no representa una longitud<br />

<strong>de</strong> transacción <strong>de</strong> datos, pero pue<strong>de</strong> restringir el número máximo permitido <strong>de</strong><br />

referencias binarias o <strong>de</strong> registro que se van a leer o escribir en la transacción.<br />

El número máximo <strong>de</strong> palabras que se pue<strong>de</strong>n utilizar en la transacción<br />

especificada es el siguiente:<br />

Número máximo <strong>de</strong> palabras Transacción<br />

251 Lectura <strong>de</strong> registros (un registro/palabra)<br />

249 Escritura <strong>de</strong> registros (un registro/palabra)<br />

490 Lectura <strong>de</strong> registros binarios mediante CPU <strong>de</strong> 24 bits<br />

(hasta 16 registros binarios/palabra)<br />

487 Escritura <strong>de</strong> registros binarios mediante CPU <strong>de</strong> 24 bits<br />

(hasta 16 registros binarios/palabra)<br />

706 31007526 12/2006


Función MBUS para obtener estadísticas<br />

MBUS: Transacción MBUS<br />

Generalida<strong>de</strong>s Al introducir el código <strong>de</strong> función 255 en el segundo registro implícito <strong>de</strong>l bloque <strong>de</strong><br />

control MBUS, se obtiene una copia <strong>de</strong> las estadísticas locales <strong>de</strong> Modbus II. Éstas<br />

contienen una serie <strong>de</strong> 46 ubicaciones <strong>de</strong> registros contiguos don<strong>de</strong> se almacenan<br />

los datos que <strong>de</strong>scriben los estados <strong>de</strong> error y <strong>de</strong>l sistema. Si <strong>de</strong>sea utilizar MBUS<br />

para realizar una operación <strong>de</strong> obtención <strong>de</strong> estadísticas, fije en 46 la longitud en el<br />

asiento inferior. Una longitud < 46 <strong>de</strong>vuelve un error (la salida inferior se activará),<br />

mientras que una longitud > 46 reserva registros adicionales que no se pue<strong>de</strong>n<br />

utilizar.<br />

Ejemplo Parametrización <strong>de</strong> la instrucción.<br />

Vista general <strong>de</strong><br />

las estadísticas<br />

<strong>de</strong>l sistema<br />

Enable<br />

Clear system statistics<br />

400101<br />

401000<br />

MBUS<br />

complete<br />

Error: length < 46<br />

El registro 400101 es el primer registro <strong>de</strong>l bloque <strong>de</strong> control MBUS y hace que el<br />

registro 400103 sea el registro <strong>de</strong> control que <strong>de</strong>fine el código <strong>de</strong> función MBUS. Si<br />

introduce un valor <strong>de</strong> 255 en el registro 400103, realizará una función <strong>de</strong> obtención<br />

<strong>de</strong> estadísticas. A continuación, los registros 401000 a 401045 se rellenarán con las<br />

estadísticas <strong>de</strong>l sistema.<br />

Se encuentran disponibles las siguientes estadísticas <strong>de</strong>l sistema.<br />

Controlador <strong>de</strong> token bus (TBC)<br />

Estadísticas <strong>de</strong> recepción mantenidas por software<br />

Contadores <strong>de</strong> error mantenidos por TBC<br />

Errores <strong>de</strong> transmisión mantenidos por software<br />

Errores <strong>de</strong> recepción mantenidos por software<br />

Errores <strong>de</strong> transacción <strong>de</strong> la lógica <strong>de</strong> aplicación<br />

Estándar <strong>de</strong> formatos para la elaboración <strong>de</strong> mensajes<br />

Errores (MMFS)<br />

Estadísticas <strong>de</strong> fondo<br />

Revisión <strong>de</strong> software<br />

31007526 12/2006 707<br />

46


MBUS: Transacción MBUS<br />

Controlador <strong>de</strong><br />

token bus (TBC)<br />

Estadísticas <strong>de</strong><br />

recepción<br />

mantenidas por<br />

software<br />

Contadores <strong>de</strong><br />

error mantenidos<br />

por TBC<br />

Los registros 401000 a 401003 se rellenan con la siguiente información.<br />

Registro Contenido<br />

401000 Número <strong>de</strong> tokens que han pasado por esta estación.<br />

401001 Número <strong>de</strong> tokens que ha enviado esta estación.<br />

401002 Número <strong>de</strong> veces que TBC no ha podido pasar el token y no ha encontrado<br />

un sucesor.<br />

401003 Número <strong>de</strong> veces que la estación ha tenido que buscar un nuevo sucesor.<br />

Los registros 401004 a 401010 se rellenan con la siguiente información.<br />

Registro Contenido<br />

401004 Errores <strong>de</strong> trama <strong>de</strong>tectados por TBC.<br />

401005 Solicitud no válida con tramas <strong>de</strong> respuesta.<br />

401006 Mensaje <strong>de</strong> aplicaciones <strong>de</strong>masiado largo.<br />

401007 Dirección <strong>de</strong> control <strong>de</strong> acceso a medios (MAC) fuera <strong>de</strong> rango.<br />

401008 Tramas <strong>de</strong> aplicación duplicadas.<br />

401009 Tipos <strong>de</strong> mensajes <strong>de</strong> control <strong>de</strong> conexión lógica (LLC) no apoyados.<br />

401010 Dirección LLC no apoyada.<br />

Los registros 401011 a 401018 se rellenan con la siguiente información.<br />

Registro Contenido<br />

401011 Irrupciones <strong>de</strong> ruido <strong>de</strong> recepción (sin <strong>de</strong>limitador <strong>de</strong> inicio).<br />

401012 Errores <strong>de</strong> secuencias <strong>de</strong> verificación <strong>de</strong> trama.<br />

401013 Error en el bit E (error) <strong>de</strong>l fin <strong>de</strong> trama.<br />

401014 Tramas fragmentadas que se han recibido<br />

(el fin <strong>de</strong> trama no sigue al principio <strong>de</strong> trama).<br />

401015 Tramas recibidas <strong>de</strong>masiado largas.<br />

401016 Tramas <strong>de</strong>sechadas porque no hay búfer <strong>de</strong> recepción.<br />

401017 Desbor<strong>de</strong>s <strong>de</strong> recepción.<br />

401018 Fallos al pasar token.<br />

708 31007526 12/2006


Errores <strong>de</strong><br />

transmisión<br />

mantenidos por<br />

software<br />

Errores <strong>de</strong><br />

recepción<br />

mantenidos por<br />

software<br />

Errores <strong>de</strong><br />

transacción <strong>de</strong> la<br />

lógica <strong>de</strong><br />

aplicación.<br />

Estándar <strong>de</strong><br />

formatos para la<br />

elaboración <strong>de</strong><br />

mensajes<br />

MBUS: Transacción MBUS<br />

Los registros 401019 a 401020 se rellenan con la siguiente información:<br />

Registro Contenido<br />

401019 Reintentos sobre solicitu<strong>de</strong>s con tramas <strong>de</strong> respuesta.<br />

401020 Realizados todos los reintentos sin recibir respuesta <strong>de</strong>s<strong>de</strong> la unidad.<br />

Los registros 401021 a 401022 se rellenan con la siguiente información.<br />

Registro Contenido<br />

401021 Solicitud <strong>de</strong> transmisión no válida.<br />

401022 Confirmación <strong>de</strong> transmisión negativa.<br />

Los registros 401023 a 401024 se rellenan con la siguiente información.<br />

Registro Contenido<br />

401023 Mensaje enviado sin recibir respuesta <strong>de</strong> la aplicación.<br />

401024 Lógica MBUS/PEER no válida.<br />

Los registros 401025 a 401026 se rellenan con la siguiente información.<br />

Registro Contenido<br />

401025 Comando no ejecutable.<br />

401026 Datos no disponibles.<br />

Errores (MMFS) Los registros 401027 a 401035 se rellenan con la siguiente información.<br />

Registro Contenido<br />

401027 Equipo no disponible.<br />

401028 Función no realizada.<br />

401029 Solicitud no reconocida.<br />

401030 Error <strong>de</strong> sintaxis.<br />

401031 Error no especificado.<br />

4010<strong>32</strong> Solicitud <strong>de</strong> datos fuera <strong>de</strong> los límites.<br />

401033 La solicitud contiene una dirección <strong>de</strong> controlador no válida.<br />

401034 La solicitud contiene un tipo <strong>de</strong> datos no válido.<br />

401035 Ninguno <strong>de</strong> los anteriores.<br />

31007526 12/2006 709


MBUS: Transacción MBUS<br />

Estadísticas <strong>de</strong><br />

fondo<br />

Revisión <strong>de</strong><br />

software<br />

Los registros 401036 a 401043 se rellenan con la siguiente información.<br />

Registro Contenido<br />

401036 Solicitud MBUS/PEER no válida.<br />

401037 Número <strong>de</strong> tipos <strong>de</strong> mensajes MMFS no apoyados que se han recibido.<br />

401038 Respuesta no esperada o recibida <strong>de</strong>spués <strong>de</strong>l timeout.<br />

401039 Respuestas <strong>de</strong> aplicación duplicadas que se han recibido.<br />

401040 Respuesta <strong>de</strong> un equipo no especificado.<br />

401041 Número <strong>de</strong> respuestas almacenadas en un búfer que se han <strong>de</strong> procesar (en<br />

el byte <strong>de</strong> menor valor); número <strong>de</strong> solicitu<strong>de</strong>s MBUS/PEER que se han <strong>de</strong><br />

procesar (en el byte <strong>de</strong> mayor valor).<br />

401042 Número <strong>de</strong> solicitu<strong>de</strong>s recibidas que se han <strong>de</strong> procesar (en el byte <strong>de</strong><br />

menor valor); número <strong>de</strong> transacciones en curso (en el byte <strong>de</strong> mayor valor).<br />

401043 Tiempo <strong>de</strong> ciclo <strong>de</strong> S975 en incrementos <strong>de</strong> 10 ms.<br />

Los registros 401044 a 401045 se rellenan con la siguiente información.<br />

Registro Contenido<br />

401044 Versión <strong>de</strong>l software instalado fijo (PROMs); el número <strong>de</strong> la versión superior<br />

está en el byte <strong>de</strong> mayor valor, mientras que el número <strong>de</strong> la versión inferior<br />

está en el byte <strong>de</strong> menor valor.<br />

401045 Versión <strong>de</strong>l software <strong>de</strong> instrucciones cargables (EEPROMs); el número <strong>de</strong><br />

la versión superior está en el byte <strong>de</strong> mayor valor, mientras que el número<br />

<strong>de</strong> la versión inferior está en el byte <strong>de</strong> menor valor.<br />

710 31007526 12/2006


Presentación<br />

MMFB - Bloque <strong>de</strong> bits Modicon<br />

Motion Framework<br />

Introducción En este capítulo se <strong>de</strong>scribe el módulo MMFB.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

114<br />

Apartado Página<br />

Descripción breve 712<br />

Representación 713<br />

31007526 12/2006 711


MMFB<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

Información<br />

relacionada<br />

El bloque <strong>de</strong> funciones MMFB <strong>de</strong>fine bits <strong>de</strong> control para un eje en el área <strong>de</strong> tabla<br />

MMFSTART. Consulte p. 713 para obtener una <strong>de</strong>scripción <strong>de</strong> las funciones <strong>de</strong> bits<br />

<strong>de</strong> control. La mayor parte <strong>de</strong> estas funciones se pue<strong>de</strong> realizar mediante<br />

subrutinas, pero este método es el más eficaz.<br />

Consulte el archivo Instrucciones cargables MMFStart para <strong>ProWORX</strong> <strong>32</strong> en la<br />

carpeta Programs\Lib\Quantum <strong>de</strong>l CD <strong>de</strong> instalación <strong>de</strong> <strong>ProWORX</strong> <strong>32</strong> para<br />

obtener información más <strong>de</strong>tallada acerca <strong>de</strong>l uso <strong>de</strong> las instrucciones cargables <strong>de</strong><br />

movimiento.<br />

712 31007526 12/2006


Representación<br />

Símbolo El siguiente diagrama muestra la función MMFB.<br />

ON mueve el control<br />

datos<br />

sin utilizar<br />

sin utilizar<br />

MMFSTART<br />

registro 4X<br />

dirección <strong>de</strong>l<br />

bloque <strong>de</strong> la<br />

tabla<br />

longitud <strong>de</strong> la<br />

tabla (3)<br />

refleja el estado <strong>de</strong><br />

entrada superior<br />

sin utilizar<br />

MMFB<br />

longitud <strong>de</strong> tabla incorrecta<br />

31007526 12/2006 713


MMFB<br />

Descripción <strong>de</strong><br />

parámetros<br />

En la tabla siguiente se <strong>de</strong>scriben los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Entrada superior 0x Ninguno ON mueve los datos <strong>de</strong> control. Los datos se<br />

mueven <strong>de</strong> forma constante cuando esta<br />

entrada está activada.<br />

Nodo superior 4x INT,<br />

UINT<br />

Nodo intermedio 4x INT,<br />

UINT<br />

Dirección <strong>de</strong> la tabla <strong>de</strong> comunicación <strong>de</strong><br />

registro MMFSTART 200. Suele ser 401001.<br />

Esta dirección se pue<strong>de</strong> configurar mediante la<br />

modificación <strong>de</strong>l archivo MMFSTART.CFG<br />

<strong>de</strong>s<strong>de</strong> el controlador SERCOS <strong>de</strong> QUANTUM.<br />

Este registro hace referencia a un módulo <strong>de</strong><br />

registros que <strong>de</strong>fine todos los argumentos <strong>de</strong>l<br />

<strong>de</strong>splazamiento. Los dos últimos registros se<br />

<strong>de</strong>stinan al control <strong>de</strong> estado.<br />

Nodo inferior 4x INT El valor entero introducido en el nodo inferior<br />

especifica la longitud <strong>de</strong> la tabla. En ese caso, el<br />

número <strong>de</strong> registros en la tabla ha <strong>de</strong> ser 3.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior, excepto<br />

si el eje (contenido <strong>de</strong>l nodo superior) no es<br />

correcto o la longitud <strong>de</strong> la tabla no es dos.<br />

Salida inferior 0x Ninguno Se activa cuando la longitud <strong>de</strong>l registro no se<br />

<strong>de</strong>fine como 3.<br />

Registros En la tabla siguiente se <strong>de</strong>scriben los registros <strong>de</strong> la instrucción.<br />

Registro Tipo <strong>de</strong> datos Descripción<br />

4xxxxx INT ID <strong>de</strong>l eje.<br />

4xxxx1 INT Control <strong>de</strong> or<strong>de</strong>n bajo: bits 0–15<br />

4xxxx2 INT Control <strong>de</strong> or<strong>de</strong>n alto: bits 16–31<br />

714 31007526 12/2006


Presentación<br />

MMFE - Subrutina <strong>de</strong> parámetros<br />

extendida <strong>de</strong> Modicon Motion<br />

Framework<br />

Introducción En este capítulo se <strong>de</strong>scribe el módulo MMFE.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

115<br />

Apartado Página<br />

Descripción breve 716<br />

Representación 717<br />

31007526 12/2006 715


MMFE<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

El bloque <strong>de</strong> funciones MMFE está especialmente diseñado para ejecutar<br />

subrutinas moveImmed y moveQueue con coor<strong>de</strong>nadas establecidas. Par1<br />

especifica el tipo <strong>de</strong> movimiento (absoluto o incremental) y <strong>de</strong> EPar1 a EParN<br />

toman la posición <strong>de</strong> todos los ejes N <strong>de</strong> la coor<strong>de</strong>nada establecida. Es <strong>de</strong>cir, <strong>de</strong><br />

EparN+1 a Epar2N toman la velocidad <strong>de</strong> todos los ejes N <strong>de</strong> la coor<strong>de</strong>nada<br />

establecida, hasta un máximo <strong>de</strong> ocho ejes. Para estas subrutinas <strong>de</strong> movimiento,<br />

no se utiliza Par2 y no hay valores <strong>de</strong> retorno, aunque se incluyan en el bloque <strong>de</strong><br />

funciones para subrutinas posteriores.<br />

716 31007526 12/2006


Representación<br />

Símbolo El siguiente diagrama muestra un bloque MMFE.<br />

Descripción <strong>de</strong><br />

parámetros<br />

ON inicia la subrutina<br />

datos<br />

sin utilizar<br />

sin utilizar<br />

MMFSTART<br />

registro 4X<br />

dirección <strong>de</strong>l<br />

bloque <strong>de</strong> la<br />

tabla<br />

longitud <strong>de</strong> la<br />

tabla (47)<br />

subrutina ejecutada<br />

sin errores<br />

En la tabla siguiente se <strong>de</strong>scriben los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Nodo<br />

superior<br />

Nodo<br />

intermedio<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

MMFE<br />

subrutina ejecutada<br />

con errores (consulte el registro<br />

<strong>de</strong> errores)<br />

longitud <strong>de</strong> tabla incorrecta/<br />

timeout/revisión<br />

0x Ninguno ON inicia la subrutina. Cuando esta entrada se<br />

<strong>de</strong>sactiva, el bloque <strong>de</strong> funciones vuelve a cero y se<br />

pue<strong>de</strong> iniciar <strong>de</strong> nuevo.<br />

4x INT, UINT Dirección <strong>de</strong> la tabla <strong>de</strong> comunicación <strong>de</strong> registro<br />

MMFSTART 200. Suele ser 401001. Esta dirección<br />

se pue<strong>de</strong> configurar mediante la modificación <strong>de</strong>l<br />

archivo MMFSTART.CFG <strong>de</strong>s<strong>de</strong> el controlador<br />

SERCOS <strong>de</strong> QUANTUM.<br />

4x INT, UINT Este registro hace referencia a un módulo <strong>de</strong><br />

registros que <strong>de</strong>fine todos los argumentos y rutinas<br />

<strong>de</strong> una llamada <strong>de</strong> subrutina genérica. Los dos<br />

últimos registros se <strong>de</strong>stinan al control <strong>de</strong> estado.<br />

Nodo inferior 4x INT El valor entero introducido en el nodo inferior<br />

especifica la longitud <strong>de</strong> la tabla. En ese caso, el<br />

número <strong>de</strong> registros en la tabla ha <strong>de</strong> ser 47.<br />

Salida<br />

superior<br />

0x Ninguno Se activa cuando la llamada <strong>de</strong> subrutina ha<br />

finalizado <strong>de</strong> forma correcta.<br />

31007526 12/2006 717


MMFE<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Salida<br />

intermedia<br />

Salida<br />

inferior<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x Ninguno Se encien<strong>de</strong> cuando la llamada <strong>de</strong> subrutina ha<br />

finalizado y se ha generado un código <strong>de</strong> error en el<br />

registro 4xxx38.<br />

0x Ninguno Se activa cuando la longitud <strong>de</strong>l registro no se <strong>de</strong>fine<br />

como 47.<br />

Registros En la tabla siguiente se <strong>de</strong>scriben los registros <strong>de</strong> la instrucción.<br />

Registro Tipo <strong>de</strong> datos Descripción<br />

4xxxxx Corto Número <strong>de</strong> la subrutina que se va a ejecutar<br />

4xxxx1 Corto ID <strong>de</strong>l eje <strong>de</strong> la subrutina<br />

4xxxx2 Sin signo Primer parámetro <strong>de</strong> la subrutina<br />

4xxxx4 Sin signo Segundo parámetro <strong>de</strong> la subrutina<br />

4xxxx6 Coma flotante Tercer parámetro <strong>de</strong> la subrutina<br />

4xxxx8 Coma flotante Cuarto parámetro <strong>de</strong> la subrutina<br />

4xxx10 Coma flotante Tercer parámetro <strong>de</strong> la subrutina<br />

4xxx12 Coma flotante Cuarto parámetro <strong>de</strong> la subrutina<br />

4xxx14 Coma flotante Tercer parámetro <strong>de</strong> la subrutina<br />

4xxx16 Coma flotante Cuarto parámetro <strong>de</strong> la subrutina<br />

4xxx18 Coma flotante Tercer parámetro <strong>de</strong> la subrutina<br />

4xxx20 Coma flotante Cuarto parámetro <strong>de</strong> la subrutina<br />

4xxx22 Coma flotante Tercer parámetro <strong>de</strong> la subrutina<br />

4xxx24 Coma flotante Cuarto parámetro <strong>de</strong> la subrutina<br />

4xxx26 Coma flotante Tercer parámetro <strong>de</strong> la subrutina<br />

4xxx28 Coma flotante Cuarto parámetro <strong>de</strong> la subrutina<br />

4xxx30 Coma flotante Tercer parámetro <strong>de</strong> la subrutina<br />

4xxx<strong>32</strong> Coma flotante Cuarto parámetro <strong>de</strong> la subrutina<br />

4xxx34 Coma flotante Tercer parámetro <strong>de</strong> la subrutina<br />

4xxx36 Coma flotante Cuarto parámetro <strong>de</strong> la subrutina<br />

4xxx38 Corto Código <strong>de</strong> error generado <strong>de</strong> la subrutina<br />

4xxx39 Sin signo Primer valor <strong>de</strong> retorno <strong>de</strong> la subrutina<br />

4xxx41 Coma flotante Segundo valor <strong>de</strong> retorno <strong>de</strong> la subrutina<br />

4xxx43 Coma flotante Tercer valor <strong>de</strong> retorno <strong>de</strong> la subrutina<br />

4xxx45 Estado <strong>de</strong> función Número <strong>de</strong> estado <strong>de</strong> funcionamiento actual<br />

4xxx47 Conteo <strong>de</strong> estado Conteo <strong>de</strong> entrada <strong>de</strong> estado actual<br />

718 31007526 12/2006


Presentación<br />

MMFI - Bloque <strong>de</strong> inicialización <strong>de</strong><br />

Modicon Motion Framework<br />

Introducción En este capítulo se <strong>de</strong>scribe el bloque MMFI.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

116<br />

Apartado Página<br />

Descripción breve 720<br />

Representación 721<br />

31007526 12/2006 719


MMFI<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

Información<br />

relacionada<br />

Este bloque <strong>de</strong> funciones <strong>de</strong>fine la tabla <strong>de</strong> registros <strong>de</strong> comunicación MMFSTART.<br />

Esta tabla comienza en 41000 longitud 200. Transmite alimentación <strong>de</strong>s<strong>de</strong> la<br />

entrada 1, pero comprueba la revisión en la tabla.<br />

Consulte el archivo Instrucciones cargables MMFStart para <strong>ProWORX</strong> <strong>32</strong> en la<br />

carpeta Programs\Lib\Quantum <strong>de</strong>l CD <strong>de</strong> instalación <strong>de</strong> <strong>ProWORX</strong> <strong>32</strong> para<br />

obtener información más <strong>de</strong>tallada acerca <strong>de</strong>l uso <strong>de</strong> las instrucciones cargables <strong>de</strong><br />

movimiento.<br />

720 31007526 12/2006


Representación<br />

Símbolo El siguiente diagrama muestra un bloque MMFI.<br />

Descripción <strong>de</strong><br />

parámetros<br />

ON transmite alimentación<br />

sin utilizar<br />

sin utilizar<br />

sin utilizar<br />

dirección <strong>de</strong>l<br />

bloque <strong>de</strong> la<br />

tabla<br />

longitud <strong>de</strong> la<br />

tabla (200)<br />

refleja el estado <strong>de</strong><br />

entrada superior<br />

sin utilizar<br />

En la tabla siguiente se <strong>de</strong>scriben los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

MMFI<br />

longitud <strong>de</strong> tabla incorrecta/<br />

revisión<br />

Entrada superior 0x Ninguno ON inicia la función para comprobar la<br />

revisión MMFSTART.<br />

Nodo intermedio 4x INT, UINT Hace referencia a un módulo <strong>de</strong> 200 registros<br />

que forman el área <strong>de</strong> comunicación<br />

MMFSTART. Normalmente, esta dirección es<br />

401001, pero se pue<strong>de</strong> modificar mediante la<br />

configuración MMFSTART <strong>de</strong>s<strong>de</strong> el<br />

CONTROLADOR SERCOS.<br />

Nodo inferior 4x INT El valor entero introducido en el nodo inferior<br />

especifica la longitud <strong>de</strong> la tabla. En ese caso,<br />

el número <strong>de</strong> registros en la tabla ha <strong>de</strong> ser<br />

200.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida inferior 0x Ninguno Se activa cuando la longitud <strong>de</strong>l registro no se<br />

<strong>de</strong>fine como 200.<br />

31007526 12/2006 721


MMFI<br />

Registros En la tabla siguiente se muestran los registros <strong>de</strong> la instrucción.<br />

Registro Información Tipo <strong>de</strong><br />

datos<br />

Descripción<br />

base+001:002 RingControl UDINT Indica activación, <strong>de</strong>tención, en espera, etc.<br />

base+003 WatchDogCont INT Empleado por el controlador y el PLC para<br />

asegurarse <strong>de</strong> que el otro está admitido.<br />

base+004 Debug INT Se emplea para enviar mensajes <strong>de</strong><br />

<strong>de</strong>puración.<br />

base+005 SubNumber INT Indica el número <strong>de</strong> subrutina.<br />

base+006 AxisID INT Aplica una subrutina a este eje <strong>de</strong> movimiento.<br />

base+007:010 Parameter 1...2 UDINT Indica los parámetros <strong>de</strong> esta subrutina (dos<br />

enteros).<br />

base+011:042 Parameter 3...18 REAL Indica los parámetros <strong>de</strong> esta subrutina (16<br />

comas flotantes).<br />

base+043:050 (Reservado) (ocho palabras)<br />

base+051:066 SA1..8Control UDINT Indica los bits <strong>de</strong> control para cada eje<br />

SERCOS<br />

base+067:074 IA1..4Control UDINT Indica los bits <strong>de</strong> control para cada eje<br />

imaginario.<br />

base+075:082 CS1..4Control UDINT Indica los bits <strong>de</strong> control para cada coor<strong>de</strong>nada<br />

establecida.<br />

base+083:090 FS1..4Control UDINT Indica los bits <strong>de</strong> control para cada seguidor<br />

establecido.<br />

base+091 USubNumber INT Indica el número <strong>de</strong> subrutina <strong>de</strong> usuario.<br />

base+092 UAxisID INT Aplica una subrutina <strong>de</strong> usuario a este eje <strong>de</strong><br />

movimiento.<br />

base+93:096 UParameter1...2 UDINT Indica los parámetros <strong>de</strong> usuario <strong>de</strong> esta<br />

subrutina (dos enteros).<br />

base+97:100 UParameter3...4 REAL Parámetros <strong>de</strong> usuario <strong>de</strong> esta subrutina (dos<br />

comas flotantes).<br />

base+101:102 RingStatus UDINT Indica error, activación, en espera, fin <strong>de</strong> perfil,<br />

en posición<br />

base+103 WatchDogState INT Refleja lo que está escrito en WatchDogCont<br />

base+104 NumberOfAxes INT Indica cuántos ejes SERCOS se han<br />

configurado<br />

base+105 FaultAxis INT Indica qué eje ha fallado.<br />

base+106 FaultCo<strong>de</strong> INT Indica qué fallo se ha producido<br />

base+107 WarnAxis INT Indica qué eje tiene un problema<br />

722 31007526 12/2006


Registro Información Tipo <strong>de</strong><br />

datos<br />

Descripción<br />

MMFI<br />

base+108 WarnCo<strong>de</strong> INT Indica qué advertencia se ha producido<br />

base+109 SubNumEcho INT Refleja SubNumber cuando finaliza el código<br />

<strong>de</strong> subrutina.<br />

base+110 AxisIDEcho INT Refleja AxisID<br />

base+111 Error INT Indica el número <strong>de</strong> errores <strong>de</strong> movimiento <strong>de</strong><br />

la subrutina.<br />

base+112:113 Return1 UDINT Indica el valor <strong>de</strong> retorno <strong>de</strong> la subrutina (un<br />

entero).<br />

base+114:117 Return2...3 REAL Indica el valor <strong>de</strong> retorno <strong>de</strong> la subrutina (dos<br />

comas flotantes).<br />

base+118 Revision INT Indica el número <strong>de</strong> revisión <strong>de</strong> la interfase.<br />

base+119:134 SA1..8Position REAL Indica la posición <strong>de</strong> ocho ejes SERCOS<br />

base+135:142 IA1..4Position REAL Indica la posición <strong>de</strong> cuatro ejes imaginarios.<br />

base+143:150 RA1..4Position REAL Indica la posición <strong>de</strong> cuatro ejes remotos.<br />

base+151:166 SA1..8Status UDINT Indica los bits <strong>de</strong> estado <strong>de</strong> cada eje SERCOS<br />

base+167:174 IA1..45Status UDINT Indica los bits <strong>de</strong> estado para cada eje<br />

imaginario.<br />

base+175:182 CS1..45Status UDINT Indica los bits <strong>de</strong> estado para cada coor<strong>de</strong>nada<br />

establecida.<br />

base+183:190 FS1..45Status UDINT Indica los bits <strong>de</strong> estado para cada seguidor<br />

establecido.<br />

base+191 USubNumEcho INT Refleja el SubNumber <strong>de</strong> usuario cuando<br />

finaliza el código <strong>de</strong> subrutina.<br />

base+192 UAxisIDEcho INT Refleja el AxisID <strong>de</strong> usuario.<br />

base+193 UError INT Indica el número <strong>de</strong> errores <strong>de</strong> movimiento <strong>de</strong><br />

la subrutina <strong>de</strong> usuario.<br />

base+194 UReturn1 UDINT Indica el valor <strong>de</strong> retorno <strong>de</strong> la subrutina <strong>de</strong><br />

usuario (un entero).<br />

base+196:199 UReturn2..3 REAL Indica el valor <strong>de</strong> la subrutina <strong>de</strong> usuario (dos<br />

comas flotantes).<br />

31007526 12/2006 723


MMFI<br />

724 31007526 12/2006


Presentación<br />

MMFS - Bloque <strong>de</strong> subrutinas <strong>de</strong><br />

Modicon Motion Framework<br />

Introducción En este capítulo se <strong>de</strong>scribe el bloque MMFS.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

117<br />

Apartado Página<br />

Descripción breve 726<br />

Representación 727<br />

31007526 12/2006 725


MMFS<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

Información<br />

relacionada<br />

Este bloque <strong>de</strong> funciones genera una subrutina MMFSTART mediante<br />

<strong>de</strong>voluciones y parámetros estándar. Se pue<strong>de</strong> emplear para ejecutar cualquier<br />

subrutina estándar MMFSTART excepto los movimientos hacia las coor<strong>de</strong>nadas<br />

establecidas. Estas subrutinas proporcionan una interfase común para las unida<strong>de</strong>s<br />

SERCOS.<br />

Consulte el archivo Instrucciones cargables MMFStart para <strong>ProWORX</strong> <strong>32</strong> en la<br />

carpeta Programs\Lib\Quantum <strong>de</strong>l CD <strong>de</strong> instalación <strong>de</strong> <strong>ProWORX</strong> <strong>32</strong> para<br />

obtener información más <strong>de</strong>tallada acerca <strong>de</strong>l uso <strong>de</strong> las instrucciones cargables <strong>de</strong><br />

movimiento.<br />

726 31007526 12/2006


Representación<br />

Símbolo El siguiente diagrama muestra un bloque MMFS.<br />

Descripción <strong>de</strong><br />

parámetros<br />

ON inicia la subrutina<br />

sin utilizar<br />

sin utilizar<br />

subrutina ejecutada<br />

sin errores<br />

En la tabla siguiente se <strong>de</strong>scriben los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

MMFSTART<br />

registro 4X<br />

dirección <strong>de</strong>l<br />

bloque <strong>de</strong> la<br />

tabla<br />

longitud <strong>de</strong> la<br />

tabla (19)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

MMFS<br />

subrutina ejecutada<br />

con errores (consulte el registro<br />

<strong>de</strong> errores)<br />

longitud <strong>de</strong> tabla incorrecta/<br />

timeout/revisión<br />

0x Ninguno ON inicia la subrutina. Cuando esta entrada<br />

se <strong>de</strong>sactiva, el bloque <strong>de</strong> funciones vuelve a<br />

cero y se pue<strong>de</strong> iniciar <strong>de</strong> nuevo.<br />

Nodo superior 4x INT, UINT Dirección <strong>de</strong> la tabla <strong>de</strong> comunicación <strong>de</strong><br />

registro MMFSTART 200. Suele ser 401001.<br />

Esta dirección se pue<strong>de</strong> configurar mediante<br />

la modificación <strong>de</strong>l archivo MMFSTART.CFG<br />

<strong>de</strong>s<strong>de</strong> el controlador SERCOS <strong>de</strong><br />

QUANTUM.<br />

Nodo<br />

intermedio<br />

4x INT, UINT Este registro hace referencia a un módulo <strong>de</strong><br />

registros que <strong>de</strong>fine todos los argumentos y<br />

rutinas <strong>de</strong> una llamada <strong>de</strong> subrutina genérica.<br />

Los dos últimos registros se <strong>de</strong>stinan al<br />

control <strong>de</strong> estado.<br />

31007526 12/2006 727


MMFS<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Nodo inferior 4x INT El valor entero introducido en el nodo inferior<br />

especifica la longitud <strong>de</strong> la tabla. En ese caso,<br />

el número <strong>de</strong> registros en la tabla ha <strong>de</strong> ser<br />

19.<br />

Salida superior 0x Ninguno Se activa cuando la llamada <strong>de</strong> subrutina ha<br />

finalizado <strong>de</strong> forma correcta.<br />

Nota: Las salidas superior e intermedia se<br />

ponen a cero al <strong>de</strong>sactivar la entrada superior.<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x Ninguno Se encien<strong>de</strong> cuando la llamada <strong>de</strong> subrutina<br />

ha finalizado y se ha generado un código <strong>de</strong><br />

error en el registro 4xxx10.<br />

Salida inferior 0x Ninguno Se activa cuando la longitud <strong>de</strong>l registro no se<br />

<strong>de</strong>fine como 19.<br />

Registros En la tabla siguiente se <strong>de</strong>scriben los registros <strong>de</strong> la instrucción.<br />

Registro Tipo <strong>de</strong> datos Descripción<br />

4xxxxx Corto Número <strong>de</strong> la subrutina que se va a ejecutar<br />

4xxxx1 Corto ID <strong>de</strong>l eje <strong>de</strong> la subrutina<br />

4xxxx2 Sin signo Primer parámetro <strong>de</strong> la subrutina<br />

4xxxx4 Sin signo Segundo parámetro <strong>de</strong> la subrutina<br />

4xxxx6 Coma flotante Tercer parámetro <strong>de</strong> la subrutina<br />

4xxxx8 Coma flotante Cuarto parámetro <strong>de</strong> la subrutina<br />

4xxx10 Corto Código <strong>de</strong> error generado <strong>de</strong> la subrutina<br />

4xxx11 Sin signo Primer valor <strong>de</strong> retorno <strong>de</strong> la subrutina<br />

4xxx13 Coma flotante Segundo valor <strong>de</strong> retorno <strong>de</strong> la subrutina<br />

4xxx15 Coma flotante Tercer valor <strong>de</strong> retorno <strong>de</strong> la subrutina<br />

4xxx17 Corto Número <strong>de</strong> estado <strong>de</strong> funcionamiento actual<br />

4xxx18 Corto Conteo <strong>de</strong> entrada <strong>de</strong> estado actual<br />

728 31007526 12/2006


Presentación<br />

MOVE - Movimiento absoluto<br />

Introducción En este capítulo se <strong>de</strong>scribe el bloque MOVE.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

118<br />

Apartado Página<br />

Descripción breve 730<br />

Representación 731<br />

31007526 12/2006 729


MOVE<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

Información<br />

relacionada<br />

Este bloque <strong>de</strong> funciones emite un movimiento absoluto inmediato MMFStart en el<br />

eje especificado. La velocidad y la posición se especifican en la tabla asociada.<br />

Consulte el archivo Instrucciones cargables MMFStart para <strong>ProWORX</strong> <strong>32</strong> en la<br />

carpeta Programs\Lib\Quantum <strong>de</strong>l CD <strong>de</strong> instalación <strong>de</strong> <strong>ProWORX</strong> <strong>32</strong> para<br />

obtener información más <strong>de</strong>tallada acerca <strong>de</strong>l uso <strong>de</strong> las instrucciones cargables <strong>de</strong><br />

movimiento.<br />

730 31007526 12/2006


Representación<br />

Símbolo El siguiente diagrama muestra un bloque MOVE.<br />

Descripción <strong>de</strong><br />

parámetros<br />

ON inicia el movimiento<br />

sin utilizar<br />

sin utilizar<br />

movimiento iniciado<br />

sin errores<br />

En la tabla siguiente se <strong>de</strong>scriben los parámetros <strong>de</strong> la instrucción.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Tipo <strong>de</strong><br />

datos<br />

MMFSTART<br />

registro 4X<br />

dirección <strong>de</strong>l<br />

bloque <strong>de</strong> la<br />

tabla<br />

longitud <strong>de</strong> la<br />

tabla (8)<br />

Significado<br />

MOVE<br />

movimiento no iniciado<br />

error (consulte el registro<br />

<strong>de</strong> errores)<br />

longitud <strong>de</strong> tabla incorrecta/<br />

revisión<br />

0x Ninguno ON inicia el movimiento incremental. Cuando<br />

esta entrada se <strong>de</strong>sactiva, el bloque <strong>de</strong><br />

funciones vuelve a cero y se pue<strong>de</strong> iniciar <strong>de</strong><br />

nuevo.<br />

Nodo superior 4x INT, UINT Dirección <strong>de</strong> la tabla <strong>de</strong> comunicación <strong>de</strong><br />

registro MMFSTART 200. Suele ser 401001.<br />

Esta dirección se pue<strong>de</strong> configurar mediante<br />

la modificación <strong>de</strong>l archivo MMFSTART.CFG<br />

<strong>de</strong>s<strong>de</strong> el controlador SERCOS <strong>de</strong><br />

QUANTUM.<br />

Nodo<br />

intermedio<br />

4x INT, UINT Este registro hace referencia a un módulo <strong>de</strong><br />

registros que <strong>de</strong>fine todos los argumentos <strong>de</strong><br />

la configuración. Los dos últimos registros se<br />

<strong>de</strong>stinan al control <strong>de</strong> estado.<br />

31007526 12/2006 731


MOVE<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Nodo inferior 4x INT El valor entero introducido en el nodo inferior<br />

especifica la longitud <strong>de</strong> la tabla. En ese caso,<br />

el número <strong>de</strong> registros en la tabla ha <strong>de</strong> ser 8.<br />

Salida superior 0x Ninguno Se activa cuando el inicio <strong>de</strong>l movimiento ha<br />

finalizado <strong>de</strong> forma correcta.<br />

Nota: Las salidas superior e intermedia se<br />

ponen a cero al <strong>de</strong>sactivar la entrada superior.<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x Ninguno Se encien<strong>de</strong> cuando el movimiento no se<br />

inicia y se genera un código <strong>de</strong> error en el<br />

registro 4xxxx5.<br />

Salida inferior 0x Ninguno Se activa cuando la longitud <strong>de</strong>l registro no se<br />

<strong>de</strong>fine como 8.<br />

Registros En la tabla siguiente se <strong>de</strong>scriben los registros <strong>de</strong> la instrucción.<br />

Registro Tipo <strong>de</strong> datos Descripción<br />

4xxxxx Corto ID <strong>de</strong>l eje <strong>de</strong>l movimiento absoluto.<br />

4xxxx2 Coma flotante Posición <strong>de</strong> <strong>de</strong>stino <strong>de</strong>l movimiento absoluto.<br />

4xxxx3 Coma flotante Velocidad <strong>de</strong>l movimiento absoluto.<br />

4xxxx5 Corto Error generado al iniciar el movimiento.<br />

4xxxx6 Corto Número <strong>de</strong> estado <strong>de</strong> funcionamiento actual<br />

4xxxx7 Corto Conteo <strong>de</strong> entrada <strong>de</strong> estado actual<br />

7<strong>32</strong> 31007526 12/2006


Presentación<br />

MRTM: Módulo <strong>de</strong> transferencia<br />

multirregistro<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción MRTM.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

119<br />

Apartado Página<br />

Descripción breve 734<br />

Representación 735<br />

Descripción <strong>de</strong> los parámetros 737<br />

31007526 12/2006 733


MRTM: Módulo <strong>de</strong> transferencia multirregistro<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción sólo estará disponible si ha expandido e instalado las<br />

instrucciones cargables DX; encontrará más información en p. 49.<br />

La instrucción MRTM se utiliza para transferir <strong>bloques</strong> <strong>de</strong> registros <strong>de</strong> salida <strong>de</strong>s<strong>de</strong><br />

la tabla <strong>de</strong> programa al bloque <strong>de</strong> comando, un grupo <strong>de</strong> registros <strong>de</strong> salida. Para<br />

comprobar cada transferencia <strong>de</strong> <strong>bloques</strong>, se <strong>de</strong>volverá a un registro <strong>de</strong> entrada un<br />

reflejo <strong>de</strong> los datos contenidos en el primer registro <strong>de</strong> salida.<br />

734 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

transferir<br />

restablecer<br />

Longitud: <strong>de</strong> 1 a 27<br />

tabla <strong>de</strong><br />

programa<br />

tabla <strong>de</strong><br />

control<br />

longitud <strong>de</strong><br />

MRTM<br />

MRTM: Módulo <strong>de</strong> transferencia multirregistro<br />

activa<br />

transferencia completa<br />

pointer ≥ fin <strong>de</strong> tabla<br />

31007526 12/2006 735


MRTM: Módulo <strong>de</strong> transferencia multirregistro<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = habilita la operación.<br />

0x, 1x Ninguno ON = se transfiere un bloque <strong>de</strong> la<br />

instrucción, el pointer <strong>de</strong> la tabla <strong>de</strong> control<br />

se incrementa el valor <strong>de</strong> la «longitud».<br />

Entrada inferior 0x, 1x Ninguno ON = restablecer.<br />

Tabla <strong>de</strong><br />

programa<br />

(nodo superior)<br />

Tabla <strong>de</strong> control<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

0x, 1x, 3x, 4x INT, UINT,<br />

WORD<br />

3x, 4x INT, UINT,<br />

WORD<br />

Primer registro <strong>de</strong> la tabla <strong>de</strong> programa. El<br />

dígito 4 se asume como el dígito <strong>de</strong> mayor<br />

valor.<br />

Primer registro <strong>de</strong> la tabla <strong>de</strong> control. El<br />

dígito 4 se asume como el dígito <strong>de</strong> mayor<br />

valor.<br />

INT, UINT Número <strong>de</strong> registros trasladados <strong>de</strong>s<strong>de</strong> la<br />

tabla <strong>de</strong> programa durante cada<br />

transferencia; rango: <strong>de</strong> 1 a 127<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno El bloque <strong>de</strong> la instrucción se transfiere al<br />

bloque <strong>de</strong> comando (sólo permanece<br />

durante el resto <strong>de</strong>l ciclo actual).<br />

Salida inferior 0x Ninguno ON = valor <strong>de</strong>l pointer ≥ fin <strong>de</strong> tabla<br />

736 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Modo <strong>de</strong><br />

funcionamiento<br />

MRTM: Módulo <strong>de</strong> transferencia multirregistro<br />

La instrucción MRTM transfiere <strong>bloques</strong> contiguos <strong>de</strong> hasta 127 registros <strong>de</strong>s<strong>de</strong> una<br />

tabla <strong>de</strong> <strong>bloques</strong> <strong>de</strong> registros hasta un área <strong>de</strong> registros <strong>de</strong> salida con tamaño <strong>de</strong><br />

bloque. El bloque <strong>de</strong> función MRTM controla el funcionamiento <strong>de</strong>l módulo <strong>de</strong> la<br />

siguiente forma:<br />

Si se aplica<br />

potencia a...<br />

Entonces ...<br />

Entrada superior El bloque <strong>de</strong> función se habilitará para las transferencias <strong>de</strong> datos.<br />

Nota: Durante el arranque inicial, se <strong>de</strong>berá aplicar potencia a la entrada<br />

inferior.<br />

Entrada<br />

intermedia<br />

El bloque <strong>de</strong> función intentará transferir un bloque <strong>de</strong> instrucciones.<br />

Antes <strong>de</strong> que pueda tener lugar una transferencia, se evaluará el registro<br />

<strong>de</strong>l eco. El bit más significativo (MSB) <strong>de</strong>l registro <strong>de</strong> eco no se evaluará,<br />

esto sólo se realizará <strong>de</strong>l bit 0 al 14. La discordancia en el eco es<br />

condición para impedir la transferencia. Si se permite realizar la<br />

transferencia, se transferirá un bloque <strong>de</strong> instrucción <strong>de</strong> la tabla<br />

comenzando por el pointer <strong>de</strong> la tabla.<br />

El pointer <strong>de</strong> la tabla <strong>de</strong> control avanzará entonces. Si el nuevo valor <strong>de</strong>l<br />

pointer es igual o mayor que el final <strong>de</strong> la tabla, se activará la salida<br />

inferior. Un valor <strong>de</strong> pointer <strong>de</strong> la tabla menor que el final <strong>de</strong> la tabla<br />

<strong>de</strong>sactivará la salida.<br />

Entrada inferior El bloque <strong>de</strong> función se restablecerá. El pointer <strong>de</strong> la tabla <strong>de</strong> control se<br />

volverá a cargar al inicio <strong>de</strong>l valor <strong>de</strong> comandos <strong>de</strong>s<strong>de</strong> el<br />

encabezamiento <strong>de</strong> la tabla <strong>de</strong> programa.<br />

31007526 12/2006 737


MRTM: Módulo <strong>de</strong> transferencia multirregistro<br />

Descripción <strong>de</strong><br />

parámetros.<br />

Incrementar<br />

paso (entrada<br />

intermedia)<br />

Descripción<br />

<strong>de</strong> parámetros<br />

Restablecer<br />

pointer<br />

(asiento inferior)<br />

Cuando se aplica potencia, esta entrada intentará transferir un bloque <strong>de</strong><br />

instrucción. Antes <strong>de</strong> que pueda tener lugar una transferencia, se evaluará el<br />

registro <strong>de</strong>l eco. El bit más significativo (MSB) <strong>de</strong>l registro <strong>de</strong> eco no se evaluará,<br />

esto sólo se realizará <strong>de</strong>l bit 0 al 14. La discordancia en el eco es condición para<br />

impedir la transferencia. Si se permite realizar una transferencia, se transfiere un<br />

bloque <strong>de</strong> instrucciones <strong>de</strong> la tabla <strong>de</strong>l programa que comienza en el pointer <strong>de</strong> la<br />

tabla. El pointer <strong>de</strong> la tabla <strong>de</strong> control se incrementa por el valor "Longitud"<br />

(visualizado en el asiento inferior).<br />

Nota: El bloque <strong>de</strong> función MRTM está diseñado para aceptar las indicaciones <strong>de</strong><br />

fallo <strong>de</strong> los módulos <strong>de</strong> E/S, que refleja los comandos válidos en el controlador,<br />

pero <strong>de</strong>fine un bit que indica la aparición <strong>de</strong> un fallo. Este método <strong>de</strong> indicación <strong>de</strong><br />

fallo es común para productos móviles y para la mayoría <strong>de</strong>l resto <strong>de</strong> módulos <strong>de</strong><br />

E/S. Si se está utilizando un módulo que indica algún otro tipo <strong>de</strong> estado <strong>de</strong> error,<br />

especialmente si el eco no es el <strong>de</strong> un comando válido, se <strong>de</strong>berá tener especial<br />

cuidado al escribir la lógica <strong>de</strong> tratamiento <strong>de</strong> errores para el lad<strong>de</strong>r logic para<br />

asegurarse <strong>de</strong> que se ha <strong>de</strong>tectado el error. Si esto no se realizara<br />

satisfactoriamente, el módulo se podría bloquear o el MRTM podría funcionar <strong>de</strong><br />

manera incorrecta.<br />

Si se aplica potencia a esta entrada, se restablecerá el bloque <strong>de</strong> función. El pointer<br />

<strong>de</strong> la tabla <strong>de</strong> control se volverá a cargar al inicio <strong>de</strong>l valor <strong>de</strong> comandos <strong>de</strong>s<strong>de</strong> el<br />

encabezamiento <strong>de</strong> la tabla <strong>de</strong> programa.<br />

738 31007526 12/2006


Presentación<br />

MSPX (Seriplex)<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción MSPX.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

120<br />

Apartado Página<br />

Descripción breve 740<br />

Representación 741<br />

31007526 12/2006 739


MSPX (Seriplex)<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

La instrucción MSPX lee y escribe bits <strong>de</strong>ntro <strong>de</strong> los registros <strong>de</strong> la unidad base.<br />

El nodo superior <strong>de</strong> la instrucción MSPX representa el número <strong>de</strong> subfunción<br />

interno. A este nodo se le pue<strong>de</strong> asignar un valor constante <strong>de</strong>cimal <strong>de</strong> <strong>32</strong> o un<br />

registro 4xxxx que contenga el valor <strong>32</strong>.<br />

El nodo intermedio representa la posición <strong>de</strong>l registro 4xxxx <strong>de</strong> inicio para la unidad<br />

base <strong>de</strong> interfase SERIPLEX-MOMENTUM.<br />

El nodo inferior se interpreta como un offset numérico <strong>de</strong>s<strong>de</strong> 3.000 que indica el<br />

primer registro <strong>de</strong> entrada 3xxxx asignado a la unidad base <strong>de</strong> interfase. El valor <strong>de</strong>l<br />

nodo inferior especifica la posición <strong>de</strong>l registro <strong>de</strong> estado <strong>de</strong> la unidad base.<br />

740 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

run/stop bus<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

activa<br />

MSPX (Seriplex)<br />

31007526 12/2006 741<br />

<strong>32</strong><br />

registro<br />

offset<br />

MSPX<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

fallo<br />

error<br />

0x, 1x Ninguno La entrada Block Enable/Disable activa y bloquea la<br />

operación <strong>de</strong>l bloque MSPX. Cuando la lógica<br />

asociada es TRUE, se activa la entrada superior y<br />

se ejecutan las instrucciones <strong>de</strong>l bloque. La<br />

activación o bloqueo <strong>de</strong>l bloque no afecta a los<br />

valores <strong>de</strong> los registros <strong>de</strong> entrada y salida <strong>de</strong> la<br />

unidad base.<br />

0x, 1x Ninguno La entrada Run/Stop Bus regula el funcionamiento<br />

<strong>de</strong>l bus Seriplex por medio <strong>de</strong>l bit <strong>de</strong> ejecución/<br />

parada que se encuentra en el registro <strong>de</strong> control <strong>de</strong><br />

la unidad base. El bit <strong>de</strong> ejecución/parada recibe el<br />

valor 1 cuando la lógica asociada es TRUE y se<br />

pone a 0 cuando la lógica es FALSE. Los<br />

parámetros <strong>de</strong> esta entrada no <strong>de</strong>ben modificarse<br />

mientras esté habilitada, ya que, <strong>de</strong> lo contrario, el<br />

bit <strong>de</strong> ejecución/parada dará lugar a un fallo <strong>de</strong><br />

configuración.


MSPX (Seriplex)<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

<strong>32</strong><br />

(nodo<br />

superior)<br />

Registro<br />

(nodo<br />

intermedio)<br />

Offset<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Salida<br />

intermedia<br />

Salida<br />

inferior<br />

Tipo <strong>de</strong><br />

datos<br />

INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

3x INT,<br />

UINT<br />

Significado<br />

Representa el número <strong>de</strong> subfunción interna. A este<br />

nodo se le pue<strong>de</strong> asignar un valor constante<br />

<strong>de</strong>cimal <strong>de</strong> <strong>32</strong> o un registro 4xxxx que contenga el<br />

valor <strong>32</strong>.<br />

Representa la posición <strong>de</strong>l registro 4xxxx <strong>de</strong> inicio<br />

para la unidad base <strong>de</strong> interfase SERIPLEX-<br />

MOMENTUM.<br />

Se interpreta como un offset numérico <strong>de</strong>s<strong>de</strong> 3.000<br />

que indica el primer registro <strong>de</strong> entrada 3xxxx<br />

asignado a la unidad base <strong>de</strong> interfase. El valor <strong>de</strong>l<br />

nodo inferior especifica la posición <strong>de</strong>l registro <strong>de</strong><br />

estado <strong>de</strong> la unidad base.<br />

0x Ninguno La salida Bus Running Indicator notifica si el bus<br />

Seriplex está funcionando. Si el bit <strong>de</strong><br />

funcionamiento <strong>de</strong> bus está activo, la salida será<br />

TRUE y el bus Seriplex se encontrará funcionando<br />

correctamente, pero si el bit está inactivo, la salida<br />

será FALSE.<br />

0x Ninguno La salida Fault notifica si la instrucción MSPX ha<br />

sufrido una condición <strong>de</strong> fallo que no sea un fallo <strong>de</strong><br />

configuración. Esto se producirá si alguno <strong>de</strong> los<br />

siguientes registros <strong>de</strong> estado está en ON: fallo <strong>de</strong><br />

bus (bit 3); fallo <strong>de</strong> MOMENTUM (bit 4); error CDR<br />

(bit 5). La <strong>de</strong>scripción <strong>de</strong>tallada <strong>de</strong>l fallo <strong>de</strong>tectado<br />

se pue<strong>de</strong> <strong>de</strong>terminar leyendo el registro <strong>de</strong> estado<br />

<strong>de</strong> la unidad base.<br />

0x Ninguno La salida Config Error indica que se ha producido<br />

un error <strong>de</strong> configuración; su estado se explica en<br />

el registro <strong>de</strong> estado <strong>de</strong> la unidad base. Cuando el<br />

bit <strong>de</strong> fallo <strong>de</strong> configuración está activo, la salida<br />

pasa al estado TRUE e indica que se ha producido<br />

un intento no válido al escribir en el registro <strong>de</strong><br />

control <strong>de</strong> la unidad base.<br />

742 31007526 12/2006


Presentación<br />

MSTR: Maestro<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción MSTR.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

121<br />

Apartado Página<br />

Descripción breve 744<br />

Representación 745<br />

Descripción <strong>de</strong> los parámetros 748<br />

Operación MSTR <strong>de</strong> escritura 752<br />

Operación MSTR <strong>de</strong> lectura 754<br />

Operación MSTR <strong>de</strong> obtención <strong>de</strong> estadísticas locales 756<br />

Operación MSTR <strong>de</strong> borrado <strong>de</strong> estadísticas locales 758<br />

Operación MSTR <strong>de</strong> escritura <strong>de</strong> datos globales 760<br />

Operación MSTR <strong>de</strong> lectura <strong>de</strong> datos globales 761<br />

Operación MSTR <strong>de</strong> obtención <strong>de</strong> estadísticas remotas 762<br />

Operación MSTR <strong>de</strong> borrado <strong>de</strong> estadísticas remotas 764<br />

Operación MSTR <strong>de</strong> estado funcional <strong>de</strong> Peer Cop 766<br />

Operación MSTR <strong>de</strong> reinicio <strong>de</strong> módulo opcional 769<br />

Operación MSTR <strong>de</strong> lectura <strong>de</strong> CTE (tabla <strong>de</strong> extensión <strong>de</strong> configuración) 770<br />

Operación MSTR <strong>de</strong> escritura en CTE (tabla <strong>de</strong> extensión <strong>de</strong> configuración) 772<br />

Estadísticas <strong>de</strong> red Modbus Plus 774<br />

Estadísticas Ethernet TCP/IP 779<br />

Errores <strong>de</strong> ejecución 780<br />

Códigos <strong>de</strong> error Modbus Plus y Ethernet SY/MAX 781<br />

Códigos <strong>de</strong> error específicos <strong>de</strong> SY/MAX 783<br />

Códigos <strong>de</strong> error Ethernet TCP/IP 785<br />

Códigos <strong>de</strong> error CTE para Ethernet SY/MAX y TCP/IP 788<br />

31007526 12/2006 743


MSTR: Maestro<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Los PLC que permiten trabajar en red a través <strong>de</strong> Modbus Plus y Ethernet tienen<br />

una instrucción especial MSTR (master) con la que los participantes en una red<br />

pue<strong>de</strong>n iniciar transacciones <strong>de</strong> mensajes.<br />

La instrucción MSTR permite iniciar una <strong>de</strong> las 12 operaciones <strong>de</strong> comunicación en<br />

red posibles a través <strong>de</strong> la red.<br />

Operación MSTR <strong>de</strong> lectura<br />

Operación MSTR <strong>de</strong> escritura<br />

Operación MSTR <strong>de</strong> obtención <strong>de</strong> estadísticas locales<br />

Operación MSTR <strong>de</strong> borrado <strong>de</strong> estadísticas locales<br />

Operación MSTR <strong>de</strong> escritura <strong>de</strong> datos globales<br />

Operación MSTR <strong>de</strong> lectura <strong>de</strong> datos globales<br />

Operación MSTR <strong>de</strong> obtención <strong>de</strong> estadísticas remotas<br />

Operación MSTR <strong>de</strong> borrado <strong>de</strong> estadísticas remotas<br />

Operación MSTR <strong>de</strong> estado funcional <strong>de</strong> Peer Cop<br />

Operación MSTR para reiniciar módulo opcional<br />

Operación MSTR <strong>de</strong> lectura CTE (tabla <strong>de</strong> extensión <strong>de</strong> configuración)<br />

Operación MSTR <strong>de</strong> escritura CTE (tabla <strong>de</strong> extensión <strong>de</strong> configuración)<br />

744 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

cancelación<br />

Para obtener más información, consulte p. 748.<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

control<br />

área <strong>de</strong><br />

datos<br />

longitud <strong>de</strong><br />

MSTR<br />

Tipo <strong>de</strong><br />

datos<br />

activa<br />

MSTR: Maestro<br />

31007526 12/2006 745<br />

error<br />

Significado<br />

completa<br />

Entrada superior 0x, 1x Ninguno ON = habilita la operación MSTR<br />

seleccionada.<br />

Entrada<br />

intermedia<br />

0x, 1x Ninguno ON = finaliza la operación MSTR activa.<br />

Entrada inferior 0x, 1x Ninguno Nota: Sólo disponible para M1E:<br />

ON = el puerto TCP se mantendrá abierto.<br />

Bloque <strong>de</strong> control<br />

(nodo superior)<br />

Área <strong>de</strong> datos<br />

(nodo intermedio)<br />

Longitud<br />

(nodo inferior)<br />

4x INT, UINT Bloque <strong>de</strong> control (es el primero <strong>de</strong> varios<br />

registros en espera [<strong>de</strong>pendientes <strong>de</strong> la red]<br />

contiguos)<br />

4x INT, UINT Área <strong>de</strong> datos (origen o <strong>de</strong>stino en función<br />

<strong>de</strong> la operación seleccionada)<br />

INT Longitud <strong>de</strong>l área <strong>de</strong> datos (número máximo<br />

<strong>de</strong> registros), rango: 1...100<br />

Salida superior 0x Ninguno ON cuando la instrucción está activa (refleja<br />

el estado <strong>de</strong> la entrada superior)


MSTR: Maestro<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Salida intermedia 0x Ninguno ON si la operación MSTR se <strong>de</strong>tiene antes<br />

<strong>de</strong> finalizar (refleja el estado <strong>de</strong> la entrada<br />

intermedia)<br />

Salida inferior 0x Ninguno ON = operación correcta.<br />

Entrada inferior Con las versiones 1.20 y posteriores <strong>de</strong> <strong>de</strong> exec. 984LL, la alimentación se aplica a<br />

la entrada inferior <strong>de</strong>l bloque MSTR. Junto con la entrada <strong>de</strong> habilitación superior,<br />

esta acción hace que la conexión TCP permanezca abierta. Una vez establecida,<br />

solo se transmiten a la Ethernet los comandos Modbus y paquetes <strong>de</strong> respuesta. Si<br />

embargo, no se pue<strong>de</strong> especificar la frecuencia <strong>de</strong> repetición. Transmite tan rápido<br />

como lo permiten la exploración y el servidor <strong>de</strong> <strong>de</strong>stino. No se permite realizar<br />

cambios dinámicos al bloque <strong>de</strong> control hasta que se active la entrada <strong>de</strong><br />

habilitación (superior).<br />

Ejemplo <strong>de</strong> bloque <strong>de</strong> función 984LL para el funcionamiento <strong>de</strong> las conexiones<br />

abiertas<br />

1<br />

2<br />

3<br />

000007<br />

Tipo <strong>de</strong><br />

datos<br />

1 2 3<br />

400001<br />

400021<br />

MSTR<br />

N.º 10<br />

Significado<br />

746 31007526 12/2006


Bloque <strong>de</strong><br />

función IEC<br />

MSTR<br />

MSTR: Maestro<br />

Se ha añadido una nueva función a las versiones 1.21 y posteriores <strong>de</strong> IEC exec.<br />

mediante el establecimiento <strong>de</strong> un bit en el Slot_ID <strong>de</strong>l EFB TCP_IP_ADR. La<br />

activación <strong>de</strong> este bit <strong>de</strong> repetición, junto con el funcionamiento <strong>de</strong> TCP/IP, hace<br />

que la conexión TCP permanezca abierta. Una vez establecida la conexión, sólo se<br />

transmiten a la red Ethernet los paquetes <strong>de</strong> respuesta y comandos Modbus. La<br />

única diferencia es que la frecuencia <strong>de</strong> repetición no pue<strong>de</strong> especificarse. Va tan<br />

rápido como lo permiten la exploración y el servidor <strong>de</strong> <strong>de</strong>stino.<br />

El Slot_ID <strong>de</strong>l EFB TCP_IP_ADR tiene un uso ampliado:<br />

Bit 0 = 0 funcionamiento <strong>de</strong> MBP<br />

Bit 0 = 1 funcionamiento <strong>de</strong> TCP/IP<br />

Bit 1 = 0 El puerto TCP se cerrará cuando finalice la transacción (como antes).<br />

Bit 1 = 1 El puerto TCP se mantendrá abierto.<br />

Los bits <strong>de</strong> 2 a 7 están reservados y <strong>de</strong>ben permanecer en 0.<br />

Nota: Map_idx = 0 para procesadores Momentum M1E<br />

Ejemplo <strong>de</strong> IEC EFB para el funcionamiento <strong>de</strong> las conexiones abiertas: registro<br />

400050 = 3 hexa<strong>de</strong>cimal<br />

0<br />

%400050<br />

112<br />

112<br />

112<br />

77<br />

FBI_1_2(1) FBI_1_3(2)<br />

TCP_IP_ADDR<br />

CREAD_REG<br />

Map_idx 1 SLAVEREG<br />

Slot_ID 2 NO_REG REG_READ<br />

Ip_B4<br />

Ip_B3<br />

Ip_B2<br />

IpB1<br />

AddrFld AddrFld STATUS<br />

Esta función sólo se pue<strong>de</strong> utilizar para los siguientes EFB:<br />

CREAD_REG<br />

CREADREG<br />

CWRITE_REG<br />

CWRITERREG<br />

MBP_MSTR (<strong>de</strong>be permanecer siempre activo: HABILITAR=1)<br />

No utilice esta función con los siguientes EFB<br />

READREG<br />

WRITEREG<br />

READ_REG<br />

WRITE_REG<br />

%400051<br />

%400101<br />

31007526 12/2006 747


MSTR: Maestro<br />

Descripción <strong>de</strong> los parámetros<br />

Modo <strong>de</strong><br />

funcionamiento<br />

Operaciones<br />

master (MSTR)<br />

La instrucción MSTR permite iniciar una <strong>de</strong> las 12 operaciones <strong>de</strong> comunicación <strong>de</strong><br />

red posibles a través <strong>de</strong> la red. Cada operación se <strong>de</strong>signa con un código.<br />

En un programa Lad<strong>de</strong>r <strong>Logic</strong> pue<strong>de</strong>n estar activas simultáneamente cuatro<br />

instrucciones MSTR como máximo. Es posible programar más <strong>de</strong> cuatro<br />

operaciones MSTR para ser habilitadas por la ejecución <strong>de</strong> la lógica. Cuando un<br />

bloque MSTR activo habilita los recursos que ha utilizado y se <strong>de</strong>sactiva, es posible<br />

activar la siguiente operación MSTR que se encuentre en la lógica.<br />

Algunas operaciones MSTR sólo pue<strong>de</strong>n realizarse en ciertas re<strong>de</strong>s.<br />

Código Tipo <strong>de</strong> operación Modbus<br />

Plus<br />

Leyenda<br />

Ethernet<br />

TCP/IP<br />

1 Escribir datos x x x<br />

2 Leer datos x x x<br />

3 Obtener estadísticas locales x x -<br />

4 Borrar estadísticas locales x x -<br />

5 Escribir base <strong>de</strong> datos globales x - -<br />

6 Leer base <strong>de</strong> datos globales x - -<br />

7 Obtener estadísticas remotas x x -<br />

8 Borrar estadísticas remotas x x -<br />

9 Estado funcional Peer Cop x - -<br />

10 Resetear módulo opcional - x x<br />

11 Leer CTE (ampliación <strong>de</strong> configuración) - x x<br />

12 Escribir CTE (ampliación <strong>de</strong> configuración) - x x<br />

x Admitida<br />

- No admitida<br />

Ethernet<br />

SY/MAX<br />

748 31007526 12/2006


Bloque <strong>de</strong><br />

control (asiento<br />

superior)<br />

Bloque <strong>de</strong><br />

control para<br />

Modbus Plus<br />

MSTR: Maestro<br />

El registro 4x introducido en el asiento superior es el primero <strong>de</strong> varios registros <strong>de</strong><br />

salida (<strong>de</strong>pendientes <strong>de</strong> la red) que incluye el bloque <strong>de</strong> control <strong>de</strong> la red.<br />

La estructura <strong>de</strong>l bloque <strong>de</strong> control será diferente según la red que se utilice.<br />

Modbus Plus<br />

Ethernet TCP/IP<br />

Ethernet SY/MAX<br />

Nota: A la hora <strong>de</strong> programar una instrucción MSTR, <strong>de</strong>berá compren<strong>de</strong>r los<br />

procedimientos <strong>de</strong> acceso (direccionamiento) utilizados por la red que esté<br />

utilizando. En la Guía para la planificación e instalación <strong>de</strong> una red Modbus Plus<br />

se ofrece información <strong>de</strong>tallada sobre cómo configurar las rutas <strong>de</strong> acceso <strong>de</strong><br />

Modbus Plus. Si se implementa un acceso Ethernet TCP/IP o SY/MAX, <strong>de</strong>berá<br />

realizarse mediante enrutadores Ethernet IP estándar <strong>de</strong> otros proveedores.<br />

Se ha introducido el primero <strong>de</strong> doce registros 4x contiguos en el asiento superior.<br />

Los once registros restantes están implícitos.<br />

Registro Significado<br />

Visualizado I<strong>de</strong>ntifica una <strong>de</strong> las nueve operaciones MSTR válidas para Modbus<br />

Plus (1a9).<br />

Primer implícito Muestra el estado <strong>de</strong> error.<br />

Segundo implícito Muestra la longitud (número <strong>de</strong> registros transferidos).<br />

Tercer implícito Muestra la información que <strong>de</strong>pen<strong>de</strong> <strong>de</strong> la operación MSTR.<br />

Cuarto implícito Es el registro <strong>de</strong> acceso 1. Se usa para <strong>de</strong>signar la dirección <strong>de</strong>l<br />

participante <strong>de</strong> <strong>de</strong>stino para una transacción <strong>de</strong> red. La visualización<br />

<strong>de</strong>l registro es implementada físicamente para los PLC Quantum.<br />

Quinto implícito El registro <strong>de</strong> acceso 2.<br />

Sexto implícito El registro <strong>de</strong> acceso 3.<br />

Séptimo implícito El registro <strong>de</strong> acceso 4.<br />

Octavo implícito El registro <strong>de</strong> acceso 5.<br />

Noveno implícito No aplicable.<br />

Décimo implícito No aplicable.<br />

Undécimo implícito No aplicable.<br />

31007526 12/2006 749


MSTR: Maestro<br />

Registro <strong>de</strong><br />

acceso 1 para los<br />

PLC <strong>de</strong> la serie<br />

Quantum<br />

Automation<br />

(cuarto registro<br />

implícito)<br />

Bloque <strong>de</strong><br />

control para<br />

Ethernet TCP/IP<br />

Para <strong>de</strong>finir un módulo opcional <strong>de</strong> red Modbus Plus (NOM) en una placa <strong>de</strong><br />

conexiones <strong>de</strong>l PLC Quantum como <strong>de</strong>stino <strong>de</strong> una instrucción MSTR, el valor en<br />

el byte <strong>de</strong> mayor valor representa la ubicación física <strong>de</strong>l slot <strong>de</strong>l NOM; por ejemplo,<br />

si el NOM está ubicado en el slot 7 <strong>de</strong> la placa <strong>de</strong> conexiones, el byte <strong>de</strong> mayor valor<br />

<strong>de</strong>l registro <strong>de</strong> acceso 1 tendrá la siguiente estructura:<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 8<br />

0 0 0 0 0 1 1 1<br />

9 a 16<br />

Byte <strong>de</strong> mayor valor: Indica la ubicación física (rango 1 a 16).<br />

0 x x x x x x x<br />

Dirección <strong>de</strong> <strong>de</strong>stino: Valor binario entre 1 y 64.<br />

Nota: Si ha creado un programa lógico usando una instrucción MSTR para un PLC 984 y<br />

<strong>de</strong>sea transportarlo a un PLC <strong>de</strong> la Serie Quantum Automation sin tener que editar el valor<br />

<strong>de</strong>l registro <strong>de</strong> acceso 1, asegúrese <strong>de</strong> que el NOM n° 1 se encuentre instalado en el slot 1<br />

<strong>de</strong> la placa <strong>de</strong> conexiones Quantum (y si se usa un NOM n° 2, que se encuentre instalado<br />

en el slot 2 <strong>de</strong> la placa <strong>de</strong> conexiones). Si intenta poner en funcionamiento la aplicación<br />

transportada con los NOM en otros slots sin modificar el registro, aparecerá un error <strong>de</strong><br />

estado F001, que indicará que el participante <strong>de</strong> <strong>de</strong>stino es incorrecto.<br />

Se ha introducido el primero <strong>de</strong> nueve registros 4x contiguos en el asiento superior.<br />

Los ocho registros restantes están implícitos.<br />

Registro Significado<br />

Visualizado I<strong>de</strong>ntifica una <strong>de</strong> las nueve operaciones MSTR válidas para TCP/IP.<br />

(1 a 4; 7; 8; 10 a 12).<br />

Primer implícito Muestra el estado <strong>de</strong> error.<br />

Segundo implícito Muestra la longitud (número <strong>de</strong> registros transferidos).<br />

Tercer implícito Muestra la información que <strong>de</strong>pen<strong>de</strong> <strong>de</strong> la operación MSTR.<br />

Cuarto implícito Byte <strong>de</strong> menor valor: Dirección <strong>de</strong>l slot <strong>de</strong>l módulo NOE.<br />

Byte <strong>de</strong> mayor valor: Índice Map MET (MBP a transportador Ethernet).<br />

Quinto implícito Byte 4 <strong>de</strong> la dirección IP <strong>de</strong> <strong>de</strong>stino <strong>de</strong> <strong>32</strong> bits.<br />

Sexto implícito Byte 3 <strong>de</strong> la dirección IP <strong>de</strong> <strong>de</strong>stino <strong>de</strong> <strong>32</strong> bits.<br />

Séptimo implícito Byte 2 <strong>de</strong> la dirección IP <strong>de</strong> <strong>de</strong>stino <strong>de</strong> <strong>32</strong> bits.<br />

Octavo implícito Byte 1 <strong>de</strong> la dirección IP <strong>de</strong> <strong>de</strong>stino <strong>de</strong> <strong>32</strong> bits.<br />

750 31007526 12/2006


Bloque <strong>de</strong><br />

control para<br />

Ethernet SY/MAX<br />

Campo <strong>de</strong> datos<br />

(asiento<br />

intermedio)<br />

MSTR: Maestro<br />

Se ha introducido el primero <strong>de</strong> siete registros 4x contiguos en el asiento superior.<br />

Los seis registros restantes están implícitos.<br />

Registro Significado<br />

Visualizado I<strong>de</strong>ntifica una <strong>de</strong> las nueve operaciones MSTR válidas para<br />

SY/MAX.<br />

(1; 2; 10 a 12).<br />

Primer implícito Muestra el estado <strong>de</strong> error.<br />

Segundo implícito Muestra la longitud <strong>de</strong> lectura/escritura (número <strong>de</strong> registros<br />

transferidos).<br />

Tercer implícito Muestra la dirección base <strong>de</strong> lectura/escritura.<br />

Cuarto implícito Byte <strong>de</strong> menor valor: Dirección <strong>de</strong> slot <strong>de</strong>l módulo NOE (por ejemplo,<br />

slot 10 = 0A00, slot 6 = 0600).<br />

Byte <strong>de</strong> mayor valor: Índice Map MET (MBP a transportador<br />

Ethernet).<br />

Quinto implícito Número <strong>de</strong> estación <strong>de</strong> <strong>de</strong>stino (o ajustado a FF hexa<strong>de</strong>cimal).<br />

Sexto implícito Terminador (ajustado a FF hexa<strong>de</strong>cimal).<br />

El registro 4x introducido en el asiento intermedio es el primero <strong>de</strong> un grupo <strong>de</strong><br />

registros <strong>de</strong> salida contiguos que compren<strong>de</strong>n el campo <strong>de</strong> datos. Para operaciones<br />

que suministran datos al procesador <strong>de</strong> comunicaciones, como una operación <strong>de</strong><br />

escritura, el campo <strong>de</strong> datos es el origen <strong>de</strong> los datos. Para operaciones que<br />

reciben datos <strong>de</strong>l procesador <strong>de</strong> comunicaciones, como una operación <strong>de</strong> lectura,<br />

el campo <strong>de</strong> datos es el <strong>de</strong>stino <strong>de</strong> los datos.<br />

En el caso <strong>de</strong> las operaciones Ethernet Leer y Escribir CTE, el asiento intermedio<br />

almacena el contenido <strong>de</strong> la tabla <strong>de</strong> ampliación <strong>de</strong> configuración Ethernet en una<br />

serie <strong>de</strong> registros.<br />

31007526 12/2006 751


MSTR: Maestro<br />

Operación MSTR <strong>de</strong> escritura<br />

Descripción<br />

breve<br />

La operación MSTR <strong>de</strong> escritura transfiere datos <strong>de</strong> un participante master fuente<br />

a otro <strong>de</strong> <strong>de</strong>stino slave especificado en la red. La Lectura y Escritura utilizan una<br />

ruta <strong>de</strong> transacciones <strong>de</strong> master <strong>de</strong> datos y se pue<strong>de</strong>n completar en múltiples ciclos.<br />

Si intenta programar la instrucción MSTR para escribir la dirección <strong>de</strong> su propia<br />

estación, se generará un error en el primer registro implícito <strong>de</strong>l bloque <strong>de</strong> control<br />

MSTR. Es posible intentar realizar una operación <strong>de</strong> escritura en un registro no<br />

existente <strong>de</strong>l equipo slave. Éste <strong>de</strong>tectará esta situación e informará <strong>de</strong> ello, lo que<br />

pue<strong>de</strong> durar varios ciclos <strong>de</strong> programa.<br />

Aplicación en red La operación MSTR <strong>de</strong> escritura se pue<strong>de</strong> realizar en re<strong>de</strong>s Modbus Plus, Ethernet<br />

TCP/IP y Ethernet SY/MAX.<br />

Utilización <strong>de</strong>l<br />

bloque <strong>de</strong><br />

control<br />

Bloque <strong>de</strong><br />

control para<br />

Modbus Plus<br />

En una operación <strong>de</strong> escritura, los registros <strong>de</strong>l bloque <strong>de</strong> control <strong>de</strong> MSTR (asiento<br />

superior) contienen información distinta según el tipo <strong>de</strong> red que se esté utilizando.<br />

Modbus Plus<br />

Ethernet TCP/IP<br />

Ethernet SY/MAX<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 1 = escritura.<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Longitud Número <strong>de</strong> registros que han <strong>de</strong> enviarse al slave.<br />

Tercer implícito Zona <strong>de</strong> datos <strong>de</strong>l Especifica el registro 4x <strong>de</strong> inicio en el slave en que<br />

equipo slave hay que escribir (1 = 40001, 49 =40049).<br />

Cuarto al octavo Acceso 1 a 5 Designa <strong>de</strong> la primera a la quinta dirección <strong>de</strong> ruta<br />

implícitos<br />

<strong>de</strong> acceso; el último byte distinto <strong>de</strong> cero en la ruta<br />

<strong>de</strong> acceso será el equipo <strong>de</strong> <strong>de</strong>stino.<br />

752 31007526 12/2006


Bloque <strong>de</strong><br />

control para<br />

Ethernet TCP/IP<br />

Bloque <strong>de</strong><br />

control para<br />

Ethernet SY/MAX<br />

MSTR: Maestro<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 1 = escritura.<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR:<br />

código <strong>de</strong> excepción + 3000: respuesta <strong>de</strong><br />

excepción, don<strong>de</strong> el tamaño <strong>de</strong> la respuesta es<br />

correcto.<br />

4001: respuesta <strong>de</strong> excepción, don<strong>de</strong> el tamaño <strong>de</strong><br />

la respuesta es incorrecto.<br />

4001: lectura/escritura.<br />

Segundo implícito Longitud Número <strong>de</strong> registros que han <strong>de</strong> enviarse al slave.<br />

Tercer implícito Zona <strong>de</strong> datos <strong>de</strong>l Especifica el registro 4x <strong>de</strong> inicio en el slave en que<br />

equipo slave hay que escribir (1 = 40001, 49 =40049).<br />

Cuarto implícito Byte <strong>de</strong> menor Dirección <strong>de</strong> slot para el módulo <strong>de</strong> adaptador <strong>de</strong><br />

valor<br />

red.<br />

Quinto al octavo Destino Cada registro contiene un byte <strong>de</strong> la dirección IP <strong>de</strong><br />

implícitos<br />

<strong>32</strong> bits.<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 1 = escritura.<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Longitud Número <strong>de</strong> registros que han <strong>de</strong> enviarse al slave.<br />

Tercer implícito Zona <strong>de</strong> datos <strong>de</strong>l Especifica el registro 4x <strong>de</strong> inicio en el slave en que<br />

equipo slave hay que escribir (1 = 40001, 49 =40049).<br />

Cuarto implícito I<strong>de</strong>ntificación <strong>de</strong> Byte <strong>de</strong> menor valor: dirección <strong>de</strong> slot para el<br />

slot<br />

módulo <strong>de</strong> adaptador <strong>de</strong> red.<br />

Cuarto implícito I<strong>de</strong>ntificación <strong>de</strong> Byte <strong>de</strong> mayor valor: número <strong>de</strong> estación <strong>de</strong><br />

slot<br />

<strong>de</strong>stino.<br />

Quinto al octavo<br />

implícitos<br />

Terminador FF hexa<strong>de</strong>cimal.<br />

31007526 12/2006 753


MSTR: Maestro<br />

Operación MSTR <strong>de</strong> lectura<br />

Descripción<br />

breve<br />

La operación MSTR <strong>de</strong> lectura transfiere datos <strong>de</strong> un equipo <strong>de</strong> fuente slave<br />

especificado a otro <strong>de</strong> <strong>de</strong>stino master en la red. La lectura y escritura utilizan una<br />

ruta <strong>de</strong> transacciones <strong>de</strong> master <strong>de</strong> datos y se pue<strong>de</strong>n completar en múltiples ciclos.<br />

Si intenta programar la instrucción MSTR para leer la dirección <strong>de</strong> su propia<br />

estación, se generará un error en el primer registro implícito <strong>de</strong>l bloque <strong>de</strong> control<br />

MSTR. Es posible intentar realizar una operación <strong>de</strong> lectura en un registro no<br />

existente <strong>de</strong>l equipo slave. Éste <strong>de</strong>tectará esta situación e informará <strong>de</strong> ello, lo cual<br />

pue<strong>de</strong> durar varios ciclos <strong>de</strong> programa.<br />

Aplicación en red La operación MSTR <strong>de</strong> lectura se pue<strong>de</strong> realizar en re<strong>de</strong>s Modbus Plus, Ethernet<br />

TCP/IP y Ethernet SY/MAX.<br />

Utilización <strong>de</strong>l<br />

bloque <strong>de</strong><br />

control<br />

Bloque <strong>de</strong><br />

control para<br />

Modbus Plus<br />

En una operación <strong>de</strong> lectura, los registros <strong>de</strong>l bloque <strong>de</strong> control <strong>de</strong> MSTR (asiento<br />

superior) contienen información distinta según el tipo <strong>de</strong> red que se esté utilizando.<br />

Modbus Plus<br />

Ethernet TCP/IP<br />

Ethernet SY/MAX<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 2 = lectura.<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Longitud Número <strong>de</strong> registros que han <strong>de</strong> leerse <strong>de</strong>s<strong>de</strong> el<br />

slave.<br />

Tercer implícito Zona <strong>de</strong> datos <strong>de</strong>l Especifica el registro 4x <strong>de</strong> inicio en el slave en que<br />

equipo slave hay que leer (1 = 40001, 49 =40049).<br />

Cuarto al octavo Acceso 1 a 5 Designa <strong>de</strong> la primera a la quinta dirección <strong>de</strong> ruta<br />

implícitos<br />

<strong>de</strong> acceso; el último byte distinto <strong>de</strong> cero en la ruta<br />

<strong>de</strong> acceso será el equipo <strong>de</strong> <strong>de</strong>stino.<br />

754 31007526 12/2006


Bloque <strong>de</strong><br />

control para<br />

Ethernet TCP/IP<br />

Bloque <strong>de</strong><br />

control para<br />

Ethernet SY/MAX<br />

MSTR: Maestro<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 2 = lectura.<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR:<br />

código <strong>de</strong> excepción + 3000: respuesta <strong>de</strong><br />

excepción, don<strong>de</strong> el tamaño <strong>de</strong> la respuesta es<br />

correcto.<br />

4001: respuesta <strong>de</strong> excepción, don<strong>de</strong> el tamaño <strong>de</strong><br />

la respuesta es incorrecto.<br />

4001: lectura/escritura.<br />

Segundo implícito Longitud Número <strong>de</strong> registros que han <strong>de</strong> leerse <strong>de</strong>s<strong>de</strong> el<br />

slave.<br />

Tercer implícito Zona <strong>de</strong> datos <strong>de</strong>l Especifica el registro 4x <strong>de</strong> inicio en el slave en que<br />

equipo slave hay que leer (1 = 40001, 49 =40049).<br />

Cuarto implícito Byte <strong>de</strong> mayor Dirección <strong>de</strong> slot para el módulo <strong>de</strong> adaptador <strong>de</strong><br />

valor<br />

red.<br />

Quinto al octavo Destino Cada registro contiene un byte <strong>de</strong> la dirección IP <strong>de</strong><br />

implícitos<br />

<strong>32</strong> bits.<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 2 = lectura.<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Longitud Número <strong>de</strong> registros que han <strong>de</strong> leerse <strong>de</strong>s<strong>de</strong> el<br />

slave.<br />

Tercer implícito Zona <strong>de</strong> datos <strong>de</strong>l Especifica el registro 4x <strong>de</strong> inicio en el slave en que<br />

equipo slave hay que leer (1 = 40001, 49 =40049).<br />

Cuarto implícito I<strong>de</strong>ntificación <strong>de</strong> Byte <strong>de</strong> menor valor: dirección <strong>de</strong> slot para el<br />

slot<br />

módulo <strong>de</strong> adaptador <strong>de</strong> red.<br />

Cuarto implícito I<strong>de</strong>ntificación <strong>de</strong> Byte <strong>de</strong> mayor valor: número <strong>de</strong> estación <strong>de</strong><br />

slot<br />

<strong>de</strong>stino.<br />

Quinto al octavo<br />

implícitos<br />

Terminador FF hexa<strong>de</strong>cimal.<br />

31007526 12/2006 755


MSTR: Maestro<br />

Operación MSTR <strong>de</strong> obtención <strong>de</strong> estadísticas locales<br />

Descripción<br />

breve<br />

La operación <strong>de</strong> obtención <strong>de</strong> estadísticas locales recoge información relativa al<br />

equipo local en don<strong>de</strong> se ha programado el MSTR. Esta operación tarda un ciclo en<br />

completarse y no requiere una ruta <strong>de</strong> acceso <strong>de</strong> transacción <strong>de</strong> master para la<br />

transmisión <strong>de</strong> los datos.<br />

Aplicación en red La operación <strong>de</strong> obtención <strong>de</strong> estadísticas locales (tipo 3 en el registro visualizado<br />

<strong>de</strong>l asiento superior) pue<strong>de</strong> llevarse a cabo en re<strong>de</strong>s Modbus Plus y Ethernet TCP/<br />

IP. No se utiliza para Ethernet SY/MAX.<br />

Utilización <strong>de</strong>l<br />

bloque <strong>de</strong><br />

control<br />

Se dispone <strong>de</strong> las siguientes estadísticas <strong>de</strong> red.<br />

Estadísticas <strong>de</strong> red Modbus Plus<br />

Estadísticas <strong>de</strong> red Ethernet TCP/IP<br />

En una operación <strong>de</strong> obtención <strong>de</strong> estadísticas locales, los registros en el bloque <strong>de</strong><br />

control MSTR (asiento superior) contienen información distinta según el tipo <strong>de</strong> red<br />

que se esté utilizando.<br />

Modbus Plus<br />

Ethernet TCP/IP<br />

756 31007526 12/2006


Bloque <strong>de</strong><br />

control para<br />

Modbus Plus<br />

Bloque <strong>de</strong><br />

control para<br />

Ethernet TCP/IP<br />

MSTR: Maestro<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 3<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Longitud Comenzando por el offset, la cantidad <strong>de</strong> palabras<br />

<strong>de</strong> estadísticas <strong>de</strong>s<strong>de</strong> la tabla <strong>de</strong> estadísticas <strong>de</strong>l<br />

procesador local. La longitud tiene que ser > 0 y ≤<br />

campo <strong>de</strong> datos.<br />

Tercer implícito Offset Es un valor <strong>de</strong> offset relativo a la primera palabra<br />

disponible en la tabla <strong>de</strong> estadísticas <strong>de</strong>l procesador<br />

local. Si el offset se especifica como 1, la función<br />

obtiene las estadísticas a partir <strong>de</strong> la segunda<br />

palabra en la tabla.<br />

Cuarto implícito Acceso 1 Si éste es el segundo <strong>de</strong> dos participantes locales,<br />

dé el valor 1 al byte <strong>de</strong> mayor valor.<br />

Nota: Si su PLC no permite trabajar con los módulos<br />

opcionales Modbus Plus (S985s o NOMs), no se<br />

utilizará el cuarto registro implícito.<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 3<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Longitud Comenzando por el offset, la cantidad <strong>de</strong> palabras<br />

<strong>de</strong> estadísticas <strong>de</strong>s<strong>de</strong> la tabla <strong>de</strong> estadísticas <strong>de</strong>l<br />

procesador local. La longitud tiene que ser > 0 y ≤<br />

campo <strong>de</strong> datos.<br />

Tercer implícito Offset Es un valor <strong>de</strong> offset relativo a la primera palabra<br />

disponible en la tabla <strong>de</strong> estadísticas <strong>de</strong>l procesador<br />

local. Si el offset se especifica como 1, la función<br />

obtiene las estadísticas a partir <strong>de</strong> la segunda<br />

palabra en la tabla.<br />

Cuarto implícito I<strong>de</strong>ntificación <strong>de</strong> Byte <strong>de</strong> menor valor: dirección <strong>de</strong> slot para el<br />

slot<br />

módulo <strong>de</strong> adaptador <strong>de</strong> red.<br />

Quinto al octavo<br />

implícitos<br />

No aplicable<br />

31007526 12/2006 757


MSTR: Maestro<br />

Operación MSTR <strong>de</strong> borrado <strong>de</strong> estadísticas locales<br />

Descripción<br />

breve<br />

La operación <strong>de</strong> borrado <strong>de</strong> estadísticas locales elimina las estadísticas relativas al<br />

participante local (en don<strong>de</strong> ha sido programado el MSTR). Esta operación tarda un<br />

ciclo en completarse y no requiere una ruta <strong>de</strong> acceso <strong>de</strong> transacción <strong>de</strong> master<br />

para la transmisión <strong>de</strong> los datos.<br />

Aplicación en red La operación <strong>de</strong> borrado <strong>de</strong> estadísticas locales (tipo 4 en el registro visualizado <strong>de</strong>l<br />

asiento superior) pue<strong>de</strong> realizarse en re<strong>de</strong>s Modbus Plus y Ethernet TCP/IP. No se<br />

utiliza para Ethernet SY/MAX.<br />

Utilización <strong>de</strong>l<br />

bloque <strong>de</strong><br />

control<br />

Bloque <strong>de</strong><br />

control para<br />

Modbus Plus<br />

Nota: Si efectúa la operación <strong>de</strong> borrado <strong>de</strong> estadísticas locales, se borrarán<br />

solamente las palabras 13 a 22 en la tabla <strong>de</strong> estadísticas.<br />

Se dispone <strong>de</strong> las siguientes estadísticas <strong>de</strong> red.<br />

Estadísticas <strong>de</strong> red Modbus Plus<br />

Estadísticas <strong>de</strong> red Ethernet TCP/IP<br />

En una operación <strong>de</strong> borrado <strong>de</strong> estadísticas locales, los registros en el bloque <strong>de</strong><br />

control (el asiento superior) MSTR difieren según el tipo <strong>de</strong> red en uso.<br />

Modbus Plus<br />

Ethernet TCP/IP<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 4<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Reservado.<br />

Tercer implícito Reservado.<br />

Cuarto implícito Acceso 1 Si éste es el segundo <strong>de</strong> dos participantes locales,<br />

dé el valor 1 al byte <strong>de</strong> mayor valor.<br />

Nota: Si su PLC no permite trabajar con los módulos<br />

opcionales Modbus Plus (S985s o NOMs), no se<br />

utilizará el cuarto registro implícito.<br />

758 31007526 12/2006


Bloque <strong>de</strong><br />

control para<br />

Ethernet TCP/IP<br />

MSTR: Maestro<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 4<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un<br />

error MSTR, cuando éste sea importante.<br />

Segundo implícito Reservado.<br />

Tercer implícito Reservado.<br />

Cuarto implícito I<strong>de</strong>ntificación <strong>de</strong> Byte <strong>de</strong> menor valor: dirección <strong>de</strong> slot para<br />

slot<br />

el módulo <strong>de</strong> adaptador <strong>de</strong> red.<br />

Quinto al octavo implícitos Reservado.<br />

31007526 12/2006 759


MSTR: Maestro<br />

Operación MSTR <strong>de</strong> escritura <strong>de</strong> datos globales<br />

Descripción<br />

breve<br />

La operación <strong>de</strong> escritura <strong>de</strong> datos globales transfiere datos al procesador <strong>de</strong><br />

comunicaciones en el participante actual, <strong>de</strong> modo que éstos puedan ser<br />

transmitidos a través <strong>de</strong> la red cuando el participante recibe el token. Todos los<br />

participantes interconectados en la red local pue<strong>de</strong>n recibir estos datos. Esta<br />

operación tarda un ciclo en completarse y no requiere una ruta <strong>de</strong> acceso <strong>de</strong><br />

transacción <strong>de</strong> master para la transmisión <strong>de</strong> los datos.<br />

Aplicación en red La operación <strong>de</strong> escritura <strong>de</strong> datos globales (tipo 5 en el registro visualizado <strong>de</strong>l<br />

asiento superior) sólo pue<strong>de</strong> implementarse en re<strong>de</strong>s Modbus Plus.<br />

Utilización <strong>de</strong>l<br />

bloque <strong>de</strong><br />

control<br />

En la operación <strong>de</strong> escritura <strong>de</strong> datos globales se utilizan los registros en el bloque<br />

<strong>de</strong> control MSTR (asiento superior).<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 5<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Longitud Especifica la cantidad <strong>de</strong> registros <strong>de</strong>l área <strong>de</strong> datos<br />

que <strong>de</strong>berán transferirse al procesador <strong>de</strong><br />

comunicaciones; el valor <strong>de</strong> la longitud tiene que ser<br />

≤ <strong>32</strong> y no <strong>de</strong>be exce<strong>de</strong>r el tamaño <strong>de</strong>l área <strong>de</strong> datos.<br />

Tercer implícito Reservado.<br />

Cuarto implícito Acceso 1 Si éste es el segundo <strong>de</strong> dos participantes locales,<br />

dé el valor 1 al byte <strong>de</strong> mayor valor.<br />

Nota:Si su PLC no permite trabajar con los módulos<br />

opcionales Modbus Plus (S985s o NOMs), no se<br />

utilizará el cuarto registro implícito.<br />

760 31007526 12/2006


Operación MSTR <strong>de</strong> lectura <strong>de</strong> datos globales<br />

Descripción<br />

breve<br />

MSTR: Maestro<br />

La operación <strong>de</strong> lectura <strong>de</strong> datos globales obtiene datos <strong>de</strong>l procesador <strong>de</strong><br />

comunicaciones en cualquier participante vinculado a la red local que suministra<br />

estos datos globales. Esta operación pue<strong>de</strong> tardar varios ciclos en completarse<br />

cuando los datos globales no están disponibles en el participante solicitado en ese<br />

momento. Si los datos globales se encuentran disponibles, la operación se<br />

completará en un ciclo. No se requiere ruta <strong>de</strong> acceso <strong>de</strong> transacción <strong>de</strong>l master.<br />

Aplicación en red La operación Leer datos globales (tipo 6 en el registro visualizado <strong>de</strong>l asiento<br />

superior) sólo pue<strong>de</strong> llevarse a cabo en re<strong>de</strong>s Modbus Plus.<br />

Utilización <strong>de</strong>l<br />

bloque <strong>de</strong><br />

control<br />

En la operación <strong>de</strong> lectura <strong>de</strong> datos globales se utilizan los registros en el bloque <strong>de</strong><br />

control MSTR (asiento superior).<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 6<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Longitud Especifica la cantidad <strong>de</strong> palabras <strong>de</strong> datos globales<br />

que se solicitarán al procesador <strong>de</strong> comunicaciones<br />

<strong>de</strong>signado por el parámetro <strong>de</strong> acceso 1; el valor <strong>de</strong><br />

la longitud tiene que ser > 0 y ≤ <strong>32</strong> y no <strong>de</strong>be<br />

exce<strong>de</strong>r el tamaño <strong>de</strong>l área <strong>de</strong> datos.<br />

Tercer implícito Palabras Contiene la cantidad <strong>de</strong> palabras disponibles <strong>de</strong>l<br />

disponibles participante requerido; el valor se actualiza<br />

automáticamente por medio <strong>de</strong>l software interno.<br />

Cuarto implícito Acceso 1 El byte <strong>de</strong> menor valor especifica la dirección <strong>de</strong>l<br />

participante cuyos datos globales <strong>de</strong>ben obtenerse<br />

(un valor entre 1 y 64). Si éste es el segundo <strong>de</strong> dos<br />

participantes locales, dé el valor 1 al byte <strong>de</strong> mayor<br />

valor.<br />

Nota:Si su PLC no permite trabajar con los módulos<br />

opcionales Modbus Plus (S985s o NOMs), no se<br />

utilizará el byte <strong>de</strong> mayor valor <strong>de</strong>l cuarto registro<br />

implícito y se <strong>de</strong>berán poner a 0 los bits <strong>de</strong>l byte <strong>de</strong><br />

mayor valor.<br />

31007526 12/2006 761


MSTR: Maestro<br />

Operación MSTR <strong>de</strong> obtención <strong>de</strong> estadísticas remotas<br />

Descripción<br />

breve<br />

La operación <strong>de</strong> obtención <strong>de</strong> estadísticas remotas obtiene información relativa a<br />

participantes remotos en la red. Esta operación pue<strong>de</strong> tardar varios ciclos en<br />

completarse y no requiere una ruta <strong>de</strong> acceso <strong>de</strong> transacción <strong>de</strong> datos <strong>de</strong>l master.<br />

Aplicación en red La operación <strong>de</strong> obtención <strong>de</strong> estadísticas remotas (tipo 7 en el registro visualizado<br />

<strong>de</strong>l asiento superior) pue<strong>de</strong> realizarse en re<strong>de</strong>s Modbus Plus y Ethernet TCP/IP. No<br />

se utiliza para Ethernet SY/MAX.<br />

Utilización <strong>de</strong>l<br />

bloque <strong>de</strong><br />

control<br />

Bloque <strong>de</strong><br />

control para<br />

Modbus Plus<br />

En una operación <strong>de</strong> obtención <strong>de</strong> estadísticas remotas, los registros en el bloque<br />

<strong>de</strong> control MSTR (asiento superior) contienen información distinta según el tipo <strong>de</strong><br />

red que se esté utilizando.<br />

Modbus Plus<br />

Ethernet TCP/IP<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 7<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Longitud A partir <strong>de</strong> un offset, la cantidad <strong>de</strong> palabras <strong>de</strong><br />

estadísticas que se obtendrán <strong>de</strong>l participante<br />

remoto; la longitud tiene que ser > 0 y ≤ la cantidad<br />

total <strong>de</strong> estadísticas disponibles (54) y no <strong>de</strong>be<br />

exce<strong>de</strong>r el tamaño <strong>de</strong>l área <strong>de</strong> datos.<br />

Tercer implícito Offset Especifica un valor <strong>de</strong> offset relativo a la primera<br />

palabra disponible en la tabla <strong>de</strong> estadísticas, el<br />

valor no <strong>de</strong>be exce<strong>de</strong>r la cantidad <strong>de</strong> palabras <strong>de</strong><br />

estadísticas disponible.<br />

Cuarto al octavo Acceso 1 a 5 Designa <strong>de</strong> la primera a la quinta dirección <strong>de</strong> ruta<br />

implícitos<br />

<strong>de</strong> acceso; el último byte distinto <strong>de</strong> cero en la ruta<br />

<strong>de</strong> acceso será el participante <strong>de</strong> <strong>de</strong>stino.<br />

El procesador <strong>de</strong> comunicaciones remoto entrega siempre su tabla <strong>de</strong> estadísticas<br />

completa cuando se realiza una petición, aunque se solicite menos <strong>de</strong> la tabla<br />

completa. La instrucción MSTR copiará entonces solamente la cantidad <strong>de</strong><br />

palabras que haya solicitado a los registros 4x <strong>de</strong>signados.<br />

762 31007526 12/2006


Bloque <strong>de</strong><br />

control para<br />

Ethernet TCP/IP<br />

MSTR: Maestro<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 7<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Longitud Comenzando por el offset, la cantidad <strong>de</strong> palabras<br />

<strong>de</strong> estadísticas <strong>de</strong>s<strong>de</strong> la tabla <strong>de</strong> estadísticas <strong>de</strong>l<br />

procesador local. La longitud tiene que ser > 0 y ≤<br />

campo <strong>de</strong> datos.<br />

Tercer implícito Offset Es un valor <strong>de</strong> offset relativo a la primera palabra<br />

disponible en la tabla <strong>de</strong> estadísticas <strong>de</strong>l procesador<br />

local. Si el offset se especifica como 1, la función<br />

obtiene las estadísticas a partir <strong>de</strong> la segunda<br />

palabra en la tabla.<br />

Cuarto implícito Byte <strong>de</strong> menor Dirección <strong>de</strong> slot para el módulo <strong>de</strong> adaptador <strong>de</strong><br />

valor<br />

red.<br />

Quinto al octavo Destino Cada registro contiene un byte <strong>de</strong> la dirección IP <strong>de</strong><br />

implícitos<br />

<strong>32</strong> bits.<br />

31007526 12/2006 763


MSTR: Maestro<br />

Operación MSTR <strong>de</strong> borrado <strong>de</strong> estadísticas remotas<br />

Descripción<br />

breve<br />

La operación Borrar estadísticas remotas elimina las estadísticas relacionadas con<br />

un participante <strong>de</strong> red remoto <strong>de</strong>l área <strong>de</strong> datos en el participante local. Esta<br />

operación pue<strong>de</strong> tardar varios ciclos en completarse y utiliza una sola ruta <strong>de</strong><br />

acceso <strong>de</strong> transacción <strong>de</strong> datos <strong>de</strong>l master.<br />

Aplicación en red La operación Borrar estadísticas remotas (tipo 8 en el registro visualizado <strong>de</strong>l<br />

asiento superior) pue<strong>de</strong> implementarse en re<strong>de</strong>s Modbus Plus y Ethernet TCP/IP.<br />

No se utiliza para Ethernet SY/MAX.<br />

Utilización <strong>de</strong>l<br />

bloque <strong>de</strong><br />

control<br />

Bloque <strong>de</strong><br />

control para<br />

Modbus Plus<br />

Nota: Si efectúa la operación Borrar las estadísticas remotas, se borrarán<br />

solamente las palabras 13 a 22 en la tabla <strong>de</strong> estadísticas.<br />

Se dispone <strong>de</strong> las siguientes estadísticas <strong>de</strong> red.<br />

Estadísticas <strong>de</strong> red Modbus Plus<br />

Estadísticas <strong>de</strong> red Ethernet TCP/IP<br />

En una operación Borrar estadísticas remotas, los registros en el bloque <strong>de</strong> control<br />

(el asiento superior) MSTR contienen información diferente <strong>de</strong>pendiendo <strong>de</strong>l tipo <strong>de</strong><br />

red en uso.<br />

Modbus Plus<br />

Ethernet TCP/IP<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 8<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Reservado.<br />

Tercer implícito Reservado.<br />

Cuarto al octavo Acceso 1 a 5 Designa <strong>de</strong> la primera a la quinta dirección <strong>de</strong> ruta<br />

implícito<br />

<strong>de</strong> acceso; el último byte distinto <strong>de</strong> cero en la ruta<br />

<strong>de</strong> acceso será el equipo <strong>de</strong> <strong>de</strong>stino.<br />

764 31007526 12/2006


Bloque <strong>de</strong><br />

control para<br />

Ethernet TCP/IP<br />

MSTR: Maestro<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 8<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito<br />

Tercer implícito<br />

No aplicable<br />

Cuarto implícito Byte <strong>de</strong> menor Dirección <strong>de</strong> slot para el módulo <strong>de</strong> adaptador <strong>de</strong><br />

valor<br />

red.<br />

Quinto al octavo Destino Cada registro contiene un byte <strong>de</strong> la dirección IP <strong>de</strong><br />

implícito<br />

<strong>32</strong> bits.<br />

31007526 12/2006 765


MSTR: Maestro<br />

Operación MSTR <strong>de</strong> estado funcional <strong>de</strong> Peer Cop<br />

Descripción<br />

breve<br />

La operación <strong>de</strong> estado funcional <strong>de</strong> Peer Cop lee datos seleccionados <strong>de</strong> la tabla<br />

<strong>de</strong> estado <strong>de</strong> las comunicaciones Peer Cop y los carga en registros especificados<br />

4x en la memoria <strong>de</strong> señal. La tabla <strong>de</strong> estado funcional <strong>de</strong> Peer Cop tiene una<br />

longitud <strong>de</strong> 12 palabras, y están in<strong>de</strong>xadas a través <strong>de</strong> la operación MSTR como<br />

palabras 0 a 11.<br />

Aplicación en red La operación Estado funcional <strong>de</strong> Peer Cop (tipo 9 en el registro visualizado <strong>de</strong>l<br />

asiento superior) sólo pue<strong>de</strong> realizarse en re<strong>de</strong>s Modbus Plus.<br />

Utilización <strong>de</strong>l<br />

bloque <strong>de</strong><br />

control<br />

Información <strong>de</strong><br />

los datos <strong>de</strong><br />

estado funcional<br />

<strong>de</strong> las comunicaciones<br />

Peer Cop<br />

En la operación <strong>de</strong> estado funcional <strong>de</strong> Peer Cop se utilizan los registros en el<br />

bloque <strong>de</strong> control MSTR (asiento superior).<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 9<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Tamaño <strong>de</strong> datos Número <strong>de</strong> palabras solicitadas <strong>de</strong> la tabla <strong>de</strong> Peer<br />

Cop (rango 1 a 12).<br />

Tercer implícito Índice Primera palabra <strong>de</strong> la tabla que se <strong>de</strong>be leer (rango<br />

<strong>de</strong> 0 a 11, don<strong>de</strong> 0 = la primera palabra <strong>de</strong> la tabla<br />

<strong>de</strong> Peer Cop y 11 = la última palabra <strong>de</strong> la tabla ).<br />

Cuarto implícito Acceso 1 Si éste es el segundo <strong>de</strong> dos participantes locales,<br />

dé el valor 1 al byte <strong>de</strong> mayor valor.<br />

Nota: Si su PLC no permite trabajar con los módulos<br />

opcionales Modbus Plus (S985s o NOMs), no se<br />

utilizará el cuarto registro implícito.<br />

La tabla <strong>de</strong> estado funcional <strong>de</strong> Peer Cop compren<strong>de</strong> 12 registros contiguos, que<br />

pue<strong>de</strong>n ser in<strong>de</strong>xados en una operación MSTR como palabras 0 a 11. Cada bit en<br />

cada palabra <strong>de</strong> la tabla se usa para representar un aspecto <strong>de</strong>l estado funcional<br />

<strong>de</strong> las comunicaciones relativo al participante específico en la red Modbus Plus.<br />

766 31007526 12/2006


Relación bit -<br />

participante <strong>de</strong><br />

red<br />

MSTR: Maestro<br />

Los bits <strong>de</strong> las palabras 0 a 3 representan el estado funcional <strong>de</strong> las comunicaciones<br />

globales recibidas esperadas para los participantes 1 a 64. Los bits <strong>de</strong> las<br />

palabras 4 a 7 representan el estado funcional <strong>de</strong> la salida <strong>de</strong> un participante<br />

concreto. Los bits <strong>de</strong> las palabras 8 a 11 representan el estado funcional <strong>de</strong> la<br />

entrada a un participante concreto.<br />

Tipo <strong>de</strong> estado Índice <strong>de</strong> palabras Relación bit - participante <strong>de</strong> red<br />

Entrada global 0<br />

Salida específica 4<br />

Entrada<br />

específica<br />

1<br />

2<br />

3<br />

5<br />

6<br />

7<br />

8<br />

9<br />

10<br />

11<br />

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1<br />

<strong>32</strong> 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17<br />

48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33<br />

64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49<br />

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1<br />

<strong>32</strong> 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17<br />

48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33<br />

64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49<br />

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1<br />

<strong>32</strong> 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17<br />

48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33<br />

64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49<br />

31007526 12/2006 767


MSTR: Maestro<br />

Estado <strong>de</strong> un bit<br />

<strong>de</strong> estado<br />

funcional <strong>de</strong> Peer<br />

Cop<br />

El estado <strong>de</strong> un bit <strong>de</strong> estado funcional <strong>de</strong> Peer Cop refleja las condiciones actuales<br />

<strong>de</strong> la comunicación <strong>de</strong> su participante asociado. Se establecerá un bit <strong>de</strong> estado<br />

funcional cuando su participante asociado acepte entradas para su grupo <strong>de</strong> datos<br />

<strong>de</strong> entrada <strong>de</strong> Peer Cop o <strong>de</strong>tecte que otro participante ha aceptado datos <strong>de</strong> salida<br />

específicos <strong>de</strong> su grupo <strong>de</strong> datos <strong>de</strong> salida <strong>de</strong> Peer Cop. Un bit <strong>de</strong> estado se borra<br />

cuando no se ha producido ninguna comunicación con el grupo <strong>de</strong> datos asociado<br />

<strong>de</strong>ntro <strong>de</strong>l timeout <strong>de</strong> diagnóstico <strong>de</strong> Peer Cop que se ha configurado.<br />

Se borrarán todos los bits <strong>de</strong> estado <strong>de</strong> funcionamiento cuando se ejecute el<br />

comando <strong>de</strong> interfase Put Peer Cop en el momento <strong>de</strong> arranque <strong>de</strong>l PLC. Los<br />

valores <strong>de</strong> la tabla no serán válidos hasta que haya tenido lugar al menos una<br />

rotación <strong>de</strong> ciclo <strong>de</strong> token completa <strong>de</strong>spués <strong>de</strong> la ejecución <strong>de</strong>l comando <strong>de</strong><br />

interfase Put Peer Cop. El bit <strong>de</strong> estado <strong>de</strong> funcionamiento para un participante<br />

dado será siempre cero cuando su entrada asociada <strong>de</strong> Peer Cop sea nula.<br />

768 31007526 12/2006


Operación MSTR <strong>de</strong> reinicio <strong>de</strong> módulo opcional<br />

Descripción<br />

breve<br />

MSTR: Maestro<br />

La operación <strong>de</strong> reinicio módulo opcional hace que un módulo opcional Quantum<br />

NOE entre en un ciclo <strong>de</strong> reinicio para restablecer su entorno operacional.<br />

Aplicación en red La operación <strong>de</strong> reinicio <strong>de</strong> módulo opcional (tipo 11 en el registro visualizado <strong>de</strong>l<br />

asiento superior) se pue<strong>de</strong> realizar en re<strong>de</strong>s Ethernet TCP/IP y Ethernet SY/MAX,<br />

a las que se acce<strong>de</strong> por medio <strong>de</strong>l adaptador <strong>de</strong> red a<strong>de</strong>cuado. Las re<strong>de</strong>s Modbus<br />

Plus no usan esta operación.<br />

Utilización <strong>de</strong>l<br />

bloque <strong>de</strong><br />

control<br />

Bloque <strong>de</strong><br />

control para<br />

Ethernet TCP/IP<br />

Bloque <strong>de</strong><br />

control para<br />

Ethernet SY/MAX<br />

En una operación <strong>de</strong> reinicio <strong>de</strong> módulo opcional, los registros en el bloque <strong>de</strong><br />

control (el asiento superior) MSTR difieren según el tipo <strong>de</strong> red que se utilice:<br />

Ethernet TCP/IP<br />

Ethernet SY/MAX<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 10<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un<br />

error MSTR, cuando éste sea importante.<br />

Segundo implícito<br />

Tercer implícito<br />

No aplicable<br />

Cuarto implícito I<strong>de</strong>ntificación <strong>de</strong> Número visualizado en el byte inferior, en el<br />

slot<br />

rango 1 a 16 que indica el slot en el bastidor<br />

local don<strong>de</strong> resi<strong>de</strong> el módulo opcional.<br />

Quinto al octavo implícitos No aplicable<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 10<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un<br />

error MSTR, cuando éste sea importante.<br />

Segundo implícito<br />

Tercer implícito<br />

No aplicable<br />

Cuarto implícito I<strong>de</strong>ntificación <strong>de</strong> Byte <strong>de</strong> menor valor: dirección <strong>de</strong> slot para<br />

slot<br />

el módulo <strong>de</strong> adaptador <strong>de</strong> red.<br />

Quinto al octavo implícitos No aplicable<br />

31007526 12/2006 769


MSTR: Maestro<br />

Operación MSTR <strong>de</strong> lectura <strong>de</strong> CTE (tabla <strong>de</strong> extensión <strong>de</strong> configuración)<br />

Descripción<br />

breve<br />

La operación <strong>de</strong> lectura <strong>de</strong> CTE lee una cantidad dada <strong>de</strong> bytes <strong>de</strong>s<strong>de</strong> la tabla <strong>de</strong><br />

extensión <strong>de</strong> configuración Ethernet al búfer indicado en la memoria <strong>de</strong>l PLC. Los<br />

bytes que <strong>de</strong>ben leerse comienzan con un offset <strong>de</strong> byte <strong>de</strong>s<strong>de</strong> el comienzo <strong>de</strong> la<br />

CTE. El contenido <strong>de</strong> la tabla Ethernet CTE se visualiza en el asiento intermedio <strong>de</strong>l<br />

bloque MSTR.<br />

Aplicación en red La operación <strong>de</strong> lectura <strong>de</strong> CTE (tipo 11 en el registro visualizado <strong>de</strong>l asiento<br />

superior) se pue<strong>de</strong> realizar en re<strong>de</strong>s Ethernet TCP/IP y Ethernet SY/MAX, a las que<br />

se acce<strong>de</strong> por medio <strong>de</strong>l adaptador <strong>de</strong> red a<strong>de</strong>cuado. Las re<strong>de</strong>s Modbus Plus no<br />

usan esta operación.<br />

Utilización <strong>de</strong>l<br />

bloque <strong>de</strong><br />

control<br />

Bloque <strong>de</strong><br />

control para<br />

Ethernet TCP/IP<br />

En una operación <strong>de</strong> lectura <strong>de</strong> CTE, los registros en el bloque <strong>de</strong> control (el asiento<br />

superior) MSTR difieren según el tipo <strong>de</strong> red en uso.<br />

Ethernet TCP/IP<br />

Ethernet SY/MAX<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 11<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito<br />

Tercer implícito<br />

No aplicable<br />

Cuarto implícito Índice topológico Ya sea un valor visualizado en el byte superior <strong>de</strong>l<br />

registro o sin uso.<br />

I<strong>de</strong>ntificación <strong>de</strong> Número visualizado en el byte inferior, en el rango 1<br />

slot<br />

a 16 que indica el slot en el bastidor local don<strong>de</strong><br />

resi<strong>de</strong> el módulo opcional.<br />

Quinto al octavo<br />

implícitos<br />

No aplicable<br />

770 31007526 12/2006


Bloque <strong>de</strong><br />

control para<br />

Ethernet SY/MAX<br />

Aplicación <strong>de</strong><br />

visualización<br />

CTE (asiento<br />

intermedio)<br />

MSTR: Maestro<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 11<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Tamaño <strong>de</strong> datos Cantidad <strong>de</strong> palabras transferidas.<br />

Tercer implícito Dirección <strong>de</strong> base Offset <strong>de</strong> byte en la estructura <strong>de</strong> registro <strong>de</strong>l PLC<br />

indicando en el lugar en que serán escritos los bytes<br />

CTE.<br />

Cuarto implícito Byte <strong>de</strong> menor<br />

valor<br />

Dirección <strong>de</strong>l slot <strong>de</strong>l módulo NOE.<br />

Quinto al octavo<br />

implícitos<br />

Byte <strong>de</strong> mayor<br />

valor<br />

No aplicable<br />

Terminador (FF hexa<strong>de</strong>cimal).<br />

Se visualizan los valores en la tabla <strong>de</strong> extensión <strong>de</strong> configuración Ethernet (CTE)<br />

en una serie <strong>de</strong> registros en el asiento intermedio <strong>de</strong> la instrucción MSTR cuando<br />

se implementa una operación <strong>de</strong> lectura <strong>de</strong> CTE. El asiento intermedio contiene el<br />

primero <strong>de</strong> 11 registros 4x sucesivos.<br />

Los registros visualizan los siguientes datos CTE.<br />

Parámetro Registro Contenido<br />

Tipo <strong>de</strong> transferencia Visualizado 1 = 802.3<br />

2 = Ethernet<br />

Dirección IP Primer implícito Primer byte <strong>de</strong> la dirección IP.<br />

Segundo implícito Segundo byte <strong>de</strong> la dirección IP.<br />

Tercer implícito Tercer byte <strong>de</strong> la dirección IP.<br />

Cuarto implícito Cuarto byte <strong>de</strong> la dirección IP.<br />

Máscara <strong>de</strong> subred Quinto implícito Palabra superior.<br />

Sexto implícito Palabra inferior.<br />

Gateway Séptimo implícito Primer byte <strong>de</strong> gateway.<br />

Octavo implícito Segundo byte <strong>de</strong> gateway.<br />

Noveno implícito Tercer byte <strong>de</strong> gateway.<br />

Décimo implícito Cuarto byte <strong>de</strong> gateway.<br />

31007526 12/2006 771


MSTR: Maestro<br />

Operación MSTR <strong>de</strong> escritura en CTE (tabla <strong>de</strong> extensión <strong>de</strong> configuración)<br />

Descripción<br />

breve<br />

La operación <strong>de</strong> escritura en CTE escribe la tabla <strong>de</strong> configuración CTE a partir <strong>de</strong><br />

los datos especificados en el asiento intermedio a una tabla <strong>de</strong> extensión <strong>de</strong><br />

configuración Ethernet o a un slot especificado.<br />

Aplicación en red La operación <strong>de</strong> escritura en CTE (tipo 12 en el registro visualizado <strong>de</strong>l asiento<br />

superior) se pue<strong>de</strong> realizar en re<strong>de</strong>s Ethernet TCP/IP y Ethernet SY/MAX, a las que<br />

se acce<strong>de</strong> por medio <strong>de</strong>l adaptador <strong>de</strong> red a<strong>de</strong>cuado. Las re<strong>de</strong>s Modbus Plus no<br />

usan esta operación.<br />

Utilización <strong>de</strong>l<br />

bloque <strong>de</strong><br />

control<br />

Bloque <strong>de</strong><br />

control para<br />

Ethernet TCP/IP<br />

En una operación <strong>de</strong> escritura en CTE, los registros en el bloque <strong>de</strong> control (el<br />

asiento superior) MSTR difieren según el tipo <strong>de</strong> red en uso.<br />

Ethernet TCP/IP<br />

Ethernet SY/MAX<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 12<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito<br />

Tercer implícito<br />

No aplicable<br />

Cuarto implícito Índice topológico Ya sea un valor visualizado en el byte superior <strong>de</strong>l<br />

registro o sin uso.<br />

I<strong>de</strong>ntificación <strong>de</strong> Número visualizado en el byte inferior, en el rango 1<br />

slot<br />

a 16 que indica el slot en el bastidor local don<strong>de</strong><br />

resi<strong>de</strong> el módulo opcional.<br />

Quinto al octavo<br />

implícitos<br />

No aplicable<br />

772 31007526 12/2006


Bloque <strong>de</strong><br />

control para<br />

Ethernet SY/MAX<br />

Aplicación <strong>de</strong><br />

visualización<br />

CTE (asiento<br />

intermedio)<br />

MSTR: Maestro<br />

Registro Función Contenido<br />

Visualizado Tipo <strong>de</strong> operación 12<br />

Primer implícito Estado <strong>de</strong> error Muestra un valor hexa<strong>de</strong>cimal que indica un error<br />

MSTR, cuando éste sea importante.<br />

Segundo implícito Tamaño <strong>de</strong> datos Cantidad <strong>de</strong> palabras transferidas.<br />

Tercer implícito Dirección <strong>de</strong> base Offset <strong>de</strong> byte en la estructura <strong>de</strong> registro <strong>de</strong>l PLC<br />

indicando en el lugar en que serán escritos los bytes<br />

CTE.<br />

Cuarto implícito Byte <strong>de</strong> menor<br />

valor<br />

Dirección <strong>de</strong>l slot <strong>de</strong>l módulo NOE.<br />

Byte <strong>de</strong> mayor<br />

valor<br />

Número <strong>de</strong> estación <strong>de</strong> <strong>de</strong>stino.<br />

Quinto implícito Terminador FF hexa<strong>de</strong>cimal.<br />

Sexto al octavo<br />

implícitos<br />

No aplicable<br />

Se visualizan los valores en la tabla <strong>de</strong> extensión <strong>de</strong> configuración Ethernet (CTE)<br />

en una serie <strong>de</strong> registros en el asiento intermedio <strong>de</strong> la instrucción MSTR cuando<br />

se implementa una operación <strong>de</strong> escritura en CTE. El asiento intermedio contiene<br />

el primero <strong>de</strong> 11 registros 4x sucesivos.<br />

Los registros se utilizan para transferir los siguientes datos CTE.<br />

Parámetro Registro Contenido<br />

Tipo <strong>de</strong> transferencia Visualizado 1 = 802.3<br />

2 = Ethernet<br />

Dirección IP Primer implícito Primer byte <strong>de</strong> la dirección IP.<br />

Segundo implícito Segundo byte <strong>de</strong> la dirección IP.<br />

Tercer implícito Tercer byte <strong>de</strong> la dirección IP.<br />

Cuarto implícito Cuarto byte <strong>de</strong> la dirección IP.<br />

Máscara <strong>de</strong> subred Quinto implícito Palabra superior.<br />

Sexto implícito Palabra inferior.<br />

Gateway Séptimo implícito Primer byte <strong>de</strong> gateway.<br />

Octavo implícito Segundo byte <strong>de</strong> gateway.<br />

Noveno implícito Tercer byte <strong>de</strong> gateway.<br />

Décimo implícito Cuarto byte <strong>de</strong> gateway.<br />

31007526 12/2006 773


MSTR: Maestro<br />

Estadísticas <strong>de</strong> red Modbus Plus<br />

Estadísticas <strong>de</strong><br />

red Modbus Plus<br />

La tabla siguiente muestra las estadísticas disponibles sobre la red Mobdus Plus.<br />

Pue<strong>de</strong> adquirir esa información usando la operación MSTR apropiada o mediante<br />

el uso <strong>de</strong>l código <strong>de</strong> función 8 <strong>de</strong> Modbus.<br />

Nota: Si realiza la operación <strong>de</strong> borrado <strong>de</strong> estadísticas locales o <strong>de</strong> borrado <strong>de</strong><br />

estadísticas remotas, se borrarán solamente las palabras 13 a a 22.<br />

Estadísticas <strong>de</strong> red Modbus Plus.<br />

Palabra Bits Significado<br />

00 I<strong>de</strong>ntificación <strong>de</strong> tipo <strong>de</strong> participante.<br />

0 Tipo <strong>de</strong> participante <strong>de</strong>sconocido.<br />

1 Participante PLC.<br />

2 Participante puente Mobdus.<br />

3 Participante equipo <strong>de</strong> programación.<br />

4 Participante Bridge Plus.<br />

5 Participante E/S Peer.<br />

01 0 ... 11 Número <strong>de</strong> versión <strong>de</strong>l software en hexa<strong>de</strong>cimal (para leer, separe los bits 12–15 <strong>de</strong> la palabra).<br />

12 ... 14 Reservado.<br />

15 Define el contador <strong>de</strong> errores <strong>de</strong> la palabra 15 (véase palabra 15).<br />

El bit <strong>de</strong> mayor valor <strong>de</strong>fine el uso <strong>de</strong> contadores <strong>de</strong> error en la palabra 15. La mitad <strong>de</strong> menor<br />

valor <strong>de</strong>l byte <strong>de</strong> mayor valor, más el byte <strong>de</strong> menor valor, contiene la versión <strong>de</strong>l<br />

software,<br />

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0<br />

02 Dirección <strong>de</strong> red para esta estación.<br />

Software version number (in HEX)<br />

Word 15 error counter (see word 15)<br />

774 31007526 12/2006


Palabra Bits Significado<br />

MSTR: Maestro<br />

03 Variable <strong>de</strong> estado MAC:<br />

0 Estado <strong>de</strong> puesta en marcha.<br />

1 Estado <strong>de</strong> supervisión offline.<br />

2 Estado <strong>de</strong> duplicación offline.<br />

3 Estado <strong>de</strong> reposo.<br />

4 Estado <strong>de</strong> uso <strong>de</strong> token.<br />

5 Estado <strong>de</strong> respuesta <strong>de</strong> trabajo.<br />

6 Estado <strong>de</strong> transferencia <strong>de</strong> token.<br />

7 Estado <strong>de</strong> solicitud <strong>de</strong> respuesta.<br />

8 Estado <strong>de</strong> verificación <strong>de</strong> transferencia.<br />

9 Estado <strong>de</strong> reclamación <strong>de</strong> token.<br />

10 Estado <strong>de</strong> reclamación <strong>de</strong> respuesta.<br />

04 Estado Peer (código LED); proporciona el estado <strong>de</strong> esta unidad con respecto a la red:<br />

0 Operación <strong>de</strong> vinculación <strong>de</strong> supervisión.<br />

<strong>32</strong> Operación <strong>de</strong> vinculación normal.<br />

64 Nunca se recibe el token.<br />

96 Estación aislada.<br />

128 Duplicación <strong>de</strong> estación.<br />

05 Contador <strong>de</strong> tansferencias <strong>de</strong> token; se incrementa cada vez que la estación recibe el token.<br />

06 Tiempo <strong>de</strong> rotación <strong>de</strong> token en ms.<br />

07 Bajo Mapa binario <strong>de</strong> fallo <strong>de</strong>l master <strong>de</strong> datos durante propiedad <strong>de</strong>l token.<br />

Alto Mapa binario <strong>de</strong> fallo <strong>de</strong>l master <strong>de</strong> programa durante la propiedad <strong>de</strong>l token.<br />

08 Bajo Mapa binario <strong>de</strong> trabajo propietario <strong>de</strong>l token <strong>de</strong>l master <strong>de</strong> datos.<br />

Alto Mapa binario <strong>de</strong> trabajo propietario <strong>de</strong>l token <strong>de</strong>l master <strong>de</strong> programa.<br />

09 Bajo Mapa binario <strong>de</strong> trabajo propietario <strong>de</strong>l token <strong>de</strong>l slave <strong>de</strong> datos.<br />

Alto Mapa binario <strong>de</strong> trabajo propietario <strong>de</strong>l token <strong>de</strong>l slave <strong>de</strong> programa.<br />

10 Alto Mapa binario <strong>de</strong> petición <strong>de</strong> transferencia <strong>de</strong> comando <strong>de</strong> slave <strong>de</strong> datos/obtener slave.<br />

11 Bajo Mapa binario <strong>de</strong> petición <strong>de</strong> transferencia <strong>de</strong> respuesta <strong>de</strong> master <strong>de</strong> programa/obtener master.<br />

Alto Mapa binario <strong>de</strong> petición <strong>de</strong> transferencia <strong>de</strong> comando <strong>de</strong> slave <strong>de</strong> programa/obtener slave.<br />

12 Bajo Mapa binario <strong>de</strong> estado <strong>de</strong> conexión <strong>de</strong>l master <strong>de</strong> programa.<br />

Alto Mapa binario <strong>de</strong> solicitud <strong>de</strong> finalización automática <strong>de</strong> sesión <strong>de</strong>l slave <strong>de</strong> programa.<br />

13 Bajo Contador <strong>de</strong> errores <strong>de</strong> retraso <strong>de</strong> transmisión previa.<br />

Alto Contador <strong>de</strong> errores <strong>de</strong> <strong>de</strong>sbor<strong>de</strong> <strong>de</strong>l búfer <strong>de</strong> recepción DMA.<br />

31007526 12/2006 775


MSTR: Maestro<br />

Palabra Bits Significado<br />

14 Bajo Contador <strong>de</strong> recepciones <strong>de</strong> comando repetido.<br />

Alto Contador <strong>de</strong> errores <strong>de</strong> tamaño <strong>de</strong> bloque <strong>de</strong> datos.<br />

15 Si no está establecido el bit 15 <strong>de</strong> la palabra 1, la palabra 15 tendrá el siguiente significado:<br />

Bajo Contador <strong>de</strong> errores <strong>de</strong> colisión–interrupción <strong>de</strong>l receptor.<br />

Alto Contador <strong>de</strong> errores <strong>de</strong> ajuste <strong>de</strong>l receptor.<br />

Si está establecido el bit 15 <strong>de</strong> la palabra 1, la palabra 15 tendrá el siguiente significado:<br />

Bajo Error <strong>de</strong> bloque <strong>de</strong> datos en cable A.<br />

Alto Error <strong>de</strong> bloque <strong>de</strong> datos en cable B.<br />

16 Bajo Contador <strong>de</strong> errores <strong>de</strong> receptor CRC.<br />

Alto Contador <strong>de</strong> errores <strong>de</strong> longitud <strong>de</strong> paquete no válida.<br />

17 Bajo Contador <strong>de</strong> errores <strong>de</strong> dirección <strong>de</strong> unión no válida.<br />

Alto Contador <strong>de</strong> errores <strong>de</strong> <strong>de</strong>sbor<strong>de</strong> <strong>de</strong> DMA en el búfer <strong>de</strong> transmisión.<br />

18 Bajo Contador <strong>de</strong> errores <strong>de</strong> longitud <strong>de</strong> paquete interno no válida.<br />

Alto Contador <strong>de</strong> errores <strong>de</strong> código <strong>de</strong> función MAC no válida.<br />

19 Bajo Contador <strong>de</strong> reintentos <strong>de</strong> comunicaciones.<br />

Alto Contador <strong>de</strong> errores <strong>de</strong> fallos <strong>de</strong> comunicación.<br />

20 Bajo Contador <strong>de</strong> recepción satisfactoria <strong>de</strong> paquete.<br />

Alto Contador <strong>de</strong> errores <strong>de</strong> respuesta no recibida.<br />

21 Bajo Contador <strong>de</strong> errores <strong>de</strong> recepción <strong>de</strong> respuesta <strong>de</strong> excepción.<br />

Alto Contador <strong>de</strong> errores <strong>de</strong> ruta <strong>de</strong> acceso inesperada.<br />

22 Bajo Contador <strong>de</strong> errores <strong>de</strong> respuesta inesperada.<br />

Alto Contador <strong>de</strong> errores <strong>de</strong> transacción olvidada.<br />

23 Bajo Mapa binario <strong>de</strong> tabla <strong>de</strong> estación activa, participantes 1 a 8.<br />

Alto Mapa binario <strong>de</strong> tabla <strong>de</strong> estación activa, participantes 9 a 16.<br />

24 Bajo Mapa binario <strong>de</strong> tabla <strong>de</strong> estación activa, participantes 17 a 24.<br />

Alto Mapa binario <strong>de</strong> tabla <strong>de</strong> estación activa, participantes 25 a <strong>32</strong>.<br />

25 Bajo Mapa binario <strong>de</strong> tabla <strong>de</strong> estación activa, participantes 33 a 40.<br />

Alto Mapa binario <strong>de</strong> tabla <strong>de</strong> estación activa, participantes 41 a 48.<br />

26 Bajo Mapa binario <strong>de</strong> tabla <strong>de</strong> estación activa, participantes 49 a 56.<br />

Alto Mapa binario <strong>de</strong> tabla <strong>de</strong> estación activa, participantes 57 a 64.<br />

27 Bajo Mapa binario <strong>de</strong> tabla <strong>de</strong> estación <strong>de</strong> token, participantes 1 a 8.<br />

Alto Mapa binario <strong>de</strong> tabla <strong>de</strong> estación <strong>de</strong> token, participantes 9 a 16.<br />

28 Bajo Mapa binario <strong>de</strong> tabla <strong>de</strong> estación <strong>de</strong> token, participantes 17 a 24.<br />

Alto Mapa binario <strong>de</strong> tabla <strong>de</strong> estación <strong>de</strong> token, participantes 25 a <strong>32</strong>.<br />

776 31007526 12/2006


Palabra Bits Significado<br />

29 Bajo Mapa binario <strong>de</strong> tabla <strong>de</strong> estación <strong>de</strong> token, participantes 33 a 40.<br />

Alto Mapa binario <strong>de</strong> tabla <strong>de</strong> estación <strong>de</strong> token, participantes 41 a 48.<br />

30 Bajo Mapa binario <strong>de</strong> tabla <strong>de</strong> estación <strong>de</strong> token, participantes 49 a 56.<br />

Alto Mapa binario <strong>de</strong> tabla <strong>de</strong> estación <strong>de</strong> token, participantes 57 a 64.<br />

31 Bajo Mapa binario <strong>de</strong> tabla presente <strong>de</strong> datos globales, participantes 1 a 8.<br />

Alto Mapa binario <strong>de</strong> tabla presente <strong>de</strong> datos globales, participantes 9 a 16.<br />

<strong>32</strong> Bajo Mapa binario <strong>de</strong> tabla presente <strong>de</strong> datos globales, participantes 17 a 24.<br />

Alto Mapa binario <strong>de</strong> tabla presente <strong>de</strong> datos globales, participantes 25 a <strong>32</strong>.<br />

33 Bajo Mapa binario <strong>de</strong> tabla presente <strong>de</strong> datos globales, participantes 33 a 40.<br />

Alto Mapa binario <strong>de</strong> tabla presente <strong>de</strong> datos globales, participantes 41 a 48.<br />

34 Bajo Mapa binario <strong>de</strong> tabla <strong>de</strong> datos globales presente, participantes 49 ... 56.<br />

Alto Mapa binario <strong>de</strong> tabla presente <strong>de</strong> datos globales, participantes 57 a 64.<br />

35 Bajo Mapa binario <strong>de</strong> búfer <strong>de</strong> recepción en uso, búfer 1 a 8.<br />

Alto Mapa binario <strong>de</strong> búfer <strong>de</strong> recepción en uso, búfer 9 a 16.<br />

36 Bajo Mapa binario <strong>de</strong> búfer <strong>de</strong> recepción en uso, búfer 17 a 24.<br />

Alto Mapa binario <strong>de</strong> búfer <strong>de</strong> recepción en uso, búfer 25 a <strong>32</strong>.<br />

37 Bajo Mapa binario <strong>de</strong> búfer <strong>de</strong> recepción en uso, búfer 33 a 40.<br />

Alto Contador <strong>de</strong> inicio procesado <strong>de</strong> comando <strong>de</strong> administración <strong>de</strong> estación.<br />

38 Bajo Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong> master <strong>de</strong> datos 1.<br />

Alto Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong> master <strong>de</strong> datos 2.<br />

39 Bajo Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong> master <strong>de</strong> datos 3.<br />

Alto Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong> master <strong>de</strong> datos 4.<br />

40 Bajo Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong> master <strong>de</strong> datos 5.<br />

Alto Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong> master <strong>de</strong> datos 6.<br />

41 Bajo Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong> master <strong>de</strong> datos 7.<br />

Alto Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong> master <strong>de</strong> datos 8.<br />

42 Bajo Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong> slave <strong>de</strong> datos 41.<br />

Alto Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong> slave <strong>de</strong> datos 42.<br />

43 Bajo Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong> slave <strong>de</strong> datos 43.<br />

Alto Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong> slave <strong>de</strong> datos 44.<br />

44 Bajo Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong> slave <strong>de</strong> datos 45.<br />

Alto Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong> slave <strong>de</strong> datos 46.<br />

45 Bajo Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong> slave <strong>de</strong> datos 47.<br />

Alto Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong> slave <strong>de</strong> datos 48.<br />

MSTR: Maestro<br />

31007526 12/2006 777


MSTR: Maestro<br />

Palabra Bits Significado<br />

46 Bajo Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong>l master <strong>de</strong> programa 81.<br />

Alto Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong>l master <strong>de</strong> programa 82.<br />

47 Bajo Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong>l master <strong>de</strong> programa 83.<br />

Alto Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong>l master <strong>de</strong> programa 84.<br />

48 Bajo Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong>l master <strong>de</strong> programa.<br />

Alto Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong>l master <strong>de</strong> programa 86.<br />

49 Bajo Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong>l master <strong>de</strong> programa 87.<br />

Alto Contador <strong>de</strong> inicio <strong>de</strong> comando <strong>de</strong> ruta <strong>de</strong> salida <strong>de</strong>l master <strong>de</strong> programa 88.<br />

50 Bajo Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong>l slave <strong>de</strong> programa C1.<br />

Alto Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong>l slave <strong>de</strong> programa C2.<br />

51 Bajo Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong>l slave <strong>de</strong> programa C3.<br />

Alto Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong>l slave <strong>de</strong> programa C4.<br />

52 Bajo Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong>l slave <strong>de</strong> programa C5.<br />

Alto Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong>l slave <strong>de</strong> programa C6.<br />

53 Bajo Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong>l slave <strong>de</strong> programa C7.<br />

Alto Contador <strong>de</strong> comandos procesados <strong>de</strong> ruta <strong>de</strong> entrada <strong>de</strong>l slave <strong>de</strong> programa C8.<br />

778 31007526 12/2006


Estadísticas Ethernet TCP/IP<br />

Estadísticas<br />

Ethernet TCP/IP<br />

MSTR: Maestro<br />

Una tarjeta Ethernet TCP/IP respon<strong>de</strong> a los comandos <strong>de</strong> obtención <strong>de</strong> estadísticas<br />

locales y <strong>de</strong> establecimiento <strong>de</strong> estadísticas locales con la información que se<br />

ofrece a continuación.<br />

Palabra Significado<br />

00 ... 02 Dirección MAC; por ejemplo, si la dirección MAC es 00 00 54 00 12 34, se visualizará<br />

<strong>de</strong> la siguiente manera:<br />

Palabra Contenido<br />

00 00 00<br />

01 00 54<br />

02 34 12<br />

03 Estado <strong>de</strong> tarjeta Significado<br />

0x0001 En marcha<br />

0x4000 APPI LED (1 = Activo, 0 = Inactivo)<br />

0x8000 Conexión LED<br />

04 y 05 Cantidad <strong>de</strong> interrupts <strong>de</strong>l receptor.<br />

06 y 07 Cantidad <strong>de</strong> interrupts <strong>de</strong>l transmisor.<br />

08 y 09 Cantidad <strong>de</strong> errores <strong>de</strong> timeout <strong>de</strong> transmisión.<br />

10 y 11 Cantidad <strong>de</strong> errores <strong>de</strong> <strong>de</strong>tección <strong>de</strong> colisión.<br />

12 y 13 Paquetes perdidos.<br />

14 y 15 Cantidad <strong>de</strong> errores <strong>de</strong> memoria.<br />

16 y 17 Número <strong>de</strong> veces que el controlador ha reiniciado Lance.<br />

18 y 19 Cantidad <strong>de</strong> errores en bloque <strong>de</strong> datos <strong>de</strong> recepción.<br />

20 y 21 Cantidad <strong>de</strong> errores <strong>de</strong> <strong>de</strong>sbor<strong>de</strong> <strong>de</strong> recepción.<br />

22 y 23 Cantidad <strong>de</strong> errores CRC <strong>de</strong> recepción.<br />

24 y 25 Cantidad <strong>de</strong> errores <strong>de</strong>l búfer <strong>de</strong> recepción.<br />

26 y 27 Cantidad <strong>de</strong> errores <strong>de</strong>l búfer <strong>de</strong> transmisión.<br />

28 y 29 Cantidad <strong>de</strong> transgresión por <strong>de</strong>bajo <strong>de</strong>l silo <strong>de</strong> transmisión.<br />

30 y 31 Cantidad <strong>de</strong> colisiones posteriores.<br />

<strong>32</strong> y 33 Cantidad <strong>de</strong> pérdida <strong>de</strong> portadora.<br />

34 y 35 Número <strong>de</strong> reintentos.<br />

36 y 37 Dirección IP; por ejemplo, si la dirección IP es 198.202.137.113 (o c6 CA 89 71), se<br />

visualizará <strong>de</strong> la siguiente manera:<br />

Palabra Contenido<br />

36 89 71<br />

37 C6 CA<br />

31007526 12/2006 779


MSTR: Maestro<br />

Errores <strong>de</strong> ejecución<br />

Errores <strong>de</strong><br />

ejecución<br />

Si se da un error durante una operación MSTR, aparecerá un código hexa<strong>de</strong>cimal<br />

<strong>de</strong> error en el primer registro implícito en el bloque <strong>de</strong> control (asiento superior).<br />

Los códigos <strong>de</strong> error <strong>de</strong> función son específicos para cada red.<br />

Códigos <strong>de</strong> error <strong>de</strong> Modbus Plus y Ethernet SY/MAX.<br />

Códigos <strong>de</strong> error específicos <strong>de</strong> SY/MAX.<br />

Códigos <strong>de</strong> error <strong>de</strong> Ethernet TCP/IP.<br />

Códigos <strong>de</strong> error CTE para Ethernet SY/MAX y TCP/IP.<br />

780 31007526 12/2006


Códigos <strong>de</strong> error Modbus Plus y Ethernet SY/MAX<br />

Forma <strong>de</strong>l código<br />

<strong>de</strong> error <strong>de</strong><br />

función<br />

Código <strong>de</strong> error<br />

hexa<strong>de</strong>cimal<br />

MSTR: Maestro<br />

La forma <strong>de</strong>l código <strong>de</strong> error <strong>de</strong> función para las transacciones Modbus Plus y<br />

Ethernet SY/MAX es Mmss, don<strong>de</strong><br />

M representa el código mayor<br />

m representa el código menor<br />

ss representa un subcódigo<br />

Código <strong>de</strong> error<br />

hexa<strong>de</strong>cimal<br />

Significado<br />

1001 El usuario ha anulado el elemento MSTR.<br />

2001 Se ha especificado un tipo <strong>de</strong> operación no apoyada en el bloque <strong>de</strong><br />

control.<br />

2002 Se han modificado uno o más parámetros <strong>de</strong>l bloque <strong>de</strong> control mientras<br />

el elemento MSTR estaba activo (sólo se aplica a operaciones que<br />

realizan varios ciclos antes <strong>de</strong> completarse). Sólo se podrán modificar<br />

los parámetros <strong>de</strong>l bloque <strong>de</strong> control cuando el elemento MSTR no esté<br />

activo.<br />

2003 Valor no válido en el campo <strong>de</strong> longitud <strong>de</strong>l bloque <strong>de</strong> control.<br />

2004 Valor no válido en el campo <strong>de</strong> offset <strong>de</strong>l bloque <strong>de</strong> control.<br />

2005 Valores no válidos en los campos <strong>de</strong> longitud y <strong>de</strong> offset <strong>de</strong>l bloque <strong>de</strong><br />

control.<br />

2006 Zona <strong>de</strong> datos <strong>de</strong>l equipo slave no válida.<br />

2007 Área <strong>de</strong> red <strong>de</strong>l slave no válida.<br />

2008 Acceso a la red <strong>de</strong>l slave no válido.<br />

2009 Acceso igual a su propia dirección.<br />

200A Se intentó obtener más palabras <strong>de</strong> datos globales que las disponibles.<br />

30ss Respuesta <strong>de</strong> excepción en slave Modbus.<br />

4001 Respuesta <strong>de</strong> slave Modbus incoherente.<br />

5001 Respuesta <strong>de</strong> red incoherente.<br />

6mss) Error <strong>de</strong> ruta <strong>de</strong> acceso.<br />

31007526 12/2006 781


MSTR: Maestro<br />

Valor<br />

hexa<strong>de</strong>cimal ss<br />

en código <strong>de</strong><br />

error 30ss<br />

Valor<br />

hexa<strong>de</strong>cimal ss<br />

en código <strong>de</strong><br />

error 6mss<br />

El subcampo ss en código <strong>de</strong> error 30ss es:<br />

Valor hexa<strong>de</strong>cimal <strong>de</strong> ss Significado<br />

01 El dispositivo slave no apoya la operación solicitada.<br />

02 Se han solicitado registros <strong>de</strong> dispositivos slave no existentes.<br />

03 Se ha solicitado un valor <strong>de</strong> dato no válido.<br />

04 Reservado.<br />

05 El dispositivo slave ha aceptado un comando <strong>de</strong> programa <strong>de</strong><br />

larga duración.<br />

06 La función no se pue<strong>de</strong> ejecutar ahora: se está ejecutando un<br />

comando <strong>de</strong> larga duración.<br />

07 El dispositivo slave ha rechazado un comando <strong>de</strong> programa <strong>de</strong><br />

larga duración.<br />

08 ... 255 Reservado.<br />

El subcampo m en el código <strong>de</strong> error 6mss es un índice <strong>de</strong>ntro <strong>de</strong> la información <strong>de</strong><br />

acceso que indica dón<strong>de</strong> se ha <strong>de</strong>tectado un error (un valor 0 indica el participante<br />

local, un 2 el segundo dispositivo en la ruta, etc.).<br />

El subcampo ss en código <strong>de</strong> error 6mss es:<br />

Valor hexa<strong>de</strong>cimal<br />

<strong>de</strong> ss<br />

Significado<br />

01 No se recibió respuesta.<br />

02 Acceso al programa <strong>de</strong>negado.<br />

03 Participante en offline y no habilitado para la comunicación.<br />

04 Se recibió una respuesta <strong>de</strong> excepción.<br />

05 Las rutas <strong>de</strong> acceso a los datos <strong>de</strong>l participante <strong>de</strong> la ruta están<br />

ocupadas.<br />

06 Se ha bloqueado el dispositivo slave.<br />

07 Dirección errónea <strong>de</strong> <strong>de</strong>stino.<br />

08 Tipo <strong>de</strong> participante inválido en la ruta <strong>de</strong> acceso.<br />

10 El slave ha rechazado el comando.<br />

20 El dispositivo slave ha olvidado la transacción iniciada.<br />

40 Se ha recibido una ruta <strong>de</strong> acceso <strong>de</strong> salida <strong>de</strong>l master inesperada.<br />

80 Se recibió una respuesta inesperada.<br />

F001 El participante <strong>de</strong> <strong>de</strong>stino especificado por la operación MSTR es<br />

incorrecto.<br />

782 31007526 12/2006


Códigos <strong>de</strong> error específicos <strong>de</strong> SY/MAX<br />

MSTR: Maestro<br />

Tipos <strong>de</strong> errores Pue<strong>de</strong> informarse <strong>de</strong> tres tipos <strong>de</strong> error adicionales en la instrucción MSTR cuando<br />

se trabaja en Ethernet SY/MAX.<br />

Códigos <strong>de</strong> error<br />

hexa<strong>de</strong>cimales<br />

específicos <strong>de</strong><br />

SY/MAX<br />

Los códigos <strong>de</strong> error tienen las siguientes <strong>de</strong>signaciones:<br />

Errores 71xx: Errores <strong>de</strong>tectados por el dispositivo remoto SY/MAX.<br />

Errores 72xx: Errores <strong>de</strong>tectados por el servidor.<br />

Errores 73xx: Errores <strong>de</strong>tectados por el traductor Quantum.<br />

Códigos <strong>de</strong> error hexa<strong>de</strong>cimales específicos <strong>de</strong> SY/MAX.<br />

Código <strong>de</strong> error<br />

hexa<strong>de</strong>cimal<br />

Significado<br />

7101 Código operacional inválido <strong>de</strong>tectado por el dispositivo remoto<br />

SY/MAX.<br />

7103 Dirección inválida <strong>de</strong>tectada por el dispositivo remoto SY/MAX.<br />

7109 Intento <strong>de</strong> escribir en un registro <strong>de</strong> sólo lectura <strong>de</strong>tectado por el<br />

dispositivo remoto SY/MAX.<br />

710F Desbor<strong>de</strong> <strong>de</strong> receptor <strong>de</strong>tectado por el dispositivo remoto SY/MAX.<br />

7110 Longitud inválida <strong>de</strong>tectada por el dispositivo remoto SY/MAX.<br />

7111 Dispositivo remoto inactivo, sin comunicación (se produce <strong>de</strong>spués <strong>de</strong><br />

varios reintentos y cuando ha expirado el timeout), <strong>de</strong>tectado por el<br />

dispositivo remoto SY/MAX.<br />

7113 Parámetro inválido en una operación <strong>de</strong> lectura <strong>de</strong>tectado por el<br />

dispositivo remoto SY/MAX.<br />

711D Acceso inválido <strong>de</strong>tectado por el dispositivo remoto SY/MAX.<br />

7149 Parámetro inválido en una operación <strong>de</strong> escritura <strong>de</strong>tectado por el<br />

dispositivo remoto SY/MAX.<br />

714B Número <strong>de</strong> estación inválida <strong>de</strong>tectado por el dispositivo remoto SY/<br />

MAX.<br />

7201 Código operacional inválido <strong>de</strong>tectado por el servidor SY/MAX.<br />

7203 Dirección inválida <strong>de</strong>tectada por el servidor SY/MAX.<br />

7209 Intento <strong>de</strong> escribir en un registro <strong>de</strong> sólo lectura <strong>de</strong>tectado por el servidor<br />

SY/MAX.<br />

720F Desbor<strong>de</strong> <strong>de</strong> receptor <strong>de</strong>tectado por el servidor SY/MAX.<br />

7210 Longitud inválida <strong>de</strong>tectada por el servidor SY/MAX.<br />

7211 Dispositivo remoto inactivo, sin comunicación (ocurre <strong>de</strong>spués <strong>de</strong> varios<br />

reintentos y cuando ha expirado el timeout), <strong>de</strong>tectado por el servidor<br />

SY/MAX.<br />

31007526 12/2006 783


MSTR: Maestro<br />

Código <strong>de</strong> error<br />

hexa<strong>de</strong>cimal<br />

Significado<br />

7213 Parámetro inválido en una operación <strong>de</strong> lectura <strong>de</strong>tectado por el servidor<br />

SY/MAX.<br />

721D Acceso inválido <strong>de</strong>tectado por el servidor SY/MAX.<br />

7249 Parámetro inválido en una operación <strong>de</strong> escritura <strong>de</strong>tectado por el<br />

servidor SY/MAX.<br />

724B Número <strong>de</strong> estación inválida <strong>de</strong>tectado por el servidor SY/MAX.<br />

7301 Código operacional inválido en un bloque MSTR requerido por el<br />

traductor Quantum.<br />

7303 Estado <strong>de</strong> lectura/escritura <strong>de</strong>l módulo QSE (dirección <strong>de</strong> ruta <strong>de</strong> acceso<br />

200 fuera <strong>de</strong> rango).<br />

7309 Intento <strong>de</strong> escribir en un registro <strong>de</strong> sólo lectura cuando se ejecuta una<br />

escritura <strong>de</strong> estado (ruta 200).<br />

731D Ruta inválida <strong>de</strong>tectada por el traductor Quantum.<br />

Las rutas válidas son:<br />

<strong>de</strong>st_drop, 0xFF<br />

200, <strong>de</strong>st_drop, 0xFF<br />

100+drop, <strong>de</strong>st_drop, 0xFF<br />

Todos los <strong>de</strong>más valores <strong>de</strong> ruta <strong>de</strong> acceso generan un error.<br />

734B Se ha producido uno <strong>de</strong> los siguientes errores:<br />

No se ha configurado la tabla CTE (ampliación <strong>de</strong> configuración).<br />

No se ha creado ninguna entrada en la tabla CTE para el número <strong>de</strong><br />

slot <strong>de</strong>l módulo QSE.<br />

No se ha especificado una estación válida.<br />

No se ha reiniciado el módulo QSE <strong>de</strong>spués <strong>de</strong> la creación <strong>de</strong> CTE.<br />

Nota: Después <strong>de</strong> escribir y configurar la CTE y cargarla en el<br />

módulo QSE, <strong>de</strong>berá reiniciar el módulo QSE para que entren en<br />

vigor las modificaciones.<br />

Cuando se utiliza una instrucción MSTR, no se espicifica un slot o<br />

estación válidos.<br />

784 31007526 12/2006


Códigos <strong>de</strong> error Ethernet TCP/IP<br />

Un error en una<br />

rutina MSTR<br />

Código <strong>de</strong> error<br />

hexa<strong>de</strong>cimal<br />

para rutinas<br />

MSTR sobre<br />

Ethernet TCP/IP<br />

Valor<br />

hexa<strong>de</strong>cimal ss<br />

en código <strong>de</strong><br />

error 30ss<br />

MSTR: Maestro<br />

Un error en una rutina MSTR a través <strong>de</strong> Ethernet TCP/IP pue<strong>de</strong> producir uno <strong>de</strong><br />

los siguientes errores en el bloque <strong>de</strong> control MSTR.<br />

La forma <strong>de</strong>l código es Mmss, don<strong>de</strong><br />

M representa el código mayor<br />

m representa el código menor<br />

ss representa un subcódigo<br />

Código <strong>de</strong> error<br />

hexa<strong>de</strong>cimal<br />

Significado<br />

1001 El usuario ha anulado el elemento MSTR.<br />

2001 Se ha especificado un tipo <strong>de</strong> operación no apoyada en el bloque <strong>de</strong><br />

control.<br />

2002 Se han modificado uno o más parámetros <strong>de</strong>l bloque <strong>de</strong> control mientras<br />

el elemento MSTR estaba activo (sólo se aplica a operaciones que<br />

realizan varios ciclos antes <strong>de</strong> completarse). Sólo se podrán modificar<br />

los parámetros <strong>de</strong>l bloque <strong>de</strong> control cuando el elemento MSTR no esté<br />

activo.<br />

2003 Valor no válido en el campo <strong>de</strong> longitud <strong>de</strong>l bloque <strong>de</strong> control.<br />

2004 Valor no válido en el campo <strong>de</strong> offset <strong>de</strong>l bloque <strong>de</strong> control.<br />

2005 Valores no válidos en los campos <strong>de</strong> longitud y <strong>de</strong> offset <strong>de</strong>l bloque <strong>de</strong><br />

control.<br />

2006 Zona <strong>de</strong> datos <strong>de</strong>l equipo slave no válida.<br />

3000 Error <strong>de</strong> código en el Modbus genérico.<br />

30ss Respuesta <strong>de</strong> excepción en slave Modbus.<br />

4001 Respuesta <strong>de</strong> slave Modbus incoherente.<br />

El subcampo ss en código <strong>de</strong> error 30ss es:<br />

Valor hexa<strong>de</strong>cimal <strong>de</strong> ss Significado<br />

01 El dispositivo slave no apoya la operación solicitada.<br />

02 Se han solicitado registros <strong>de</strong> dispositivos slave no existentes.<br />

03 Se ha solicitado un valor <strong>de</strong> dato no válido.<br />

04 Reservado.<br />

31007526 12/2006 785


MSTR: Maestro<br />

Código <strong>de</strong> error<br />

hexa<strong>de</strong>cimal en<br />

una red Ethernet<br />

TCP/IP<br />

Valor hexa<strong>de</strong>cimal <strong>de</strong> ss Significado<br />

05 El dispositivo slave ha aceptado un comando <strong>de</strong> programa <strong>de</strong><br />

larga duración.<br />

06 La función no se pue<strong>de</strong> ejecutar ahora: se está ejecutando un<br />

comando <strong>de</strong> larga duración.<br />

07 El dispositivo slave ha rechazado un comando <strong>de</strong> programa <strong>de</strong><br />

larga duración.<br />

Un error en la red Ethernet TCP/IP pue<strong>de</strong> provocar por sí solo uno <strong>de</strong> los siguientes<br />

errores en el bloque <strong>de</strong> control MSTR.<br />

Código <strong>de</strong> error<br />

hexa<strong>de</strong>cimal<br />

Significado<br />

5004 Llamada al sistema interrumpida.<br />

5005 Error <strong>de</strong> E/S.<br />

5006 La dirección no existe.<br />

5009 La <strong>de</strong>scripción <strong>de</strong>l socket no es válida.<br />

500C Memoria insuficiente.<br />

500D Se ha <strong>de</strong>negado el permiso.<br />

5011 La entrada ya existe.<br />

5016 Argumento no válido.<br />

5017 La tabla interna no tiene espacio suficiente.<br />

5020 La conexión se ha interrumpido.<br />

5023 Esta operación bloquearía un socket no bloqueable.<br />

5024 El socket es no bloqueable y no es posible completar la conexión.<br />

5025 El socket es no bloqueable y todavía no se ha completado un intento <strong>de</strong><br />

conexión anterior.<br />

5026 Operación <strong>de</strong> socket sin socket.<br />

5027 Dirección <strong>de</strong> <strong>de</strong>stino inválida.<br />

5028 Mensaje <strong>de</strong>masiado largo.<br />

5029 Tipo <strong>de</strong> protocolo falso para socket.<br />

502A Protocolo no disponible.<br />

502B Protocolo no apoyado.<br />

502C Tipo <strong>de</strong> socket no apoyado.<br />

502D Operación no apoyada en el socket.<br />

502E Familia <strong>de</strong> protocolo no apoyada.<br />

502F Familia <strong>de</strong> direcciones no apoyada.<br />

786 31007526 12/2006


Código <strong>de</strong> error<br />

hexa<strong>de</strong>cimal<br />

Significado<br />

MSTR: Maestro<br />

5030 Dirección ya en uso.<br />

5031 Dirección no disponible.<br />

50<strong>32</strong> La red está fuera <strong>de</strong> servicio.<br />

5033 No se pue<strong>de</strong> acce<strong>de</strong>r a la red.<br />

5034 La red finaliza la conexión en caso <strong>de</strong> reinicio.<br />

5035 Conexión interrumpida por la otra entidad.<br />

5036 Conexión reiniciada por la otra entidad.<br />

5037 Es necesario un búfer interno, pero no se pue<strong>de</strong> asignar.<br />

5038 Socket ya conectado.<br />

5039 Socket sin conectar.<br />

503A No se pue<strong>de</strong> enviar <strong>de</strong>spués <strong>de</strong> cierre <strong>de</strong> socket.<br />

503B Demasiadas referencias; no es posible el empalme.<br />

503C Se ha acabado el tiempo <strong>de</strong> conexión.<br />

503D Se <strong>de</strong>negó un intento <strong>de</strong> establecimiento <strong>de</strong> conexión.<br />

5040 El host está fuera <strong>de</strong> servicio.<br />

5041 No fue posible llegar al host <strong>de</strong> <strong>de</strong>stino <strong>de</strong>s<strong>de</strong> este participante.<br />

5042 Directorio no vacío.<br />

5046 NI_INIT retorna -1.<br />

5047 MTU no válida.<br />

5048 Longitud <strong>de</strong> hardware no válida.<br />

5049 No se pudo encontrar la ruta especificada.<br />

504A Colisión al seleccionar llamada; estas condiciones ya se han<br />

seleccionado para otra tarea.<br />

504B ID <strong>de</strong> la tarea no válido.<br />

F001 En modo <strong>de</strong> reinicio.<br />

31007526 12/2006 787


MSTR: Maestro<br />

Códigos <strong>de</strong> error CTE para Ethernet SY/MAX y TCP/IP<br />

Códigos <strong>de</strong> error<br />

CTE para<br />

Ethernet SY/MAX<br />

y TCP/IP<br />

Rutina MSTR <strong>de</strong> códigos <strong>de</strong> error hexa<strong>de</strong>cimales en Ethernet TCP/IP.<br />

Código <strong>de</strong> error<br />

hexa<strong>de</strong>cimal<br />

Significado<br />

7001 No existe una ampliación <strong>de</strong> configuración Ethernet.<br />

7002 La tabla <strong>de</strong> extensión <strong>de</strong> configuración no tiene acceso disponible.<br />

7003 Offset no válido.<br />

7004 Offset + longitud no válido.<br />

7005 Campo <strong>de</strong> datos no válido en la tabla <strong>de</strong> extensión <strong>de</strong> configuración.<br />

788 31007526 12/2006


Presentación<br />

MU16: Multiplicación <strong>de</strong> 16 bits<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción MU16.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

122<br />

Apartado Página<br />

Descripción breve 790<br />

Representación 791<br />

31007526 12/2006 789


MU16: Multiplicación <strong>de</strong> 16 bits<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción MU16 realiza una multiplicación, con o sin signo, <strong>de</strong> los valores <strong>de</strong><br />

16 bits <strong>de</strong> los asientos superior e intermedio y, a continuación, traslada el producto<br />

a dos registros <strong>de</strong> salida contiguos <strong>de</strong>l asiento inferior.<br />

790 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

valor máx.: 65.535<br />

valor 1<br />

valor máx.: 65.535<br />

operación con signo/sin<br />

signo<br />

valor 2<br />

producto<br />

MU16<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

inferior<br />

Valor 1<br />

(nodo<br />

superior)<br />

Valor 2<br />

(nodo<br />

intermedio)<br />

Producto<br />

(nodo<br />

inferior)<br />

Salida<br />

superior<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

MU16: Multiplicación <strong>de</strong> 16 bits<br />

0x, 1x Ninguno ON = habilita la operación <strong>de</strong> valor 1 x valor 2.<br />

0x, 1x Ninguno ON = operación con signo.<br />

OFF = operación sin signo.<br />

3x, 4x INT, UINT Multiplicando; pue<strong>de</strong> mostrarse <strong>de</strong> forma<br />

explícita como número entero<br />

(rango 1 a 65.535; se introduce por<br />

ejemplo#65.535) o almacenarse en un registro.<br />

3x, 4x INT, UINT Multiplicador; pue<strong>de</strong> mostrarse <strong>de</strong> forma explícita<br />

como un número entero (rango 1 a 65.535) o<br />

guardarse en un registro.<br />

4x INT, UINT Primero <strong>de</strong> los dos registros en espera contiguos:<br />

el registro visualizado contiene la mitad <strong>de</strong>l<br />

producto y el registro implícito contiene la otra<br />

mitad.<br />

0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

31007526 12/2006 791


MU16: Multiplicación <strong>de</strong> 16 bits<br />

792 31007526 12/2006


Presentación<br />

MUL: Multiplicación<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción MUL.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

123<br />

Apartado Página<br />

Descripción breve 794<br />

Representación 795<br />

Ejemplo 797<br />

31007526 12/2006 793


MUL: Multiplicación<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción MUL multiplica el valor sin signo 1 (su asiento superior) por el valor<br />

sin signo 2 (su asiento intermedio) y almacena el producto en dos registros <strong>de</strong> salida<br />

contiguos <strong>de</strong>l asiento inferior.<br />

794 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control activa<br />

valor 1<br />

valor máx.:999 - PLC <strong>de</strong> 16 bits<br />

valor máx.:9.999 - PLC <strong>de</strong> 24 bits<br />

valor máx.:65.535 - *PLC.<br />

*Disponible en los siguientes PLC:<br />

E685/785<br />

L785<br />

Serie Quantum<br />

valor 2<br />

resultado <strong>de</strong><br />

MUL<br />

MUL: Multiplicación<br />

31007526 12/2006 795


MUL: Multiplicación<br />

Descripción <strong>de</strong><br />

parámetros<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor 1<br />

(nodo superior)<br />

Valor 2<br />

(nodo<br />

intermedio)<br />

Resultado<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = valor 1 multiplicado por valor 2.<br />

3x, 4x UINT Multiplicando; pue<strong>de</strong> mostrarse <strong>de</strong> forma<br />

explícita como un número entero (rango<br />

1 a 9.999) o guardarse en un registro.<br />

Valor máximo:999, PLC <strong>de</strong> 16 bits.<br />

Valor máximo:9.999, PLC <strong>de</strong> 24 bits.<br />

Valor máximo:65.535 - *PLC.<br />

3x, 4x UINT Multiplicador; pue<strong>de</strong> mostrarse <strong>de</strong> forma<br />

explícita como un número entero (rango<br />

1 a 9.999) o guardarse en un registro.<br />

Valor máximo:999, PLC <strong>de</strong> 16 bits.<br />

Valor máximo:9.999, PLC <strong>de</strong> 24 bits.<br />

Valor máximo:65.535 - *PLC.<br />

4x UINT Producto (primero <strong>de</strong> dos registros en espera<br />

contiguos; visualización: dígitos <strong>de</strong> mayor<br />

or<strong>de</strong>n; implícitos: dígitos <strong>de</strong> menor or<strong>de</strong>n).<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

796 31007526 12/2006


Ejemplo<br />

Producto <strong>de</strong> la<br />

instrucción MUL<br />

MUL: Multiplicación<br />

Por ejemplo, si el valor 1 = 8.000 y el valor 2 = 2, el producto será 16.000. El registro<br />

visualizado contiene el valor 0001 (la mitad <strong>de</strong> mayor or<strong>de</strong>n <strong>de</strong>l producto), mientras<br />

que el registro implícito contiene el valor 6.000 (la mitad <strong>de</strong> menor or<strong>de</strong>n <strong>de</strong>l<br />

producto).<br />

31007526 12/2006 797


MUL: Multiplicación<br />

798 31007526 12/2006


Presentación<br />

NBIT: Control <strong>de</strong> bits<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción NBIT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

124<br />

Apartado Página<br />

Descripción breve 800<br />

Representación 801<br />

31007526 12/2006 799


NBIT: Control <strong>de</strong> bits<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción <strong>de</strong> bit normal (NBIT) permite controlar el estado <strong>de</strong> un bit <strong>de</strong>s<strong>de</strong> un<br />

registro, especificando su número <strong>de</strong> bit asociado en el asiento inferior. Los bits<br />

controlados actúan <strong>de</strong> forma parecida a las bobinas; cuando se active un bit,<br />

permanecerá en dicho estado hasta que una señal <strong>de</strong> control lo <strong>de</strong>sactive.<br />

Nota: La instrucción NBIT no sigue las mismas reglas <strong>de</strong> ubicación en la red que<br />

las bobinas referenciadas con 0x. Una instrucción NBIT no podrá ubicarse en la<br />

columna 11 <strong>de</strong> una red, pero sí podrá situarse a la izquierda <strong>de</strong> otros asientos<br />

lógicos en los mismos escalones <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong>.<br />

800 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

establecer/borrar bit<br />

número <strong>de</strong> bit que hay<br />

que establecer (1–16)<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

N.° <strong>de</strong> registro<br />

(nodo superior)<br />

N.° <strong>de</strong> bit<br />

(nodo inferior)<br />

n.° <strong>de</strong><br />

registro<br />

NBIT<br />

(1...16)<br />

Tipo <strong>de</strong><br />

datos<br />

activo<br />

Significado<br />

NBIT: Control <strong>de</strong> bits<br />

0x, 1x Ninguno ON = establece el bit especificado en 1.<br />

OFF = establece el bit especificado en 0.<br />

4x WORD Registro en espera cuyo mo<strong>de</strong>lo <strong>de</strong> bits se<br />

está controlando.<br />

INT, UINT Indica cuál <strong>de</strong> los 16 bits se está<br />

controlando.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior:<br />

ON = entrada superior activa y bit<br />

especificado establecido en 1.<br />

OFF = entrada superior inactiva y bit<br />

especificado establecido en 0.<br />

31007526 12/2006 801


NBIT: Control <strong>de</strong> bits<br />

802 31007526 12/2006


Presentación<br />

NCBT: Bit normalmente cerrado<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción NCBT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

125<br />

Apartado Página<br />

Descripción breve 804<br />

Representación 805<br />

31007526 12/2006 803


NCBT: Bit normalmente cerrado<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción <strong>de</strong> bit normal cerrado (NCBT) permite sensar el estado lógico <strong>de</strong> un<br />

bit en un registro, especificando su número <strong>de</strong> bit asociado en el asiento inferior.<br />

Este bit representa <strong>de</strong> un contacto normal cerrado. Transferirá señal <strong>de</strong>s<strong>de</strong> la salida<br />

superior cuando el bit especificado esté inactivo y la entrada superior esté activa.<br />

804 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

habilitar<br />

número <strong>de</strong> bit que hay que<br />

probar<br />

(1–16)<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

N.° <strong>de</strong> registro<br />

(nodo superior)<br />

n.° <strong>de</strong><br />

registro<br />

NCBT<br />

n.º <strong>de</strong> bit<br />

(1...16)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

NCBT: Bit normalmente cerrado<br />

bit cero<br />

0x, 1x Ninguno ON = habilita la <strong>de</strong>tección <strong>de</strong> bits.<br />

3x, 4x WORD Registro cuyo mo<strong>de</strong>lo <strong>de</strong> bits se está<br />

utilizando para representar contactos<br />

normalmente cerrados.<br />

N.° <strong>de</strong> bit<br />

(nodo inferior)<br />

INT, UINT (Indica cuál <strong>de</strong> los 16 bits se está <strong>de</strong>tectando)<br />

Salida superior 0x Ninguno ON = la entrada superior está activa y el bit<br />

especificado está inactivo (estado lógico 0).<br />

31007526 12/2006 805


NCBT: Bit normalmente cerrado<br />

806 31007526 12/2006


Presentación<br />

NOBT: Bit normalmente abierto<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción NOBT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

126<br />

Apartado Página<br />

Descripción breve 808<br />

Representación 809<br />

31007526 12/2006 807


NOBT: Bit normalmente abierto<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción <strong>de</strong> bit normal abierto (NOBT) permite sensar el estado lógico <strong>de</strong> un<br />

bit en un registro, especificando su número <strong>de</strong> bit asociado en el asiento inferior.<br />

Este bit representa un contacto normal abierto (N.O.).<br />

808 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

número <strong>de</strong> bit que hay<br />

que probar<br />

(1…16)<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

N.° <strong>de</strong> registro<br />

(nodo superior)<br />

n.° <strong>de</strong><br />

registro<br />

n.º <strong>de</strong> bit <strong>de</strong><br />

NOBT<br />

(1...16)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

NOBT: Bit normalmente abierto<br />

<strong>de</strong>tectar bit<br />

0x, 1x Ninguno ON = habilita la <strong>de</strong>tección <strong>de</strong> bits.<br />

3x, 4x WORD Registro cuyo mo<strong>de</strong>lo <strong>de</strong> bits se está<br />

utilizando para representar contactos<br />

normalmente abiertos.<br />

N.° <strong>de</strong> bit<br />

(nodo inferior)<br />

INT, UINT (Indica cuál <strong>de</strong> los 16 bits se está <strong>de</strong>tectando)<br />

Salida superior 0x Ninguno ON = la entrada superior y el bit especificado<br />

están activos (estado lógico 1).<br />

31007526 12/2006 809


NOBT: Bit normalmente abierto<br />

810 31007526 12/2006


Presentación<br />

NOL: Módulo opcional <strong>de</strong> red<br />

para Lonworks<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción NOL.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

127<br />

Apartado Página<br />

Descripción breve 812<br />

Representación 813<br />

Descripción <strong>de</strong>tallada 815<br />

31007526 12/2006 811


NOL: Módulo opcional <strong>de</strong> red para Lonworks<br />

Descripción breve<br />

Requisitos para<br />

la utilización <strong>de</strong><br />

esta función<br />

Descripción <strong>de</strong> la<br />

función<br />

Para po<strong>de</strong>r utilizar esta instrucción hay que seguir los siguientes pasos:<br />

Paso Acción<br />

1 Añadir la instrucción cargable NSUP.exe a la configuración <strong>de</strong>l controlador.<br />

Nota: Esta instrucción sólo <strong>de</strong>be cargarse una vez para apoyar otras<br />

instrucciones cargables, como ECS.exe y XMIT.exe.<br />

AVISO<br />

Las salidas <strong>de</strong> la instrucción se activan in<strong>de</strong>pendientemente <strong>de</strong>l estado <strong>de</strong><br />

las entradas.<br />

En caso <strong>de</strong> que no se instale la instrucción cargable NSUP o bien ésta se instale<br />

<strong>de</strong>spués <strong>de</strong> la instrucción cargable NOL o en un PLC Quantum con un executive<br />

< V2.0, se activarán las tres salidas, in<strong>de</strong>pendientemente <strong>de</strong>l estado <strong>de</strong> las<br />

entradas.<br />

Si no se respetan estas instrucciones, pue<strong>de</strong>n producirse daños corporales<br />

o materiales.<br />

Paso Acción<br />

2 Expandir e instalar la instrucción cargable DX NOL. Si <strong>de</strong>sea más información,<br />

consulte Instalación <strong>de</strong> DX Loadables, p. 49.<br />

La instrucción NOL facilita el movimiento <strong>de</strong> gran<strong>de</strong>s cantida<strong>de</strong>s <strong>de</strong> datos entre el<br />

módulo NOL y el espacio <strong>de</strong> registro <strong>de</strong>l controlador. Al módulo NOL se le asignan<br />

16 registros <strong>de</strong> entrada (3X) y 16 registros <strong>de</strong> salida (4X). De estos registros, dos<br />

<strong>de</strong> entrada y dos <strong>de</strong> salida se <strong>de</strong>stinan para el establecimiento <strong>de</strong> enlace entre el<br />

módulo NOL y la instrucción. Los catorce registros <strong>de</strong> salida y entrada restantes se<br />

utilizan para transmitir los datos.<br />

812 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

volver a sinc.<br />

n.º <strong>de</strong> función<br />

bloque <strong>de</strong><br />

registro<br />

conteo<br />

NOL<br />

NOL: Módulo opcional <strong>de</strong> red para Lonworks<br />

activa<br />

completa<br />

31007526 12/2006 813<br />

error


NOL: Módulo opcional <strong>de</strong> red para Lonworks<br />

Descripción <strong>de</strong><br />

parámetros<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

N.º <strong>de</strong> función<br />

(nodo superior)<br />

Bloque <strong>de</strong><br />

registro<br />

(nodo<br />

intermedio)<br />

Conteo<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = habilita la función NOL.<br />

0x, 1x Ninguno ON = inicializar: hace que la instrucción se<br />

vuelva a sincronizar con el módulo.<br />

4x INT, UINT,<br />

WORD<br />

4x INT, UINT,<br />

WORD<br />

El número <strong>de</strong> función selecciona la función<br />

<strong>de</strong>l bloque NOL.<br />

El número <strong>de</strong> función 0 transfiere datos<br />

<strong>de</strong>s<strong>de</strong> el módulo y hacia éste. Cualquier otro<br />

número <strong>de</strong> función provoca un error.<br />

Bloque <strong>de</strong> registro (primero <strong>de</strong> 16 registros<br />

contiguos).<br />

INT, UINT Número total <strong>de</strong> registros que requiere la<br />

instrucción.<br />

Salida superior 0x Ninguno ON = instrucción habilitada sin errores.<br />

Salida<br />

intermedia<br />

0x Ninguno Nuevos datos<br />

Establecido para un ciclo cuando todo el<br />

bloque <strong>de</strong> datos <strong>de</strong>l módulo se ha escrito en<br />

el área <strong>de</strong> registro.<br />

Salida inferior 0x Ninguno ON = Error.<br />

814 31007526 12/2006


Descripción <strong>de</strong>tallada<br />

Bloque <strong>de</strong><br />

registros<br />

(asiento<br />

intermedio)<br />

NOL: Módulo opcional <strong>de</strong> red para Lonworks<br />

Este bloque suministra los registros necesarios para la información <strong>de</strong><br />

configuración y estado, para los bits <strong>de</strong> estado y para los datos reales <strong>de</strong> los tipos<br />

<strong>de</strong> variable <strong>de</strong> re<strong>de</strong>s estándar (SNVT).<br />

Bloque <strong>de</strong> registros.<br />

Información <strong>de</strong><br />

configuración y<br />

estado<br />

Bits <strong>de</strong> estado <strong>de</strong><br />

los SNVT<br />

(si están<br />

habilitados en la<br />

pantalla DX-<br />

Zoom)<br />

Datos reales <strong>de</strong><br />

los SNVT<br />

Registro Contenido<br />

Visualizado y primer<br />

implícito<br />

Base <strong>de</strong> entrada <strong>de</strong> asignación <strong>de</strong> E/S<br />

(3x).<br />

Segundo y tercer implícitos Base <strong>de</strong> salida <strong>de</strong> asignación <strong>de</strong> E/S (4x).<br />

Cuarto implícito Habilitar bits <strong>de</strong> estado.<br />

Quinto implícito Número <strong>de</strong> registros <strong>de</strong> entrada.<br />

Sexto implícito Número <strong>de</strong> registros <strong>de</strong> salida.<br />

Séptimo implícito Número <strong>de</strong> registros <strong>de</strong> entrada binarios.<br />

Octavo implícito Número <strong>de</strong> registros <strong>de</strong> salida binarios.<br />

Noveno implícito Suma <strong>de</strong> control <strong>de</strong> config. (CRC).<br />

Décimo implícito Versión NOL.<br />

Undécimo implícito Versión <strong>de</strong>l firmware <strong>de</strong> módulo.<br />

Duodécimo implícito Versión <strong>de</strong> la instrucción DX NOL.<br />

Decimotercero implícito Versión <strong>de</strong> la instrucción DX <strong>de</strong>l módulo.<br />

Decimocuarto y<br />

<strong>de</strong>cimoquinto implícitos<br />

No utilizados.<br />

Decimosexto a trigésimo<br />

primer implícitos<br />

Habilitar bits <strong>de</strong> estado =<br />

NO:<br />

<strong>de</strong>s<strong>de</strong> el <strong>de</strong>cimosexto<br />

implícito en a<strong>de</strong>lante<br />

Habilitar bits <strong>de</strong> estado = SÍ:<br />

<strong>de</strong>s<strong>de</strong> el trigésimo segundo<br />

implícito en a<strong>de</strong>lante<br />

Bits <strong>de</strong> estado <strong>de</strong> cada variable <strong>de</strong> red<br />

programable.<br />

Los datos se almacenan en 4 grupos:<br />

Entradas binarias<br />

Entradas <strong>de</strong> registro<br />

Salidas binarias<br />

Salidas <strong>de</strong> registro<br />

Estos grupos <strong>de</strong> datos se configuran<br />

consecutivamente y comienzan en los<br />

límites <strong>de</strong> las palabras.<br />

31007526 12/2006 815


NOL: Módulo opcional <strong>de</strong> red para Lonworks<br />

Count<br />

(Bottom No<strong>de</strong>)<br />

Los primeros 16 registros con configuración e información <strong>de</strong> estado se pue<strong>de</strong>n<br />

programar y supervisar a través <strong>de</strong> la pantalla DX Zoom <strong>de</strong> NOL. Para configurar el<br />

enlace al módulo NOL, los únicos parámetros que <strong>de</strong>berán introducirse son los<br />

registros 3x y 4x <strong>de</strong> inicio utilizados en la asignación <strong>de</strong> E/S <strong>de</strong>l módulo NOL.<br />

Further information you will find in the documentation Network Option Module for<br />

LonWorks.<br />

Defines the total number of registers required by the function block. This value must<br />

be set to a value equal to or greater than the number of data registers required to<br />

transfer and store the network data being used by the NOL module. If the count<br />

value is not large enough for the required data, the error output will be set.<br />

816 31007526 12/2006


Presentación<br />

Descripción <strong>de</strong> instrucciones<br />

(O a Q)<br />

V<br />

Introducción En esta sección se muestran las <strong>de</strong>scripciones <strong>de</strong> instrucciones or<strong>de</strong>nadas alfabéticamente<br />

<strong>de</strong> la O a la Q.<br />

Contenido Esta parte contiene los siguientes capítulos:<br />

Capítulo Nombre <strong>de</strong>l capítulo Página<br />

128 O: O lógica 819<br />

129 PCFL: <strong>Biblioteca</strong> <strong>de</strong> funciones <strong>de</strong> control <strong>de</strong> procesos 825<br />

130 PCFL-AIN: Entrada analógica 833<br />

131 PCFL-ALARM: Administrador central <strong>de</strong> alarmas 839<br />

1<strong>32</strong> PCFL-AOUT: Salida analógica 845<br />

133 PCFL-AVER: Cálculo <strong>de</strong>l promedio <strong>de</strong> entradas pon<strong>de</strong>radas 849<br />

134 PCFL-CALC: Fórmula preestablecida calculada 855<br />

135 PCFL-DELAY: Cola <strong>de</strong> retardo 861<br />

136 PCFL-EQN: Calculadora <strong>de</strong> ecuaciones formateadas 865<br />

137 PCFL-INTEG: Integrar entrada en un intervalo especificado 871<br />

138 PCFL-KPID: PID no interactiva <strong>de</strong> ISA expandida 875<br />

139 PCFL-LIMIT: Limitador para la entrada <strong>de</strong> valor real 883<br />

140 PCFL-LIMV: Limitador <strong>de</strong> velocidad para cambios en la<br />

entrada <strong>de</strong> valor real<br />

887<br />

141 PCFL-LKUP: Tabla <strong>de</strong> búsqueda 891<br />

142 PCFL-LLAG: Filtro diferenciador o <strong>de</strong> retardo <strong>de</strong> primer or<strong>de</strong>n 897<br />

143 PCFL-MODE: Establecer la entrada en modalidad automática<br />

o manual<br />

901<br />

144 PCFL-ONOFF: Valores ON/OFF para banda muerta 905<br />

145 PCFL-PI: PI no interactivo <strong>de</strong> ISA 911<br />

31007526 12/2006 817


Descripción <strong>de</strong> instrucciones (O a Q)<br />

Capítulo Nombre <strong>de</strong>l capítulo Página<br />

146 PCFL-PID: Algoritmos PID 917<br />

147 PCFL-RAMP: Rampa para el valor <strong>de</strong> consigna con una tasa<br />

<strong>de</strong> crecimiento constante<br />

923<br />

148 PCFL-RATE: Cálculo <strong>de</strong> la tasa diferencial durante un periodo<br />

específico<br />

149 PCFL-RATIO: Controlador <strong>de</strong> ratio para cuatro estaciones 933<br />

150 PCFL-RMPLN: Rampa logarítmica para el valor <strong>de</strong> consigna 937<br />

151 PCFL-SEL: Selección <strong>de</strong> entrada 941<br />

152 PCFL-TOTAL: Totalizador para flujo dosificado 947<br />

153 PEER: Transacción PEER 953<br />

154 PID2: Proporcional integral <strong>de</strong>rivada 959<br />

818 31007526 12/2006<br />

929


Presentación<br />

O: O lógica<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción O.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

128<br />

Apartado Página<br />

Descripción breve 820<br />

Representación 821<br />

Descripción <strong>de</strong> los parámetros 823<br />

31007526 12/2006 819


O: O lógica<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

La instrucción O realiza una operación booleana O en el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> las<br />

matrices <strong>de</strong> fuente y <strong>de</strong> <strong>de</strong>stino.<br />

El mo<strong>de</strong>lo <strong>de</strong> bits al que se ha aplicado la instrucción O se envía, a continuación, a<br />

la matriz <strong>de</strong> <strong>de</strong>stino, <strong>de</strong> modo que sobrescribe los contenidos anteriores.<br />

bits<br />

<strong>de</strong> fuente<br />

0 1 1 0<br />

O<br />

0 0<br />

O<br />

0 1<br />

1 1<br />

BOBINAS BLOQUEADAS<br />

Antes <strong>de</strong> utilizar la instrucción O, compruebe que no hay bobinas bloqueadas. La<br />

instrucción O sobrescribirá las bobinas bloqueadas <strong>de</strong>ntro <strong>de</strong> una matriz <strong>de</strong><br />

<strong>de</strong>stino sin habilitarlas. Esto pue<strong>de</strong> provocar daños personales si se ha bloqueado<br />

una bobina para su reparación o mantenimiento, ya que el estado <strong>de</strong> la bobina<br />

pue<strong>de</strong> cambiar como resultado <strong>de</strong> una operación O.<br />

Si no se respetan estas precauciones pue<strong>de</strong>n producirse graves lesiones,<br />

daños materiales o incluso la muerte.<br />

820 31007526 12/2006<br />

O<br />

O<br />

1 1<br />

ADVERTENCIA<br />

bits<br />

<strong>de</strong> <strong>de</strong>stino


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

matriz <strong>de</strong> fuente<br />

matriz <strong>de</strong><br />

fuente<br />

Longitud: 1–100 registros<br />

(<strong>de</strong> 16 a 1.600 bits)<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

matriz <strong>de</strong><br />

<strong>de</strong>stino<br />

longitud <strong>de</strong><br />

O: O lógica<br />

bit <strong>de</strong> fuente: 0 0 1 1<br />

bit <strong>de</strong> comparación: 0 1 0 1<br />

bit <strong>de</strong> resultado: 0 1 1 1<br />

31007526 12/2006 821<br />

OR<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Entrada superior 0x, 1x Ninguno Inicia la instrucción O.<br />

Matriz <strong>de</strong> fuente<br />

(nodo superior)<br />

0x, 1x, 3x, 4x ANY_BIT Primera referencia en la matriz <strong>de</strong> fuente.<br />

Matriz <strong>de</strong> <strong>de</strong>stino<br />

(nodo intermedio)<br />

Longitud<br />

(nodo inferior)<br />

0x, 4x ANY_BIT Primera referencia en la matriz <strong>de</strong> <strong>de</strong>stino.<br />

INT,<br />

UINT<br />

Longitud <strong>de</strong> la matriz; rango: 1...100.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.


O: O lógica<br />

Ejemplo <strong>de</strong> O Cuando el contacto 10001 transfiere señal, la matriz <strong>de</strong> fuente formada por el<br />

mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> los registros 40600 y 40601 se enlaza, mediante la instrucción O,<br />

con la matriz <strong>de</strong> <strong>de</strong>stino formada por el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> los registros 40606 y<br />

40607. A continuación, el mo<strong>de</strong>lo <strong>de</strong> bits al que se ha aplicado la instrucción O se<br />

copia en estos registros, <strong>de</strong> modo que se sobrescribe el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> <strong>de</strong>stino<br />

original.<br />

10001<br />

40600<br />

40606<br />

O<br />

00002<br />

matriz <strong>de</strong> fuente<br />

40600 = 1111111100000000 40601 = 1111111100000000<br />

matriz <strong>de</strong> <strong>de</strong>stino original<br />

40606 = 1111111111111111 40607 = 0000000000000000<br />

matriz <strong>de</strong> <strong>de</strong>stino con instrucción O<br />

40606 = 1111111111111111 40607 = 1111111100000000<br />

AVISO<br />

RESTRICCIONES DE SALIDAS/BOBINAS CON LA INSTRUCCIÓN O<br />

No <strong>de</strong>sactive las salidas ni las bobinas al utilizar la instrucción O.<br />

Si no se respetan estas instrucciones, pue<strong>de</strong>n producirse daños corporales<br />

o materiales.<br />

Nota: Si <strong>de</strong>sea guardar el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> <strong>de</strong>stino original <strong>de</strong> los registros 40606<br />

y 40607, copie la información en otra tabla utilizando la instrucción BLKM antes <strong>de</strong><br />

llevar a cabo la operación O.<br />

822 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Longitud<br />

<strong>de</strong> la matriz<br />

(asiento inferior)<br />

O: O lógica<br />

El número entero introducido en el asiento inferior especifica la longitud <strong>de</strong> la matriz,<br />

es <strong>de</strong>cir, el número <strong>de</strong> registros o palabras <strong>de</strong> 16 bits que hay en las dos matrices.<br />

La longitud máxima <strong>de</strong>be estar comprendida entre 1 y 100. Una longitud <strong>de</strong> 2 indica<br />

que se aplicará la instrucción OR a <strong>32</strong> bits en cada matriz.<br />

31007526 12/2006 823


O: O lógica<br />

824 31007526 12/2006


Presentación<br />

PCFL: <strong>Biblioteca</strong> <strong>de</strong> funciones <strong>de</strong><br />

control <strong>de</strong> procesos<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción PCFL.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

129<br />

Apartado Página<br />

Descripción breve 826<br />

Representación 827<br />

Descripción <strong>de</strong> los parámetros 828<br />

31007526 12/2006 825


PCFL: <strong>Biblioteca</strong> <strong>de</strong> funciones <strong>de</strong> control <strong>de</strong> procesos<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

La instrucción PCFL permite acce<strong>de</strong>r a una biblioteca <strong>de</strong> funciones <strong>de</strong> regulación<br />

<strong>de</strong> procesos utilizando valores analógicos.<br />

Las operaciones PCFL se encuadran en tres categorías principales.<br />

Cálculos avanzados<br />

Procesamiento <strong>de</strong> señales<br />

Control <strong>de</strong> regulación<br />

Una función PCFL se selecciona en la lista alfabética <strong>de</strong> subfunciones <strong>de</strong>l menú<br />

<strong>de</strong>splegable <strong>de</strong>l software <strong>de</strong> panel, y la subfunción se muestra en el asiento superior<br />

<strong>de</strong> la instrucción (consulte p. 828 para ver la lista <strong>de</strong> subfunciones y <strong>de</strong>scripciones).<br />

La instrucción PCFL utiliza la misma biblioteca <strong>de</strong> coma flotante que EMTH. Si el<br />

PLC que está utilizando para PCFL no tiene incorporado el chip <strong>de</strong> coprocesador<br />

matemático 80x87, los cálculos tardarán más tiempo en ejecutarse. Los PLC con el<br />

coprocesador matemático pue<strong>de</strong>n resolver los cálculos <strong>de</strong> PCFL diez veces más<br />

rápido que los PLC sin el chip. No obstante, la velocidad no <strong>de</strong>bería ser un problema<br />

para la mayoría <strong>de</strong> las aplicaciones tradicionales <strong>de</strong> regulación <strong>de</strong> procesos en las<br />

que el tiempo <strong>de</strong> resolución se mi<strong>de</strong> en segundos, no en milisegundos.<br />

826 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL: <strong>Biblioteca</strong> <strong>de</strong> funciones <strong>de</strong> control <strong>de</strong> procesos<br />

entrada <strong>de</strong> control operación correcta<br />

función<br />

Longitud: 1–255<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

longitud <strong>de</strong><br />

PCFL<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 827<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> regulación <strong>de</strong>l<br />

proceso especificada.<br />

Función<br />

(nodo superior)<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

Longitud<br />

(nodo inferior)<br />

4x INT, UINT,<br />

WORD<br />

Selección <strong>de</strong> la función <strong>de</strong> control <strong>de</strong><br />

procesos.<br />

En el nodo superior se especifica un<br />

indicador para la función <strong>de</strong> la biblioteca<br />

PCFL seleccionada.<br />

(Para obtener más información,<br />

consulte p. 828.)<br />

Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros<br />

(<strong>de</strong>pen<strong>de</strong> <strong>de</strong> la subfunción seleccionada).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL: <strong>Biblioteca</strong> <strong>de</strong> funciones <strong>de</strong> control <strong>de</strong> procesos<br />

Descripción <strong>de</strong> los parámetros<br />

Función (asiento<br />

superior)<br />

En el asiento superior se especifica una subfunción para la función <strong>de</strong> la biblioteca<br />

PCFL seleccionada.<br />

Operación Subfunción Descripción Operaciones<br />

<strong>de</strong>pendientes<br />

<strong>de</strong>l tiempo<br />

Cálculos AVER Promedio <strong>de</strong> las entradas pon<strong>de</strong>radas. no<br />

avanzados CALC Cálculo <strong>de</strong> la fórmula preestablecida. no<br />

EQN Calculadora <strong>de</strong> ecuaciones formateadas no<br />

Procesamient<br />

o <strong>de</strong> señales<br />

ALARM Administrador central <strong>de</strong> alarmas para una<br />

entrada <strong>de</strong> valor real (PV).<br />

AIN Convierte las entradas a unida<strong>de</strong>s físicas<br />

escaladas.<br />

AOUT Convierte las salidas a valores<br />

comprendidos entre 0 y 4.095.<br />

DELAY Cola <strong>de</strong> espera <strong>de</strong> retardo. sí<br />

LKUP Tabla <strong>de</strong> linealización por interpolación. no<br />

INTEG Integra la entrada en un intervalo<br />

especificado.<br />

sí<br />

LLAG Filtro diferenciador o <strong>de</strong> retardo <strong>de</strong> primer<br />

or<strong>de</strong>n.<br />

LIMIT Limitador para la entrada <strong>de</strong> valor real<br />

(bajo/bajo, bajo, alto, alto/alto).<br />

LIMV Limitador <strong>de</strong> velocidad para los cambios en<br />

la entrada <strong>de</strong> valor real (bajo, alto).<br />

MODE Establece la entrada en modo automático o<br />

manual.<br />

RAMP Rampa para el valor <strong>de</strong> consigna con una<br />

tasa <strong>de</strong> crecimiento constante.<br />

RMPLN Rampa logarítmica para el valor <strong>de</strong><br />

consigna (~2/3 más cerca <strong>de</strong>l valor <strong>de</strong><br />

consigna para cada constante <strong>de</strong> tiempo).<br />

RATE Cálculo <strong>de</strong> la tasa diferencial durante un<br />

periodo específico.<br />

SEL Selección <strong>de</strong> entrada alta/baja/media. no<br />

828 31007526 12/2006<br />

no<br />

no<br />

no<br />

sí<br />

no<br />

sí<br />

no<br />

sí<br />

sí<br />


Cálculos<br />

avanzados<br />

Procesamiento<br />

<strong>de</strong> señales<br />

Control <strong>de</strong><br />

regulación<br />

PCFL: <strong>Biblioteca</strong> <strong>de</strong> funciones <strong>de</strong> control <strong>de</strong> procesos<br />

Operación Subfunción Descripción Operaciones<br />

<strong>de</strong>pendientes<br />

<strong>de</strong>l tiempo<br />

Control <strong>de</strong><br />

regulación<br />

KPID Proporcional-integral-diferencial (PID) no<br />

interactiva <strong>de</strong> ISA expandida.<br />

ONOFF Especifica los valores <strong>de</strong> conexión/<br />

<strong>de</strong>sconexión para banda muerta.<br />

PID Algoritmos PID. sí<br />

PI PI no interactivo <strong>de</strong> ISA (con funciones <strong>de</strong><br />

operación <strong>de</strong>tenido/manual/automático).<br />

sí<br />

RATIO Controlador <strong>de</strong> ratio para cuatro<br />

estaciones.<br />

TOTAL Totalizador para flujo dosificado. sí<br />

Los cálculos avanzados tienen una utilidad matemática general y no están limitados<br />

a las aplicaciones <strong>de</strong> regulación <strong>de</strong> procesos. Con los cálculos avanzados se<br />

pue<strong>de</strong>n crear algoritmos personalizados <strong>de</strong> procesamiento <strong>de</strong> señales, <strong>de</strong>rivar<br />

estados <strong>de</strong>l proceso controlado, <strong>de</strong>rivar medidas estadísticas <strong>de</strong>l proceso, etc.<br />

Las rutinas matemáticas simples ya se han indicado en la instrucción EMTH. La<br />

función <strong>de</strong> cálculo incluida en PCFL consiste en una calculadora textual <strong>de</strong><br />

ecuaciones para escribir ecuaciones personalizadas en lugar <strong>de</strong> programar una<br />

serie <strong>de</strong> operaciones matemáticas una a una.<br />

Las funciones <strong>de</strong> procesamiento <strong>de</strong> señales se utilizan para manipular procesos y<br />

señales <strong>de</strong> procesos <strong>de</strong>rivadas. Para ello utilizan diferentes métodos: linearizar la<br />

señal, filtrarla, retardarla o modificarla <strong>de</strong> alguna otra forma. Esta categoría incluiría<br />

funciones como entrada/salida analógica, limitadores, filtro diferenciador o <strong>de</strong><br />

retardo y generadores <strong>de</strong> rampa.<br />

Las funciones <strong>de</strong> regulación efectúan un control <strong>de</strong> bucle cerrado en diversas<br />

aplicaciones. Normalmente, se trata <strong>de</strong> un bucle <strong>de</strong> control <strong>de</strong> realimentación<br />

negativa <strong>de</strong> PID (proporcional integral <strong>de</strong>rivada). Las funciones PID en PCFL tienen<br />

diversos grados <strong>de</strong> funcionalidad. La función 75, PID, tiene la misma funcionalidad<br />

general que la instrucción PID2, pero utiliza matemática <strong>de</strong> coma flotante y<br />

representa algunas opciones <strong>de</strong> forma diferente. PID es útil en los casos en que la<br />

instrucción PID2 no es apropiada <strong>de</strong>bido a circunstancias numéricas, como el<br />

redon<strong>de</strong>o.<br />

Encontrará más información en p. 21.<br />

31007526 12/2006 829<br />

sí<br />

no<br />

no


PCFL: <strong>Biblioteca</strong> <strong>de</strong> funciones <strong>de</strong> control <strong>de</strong> procesos<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

El registro 4x introducido en el asiento intermedio es el primero <strong>de</strong> un bloque <strong>de</strong><br />

registros <strong>de</strong> salida contiguos don<strong>de</strong> se almacenan los parámetros para la operación<br />

PCFL especificada.<br />

La forma en que las distintas operaciones PCFL ejecutan el bloque <strong>de</strong> parámetros<br />

se explica en la <strong>de</strong>scripción <strong>de</strong> las diferentes subfunciones (operaciones PCFL).<br />

Dentro <strong>de</strong>l bloque <strong>de</strong> parámetros <strong>de</strong> cada función PCFL hay dos registros que se<br />

utilizan para el estado <strong>de</strong> entrada y salida.<br />

Flags <strong>de</strong> salida En todas las funciones PCFL, los bits 12 a 16 <strong>de</strong>l registro <strong>de</strong> estado <strong>de</strong> salida<br />

<strong>de</strong>finen los siguientes flags <strong>de</strong> salida estándar.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 11 No utilizados.<br />

12 1 = error matemático; coma flotante o salida no válida.<br />

13 1 = función PCFL <strong>de</strong>sconocida.<br />

14 No utilizado.<br />

15 1 = el tamaño <strong>de</strong> la tabla <strong>de</strong> registros asignada es <strong>de</strong>masiado pequeño.<br />

16 1 = se ha producido un error; se transfiere señal a la salida inferior.<br />

En las funciones PCFL que <strong>de</strong>pen<strong>de</strong>n <strong>de</strong>l tiempo, los bits 9 y 11 también se utilizan<br />

<strong>de</strong> la siguiente forma.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 8 No utilizados.<br />

9 1 = inicialización en marcha.<br />

10 No utilizado.<br />

11 1 = intervalo <strong>de</strong> resolución no válido.<br />

12 1 = error matemático; coma flotante o salida no válida.<br />

13 1 = función PCFL <strong>de</strong>sconocida.<br />

14 No utilizado.<br />

15 1 = el tamaño <strong>de</strong> la tabla <strong>de</strong> registros asignada es <strong>de</strong>masiado pequeño.<br />

16 1 = se ha producido un error; se transfiere señal a la salida inferior.<br />

830 31007526 12/2006


PCFL: <strong>Biblioteca</strong> <strong>de</strong> funciones <strong>de</strong> control <strong>de</strong> procesos<br />

Flags <strong>de</strong> entrada En todas las funciones PCFL, los bits 1 y 3 <strong>de</strong>l registro <strong>de</strong> estado <strong>de</strong> entrada <strong>de</strong>finen<br />

los siguientes flags <strong>de</strong> entrada estándar.<br />

Longitud<br />

(asiento inferior)<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = inicialización <strong>de</strong> función completa o en curso.<br />

0 = inicializar la función.<br />

2 No utilizado.<br />

3 1 = prioridad <strong>de</strong>l temporizador.<br />

4 -16 No utilizados.<br />

El valor entero introducido en el asiento inferior especifica la longitud, es <strong>de</strong>cir, el<br />

número <strong>de</strong> registros <strong>de</strong>l bloque <strong>de</strong> parámetros PCFL. La máxima longitud permitida<br />

variará <strong>de</strong>pendiendo <strong>de</strong> la función especificada.<br />

31007526 12/2006 831


PCFL: <strong>Biblioteca</strong> <strong>de</strong> funciones <strong>de</strong> control <strong>de</strong> procesos<br />

8<strong>32</strong> 31007526 12/2006


Presentación<br />

PCFL-AIN: Entrada analógica<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-AIN.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

130<br />

Apartado Página<br />

Descripción breve 834<br />

Representación 835<br />

Descripción <strong>de</strong> los parámetros 836<br />

31007526 12/2006 833


PCFL-AIN: Entrada analógica<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Procesamiento <strong>de</strong> señales.<br />

La función AIN escala la entrada bruta generada por los módulos <strong>de</strong> entrada<br />

analógica y la convierte en valores físicos que se puedan utilizar en los cálculos<br />

posteriores.<br />

Hay tres opciones <strong>de</strong> escalado.<br />

Escalado <strong>de</strong> entrada automático.<br />

Escalado <strong>de</strong> entrada manual.<br />

Cálculo <strong>de</strong> la raíz cuadrada <strong>de</strong>l proceso en la entrada para linearizar la señal<br />

antes <strong>de</strong> escalar.<br />

834 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-AIN: Entrada analógica<br />

entrada <strong>de</strong> control operación correcta<br />

AIN<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 14<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 835<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

AIN<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción AIN.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

14<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

Para obtener más información,<br />

consulte p. 837.<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción AIN (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-AIN: Entrada analógica<br />

Descripción <strong>de</strong> los parámetros<br />

Modo <strong>de</strong><br />

funcionamiento<br />

AIN apoya las resoluciones <strong>de</strong> rango para los siguientes tipos <strong>de</strong> equipos.<br />

Rangos físicos <strong>de</strong> Quantum<br />

Resolución Rango: Válido Rango: Por <strong>de</strong>bajo Rango: Por encima<br />

10 V 768 a 64.768 767 64.769<br />

V 16.768 a 48.768 16.767 48.769<br />

0 a 10 V 0 a 64.000 0 64.001<br />

0 a 5 V 0 a <strong>32</strong>.000 0 <strong>32</strong>.001<br />

1 a 5 V 6.400 a <strong>32</strong>.000 6.399 <strong>32</strong>.001<br />

Termocupla Quantum<br />

Resolución Rango: Válido<br />

Grados TC -454 a +3.308<br />

Grados TC 0.1 -4.540 a +<strong>32</strong>.767<br />

Unida<strong>de</strong>s brutas TC 0 a 65.535<br />

Voltímetro Quantum<br />

Resolución Rango: Válido Rango: Por <strong>de</strong>bajo Rango: Por encima<br />

10 V -10.000 a +10.000 -10.001 +10.001<br />

5 V -5.000 a +5.000 -5.001 +5.001<br />

0 a 10 V 0 a 10.000 0 10.001<br />

0 a 5 V 0 a 5.000 0 5.001<br />

1 a 5 V 1.000 a 5.000 999 5.001<br />

836 31007526 12/2006


Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros AIN es <strong>de</strong> 14 registros.<br />

PCFL-AIN: Entrada analógica<br />

Registro Contenido<br />

Visualizado Entrada <strong>de</strong>s<strong>de</strong> un registro 3x.<br />

Primer implícito Reservado.<br />

Segundo implícito Estado <strong>de</strong> salida.<br />

Tercer implícito Estado <strong>de</strong> entrada.<br />

Cuarto y quinto implícitos Unida<strong>de</strong>s físicas con escala <strong>de</strong>l 100%.<br />

Sexto y séptimo implícitos Unida<strong>de</strong>s físicas con escala <strong>de</strong>l 0%.<br />

Octavo y noveno implícitos Entrada manual.<br />

Décimo y undécimo implícitos Entrada automática.<br />

Duodécimo y <strong>de</strong>cimotercer implícitos Salida.<br />

Bit Función<br />

1 a 5 No utilizados.<br />

6 1 = con TC PSQRT; no válido: en rango <strong>de</strong> extrapolación, PSQRT no utilizado.<br />

7 1 = entrada fuera <strong>de</strong> rango.<br />

8 1 = eco por <strong>de</strong>bajo <strong>de</strong>l rango <strong>de</strong>l módulo <strong>de</strong> entrada.<br />

9 1 = eco por encima <strong>de</strong>l rango <strong>de</strong>l módulo <strong>de</strong> entrada.<br />

10 1 = modo <strong>de</strong> salida seleccionado no válido.<br />

11 1 = unida<strong>de</strong>s físicas no válidas.<br />

12 a 16 Bits <strong>de</strong> salida estándar (flags).<br />

Bit Función<br />

1 a 3 Bits <strong>de</strong> entrada estándar (flags).<br />

4 a 8 Rangos (ver tablas siguientes).<br />

9 1 = raíz cuadrada <strong>de</strong>l proceso en entrada bruta.<br />

10 1 = modo <strong>de</strong> escalado manual.<br />

0 = modo <strong>de</strong> escalado automático.<br />

11 1 = extrapolar superación/transgresión por <strong>de</strong>bajo <strong>de</strong> rango para modo<br />

automático.<br />

0 = limitar superación/transgresión por <strong>de</strong>bajo <strong>de</strong> rango para modo automático.<br />

12 a 16 No utilizados.<br />

31007526 12/2006 837


PCFL-AIN: Entrada analógica<br />

Rangos físicos <strong>de</strong> Quantum<br />

Bit<br />

4 5 6 7 8 Rango<br />

0 1 0 0 0 +/- 10V<br />

0 1 0 0 1 +/- 5V<br />

0 1 0 1 0 0 a 10 V<br />

0 1 0 1 1 0 a 5 V<br />

0 1 1 0 0 1 a 5 V<br />

Termocupla Quantum<br />

Bit<br />

4 5 6 7 8 Rango<br />

0 1 1 0 1 Grados TC<br />

0 1 1 1 0 Grados TC 0.1<br />

0 1 1 1 1 Unida<strong>de</strong>s brutas TC<br />

Voltímetro Quantum<br />

Bit<br />

4 5 6 7 8 Rango<br />

1 0 0 0 0 +/- 10V<br />

1 0 0 1 0 +/- 5V<br />

1 0 1 0 0 0 a 10 V<br />

1 0 1 1 0 0 a 5 V<br />

1 1 0 0 0 1 a 5 V<br />

Nota: El bit 4 <strong>de</strong> este registro tiene un uso no estándar.<br />

838 31007526 12/2006


Presentación<br />

PCFL-ALARM: Administrador<br />

central <strong>de</strong> alarmas<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-Alarm.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

131<br />

Apartado Página<br />

Descripción breve 840<br />

Representación 841<br />

Descripción <strong>de</strong> los parámetros 842<br />

31007526 12/2006 839


PCFL-ALARM: Administrador central <strong>de</strong> alarmas<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Procesamiento <strong>de</strong> señales.<br />

La función ALARM proporciona un bloque central para la administración <strong>de</strong><br />

alarmas, en el que se pue<strong>de</strong>n establecer límites alto (H), bajo (L), alto alto (HH) o<br />

bajo bajo (LL) en una variable <strong>de</strong> proceso.<br />

ALARM permite especificar:<br />

Un tipo <strong>de</strong> modo <strong>de</strong> funcionamiento normal o <strong>de</strong> <strong>de</strong>sviación.<br />

La utilización <strong>de</strong> límites H/L, o H/L y HH/LL.<br />

La utilización <strong>de</strong> banda muerta (DB) alre<strong>de</strong>dor <strong>de</strong> los límites.<br />

840 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-ALARM: Administrador central <strong>de</strong> alarmas<br />

entrada <strong>de</strong> control operación correcta<br />

ALRM<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 16<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 841<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

ALRM<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción ALARM.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

16<br />

(nodo inferior)<br />

4x INT, UINT,<br />

WORD<br />

Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

Para obtener más información,<br />

consulte p. 842.<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción ALARM (no se pue<strong>de</strong><br />

cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-ALARM: Administrador central <strong>de</strong> alarmas<br />

Descripción <strong>de</strong> los parámetros<br />

Modo <strong>de</strong><br />

funcionamiento<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Se dispone <strong>de</strong> los siguientes modos <strong>de</strong> funcionamiento.<br />

Modo Significado<br />

Modo <strong>de</strong> funcionamiento<br />

normal<br />

Modo <strong>de</strong> funcionamiento<br />

<strong>de</strong> <strong>de</strong>sviación<br />

ALARM funciona directamente en la entrada. Normal es el<br />

estado pre<strong>de</strong>terminado.<br />

ALARM funciona durante el cambio entre la entrada actual y la<br />

última entrada.<br />

Banda muerta Cuando está activada, la opción DB se incorpora <strong>de</strong>ntro <strong>de</strong> los<br />

límites HH/H/LL/L. Estos límites calculados incluyen un rango<br />

más extenso, es <strong>de</strong>cir, si la entrada se ha realizado en el rango<br />

superior, la salida se mantendrá allí y no se llevará a cabo una<br />

transición cuando la entrada llegue al límite calculado H.<br />

Operaciones Se establecerá un flag cuando la entrada sea igual o exceda el<br />

límite correspondiente. Si se utiliza la opción DB, los límites HH,<br />

H, LL y L se ajustarán <strong>de</strong> forma interna para la histéresis y la<br />

comprobación <strong>de</strong> transgresión <strong>de</strong> límites.<br />

Nota: ALARM realiza un seguimiento automático <strong>de</strong> la última entrada, incluso<br />

cuando se especifique el modo normal, para facilitar una transición sin problemas<br />

al modo <strong>de</strong> <strong>de</strong>sviación.<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros ALARM es <strong>de</strong> 16 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Registros <strong>de</strong> entrada<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto y quinto implícitos Valor límite HH (alto alto)<br />

Sexto y séptimo implícitos Valor límite H (alto)<br />

Octavo y noveno implícitos Valor límite L (bajo)<br />

Décimo y undécimo implícitos Valor límite LL (bajo bajo)<br />

Duodécimo y <strong>de</strong>cimotercer implícitos Banda muerta (DB) alre<strong>de</strong>dor <strong>de</strong> límite<br />

Decimocuarto y <strong>de</strong>cimoquinto implícitos Última entrada<br />

842 31007526 12/2006


Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

PCFL-ALARM: Administrador central <strong>de</strong> alarmas<br />

Bit Función<br />

1 a 4 No utilizados<br />

5 1 = banda muerta establecida en número negativo<br />

6 1 = modo <strong>de</strong> <strong>de</strong>sviación seleccionado con la opción DB<br />

7 1 = LL transgredido (x ≤ LL)<br />

8 1 = L transgredido (x ≤ L o LL < x ≤ L) con la opción HH/LL establecida<br />

9 1 = H transgredido (x ≥ H o H ≤ x < HH) con la opción HH/LL establecida<br />

10 1 = HH transgredido (x ≤ HH)<br />

11 1 = límites especificados no válidos<br />

12 a 16 Bits <strong>de</strong> salida estándar (flags)<br />

Bit Función<br />

1 a 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 1 = modo <strong>de</strong> <strong>de</strong>sviación<br />

0 = modo normal<br />

6 1 = se aplican tanto los límites H/L como HH/LL<br />

7 1 = banda muerta (DB) habilitada<br />

8 1 = se retiene el flag H/L cuando se transgre<strong>de</strong>n los límites HH/LL<br />

9 a 16 No utilizados<br />

31007526 12/2006 843


PCFL-ALARM: Administrador central <strong>de</strong> alarmas<br />

844 31007526 12/2006


Presentación<br />

PCFL-AOUT: Salida analógica<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-AOUT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

1<strong>32</strong><br />

Apartado Página<br />

Descripción breve 846<br />

Representación 847<br />

Descripción <strong>de</strong> los parámetros 848<br />

31007526 12/2006 845


PCFL-AOUT: Salida analógica<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Procesamiento <strong>de</strong> señales.<br />

La función AOUT es una interfase para las señales calculadas <strong>de</strong> los módulos <strong>de</strong><br />

salida. Convierte la señal en un valor comprendido entre 0 y 4.096.<br />

Fórmula Fórmula <strong>de</strong> la función AOUT:<br />

OUT =<br />

scale<br />

------------------------------------------------<br />

× ( IN – LEU)<br />

( HEU – LEU)<br />

Significado <strong>de</strong> los elementos.<br />

Elemento Significado<br />

HEU Unidad física superior<br />

IN Entrada<br />

LEU Unidad física inferior<br />

OUT Salida<br />

scale Escala<br />

846 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-AOUT: Salida analógica<br />

entrada <strong>de</strong> control operación correcta<br />

AOUT<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

31007526 12/2006 847<br />

n.º 9<br />

Tipo <strong>de</strong><br />

datos<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

AOUT<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción AOUT.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

9<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

Para obtener más información,<br />

consulte p. 848.<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción AOUT (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-AOUT: Salida analógica<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros AOUT es <strong>de</strong> 9 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Entrada en unida<strong>de</strong>s físicas<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto y quinto implícitos Unida<strong>de</strong>s físicas superiores<br />

Sexto y séptimo implícitos Unida<strong>de</strong>s físicas inferiores<br />

Octavo y noveno implícitos Salida<br />

Bit Función<br />

1 a 7 No utilizados<br />

8 1 = inferior limitado<br />

9 1 = superior limitado<br />

10 No utilizado<br />

11 1 = límites H/L no válidos<br />

12 a 16 Bits <strong>de</strong> salida estándar (flags)<br />

Bit Función<br />

1 a 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 a 16 No utilizados<br />

848 31007526 12/2006


Presentación<br />

PCFL-AVER: Cálculo <strong>de</strong>l<br />

promedio <strong>de</strong> entradas pon<strong>de</strong>radas<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-AVER.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

133<br />

Apartado Página<br />

Descripción breve 850<br />

Representación 851<br />

Descripción <strong>de</strong> los parámetros 852<br />

31007526 12/2006 849


PCFL-AVER: Cálculo <strong>de</strong>l promedio <strong>de</strong> entradas pon<strong>de</strong>radas<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Cálculos avanzados.<br />

La función AVER calcula el promedio <strong>de</strong> hasta cuatro entradas pon<strong>de</strong>radas.<br />

Fórmula Fórmula <strong>de</strong> la función AVER:<br />

( k + ( w1× In1) + ( w2 × In2) + ( w3 × In3) + ( w4 × In4) )<br />

RES =<br />

----------------------------------------------------------------------------------------------------------------------------------------<br />

1+ w1+ w2 + w3 + w4 Significado <strong>de</strong> los elementos.<br />

Elemento Significado<br />

In1 ... In4 Entradas<br />

k Constante<br />

RES Resultado<br />

w1 ... w4 Pon<strong>de</strong>ración<br />

850 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-AVER: Cálculo <strong>de</strong>l promedio <strong>de</strong> entradas pon<strong>de</strong>radas<br />

<strong>de</strong> control operación correcta<br />

AVER<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 24<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 851<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

AVER<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción AVER.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

24<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se almacenan<br />

los parámetros para la subfunción<br />

especificada.<br />

Para obtener más información, consulte<br />

Bloque <strong>de</strong> parámetros (asiento intermedio),<br />

p. 852.<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción AVER (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-AVER: Cálculo <strong>de</strong>l promedio <strong>de</strong> entradas pon<strong>de</strong>radas<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros AVER es <strong>de</strong> 24 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Reservados<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto y quinto implícitos Valor <strong>de</strong> In1<br />

Sexto y séptimo implícitos Valor <strong>de</strong> In2<br />

Octavo y noveno implícitos Valor <strong>de</strong> In3<br />

Décimo y undécimo implícitos Valor <strong>de</strong> In4<br />

Duodécimo y <strong>de</strong>cimotercer implícitos Valor <strong>de</strong> k<br />

Decimocuarto y <strong>de</strong>cimoquinto implícitos Valor <strong>de</strong> wv1<br />

Decimosexto y <strong>de</strong>cimoséptimo implícitos Valor <strong>de</strong> wv2<br />

Decimoctavo y <strong>de</strong>cimonoveno implícitos Valor <strong>de</strong> wv3<br />

Vigésimo y vigesimoprimer implícitos Valor <strong>de</strong> wv4<br />

Vigesimosegundo y vigesimotercer implícitos Valor <strong>de</strong>l resultado<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 9 No utilizados<br />

10 1 = no hay entradas activadas<br />

11 1 = resultado negativo<br />

0 = resultado positivo<br />

12 a 16 Bits <strong>de</strong> salida estándar (flags)<br />

852 31007526 12/2006


Estado <strong>de</strong><br />

entrada<br />

Bit Función<br />

1 a 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 1 = se utiliza In4 y w4<br />

6 1 = se utiliza In3 y w3<br />

7 1 = se utiliza In2 y w2<br />

8 1 = se utiliza In1 y w1<br />

9 1 = k está activa<br />

10 a 16 No utilizados<br />

PCFL-AVER: Cálculo <strong>de</strong>l promedio <strong>de</strong> entradas pon<strong>de</strong>radas<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Sólo se pue<strong>de</strong> utilizar una pon<strong>de</strong>ración cuando su entrada correspondiente está<br />

habilitada; por ejemplo, los registros implícitos vigésimo y vigesimoprimero (que<br />

contienen el valor <strong>de</strong> w4) sólo se pue<strong>de</strong>n utilizar cuando los registros implícitos<br />

décimo y undécimo (que contienen In4) se encuentran habilitados. La I en el<br />

<strong>de</strong>nominador sólo se utiliza cuando la constante está habilitada.<br />

31007526 12/2006 853


PCFL-AVER: Cálculo <strong>de</strong>l promedio <strong>de</strong> entradas pon<strong>de</strong>radas<br />

854 31007526 12/2006


Presentación<br />

PCFL-CALC: Fórmula<br />

preestablecida calculada<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-CALC.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

134<br />

Apartado Página<br />

Descripción breve 856<br />

Representación 857<br />

Descripción <strong>de</strong> los parámetros 858<br />

31007526 12/2006 855


PCFL-CALC: Fórmula preestablecida calculada<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Cálculos avanzados.<br />

La función CALC calcula una fórmula preestablecida con un máximo <strong>de</strong> cuatro<br />

entradas, cada una <strong>de</strong> ellas caracterizada en un registro separado en el bloque <strong>de</strong><br />

parámetros.<br />

856 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-CALC: Fórmula preestablecida calculada<br />

entrada <strong>de</strong> control operación correcta<br />

CALC<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 14<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 857<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

CALC<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción CALC.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

14<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se almacenan<br />

los parámetros para la subfunción<br />

especificada.<br />

Para obtener más información,<br />

consulte p. 858.<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción CALC (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-CALC: Fórmula preestablecida calculada<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros CALC es <strong>de</strong> 14 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Reservados<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto y quinto implícitos Valor <strong>de</strong> la entrada A<br />

Sexto y séptimo implícitos Valor <strong>de</strong> la entrada B<br />

Octavo y noveno implícitos Valor <strong>de</strong> la entrada C<br />

Décimo y undécimo implícitos Valor <strong>de</strong> la entrada D<br />

Duodécimo y <strong>de</strong>cimotercer implícitos Valor <strong>de</strong> la salida<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 10 No utilizados<br />

11 1 = código <strong>de</strong> entrada no válido<br />

12 a 16 Bits <strong>de</strong> salida estándar (flags)<br />

858 31007526 12/2006


Estado <strong>de</strong><br />

entrada<br />

Bit Función<br />

1 a 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 a 6 No utilizados<br />

7 a 10 Código <strong>de</strong> fórmula<br />

11 a 16 No utilizados<br />

Código <strong>de</strong> fórmula<br />

PCFL-CALC: Fórmula preestablecida calculada<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Código <strong>de</strong> fórmula<br />

7 8 9 10<br />

0 0 0 1 ( A× B)<br />

– ( C× D)<br />

0 0 1 1 ( A× B)<br />

⁄ ( C× D)<br />

0 1 0 0 A⁄ ( B × C×<br />

D)<br />

0 1 0 1 ( A× B×<br />

C)<br />

⁄ D<br />

0 1 1 0 A × B×<br />

C × D<br />

0 1 1 1 A + B+ C+ D<br />

1 0 0 0 A × B( C– D)<br />

1 0 0 1<br />

A ( B ⁄ C)<br />

1 0 1 0<br />

1 0 1 1<br />

1 1 0 0<br />

1 1 0 1<br />

D<br />

[ ]<br />

A × LN(<br />

B⁄ C)<br />

( A– B)<br />

– ( C– D)<br />

⁄ LN[ ( A – B)<br />

⁄ ( C– D)<br />

]<br />

C D<br />

( A⁄ B)<br />

⁄ – ( )<br />

( A– B)<br />

⁄<br />

( C – D)<br />

31007526 12/2006 859


PCFL-CALC: Fórmula preestablecida calculada<br />

860 31007526 12/2006


Presentación<br />

PCFL-DELAY: Cola <strong>de</strong> retardo<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-DELAY.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

135<br />

Apartado Página<br />

Descripción breve 862<br />

Representación 863<br />

Descripción <strong>de</strong> los parámetros 864<br />

31007526 12/2006 861


PCFL-DELAY: Cola <strong>de</strong> retardo<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Procesamiento <strong>de</strong> señales.<br />

La función DELAY pue<strong>de</strong> utilizarse para crear una serie <strong>de</strong> lecturas para compensar<br />

el retardo en la lógica. Pue<strong>de</strong>n utilizarse hasta 10 instancias <strong>de</strong> muestreo para<br />

retardar una entrada.<br />

Todos los valores se llevan a cabo en registros, don<strong>de</strong> el registro x[0] contiene la<br />

entrada explorada actual. No es necesario almacenar el décimo periodo <strong>de</strong> retardo.<br />

Cuando tiene lugar la décima instancia <strong>de</strong> la secuencia, el valor en el registro x[9]<br />

se pue<strong>de</strong> mover directamente a la salida.<br />

Se <strong>de</strong>vuelve un mensaje DXDONE cuando el cálculo se completa. La función se<br />

pue<strong>de</strong> reiniciar cambiando el bit <strong>de</strong>l primer ciclo.<br />

862 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-DELAY: Cola <strong>de</strong> retardo<br />

entrada <strong>de</strong> control operación correcta<br />

DELY<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º <strong>32</strong><br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 863<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

DELY<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción DELY.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

<strong>32</strong><br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se almacenan<br />

los parámetros para la subfunción<br />

especificada.<br />

Para obtener más información,<br />

consulte p. 864.<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción DELY (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-DELAY: Cola <strong>de</strong> retardo<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros DELAY es <strong>de</strong> <strong>32</strong> registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Entrada en tiempo n.<br />

Segundo implícito Estado <strong>de</strong> salida.<br />

Tercer implícito Estado <strong>de</strong> entrada.<br />

Cuarto implícito Registro <strong>de</strong> tiempo.<br />

Quinto implícito Reservado.<br />

Sexto y séptimo implícitos Δt (en ms) <strong>de</strong>s<strong>de</strong> el último ciclo.<br />

Octavo y noveno implícitos Intervalo <strong>de</strong> resolución (en ms).<br />

Décimo y undécimo implícitos Retardo x[0].<br />

Duodécimo y <strong>de</strong>cimotercero implícitos Retardo x[1].<br />

Decimocuarto y <strong>de</strong>cimoquinto implícitos Retardo x[2].<br />

... ...<br />

Vigesimoctavo y vigesimonoveno implícitos Retardo x[9].<br />

Trigésimo y trigesimoprimero implícitos Registros <strong>de</strong> salida.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1...3 No utilizados.<br />

4 1 = k fuera <strong>de</strong> rango.<br />

5 ... 8 El contador <strong>de</strong> registros ha <strong>de</strong> inicializarse.<br />

9 ... 16 Bits <strong>de</strong> salida estándar (flags).<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 4 Bits <strong>de</strong> entrada estándar (flags).<br />

5 ... 8 Retardo≤ 10<br />

9 ... 11 El contador <strong>de</strong> registros ha <strong>de</strong> inicializarse.<br />

12 ... 16 No utilizados.<br />

864 31007526 12/2006


Presentación<br />

PCFL-EQN: Calculadora <strong>de</strong><br />

ecuaciones formateadas<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-EQN.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

136<br />

Apartado Página<br />

Descripción breve 866<br />

Representación 867<br />

Descripción <strong>de</strong> los parámetros 868<br />

31007526 12/2006 865


PCFL-EQN: Calculadora <strong>de</strong> ecuaciones formateadas<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Cálculos avanzados.<br />

La función EQN constituye una calculadora <strong>de</strong> ecuaciones formateadas. Deberá<br />

<strong>de</strong>finir la ecuación en el bloque <strong>de</strong> parámetros con distintos códigos que<br />

especifiquen los operadores, la selección <strong>de</strong> entrada y las entradas.<br />

EQN se utiliza para ecuaciones con cuatro o menos variables pero que no son<br />

aplicables para el formato CALC. Se complementa con la función CALC, puesto que<br />

permite introducir una ecuación con entradas <strong>de</strong> coma flotante o <strong>de</strong> valor entero, así<br />

como operadores.<br />

866 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-EQN: Calculadora <strong>de</strong> ecuaciones formateadas<br />

entrada <strong>de</strong> control operación correcta<br />

EQN<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

EQN<br />

(nodo superior)<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo<br />

intermedio)<br />

15...64<br />

(nodo inferior)<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 64<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

31007526 12/2006 867<br />

error<br />

0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong> procesos<br />

especificada.<br />

Selección <strong>de</strong> la subfunción EQN.<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en espera<br />

contiguos en los que se almacenan los<br />

parámetros para la subfunción especificada.<br />

Para obtener más información,<br />

consulte p. 868.<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción EQN.<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-EQN: Calculadora <strong>de</strong> ecuaciones formateadas<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros <strong>de</strong> EQN pue<strong>de</strong> llegar a 64 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Reservado.<br />

Segundo implícito Estado <strong>de</strong> salida.<br />

Tercer implícito Estado <strong>de</strong> entrada.<br />

Cuarto y quinto implícitos Variable A.<br />

Sexto y séptimo implícitos Variable B.<br />

Octavo y noveno implícitos Variable C.<br />

Décimo y undécimo implícitos Variable D.<br />

Duodécimo y <strong>de</strong>cimotercero implícitos Salida<br />

Decimocuarto implícito Primer código <strong>de</strong> fórmula<br />

Decimoquinto implícito Segundo código <strong>de</strong> fórmula posible.<br />

... ...<br />

Sexagesimotercero implícito Último código <strong>de</strong> fórmula posible.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 Error <strong>de</strong> stack<br />

2...3 No utilizados.<br />

4 ... 8 Código <strong>de</strong>l último error registrado.<br />

9 1 = código <strong>de</strong> selección <strong>de</strong> operador inválido.<br />

10 1 = EQN no se ha programado completamente.<br />

11 1 = se ha elegido un código <strong>de</strong> entrada inválido.<br />

12 ... 16 Bits <strong>de</strong> salida estándar (flags).<br />

868 31007526 12/2006


Estado <strong>de</strong><br />

entrada<br />

Código <strong>de</strong><br />

fórmula<br />

PCFL-EQN: Calculadora <strong>de</strong> ecuaciones formateadas<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 4 Bits <strong>de</strong> entrada estándar (flags).<br />

5 1 = Opción <strong>de</strong> grados/radianes para funciones trigonométricas.<br />

6 ... 8 No utilizado.<br />

9 ... 16 Tamaño <strong>de</strong> la ecuación para su visualización en Concept.<br />

Cada código <strong>de</strong> fórmula en la función EQN <strong>de</strong>fine bien un código <strong>de</strong> selección <strong>de</strong><br />

entrada o un código <strong>de</strong> selección <strong>de</strong> operador.<br />

Código <strong>de</strong> fórmula (bloque <strong>de</strong> parámetros)<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 4 No utilizados.<br />

5 ... 8 Definición <strong>de</strong> la selección <strong>de</strong> entrada.<br />

9 ... 11 No utilizados.<br />

12 ... 16 Definición <strong>de</strong> la selección <strong>de</strong> operador.<br />

Selección <strong>de</strong> entrada<br />

Bit Selección <strong>de</strong> entrada<br />

5 6 7 8<br />

0 0 0 0 Utiliza la selección <strong>de</strong> operador.<br />

0 0 0 1 Entrada <strong>de</strong> coma flotante.<br />

0 0 1 1 Entero <strong>de</strong> 16 bits.<br />

1 0 0 0 Variable A.<br />

1 0 0 1 Variable B.<br />

1 0 1 0 Variable C.<br />

1 0 1 1 Variable D.<br />

31007526 12/2006 869


PCFL-EQN: Calculadora <strong>de</strong> ecuaciones formateadas<br />

Selección <strong>de</strong> operador<br />

Bit Selección <strong>de</strong> operador<br />

12 13 14 15 16<br />

0 0 0 0 0 Sin operación.<br />

0 0 0 0 1 Valor absoluto.<br />

0 0 0 1 0 Adición.<br />

0 0 0 1 1 División.<br />

0 0 1 0 0 Exponente.<br />

0 0 1 1 1 LN (logaritmo natural).<br />

0 1 0 0 0 G (logaritmo).<br />

0 1 0 0 1 Multiplicación.<br />

0 1 0 1 0 Negación.<br />

0 1 0 1 1 Potencia.<br />

0 1 1 0 0 Raíz cuadrada.<br />

0 1 1 0 1 Substracción.<br />

0 1 1 1 0 Seno.<br />

0 1 1 1 1 Coseno.<br />

1 0 0 0 0 Tangente.<br />

1 0 0 0 1 Arcoseno.<br />

1 0 0 1 0 Arcocoseno.<br />

1 0 0 1 1 Arcotangente.<br />

870 31007526 12/2006


Presentación<br />

PCFL-INTEG: Integrar entrada en<br />

un intervalo especificado<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-INTEG.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

137<br />

Apartado Página<br />

Descripción breve 872<br />

Representación 873<br />

Descripción <strong>de</strong> los parámetros 874<br />

31007526 12/2006 871


PCFL-INTEG: Integrar entrada en un intervalo especificado<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Procesamiento <strong>de</strong> señales.<br />

La función INTEG se utiliza para integrar en un intervalo <strong>de</strong> tiempo especificado.<br />

Esta función no proporciona protección contra la antisaturación integral. INTEG es<br />

una instrucción que <strong>de</strong>pen<strong>de</strong> <strong>de</strong>l tiempo, por ejemplo, si se integra un valor <strong>de</strong><br />

entrada <strong>de</strong> 1/s, se <strong>de</strong>be tener en cuenta si se realiza en un segundo (en cuyo caso<br />

el resultado será 1) o en un minuto (en cuyo caso el resultado será 60).<br />

También pue<strong>de</strong> introducir flags para inicializar o reiniciar la función <strong>de</strong>spués <strong>de</strong> un<br />

tiempo <strong>de</strong> suspensión in<strong>de</strong>terminado, y pue<strong>de</strong> restablecer la suma integral si lo<br />

<strong>de</strong>sea. Si introduce el flag para la inicialización, <strong>de</strong>berá especificar el valor <strong>de</strong><br />

reinicio (cero o la última entrada en caso <strong>de</strong> fallo en la alimentación), y se saltarán<br />

los cálculos durante una exploración.<br />

La función <strong>de</strong>vuelve un mensaje DXDONE cuando se ha completado la operación.<br />

872 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-INTEG: Integrar entrada en un intervalo especificado<br />

entrada <strong>de</strong> control operación correcta<br />

INTG<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 16<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 873<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

INTG<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción INTEG.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

16<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se almacenan<br />

los parámetros para la subfunción<br />

especificada.<br />

Para obtener más información,<br />

consulte p. 874.<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción INTEG (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-INTEG: Integrar entrada en un intervalo especificado<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros INTEG es <strong>de</strong> 16 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Entrada actual.<br />

Segundo implícito Estado <strong>de</strong> salida.<br />

Tercer implícito Estado <strong>de</strong> entrada.<br />

Cuarto implícito Registro <strong>de</strong> tiempo.<br />

Quinto implícito Reservado.<br />

Sexto y séptimo implícitos Δt (en ms) <strong>de</strong>s<strong>de</strong> el último ciclo.<br />

Octavo y noveno implícitos Intervalo <strong>de</strong> resolución (en ms).<br />

Décimo y undécimo implícitos Última entrada.<br />

Duodécimo y <strong>de</strong>cimotercero implícitos Valor <strong>de</strong> reinicio<br />

Decimocuarto y <strong>de</strong>cimoquinto implícitos Resultado<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1...8 No utilizados.<br />

9 ... 16 Bits <strong>de</strong> salida estándar (flags).<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 4 Bits <strong>de</strong> entrada estándar (flags).<br />

5 Reiniciar suma.<br />

6 ... 16 No utilizados.<br />

874 31007526 12/2006


Presentación<br />

PCFL-KPID: PID no interactiva<br />

<strong>de</strong> ISA expandida<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-KPID.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

138<br />

Apartado Página<br />

Descripción breve 876<br />

Representación 877<br />

Descripción <strong>de</strong> los parámetros 878<br />

31007526 12/2006 875


PCFL-KPID: PID no interactiva <strong>de</strong> ISA expandida<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Control <strong>de</strong> regulación.<br />

La función KPID ofrece un rango superior <strong>de</strong> la funcionalidad <strong>de</strong> la función PID, con<br />

características adicionales que incluyen:<br />

Una zona <strong>de</strong> reducción <strong>de</strong> ganancia.<br />

Un registro separado para realizar una transferencia sin perturbaciones cuando<br />

el término integral no se utiliza.<br />

Un modo <strong>de</strong> reinicio.<br />

Un valor teórico externo para control en cascada.<br />

Limitadores <strong>de</strong> velocidad integrados para cambios <strong>de</strong> valores teóricos y cambios<br />

a una salida manual.<br />

Una constante <strong>de</strong> filtro diferencial variable.<br />

Ampliación opcional <strong>de</strong> límites <strong>de</strong> antisaturación <strong>de</strong> la acción integral<br />

876 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-KPID: PID no interactiva <strong>de</strong> ISA expandida<br />

entrada <strong>de</strong> control operación correcta<br />

KPID<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 64<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 877<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

KPID<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción KPID.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo<br />

intermedio)<br />

64<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en espera<br />

contiguos en los que se almacenan los<br />

parámetros para la subfunción especificada.<br />

Para obtener más información,<br />

consulte p. 878.<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción KPID (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-KPID: PID no interactiva <strong>de</strong> ISA expandida<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros KPID es <strong>de</strong> 64 registros.<br />

Parámetros<br />

generales<br />

Parámetros<br />

<strong>de</strong> entrada<br />

Registro Contenido<br />

Visualizado y primer implícito Entrada real, x<br />

Segundo implícito Estado <strong>de</strong> salida, registro 1<br />

Tercer implícito Estado <strong>de</strong> salida, registro 2<br />

Cuarto implícito Reservado<br />

Quinto implícito Estado <strong>de</strong> entrada<br />

Sexto y séptimo implícitos Velocidad proporcional, KP<br />

Octavo y noveno implícitos Tiempo <strong>de</strong> reinicio, TI<br />

Décimo y undécimo implícitos Tiempo <strong>de</strong> acción diferencial, TD<br />

Duodécimo y <strong>de</strong>cimotercer implícitos Constante <strong>de</strong> tiempo <strong>de</strong> retardo, TD1<br />

Decimocuarto y <strong>de</strong>cimoquinto<br />

implícitos<br />

Zona <strong>de</strong> reducción <strong>de</strong> ganancia, GRZ<br />

Decimosexto y <strong>de</strong>cimoséptimo<br />

implícitos<br />

Decimoctavo y <strong>de</strong>cimonoveno<br />

implícitos<br />

Reducción <strong>de</strong> ganancia en GRZ,<br />

KGRZ<br />

Crecimiento límite <strong>de</strong>l valor teórico<br />

manual<br />

Vigésimo y vigesimoprimer implícitos Crecimiento límite <strong>de</strong> salida manual<br />

Vigesimosegundo y vigesimotercer<br />

implícitos<br />

Límite superior para Y<br />

Vigesimocuarto y vigesimoquinto<br />

implícitos<br />

Vigesimosexto y vigesimoséptimo<br />

implícitos<br />

Entradas Vigesimoctavo y vigesimonoveno<br />

implícitos<br />

Límite inferior para Y<br />

Ampliación para límites <strong>de</strong> la<br />

antisaturación <strong>de</strong> la acción integral<br />

Valor teórico externo para cascada<br />

Trigésimo y trigesimoprimer implícitos Valor teórico manual<br />

Trigesimosegundo y trigesimotercer<br />

implícitos<br />

Y manual<br />

Trigesimocuarto y trigesimoquinto<br />

implícitos<br />

Trigesimosexto y trigesimoséptimo<br />

implícitos<br />

Reseteado para Y<br />

878 31007526 12/2006<br />

Bias


Salidas Trigesimoctavo y trigesimonoveno<br />

implícitos<br />

Cuadragésimo y cuadragesimoprimer<br />

implícitos<br />

Información<br />

<strong>de</strong> tiempos<br />

Registro Contenido<br />

PCFL-KPID: PID no interactiva <strong>de</strong> ISA expandida<br />

Registro <strong>de</strong> transferencia sin<br />

perturbaciones, BT<br />

Diferencia <strong>de</strong> control calculada<br />

(término <strong>de</strong> error), XD<br />

Cuadragesimosegundo implícito Modalidad <strong>de</strong> servicio anterior<br />

Cuadragesimotercer y<br />

cuadragesimocuarto implícitos<br />

Dt (en ms) <strong>de</strong>s<strong>de</strong> el último ciclo<br />

Cuadragesimoquinto y<br />

cuadragesimosexto implícitos<br />

Cuadragesimoséptimo y<br />

cuadragesimoctavo implícitos<br />

Cuadragesimonoveno y<br />

quincuagésimo implícitos<br />

Quincuagesimoprimer y<br />

quincuagesimosegundo implícitos<br />

Quincuagesimotercer y<br />

quincuagesimocuarto implícitos<br />

Quincuagesimoquinto y<br />

quincuagesimosexto implícitos<br />

Desviación <strong>de</strong>l sistema anterior, XD_1<br />

Entrada anterior, X_1<br />

Parte integral para Y, YI<br />

Parte diferencial para Y, YD<br />

Valor teórico, SP<br />

Parte proporcional para Y, YP<br />

Quincuagesimoséptimo implícito Estado <strong>de</strong> funcionamiento anterior<br />

Quincuagesimoctavo implícito Reloj <strong>de</strong> 10 ms en tiempo n<br />

Quincuagesimonoveno implícito Reservado<br />

Sexagésimo y sexagesimoprimer<br />

implícitos<br />

Intervalo <strong>de</strong> resolución (en ms).<br />

Salida Sexagesimosegundo y<br />

sexagesimotercer implícitos<br />

Magnitud <strong>de</strong> salida <strong>de</strong> posicionado, Y<br />

31007526 12/2006 879


PCFL-KPID: PID no interactiva <strong>de</strong> ISA expandida<br />

Estado <strong>de</strong> salida,<br />

registro 1<br />

Estado <strong>de</strong> salida,<br />

registro 2<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 Error<br />

2 1 = límite inferior excedido<br />

3 1 = límite superior excedido<br />

4 1 = modo <strong>de</strong> cascada seleccionado<br />

5 1 = modo automático seleccionado<br />

6 1 = modo <strong>de</strong> parada seleccionado<br />

7 1 = modo manual seleccionado<br />

8 1 = modo <strong>de</strong> reinicio seleccionado<br />

9 ... 16 Bits <strong>de</strong> salida estándar (flags)<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1...4 No utilizados<br />

5 1 = modo D previo seleccionado<br />

6 1 = modo I preivo seleccionado<br />

7 1 = modo P previo seleccionado<br />

8 1 = modo previo seleccionado<br />

9 ... 16 No utilizados<br />

880 31007526 12/2006


Estado <strong>de</strong><br />

entrada<br />

Bit Función<br />

1 ... 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 1 = modo <strong>de</strong> reinicio<br />

6 1 = modo manual<br />

7 1 = modo <strong>de</strong> parada<br />

8 1 = modo <strong>de</strong> cascada<br />

9 1 = resolver algoritmo proporcional<br />

10 1 = resolver algoritmo integral<br />

11 1 = resolver algoritmo diferencial<br />

12 1 = resolver algoritmo diferencial basado en x<br />

0 = resolver algoritmo diferencial basado en xd<br />

13 1 = antisaturación <strong>de</strong> la acción integral sólo en YI<br />

0 = antisaturación <strong>de</strong> la acción integral normal<br />

14 1 = bloquear transferencia sin perturbaciones<br />

0 = transferencia sin perturbaciones<br />

15 1 = Y manual realiza un seguimiento <strong>de</strong> Y<br />

16 1 = acción inversa para la salida <strong>de</strong>l regulador<br />

0 = acción directa para la salida <strong>de</strong>l regulador<br />

PCFL-KPID: PID no interactiva <strong>de</strong> ISA expandida<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

31007526 12/2006 881


PCFL-KPID: PID no interactiva <strong>de</strong> ISA expandida<br />

882 31007526 12/2006


Presentación<br />

PCFL-LIMIT: Limitador para la<br />

entrada <strong>de</strong> valor real<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-LIMIT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

139<br />

Apartado Página<br />

Descripción breve 884<br />

Representación 885<br />

Descripción <strong>de</strong> los parámetros 886<br />

31007526 12/2006 883


PCFL-LIMIT: Limitador para la entrada <strong>de</strong> valor real<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Procesamiento <strong>de</strong> señales.<br />

La función LIMIT limita la entrada a un rango entre los valores especificados<br />

superior e inferior. Si se alcanza uno <strong>de</strong> estos límites, la función establecerá un flag<br />

H o L y limitará la salida.<br />

LIMIT <strong>de</strong>vuelve un mensaje DXDONE cuando se ha completado la operación.<br />

884 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-LIMIT: Limitador para la entrada <strong>de</strong> valor real<br />

entrada <strong>de</strong> control operación correcta<br />

LIMIT<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

31007526 12/2006 885<br />

n.º 9<br />

Tipo <strong>de</strong><br />

datos<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

LIMIT<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción LIMIT.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

9<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se almacenan<br />

los parámetros para la subfunción<br />

especificada.<br />

Para obtener más información,<br />

consulte p. 886.<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción LIMIT (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-LIMIT: Limitador para la entrada <strong>de</strong> valor real<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros LIMIT es <strong>de</strong> 9 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Entrada actual<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto y quinto implícitos Límite inferior<br />

Sexto y séptimo implícitos Límite superior<br />

Octavo implícito Registros <strong>de</strong> salida<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1...8 No utilizados<br />

9 1 = entrada < límite inferior<br />

10 1 = entrada > límite superior<br />

11 1 = límites superior/inferior no válidos (p. ej., inferior ≥ superior)<br />

12 ... 16 Bits <strong>de</strong> salida estándar (flags)<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 ... 16 No utilizados<br />

886 31007526 12/2006


Presentación<br />

PCFL-LIMV: Limitador <strong>de</strong><br />

velocidad para cambios en la<br />

entrada <strong>de</strong> valor real<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-LIMV.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

140<br />

Apartado Página<br />

Descripción breve 888<br />

Representación 889<br />

Descripción <strong>de</strong> los parámetros 890<br />

31007526 12/2006 887


PCFL-LIMV: Limitador <strong>de</strong> velocidad para cambios en la entrada <strong>de</strong> valor real<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Procesamiento <strong>de</strong> señales.<br />

La función LIMV limita la velocidad <strong>de</strong> cambio entre los valores superior e inferior<br />

especificados en una variable <strong>de</strong> entrada. Si se alcanza uno <strong>de</strong> estos límites, la<br />

función establecerá un flag H o L y limitará la salida.<br />

LIMV <strong>de</strong>vuelve un mensaje DXDONE cuando se ha completado la operación.<br />

888 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-LIMV: Limitador <strong>de</strong> velocidad para cambios en la entrada <strong>de</strong><br />

entrada <strong>de</strong> control operación correcta<br />

LIMV<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 14<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 889<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

LIMV (nodo superior) Selección <strong>de</strong> la subfunción LIMV.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

14<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte p. 890.)<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción LIMV (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-LIMV: Limitador <strong>de</strong> velocidad para cambios en la entrada <strong>de</strong> valor real<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros LIMV es <strong>de</strong> 14 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Registro <strong>de</strong> entrada<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto implícito Registro <strong>de</strong> tiempo<br />

Quinto implícito Reservado<br />

Sexto y séptimo implícitos Δt (en ms) <strong>de</strong>s<strong>de</strong> el último ciclo<br />

Octavo y noveno implícitos Intervalo <strong>de</strong> resolución (en ms)<br />

Décimo y undécimo implícitos Límite <strong>de</strong> velocidad/s<br />

Duodécimo y <strong>de</strong>cimotercer implícitos Resultado<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1...5 No utilizados<br />

6 1 = límite <strong>de</strong> velocidad negativo<br />

7 1 = entrada < límite inferior<br />

8 1 = entrada > límite superior<br />

9 ... 16 Bits <strong>de</strong> salida estándar (flags)<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 ... 16 No utilizados<br />

890 31007526 12/2006


Presentación<br />

PCFL-LKUP: Tabla <strong>de</strong> búsqueda<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-LKUP.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

141<br />

Apartado Página<br />

Descripción breve 892<br />

Representación 893<br />

Descripción <strong>de</strong> los parámetros 894<br />

31007526 12/2006 891


PCFL-LKUP: Tabla <strong>de</strong> búsqueda<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Procesamiento <strong>de</strong> señales.<br />

La función LKUP establece una tabla <strong>de</strong> linearización por interpolación mediante un<br />

algoritmo linear para la interpolación entre puntos <strong>de</strong> coor<strong>de</strong>nadas. LKUP pue<strong>de</strong><br />

manejar intervalos <strong>de</strong> puntos variables y cantida<strong>de</strong>s variables <strong>de</strong> puntos.<br />

892 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-LKUP: Tabla <strong>de</strong> búsqueda<br />

entrada <strong>de</strong> control operación correcta<br />

LKUP<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 39<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 893<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

LKUP<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción LKUP.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

39<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

(Para obtener más información,<br />

consulte p. 895.)<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción LKUP (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-LKUP: Tabla <strong>de</strong> búsqueda<br />

Descripción <strong>de</strong> los parámetros<br />

Modo <strong>de</strong><br />

funcionamiento<br />

La función LKUP establece una tabla <strong>de</strong> linearización por interpolación mediante un<br />

algoritmo linear para la interpolación entre puntos <strong>de</strong> coor<strong>de</strong>nadas. LKUP pue<strong>de</strong><br />

manejar intervalos <strong>de</strong> puntos variables y cantida<strong>de</strong>s variables <strong>de</strong> puntos.<br />

Si la entrada (x) está fuera <strong>de</strong>l rango <strong>de</strong> puntos especificado, la salida (y) se limitará<br />

a la salida correspondiente y0 o yn. Si la longitud <strong>de</strong>l bloque <strong>de</strong> parámetros es<br />

<strong>de</strong>masiado reducida o si el número <strong>de</strong> puntos está fuera <strong>de</strong> rango, la función no<br />

comprobará xn porque la información proce<strong>de</strong>nte <strong>de</strong> ese pointer será no válida.<br />

Los puntos que se han <strong>de</strong> interpolar están <strong>de</strong>terminados por un algoritmo <strong>de</strong><br />

búsqueda binario que comienza cerca <strong>de</strong>l centro <strong>de</strong> los datos x. La búsqueda será<br />

válida para x1 < x < xn. La variable x pue<strong>de</strong> aparecer múltiples veces con el mismo<br />

valor, el valor seleccionado en la tabla <strong>de</strong> linearización por interpolación será la<br />

primera instancia encontrada.<br />

Por ejemplo, si la tabla es:<br />

x y<br />

10.0 1.0<br />

20.0 2.0<br />

30.0 3.0<br />

30.0 3.5<br />

40.0 4.0<br />

Una entrada <strong>de</strong> 30,0 encontrará la primera instancia <strong>de</strong> 30,0 y asignará 3,0 como<br />

salida. Una entrada <strong>de</strong> 31,0 asignaría el valor 3,55 como la salida.<br />

No se realiza una selección <strong>de</strong> los contenidos <strong>de</strong> la tabla <strong>de</strong> linearización por<br />

interpolación. Los valores in<strong>de</strong>pendientes <strong>de</strong> la tabla <strong>de</strong> variables <strong>de</strong>berán<br />

introducirse en or<strong>de</strong>n ascen<strong>de</strong>nte para evitar huecos difíciles <strong>de</strong> encontrar en la<br />

tabla.<br />

La función <strong>de</strong>vuelve un mensaje DXDONE cuando se ha completado la operación.<br />

894 31007526 12/2006


Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros LKUP es <strong>de</strong> 39 registros.<br />

PCFL-LKUP: Tabla <strong>de</strong> búsqueda<br />

Registro Contenido<br />

Visualizado y primer implícito Entrada<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto implícito Cantidad <strong>de</strong> pares <strong>de</strong> puntos<br />

Quinto y sexto implícitos Punto x1<br />

Séptimo y octavo implícitos Punto y1<br />

Noveno y décimo implícitos Punto x2<br />

Undécimo y duodécimo implícitos Punto y2<br />

. . . . . .<br />

Trigesimotercero y trigesimocuarto implícitos Punto x8<br />

Trigesimoquinto y trigesimosexto implícitos Punto y8<br />

Trigesimoséptimo y trigesimoctavo implícitos Salida<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 9 No utilizados<br />

10 1 = entrada limitada, es <strong>de</strong>cir, fuera <strong>de</strong>l rango <strong>de</strong> la tabla<br />

11 ! = cantidad <strong>de</strong> puntos no válida<br />

12 ... 16 Bits <strong>de</strong> salida estándar (flags)<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 ... 16 No utilizados<br />

31007526 12/2006 895


PCFL-LKUP: Tabla <strong>de</strong> búsqueda<br />

896 31007526 12/2006


Presentación<br />

PCFL-LLAG: Filtro diferenciador o<br />

<strong>de</strong> retardo <strong>de</strong> primer or<strong>de</strong>n<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-LLAG.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

142<br />

Apartado Página<br />

Descripción breve 898<br />

Representación 899<br />

Descripción <strong>de</strong> los parámetros 900<br />

31007526 12/2006 897


PCFL-LLAG: Filtro diferenciador o <strong>de</strong> retardo <strong>de</strong> primer or<strong>de</strong>n<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Procesamiento <strong>de</strong> señales.<br />

La función LLAG proporciona compensación dinámica para perturbaciones<br />

conocidas. Normalmente tiene lugar en un algoritmo <strong>de</strong> anticipación o como filtro<br />

dinámico. LLAG pasa la entrada por un filtro que comprime una constante <strong>de</strong> tiempo<br />

<strong>de</strong> retardo (numerador) y una constante <strong>de</strong> tiempo <strong>de</strong> retardo (<strong>de</strong>nominador) en un<br />

dominio <strong>de</strong> frecuencias y, a continuación, lo multiplica por una ganancia. La<br />

constante <strong>de</strong> tiempo <strong>de</strong> diferenciación, <strong>de</strong> tiempo <strong>de</strong> retardo, la ganancia y el<br />

intervalo <strong>de</strong> resolución <strong>de</strong>ben ser específicos <strong>de</strong>l usuario.<br />

Para un mejor resultado, utilice constantes <strong>de</strong> tiempo <strong>de</strong> diferenciación y <strong>de</strong> retardo<br />

que sean ≥ 4 *Δt. Esto asegurará una suficiente resolución en la respuesta <strong>de</strong><br />

salida.<br />

LLAG <strong>de</strong>vuelve un mensaje DXDONE cuando se ha completado la operación.<br />

898 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-LLAG: Filtro diferenciador o <strong>de</strong> retardo <strong>de</strong> primer or<strong>de</strong>n<br />

entrada <strong>de</strong> control operación correcta<br />

LLAG<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 20<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 899<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

LLAG<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción LLAG.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

20<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

(Para obtener más información,<br />

consulte p. 900.)<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción LLAG (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-LLAG: Filtro diferenciador o <strong>de</strong> retardo <strong>de</strong> primer or<strong>de</strong>n<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros LLAG es <strong>de</strong> 20 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Entrada actual<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto implícito Registro <strong>de</strong> tiempo<br />

Quinto implícito Reservado<br />

Sexto y séptimo implícitos Δt (en ms) <strong>de</strong>s<strong>de</strong> el último ciclo<br />

Octavo y noveno implícitos Intervalo <strong>de</strong> resolución (en ms)<br />

Décimo y undécimo implícitos Última entrada<br />

Duodécimo y <strong>de</strong>cimotercer implícitos Constante <strong>de</strong> tiempo <strong>de</strong> diferenciación<br />

Decimocuarto y <strong>de</strong>cimoquinto implícitos Constante <strong>de</strong> tiempo <strong>de</strong> retardo<br />

Decimosexto y <strong>de</strong>cimoséptimo implícitos Ganancia <strong>de</strong>l filtro<br />

Decimoctavo y <strong>de</strong>cimonoveno implícitos Resultado<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1...8 No utilizados<br />

9 ... 16 Bits <strong>de</strong> salida estándar (flags)<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 ... 16 No utilizados<br />

900 31007526 12/2006


Presentación<br />

PCFL-MODE:<br />

Establecer la entrada en<br />

modalidad automática o manual<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-MODE.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

143<br />

Apartado Página<br />

Descripción breve 902<br />

Representación 903<br />

Descripción <strong>de</strong> los parámetros 904<br />

31007526 12/2006 901


PCFL-MODE: Establecer la entrada en modalidad automática o manual<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Procesamiento <strong>de</strong> señales.<br />

La función MODE configura una estación automática o manual para habilitar o<br />

<strong>de</strong>sactivar las transferencias <strong>de</strong> datos al siguiente bloque. La función actúa como<br />

una instrucción BLKM, trasladando un valor al registro <strong>de</strong> salida.<br />

En el modo automático, la entrada se copia en la salida. En el modo manual, la<br />

salida se sobrescribe con una entrada <strong>de</strong> usuario.<br />

MODE <strong>de</strong>vuelve un mensaje DXDONE cuando se ha completado la operación.<br />

902 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-MODE: Establecer la entrada en modalidad automática o<br />

entrada <strong>de</strong> control operación correcta<br />

MODE<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

31007526 12/2006 903<br />

n.º 8<br />

Tipo <strong>de</strong><br />

datos<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

MODE<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción MODE.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

8<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

(Para obtener más información,<br />

consulte p. 904.)<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción MODE (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-MODE: Establecer la entrada en modalidad automática o manual<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros MODE es <strong>de</strong> 8 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Entrada<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto y quinto implícitos Entrada manual<br />

Sexto y séptimo implícitos Registros <strong>de</strong> salida<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 10 No utilizados<br />

11 Modo <strong>de</strong> eco:<br />

1 = modo manual<br />

0 = modo automático<br />

12 ... 16 Bits <strong>de</strong> salida estándar (flags)<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 1 = modo manual<br />

0 = modo automático<br />

6 ... 16 No utilizados<br />

904 31007526 12/2006


Presentación<br />

PCFL-ONOFF: Valores ON/OFF<br />

para banda muerta<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-ONOFF.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

144<br />

Apartado Página<br />

Descripción breve 906<br />

Representación 907<br />

Descripción <strong>de</strong> los parámetros 908<br />

31007526 12/2006 905


PCFL-ONOFF: Valores ON/OFF para banda muerta<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

Sobrescribir<br />

manual<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Control <strong>de</strong> regulación.<br />

La función ONOFF se utiliza para controlar las señales <strong>de</strong> salida entre condiciones<br />

completamente activas o inactivas, <strong>de</strong> manera que el usuario pueda forzar<br />

manualmente la salida a activa o inactiva.<br />

Es posible controlar la salida mediante una configuración directa o inversa.<br />

Configuración Si la entrada... Entonces la salida...<br />

Directa < (SP - DB) Activa<br />

> (SP + DB) Inactiva<br />

Inversa > (SP + DB) Activa<br />

< (SP - DB) Inactiva<br />

Se utilizan dos bits en el registro <strong>de</strong>l estado <strong>de</strong> entrada (el tercer registro implícito<br />

en el bloque <strong>de</strong> parámetros) para la sobrescritura manual. Cuando se establece el<br />

bit 6 en 1, se aplica el modo manual. En el modo manual, un 0 en el bit 7 fuerza la<br />

salida a inactivo y un 1 en el bit 7 fuerza la salida a activo. El estado <strong>de</strong>l bit 7 sólo<br />

tiene sentido en el modo manual.<br />

906 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-ONOFF: Valores ON/OFF para banda muerta<br />

entrada <strong>de</strong> control operación correcta<br />

ONOFF<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 14<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 907<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

ONOFF<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción ONOFF.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo<br />

intermedio)<br />

14<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en espera<br />

contiguos en los que se almacenan los<br />

parámetros para la subfunción especificada.<br />

(Para obtener más información,<br />

consulte p. 908.)<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción ONOFF (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-ONOFF: Valores ON/OFF para banda muerta<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros ONOFF es <strong>de</strong> 14 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Entrada actual<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto y quinto implícitos Valor teórico, SP<br />

Sexto y séptimo implícitos Banda muerta (DB) alre<strong>de</strong>dor <strong>de</strong> SP<br />

Octavo y noveno implícitos Completamente activo (salida máxima)<br />

Décimo y undécimo implícitos Completamente inactivo (salida mínima)<br />

Duodécimo y <strong>de</strong>cimotercer implícitos Salida, activa o inactiva<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 8 No utilizados.<br />

9 1 = banda muerta establecida en número negativo.<br />

10 Modo <strong>de</strong> eco:<br />

1 = sobrescribir manual.<br />

0 = modo automático.<br />

11 1 = salida puesta en activo.<br />

0 = salida puesta en inactivo.<br />

12 ... 16 Bits <strong>de</strong> salida estándar (flags).<br />

908 31007526 12/2006


Estado <strong>de</strong><br />

entrada<br />

Bit Función<br />

1 ... 4 Bits <strong>de</strong> entrada estándar (flags).<br />

5 1 = configuración inversa.<br />

0 = configuración directa.<br />

6 1 = sobrescribir manual.<br />

0 = modo automático.<br />

7 1 = forzar salida a activo en el modo manual.<br />

0 = forzar salida a inactivo en el modo manual.<br />

8 ... 16 No utilizados.<br />

PCFL-ONOFF: Valores ON/OFF para banda muerta<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

31007526 12/2006 909


PCFL-ONOFF: Valores ON/OFF para banda muerta<br />

910 31007526 12/2006


Presentación<br />

PCFL-PI: PI no interactivo <strong>de</strong> ISA<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-PI.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

145<br />

Apartado Página<br />

Descripción breve 912<br />

Representación 913<br />

Descripción <strong>de</strong> los parámetros 914<br />

31007526 12/2006 911


PCFL-PI: PI no interactivo <strong>de</strong> ISA<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Control <strong>de</strong> regulación.<br />

La función PI realiza operaciones proporcionales-integrales sencillas utilizando la<br />

matemática <strong>de</strong> coma flotante. Incluye los modos <strong>de</strong> funcionamiento <strong>de</strong>tenido/<br />

manual/automático. Es similar a las funciones PID y KPID, pero no contiene tantas<br />

opciones. Se pue<strong>de</strong> utilizar en bucles <strong>de</strong> alta velocidad o bucles internos en<br />

estrategias <strong>de</strong> cascada.<br />

912 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-PI: PI no interactivo <strong>de</strong> ISA<br />

entrada <strong>de</strong> control operación correcta<br />

PI<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

PI<br />

(nodo superior)<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo<br />

intermedio)<br />

36<br />

(nodo inferior)<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 36<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 913<br />

error<br />

Significado<br />

0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

Selección <strong>de</strong> la subfunción PI.<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

(Para obtener más información,<br />

consulte p. 914.)<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción PI (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-PI: PI no interactivo <strong>de</strong> ISA<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros PI es <strong>de</strong> 36 registros.<br />

Registro Contenido<br />

Parámetros Visualizado y primer implícito Entrada real, x.<br />

generales Segundo implícito Estado <strong>de</strong> salida.<br />

Tercer implícito Palabra <strong>de</strong> error.<br />

Cuarto implícito Reservado.<br />

Quinto implícito Estado <strong>de</strong> entrada.<br />

Entradas Sexto y séptimo implícitos Valor teórico, SP.<br />

Octavo y noveno implícitos Salida manual.<br />

Décimo y undécimo implícitos Diferencia <strong>de</strong> control calculada<br />

(error), XD.<br />

Salidas Duodécimo implícito Modo <strong>de</strong> funcionamiento anterior.<br />

Decimotercero y <strong>de</strong>cimocuarto<br />

implícitos<br />

Dt (en ms) <strong>de</strong>s<strong>de</strong> el último ciclo.<br />

Información<br />

<strong>de</strong> tiempos<br />

Parámetros<br />

<strong>de</strong> entrada<br />

Decimoquinto y <strong>de</strong>cimosexto<br />

implícitos<br />

Decimoséptimo y <strong>de</strong>cimoctavo<br />

implícitos<br />

Desviación <strong>de</strong>l sistema anterior,<br />

XD_1.<br />

Parte integral <strong>de</strong> la salida Y.<br />

Decimonoveno y vigésimo implícitos Entrada anterior, X_1.<br />

Vigesimoprimero implícito Estado <strong>de</strong> funcionamiento anterior.<br />

Vigesimosegundo implícito Reloj <strong>de</strong> 10 ms en tiempo n.<br />

Vigesimotercero implícito Reservado.<br />

Vigesimocuarto y vigesimoquinto<br />

implícitos<br />

Intervalo <strong>de</strong> resolución (en ms).<br />

Vigesimosexto y vigesimoséptimo<br />

implícitos<br />

Vigesimoctavo y vigesimonoveno<br />

implícitos<br />

Velocidad proporcional, KP.<br />

Tiempo <strong>de</strong> reinicio, TI.<br />

Trigésimo y trigesimoprimer implícitos Límite superior para la salida Y.<br />

Trigesimosegundo y trigesimotercer Límite inferior para la salida Y.<br />

implícitos<br />

Salida Trigesimocuarto y trigesimoquinto<br />

implícitos<br />

Salida <strong>de</strong> variable manipulada, Y.<br />

914 31007526 12/2006


Estado <strong>de</strong> salida<br />

Palabra <strong>de</strong> error<br />

Estado <strong>de</strong><br />

entrada<br />

Bit Función<br />

1 Error<br />

2 1 = límite inferior excedido.<br />

3 1 = límite superior excedido.<br />

4 ... 8 No utilizados.<br />

9 ... 16 Bits <strong>de</strong> salida estándar (flags).<br />

Descripción <strong>de</strong> errores<br />

PCFL-PI: PI no interactivo <strong>de</strong> ISA<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1...11 No utilizados.<br />

12 ... 16 Descripción <strong>de</strong> errores<br />

Bit Significado<br />

12 13 14 15 16<br />

1 0 1 1 0 Constante <strong>de</strong> tiempo <strong>de</strong> acción <strong>de</strong> integración<br />

negativo.<br />

1 0 1 0 1 Error <strong>de</strong> límite superior/inferior (inferior≥ superior).<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 4 Bits <strong>de</strong> entrada estándar (flags).<br />

5 No utilizados.<br />

6 1 = modo manual.<br />

7 1 = modo <strong>de</strong> parada.<br />

8 ... 15 No utilizados.<br />

16 1 = acción inversa para la salida <strong>de</strong>l regulador.<br />

0 = acción directa para la salida <strong>de</strong>l regulador.<br />

31007526 12/2006 915


PCFL-PI: PI no interactivo <strong>de</strong> ISA<br />

916 31007526 12/2006


Presentación<br />

PCFL-PID: Algoritmos PID<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-PID.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

146<br />

Apartado Página<br />

Descripción breve 918<br />

Representación 919<br />

Descripción <strong>de</strong> los parámetros 920<br />

31007526 12/2006 917


PCFL-PID: Algoritmos PID<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Control <strong>de</strong> regulación.<br />

La función PI realiza operaciones proporcional-integral-diferencial (PID) no<br />

interactivas utilizando la matemática <strong>de</strong> coma flotante. Los errores <strong>de</strong> redon<strong>de</strong>o son<br />

insignificantes, pues se utiliza la matemática <strong>de</strong> coma flotante (a diferencia <strong>de</strong><br />

PID2).<br />

Encontrará p. 25 en la sección "Información general".<br />

918 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control operación correcta<br />

PID<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 44<br />

Tipo <strong>de</strong><br />

datos<br />

PCFL-PID: Algoritmos PID<br />

31007526 12/2006 919<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

PID<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción PID.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

44<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

(Para obtener más información,<br />

consulte p. 920.)<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción PID (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-PID: Algoritmos PID<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros KPID es <strong>de</strong> 44 registros.<br />

Registro Contenido<br />

Parámetros Visualizado y primer implícito Entrada real, x.<br />

generales Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Palabra <strong>de</strong> error.<br />

Cuarto implícito Reservados.<br />

Quinto implícito Estado <strong>de</strong> entrada.<br />

Entradas Sexto y séptimo implícitos Valor teórico, SP.<br />

Octavo y noveno implícitos Salida manual.<br />

Décimo y undécimo implícitos Unión <strong>de</strong> suma, Bias.<br />

Salidas Duodécimo y <strong>de</strong>cimotercer implícitos Error, XD.<br />

Decimocuarto implícito Modo <strong>de</strong> funcionamiento anterior.<br />

Decimoquinto y <strong>de</strong>cimosexto implícitos Tiempo transcurrido (en ms) <strong>de</strong>s<strong>de</strong> el último ciclo.<br />

Decimoséptimo y <strong>de</strong>cimoctavo implícitos Desviación <strong>de</strong>l sistema anterior, XD_1.<br />

Decimonoveno y vigésimo implícitos Entrada anterior, X_1.<br />

Vigesimoprimero y vigesimosegundo implícitos Parte integral <strong>de</strong> la salida Y, YI.<br />

Vigesimotercero y vigesimocuarto implícitos Parte diferencial <strong>de</strong> la salida Y, YD.<br />

Vigesimoquinto y vigesimosexto implicados Parte proporcional <strong>de</strong> la salida Y, YP.<br />

Vigesimoséptimo implícito Estado <strong>de</strong> funcionamiento anterior.<br />

Información Vigesimoctavo implícito Tiempo actual<br />

<strong>de</strong> tiempos Vigesimonoveno implícito Reservados.<br />

Entradas Trigésimo y trigesimoprimer implícitos Intervalo <strong>de</strong> resolución (en ms).<br />

Trigesimocuarto y trigesimoquinto implícitos Tiempo <strong>de</strong> reinicio, TI.<br />

Trigesimosexto y trigesimoséptimo implícitos Tiempo <strong>de</strong> acción diferencial, TD.<br />

Trigesimoctavo y trigesimonoveno implícitos Límite superior para la salida Y.<br />

Cuadragésimo y cuadragesimoprimer implícitos Límite inferior para la salida Y.<br />

Cuadragesimosegundo y cuadragesimotercero Salida <strong>de</strong> control <strong>de</strong> posicionado, Y.<br />

920 31007526 12/2006


Estado <strong>de</strong> salida<br />

Palabra <strong>de</strong> error<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 Error<br />

2 1 = límite inferior excedido.<br />

3 1 = límite superior excedido.<br />

4 ... 8 No utilizados<br />

9 ... 16 Bits <strong>de</strong> salida estándar (flags).<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1...11 No utilizados.<br />

12 ... 16 Descripción <strong>de</strong> errores<br />

Descripción <strong>de</strong> errores<br />

PCFL-PID: Algoritmos PID<br />

Bit Significado<br />

12 13 14 15 16<br />

1 0 1 1 1 Constante <strong>de</strong> tiempo <strong>de</strong> componente diferencial negativo.<br />

1 0 1 1 0 Constante <strong>de</strong> tiempo <strong>de</strong> acción <strong>de</strong> integración negativo.<br />

1 0 1 0 1 Error <strong>de</strong> límite superior/inferior (inferior≥ superior).<br />

31007526 12/2006 921


PCFL-PID: Algoritmos PID<br />

Estado <strong>de</strong><br />

entrada<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 No utilizados<br />

6 1 = modo manual.<br />

7 1 = modo <strong>de</strong> parada.<br />

8 No utilizados.<br />

9 1 = resolver algoritmo proporcional.<br />

10 1 = resolver algoritmo integral.<br />

11 1 = resolver algoritmo diferencial.<br />

12 1 = resolver algoritmo diferencial basado en x.<br />

0 = resolver algoritmo diferencial basado en xd.<br />

13... 15 No utilizados.<br />

16 1 = acción inversa para la salida <strong>de</strong>l regulador.<br />

0 = acción directa para la salida <strong>de</strong>l regulador.<br />

922 31007526 12/2006


Presentación<br />

PCFL-RAMP: Rampa para el valor<br />

<strong>de</strong> consigna con una tasa <strong>de</strong><br />

crecimiento constante<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-RAMP.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

147<br />

Apartado Página<br />

Descripción breve 924<br />

Representación 925<br />

Descripción <strong>de</strong> los parámetros 926<br />

31007526 12/2006 923


PCFL-RAMP: Rampa para el valor <strong>de</strong> consigna con una tasa <strong>de</strong> crecimiento constante<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Inicio <strong>de</strong> la<br />

rampa<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Procesamiento <strong>de</strong> señales.<br />

La función RAMP le permite ascen<strong>de</strong>r linealmente hacia un valor teórico <strong>de</strong> <strong>de</strong>stino<br />

a una <strong>de</strong>terminada velocidad <strong>de</strong> acercamiento.<br />

Es necesario especificar lo siguiente:<br />

El valor <strong>de</strong> consigna <strong>de</strong> <strong>de</strong>stino, en las mismas unida<strong>de</strong>s en las que se <strong>de</strong>termina<br />

el contenido <strong>de</strong>l registro <strong>de</strong> entrada.<br />

La frecuencia <strong>de</strong> registro <strong>de</strong> medidas.<br />

Una velocidad positiva hacia el valor teórico <strong>de</strong> <strong>de</strong>stino; las velocida<strong>de</strong>s<br />

negativas no son válidas.<br />

El sentido <strong>de</strong> la rampa <strong>de</strong>pen<strong>de</strong> <strong>de</strong> la relación entre el valor teórico <strong>de</strong> <strong>de</strong>stino y la<br />

entrada, es <strong>de</strong>cir, si x < SP, la rampa ascien<strong>de</strong>; si x > SP, la rampa <strong>de</strong>scien<strong>de</strong>.<br />

Pue<strong>de</strong> utilizar un flag para inicializar <strong>de</strong>spués <strong>de</strong> un tiempo <strong>de</strong> suspensión. La<br />

función almacenará una nueva muestra y, a continuación, esperará un ciclo para<br />

recoger la segunda. Los cálculos se saltarán durante un ciclo y la salida<br />

permanecerá en su estado, tras lo cual la rampa se reanudará.<br />

La función RAMP finaliza cuando se completa toda la operación <strong>de</strong> rampa (en<br />

varios ciclos) y se <strong>de</strong>vuelve un mensaje DXDONE.<br />

Deberá realizar los siguientes pasos para iniciar la rampa (hacia arriba o abajo), así<br />

como cada vez que tenga que iniciar o reiniciar la rampa.<br />

Paso Acción<br />

1 Establezca en "1" el bit 1 <strong>de</strong> los bits <strong>de</strong> entrada estándar (tercer registro implícito<br />

<strong>de</strong>l bloque <strong>de</strong> parámetros).<br />

2 Vuelva a introducir la entrada superior (entrada habilitada) en la instrucción. La<br />

rampa comenzará a ascen<strong>de</strong>r o <strong>de</strong>scen<strong>de</strong>r <strong>de</strong>s<strong>de</strong> el valor inicial, previamente<br />

configurado en sentido ascen<strong>de</strong>nte o <strong>de</strong>scen<strong>de</strong>nte, hasta el valor <strong>de</strong> consigna<br />

configurado anteriormente. Supervise el duodécimo registro implícito <strong>de</strong>l bloque<br />

<strong>de</strong> parámetros para el valor <strong>de</strong> coma flotante <strong>de</strong>l valor <strong>de</strong> rampa en curso.<br />

924 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-RAMP: Rampa para el valor <strong>de</strong> consigna con una tasa <strong>de</strong><br />

entrada <strong>de</strong> control operación correcta<br />

RAMP<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

RAMP<br />

(nodo superior)<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo<br />

intermedio)<br />

14<br />

(nodo inferior)<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 14<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 925<br />

error<br />

Significado<br />

0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

Selección <strong>de</strong> la subfunción RAMP.<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

(Para obtener más información,<br />

consulte p. 926.)<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción RAMP (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-RAMP: Rampa para el valor <strong>de</strong> consigna con una tasa <strong>de</strong> crecimiento constante<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros RAMP es <strong>de</strong> 14 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Valor <strong>de</strong> consigna (entrada)<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto implícito Registro <strong>de</strong> tiempo<br />

Quinto implícito Reservado<br />

Sexto y séptimo implícitos Δt (en ms) <strong>de</strong>s<strong>de</strong> el último ciclo<br />

Octavo y noveno implícitos Intervalo <strong>de</strong> resolución (en ms)<br />

Décimo y undécimo implícitos Tasa <strong>de</strong> variación (por segundo) hacia el valor teórico<br />

Duodécimo y <strong>de</strong>cimotercer implícitos Salida<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 4 No utilizados<br />

5 1 = pendiente <strong>de</strong> rampa negativa<br />

6 1 = rampa finalizada<br />

0 = rampa en curso<br />

7 1 = rampa <strong>de</strong>scen<strong>de</strong>nte<br />

8 1 = rampa ascen<strong>de</strong>nte<br />

9 ... 16 Bits <strong>de</strong> salida estándar (flags)<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 a 16 No utilizados<br />

926 31007526 12/2006


Salida superior<br />

(operación<br />

satisfactoria)<br />

PCFL-RAMP: Rampa para el valor <strong>de</strong> consigna con una tasa <strong>de</strong><br />

La salida superior <strong>de</strong> la subfunción RAMP <strong>de</strong> PCFL se activará en cada paso<br />

ascen<strong>de</strong>nte o <strong>de</strong>scen<strong>de</strong>nte sucesivo en la rampa binaria. Suce<strong>de</strong> con tanta rapi<strong>de</strong>z<br />

que da la sensación <strong>de</strong> estar activada continuamente. Esta salida superior NO se<br />

<strong>de</strong>be utilizar como "bit <strong>de</strong> rampa finalizada".<br />

El bit 6 <strong>de</strong>l estado <strong>de</strong> salida (segundo registro implícito <strong>de</strong>l bloque <strong>de</strong> parámetros)<br />

se <strong>de</strong>be supervisar como "bit <strong>de</strong> rampa finalizada".<br />

31007526 12/2006 927


PCFL-RAMP: Rampa para el valor <strong>de</strong> consigna con una tasa <strong>de</strong> crecimiento constante<br />

928 31007526 12/2006


Presentación<br />

PCFL-RATE:<br />

Cálculo <strong>de</strong> la tasa diferencial<br />

durante un periodo específico<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-RATE.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

148<br />

Apartado Página<br />

Descripción breve 930<br />

Representación 931<br />

Descripción <strong>de</strong> los parámetros 9<strong>32</strong><br />

31007526 12/2006 929


PCFL-RATE: Cálculo <strong>de</strong> la tasa diferencial durante un periodo específico<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Procesamiento <strong>de</strong> señales.<br />

La función RATE calcula la tasa <strong>de</strong> variación en los dos últimos valores <strong>de</strong> entrada.<br />

Si establece un flag <strong>de</strong> inicialización, la función registrará una muestra y establecerá<br />

los flags apropiados.<br />

Si se intenta realizar una operación <strong>de</strong> división entre cero, la función <strong>de</strong>volverá un<br />

mensaje DXERROR.<br />

Cuando se haya completado la operación correctamente, la función <strong>de</strong>volverá un<br />

mensaje DXDONE.<br />

930 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-RATE: Cálculo <strong>de</strong> la tasa diferencial durante un periodo<br />

entrada <strong>de</strong> control operación correcta<br />

RATE<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

RATE<br />

(nodo superior)<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo<br />

intermedio)<br />

14<br />

(nodo inferior)<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 14<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 931<br />

error<br />

Significado<br />

0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

Selección <strong>de</strong> la subfunción RATE.<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

(Para obtener más información,<br />

consulte p. 9<strong>32</strong>.)<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción RATE (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-RATE: Cálculo <strong>de</strong> la tasa diferencial durante un periodo específico<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros RATE es <strong>de</strong> 14 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Entrada actual<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto implícito Registro <strong>de</strong> tiempo<br />

Quinto implícito Reservado<br />

Sexto y séptimo implícitos Δt (en ms) <strong>de</strong>s<strong>de</strong> el último ciclo<br />

Octavo y noveno implícitos Intervalo <strong>de</strong> resolución (en ms)<br />

Décimo y undécimo implícitos Última entrada<br />

Duodécimo y <strong>de</strong>cimotercer implícitos Resultado<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 8 No utilizados<br />

9 a 16 Bits <strong>de</strong> salida estándar (flags)<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 a 16 No utilizados<br />

9<strong>32</strong> 31007526 12/2006


Presentación<br />

PCFL-RATIO: Controlador <strong>de</strong> ratio<br />

para cuatro estaciones<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-RATIO.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

149<br />

Apartado Página<br />

Descripción breve 934<br />

Representación 935<br />

Descripción <strong>de</strong> los parámetros 936<br />

31007526 12/2006 933


PCFL-RATIO: Controlador <strong>de</strong> ratio para cuatro estaciones<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Control <strong>de</strong> regulación.<br />

La función RATIO ofrece un controlador <strong>de</strong> ratio para cuatro estaciones. El control<br />

<strong>de</strong> ratio se pue<strong>de</strong> utilizar en aplicaciones don<strong>de</strong> uno o más ingredientes brutos<br />

<strong>de</strong>pen<strong>de</strong>n <strong>de</strong> un ingrediente primario. Se mi<strong>de</strong> el ingrediente primario y la medida<br />

se convierte a unida<strong>de</strong>s físicas por medio <strong>de</strong> una función AIN. El valor una vez<br />

convertido se utilizará para establecer el <strong>de</strong>stino <strong>de</strong>l resto <strong>de</strong> entradas a las que se<br />

aplica la instrucción RATIO.<br />

Las salidas <strong>de</strong>l controlador <strong>de</strong> ratio pue<strong>de</strong>n proporcionar valores <strong>de</strong> consigna para<br />

otros controladores. También se pue<strong>de</strong>n utilizar en una estructura <strong>de</strong> bucle abierto<br />

para aplicaciones don<strong>de</strong> no es necesaria la realimentación.<br />

934 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-RATIO: Controlador <strong>de</strong> ratio para cuatro estaciones<br />

entrada <strong>de</strong> control operación correcta<br />

RATIO<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

RATIO<br />

(nodo superior)<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo<br />

intermedio)<br />

20<br />

(nodo inferior)<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 20<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 935<br />

error<br />

Significado<br />

0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

Selección <strong>de</strong> la subfunción RATIO.<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

(Para obtener más información,<br />

consulte p. 936.)<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción RATIO (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-RATIO: Controlador <strong>de</strong> ratio para cuatro estaciones<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros RATIO es <strong>de</strong> 20 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Entrada real<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto y quinto implícitos Ratio para la entrada 1<br />

Sexto y séptimo implícitos Ratio para la entrada 2<br />

Octavo y noveno implícitos Ratio para la entrada 3<br />

Décimo y undécimo implícitos Ratio para la entrada 4<br />

Duodécimo y <strong>de</strong>cimotercer implícitos Salida para la entrada 1<br />

Decimocuarto y <strong>de</strong>cimoquinto implícitos Salida para la entrada 2<br />

Decimosexto y <strong>de</strong>cimoséptimo implícitos Salida para la entrada 3<br />

Decimoctavo y <strong>de</strong>cimonoveno implícitos Salida para la entrada 4<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 9 No utilizados<br />

10 1 = parámetros fuera <strong>de</strong> rango<br />

11 1 = no hay entradas activadas<br />

12 a 16 Bits <strong>de</strong> salida estándar (flags)<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 1 = entrada 4 activa<br />

6 1 = entrada 3 activa<br />

7 1 = entrada 2 activa<br />

8 1 = entrada 1 activa<br />

9 a 16 No utilizados<br />

936 31007526 12/2006


Presentación<br />

PCFL-RMPLN: Rampa logarítmica<br />

para el valor <strong>de</strong> consigna<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-RMPLN.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

150<br />

Apartado Página<br />

Descripción breve 938<br />

Representación 939<br />

Descripción <strong>de</strong> los parámetros 940<br />

31007526 12/2006 937


PCFL-RMPLN: Rampa logarítmica para el valor <strong>de</strong> consigna<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Procesamiento <strong>de</strong> señales.<br />

La función RMPLN permite ascen<strong>de</strong>r <strong>de</strong> forma logarítmica hacia un valor <strong>de</strong><br />

consigna <strong>de</strong> <strong>de</strong>stino con una <strong>de</strong>terminada velocidad <strong>de</strong> acercamiento. En cada<br />

llamada sucesiva, calcula la salida hasta que se encuentre <strong>de</strong>ntro <strong>de</strong> una banda<br />

muerta (DB) especificada. Esta última es necesaria porque la distancia incremental<br />

que recorre la rampa se reduce en cada ciclo.<br />

Es necesario especificar:<br />

El valor <strong>de</strong> consigna <strong>de</strong> <strong>de</strong>stino, en las mismas unida<strong>de</strong>s en las que se <strong>de</strong>termina<br />

el contenido <strong>de</strong>l registro <strong>de</strong> entrada especificado.<br />

La frecuencia <strong>de</strong> registro <strong>de</strong> medidas.<br />

La constante <strong>de</strong> tiempo utilizada para la rampa logarítmica; esta constante indica<br />

el tiempo que se tarda en alcanzar el 63,2% <strong>de</strong>l nuevo valor <strong>de</strong> consigna.<br />

Para obtener mejores resultados, utilice una constante t que sea ≥4 *Δt. De este<br />

modo asegurará una resolución suficiente en la respuesta <strong>de</strong> salida.<br />

Pue<strong>de</strong> utilizar un flag para inicializar <strong>de</strong>spués <strong>de</strong> un tiempo <strong>de</strong> suspensión. La<br />

función almacenará una nueva muestra y, a continuación, esperará un ciclo para<br />

recoger la segunda. Los cálculos se saltarán durante un ciclo y la salida<br />

permanecerá en su estado, tras lo cual la rampa se reanudará.<br />

RMPLN finalizará cuando la entrada alcance el valor <strong>de</strong> consigna <strong>de</strong> <strong>de</strong>stino + la<br />

banda muerta (DB) especificada y <strong>de</strong>vuelva un mensaje DXDONE.<br />

938 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-RMPLN: Rampa logarítmica para el valor <strong>de</strong> consigna<br />

entrada <strong>de</strong> control operación correcta<br />

RMPLN<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

RMPLN<br />

(nodo superior)<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo<br />

intermedio)<br />

16<br />

(nodo inferior)<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 16<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

31007526 12/2006 939<br />

error<br />

0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong> procesos<br />

especificada.<br />

Selección <strong>de</strong> la subfunción RMPLN.<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en espera<br />

contiguos en los que se almacenan los<br />

parámetros para la subfunción especificada.<br />

(Para obtener más información,<br />

consulte p. 940.)<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción RMPLN (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-RMPLN: Rampa logarítmica para el valor <strong>de</strong> consigna<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros RMPLN es <strong>de</strong> 16 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Valor <strong>de</strong> consigna (entrada).<br />

Segundo implícito Estado <strong>de</strong> salida.<br />

Tercer implícito Estado <strong>de</strong> entrada.<br />

Cuarto implícito Registro <strong>de</strong> tiempo.<br />

Quinto implícito Reservado.<br />

Sexto y séptimo implícitos Δt (en ms) <strong>de</strong>s<strong>de</strong> el último ciclo.<br />

Octavo y noveno implícitos Intervalo <strong>de</strong> resolución (en ms).<br />

Décimo y undécimo implícitos Constante <strong>de</strong> tiempo, τ, (por segundo) <strong>de</strong> la rampa<br />

exponencial hacia el valor <strong>de</strong> consigna <strong>de</strong> <strong>de</strong>stino.<br />

Duodécimo y <strong>de</strong>cimotercer implícitos Banda muerta (en unida<strong>de</strong>s físicas).<br />

Decimocuarto y <strong>de</strong>cimoquinto implícitos Salida.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 4 No utilizados.<br />

5 1 = DB o τ establecido en unida<strong>de</strong>s negativas.<br />

6 1 = rampa finalizada.<br />

0 = rampa en curso.<br />

7 1 = rampa <strong>de</strong>scen<strong>de</strong>nte.<br />

8 1 = rampa ascen<strong>de</strong>nte.<br />

9 a 16 Bits <strong>de</strong> salida estándar (flags).<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 4 Bits <strong>de</strong> entrada estándar (flags).<br />

5 a 16 No utilizados.<br />

940 31007526 12/2006


Presentación<br />

PCFL-SEL: Selección <strong>de</strong> entrada<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-SEL.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

151<br />

Apartado Página<br />

Descripción breve 942<br />

Representación 943<br />

Descripción <strong>de</strong> los parámetros 944<br />

31007526 12/2006 941


PCFL-SEL: Selección <strong>de</strong> entrada<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Procesamiento <strong>de</strong> señales.<br />

La función SEL compara hasta cuatro entradas y realiza una selección basada en<br />

el valor más alto, en el más bajo o en el promedio. Es posible seleccionar las<br />

entradas que se <strong>de</strong>see comparar y el criterio <strong>de</strong> comparación. La salida es una<br />

copia <strong>de</strong> la entrada seleccionada.<br />

SEL <strong>de</strong>vuelve un mensaje DXDONE cuando se ha completado la operación.<br />

942 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-SEL: Selección <strong>de</strong> entrada<br />

entrada <strong>de</strong> control operación correcta<br />

SEL<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 14<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 943<br />

error<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

SEL<br />

(nodo superior)<br />

Selección <strong>de</strong> la subfunción SEL.<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo intermedio)<br />

14<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

(Para obtener más información,<br />

consulte p. 944.)<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción SEL (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-SEL: Selección <strong>de</strong> entrada<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Estado <strong>de</strong> salida<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros SEL es <strong>de</strong> 14 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Reservados<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto y quinto implícitos Entrada 1<br />

Sexto y séptimo implícitos Entrada 2<br />

Octavo y noveno implícitos Entrada 3<br />

Décimo y undécimo implícitos Entrada 4<br />

Duodécimo y <strong>de</strong>cimotercer implícitos Salida<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 9 No utilizados<br />

10 Modos <strong>de</strong> selección no válidos<br />

11 No hay entradas seleccionadas<br />

12 a 16 Bits <strong>de</strong> salida estándar (flags)<br />

944 31007526 12/2006


Estado <strong>de</strong><br />

entrada<br />

Bit Función<br />

1 a 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 1 = habilitar entrada 1<br />

0 = <strong>de</strong>sactivar entrada 1<br />

6 1 = habilitar entrada 2<br />

0 = <strong>de</strong>sactivar entrada 2<br />

7 1 = habilitar entrada 3<br />

0 = <strong>de</strong>sactivar entrada 3<br />

8 1 = habilitar entrada 4<br />

0 = <strong>de</strong>sactivar entrada 4<br />

9 a 10 Modo <strong>de</strong> selección<br />

11 a 16 No utilizados<br />

Modo <strong>de</strong> selección<br />

Bit Significado<br />

9 10<br />

0 0 Seleccionar valor promedio<br />

0 1 Seleccionar valor alto<br />

1 0 Seleccionar valor bajo<br />

1 1 Reservado/no válido<br />

PCFL-SEL: Selección <strong>de</strong> entrada<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

31007526 12/2006 945


PCFL-SEL: Selección <strong>de</strong> entrada<br />

946 31007526 12/2006


Presentación<br />

PCFL-TOTAL:<br />

Totalizador para flujo dosificado<br />

Introducción En este capítulo se <strong>de</strong>scribe la subfunción PCFL-TOTAL.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

152<br />

Apartado Página<br />

Descripción breve 948<br />

Representación 949<br />

Descripción <strong>de</strong> los parámetros 950<br />

31007526 12/2006 947


PCFL-TOTAL: Totalizador para flujo dosificado<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción es una subfunción <strong>de</strong> la instrucción PCFL. Pertenece a la<br />

categoría Control <strong>de</strong> regulación.<br />

La función TOTAL proporciona un totalizador <strong>de</strong> material para los agentes <strong>de</strong><br />

procesado por lotes. La señal <strong>de</strong> entrada contiene las unida<strong>de</strong>s <strong>de</strong> peso o volumen<br />

por unidad <strong>de</strong> tiempo. El totalizador integra la entrada a lo largo <strong>de</strong>l tiempo.<br />

El algoritmo notifica tres salidas:<br />

La suma <strong>de</strong> integración<br />

El resto que hay que medir<br />

La salida <strong>de</strong> la válvula (en unida<strong>de</strong>s físicas)<br />

948 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

PCFL-TOTAL: Totalizador para flujo dosificado<br />

entrada <strong>de</strong> control operación correcta<br />

TOTAL<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

TOTAL<br />

(nodo superior)<br />

Bloque <strong>de</strong><br />

parámetros<br />

(nodo<br />

intermedio)<br />

28<br />

(nodo inferior)<br />

bloque <strong>de</strong><br />

parámetros<br />

PCFL<br />

n.º 28<br />

Tipo <strong>de</strong><br />

datos<br />

31007526 12/2006 949<br />

error<br />

Significado<br />

0x, 1x Ninguno ON = habilita la función <strong>de</strong> control <strong>de</strong><br />

procesos especificada.<br />

Selección <strong>de</strong> la subfunción TOTAL.<br />

4x INT, UINT Primero <strong>de</strong> un bloque <strong>de</strong> registros en<br />

espera contiguos en los que se<br />

almacenan los parámetros para la<br />

subfunción especificada.<br />

(Para obtener más información,<br />

consulte p. 950.)<br />

INT, UINT Longitud <strong>de</strong>l bloque <strong>de</strong> parámetros para la<br />

subfunción TOTAL (no se pue<strong>de</strong> cambiar).<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

Salida inferior 0x Ninguno ON = error.


PCFL-TOTAL: Totalizador para flujo dosificado<br />

Descripción <strong>de</strong> los parámetros<br />

Modo <strong>de</strong><br />

funcionamiento<br />

Bloque <strong>de</strong><br />

parámetros<br />

(asiento<br />

intermedio)<br />

Esta función utiliza hasta tres valores <strong>de</strong> consigna diferentes:<br />

Un valor <strong>de</strong> umbral para valor <strong>de</strong> consigna<br />

Un valor <strong>de</strong> consigna <strong>de</strong> <strong>de</strong>stino<br />

Un valor <strong>de</strong> umbral adicional para valor <strong>de</strong> consigna<br />

El valor <strong>de</strong> consigna <strong>de</strong> <strong>de</strong>stino se <strong>de</strong>stina para la cantidad completa que hay que medir.<br />

Aquí la salida se <strong>de</strong>sactivará.<br />

El valor <strong>de</strong> umbral para el valor <strong>de</strong> consigna es el punto <strong>de</strong> <strong>de</strong>sconexión en el que la<br />

salida <strong>de</strong>be reducirse <strong>de</strong>l flujo total a un porcentaje <strong>de</strong> dicho flujo, <strong>de</strong> forma que se<br />

alcance el valor <strong>de</strong> consigna <strong>de</strong> <strong>de</strong>stino con una mayor resolución.<br />

El valor <strong>de</strong> umbral adicional para el valor <strong>de</strong> consigna es opcional. Se utiliza para<br />

conseguir otro nivel <strong>de</strong> resolución. Si este valor <strong>de</strong> consigna está habilitado, la salida se<br />

reduce hasta el 10% <strong>de</strong> la salida <strong>de</strong>l valor <strong>de</strong> umbral.<br />

El totalizador trabaja <strong>de</strong>s<strong>de</strong> cero como punto base. El valor <strong>de</strong> consigna <strong>de</strong>be ser un<br />

valor positivo.<br />

En el funcionamiento normal, la salida <strong>de</strong> la válvula se ajusta al 100% <strong>de</strong>l flujo cuando<br />

el valor integrado está por <strong>de</strong>bajo <strong>de</strong>l umbral para el valor <strong>de</strong> consigna. Si la suma cruza<br />

el umbral para el valor <strong>de</strong> consigna, el flujo <strong>de</strong> la válvula se convierte en un porcentaje<br />

programable <strong>de</strong>l flujo total. Cuando la suma alcanza el valor <strong>de</strong> consigna <strong>de</strong> <strong>de</strong>stino<br />

<strong>de</strong>seado, la salida <strong>de</strong> la válvula se ajusta a un 0% <strong>de</strong>l flujo.<br />

Los valores <strong>de</strong> consigna pue<strong>de</strong>n ser relativos o absolutos. Con un valor <strong>de</strong> consigna<br />

relativo, se utiliza la <strong>de</strong>sviación entre la última suma y el valor <strong>de</strong> consigna. En caso<br />

contrario, la suma se utiliza en relación absoluta con el valor <strong>de</strong> consigna.<br />

Existe una opción <strong>de</strong> <strong>de</strong>tención para que el sistema <strong>de</strong>je <strong>de</strong> integrar.<br />

Una vez completada la operación, la suma <strong>de</strong> salida se guarda para un uso futuro.<br />

También se pue<strong>de</strong> borrar esta suma. En algunas aplicaciones es importante guardar la<br />

suma; por ejemplo, si los dosificadores o las células <strong>de</strong> carga no pue<strong>de</strong>n gestionar el<br />

lote completo en una carga y las medidas están divididas, o si hay que llenar varios<br />

tanques para un lote y se <strong>de</strong>sea realizar un seguimiento <strong>de</strong> las sumas <strong>de</strong> producción y<br />

<strong>de</strong> lotes.<br />

La longitud <strong>de</strong>l bloque <strong>de</strong> parámetros TOTAL es <strong>de</strong> 28 registros.<br />

Registro Contenido<br />

Visualizado y primer implícito Entrada real<br />

Segundo implícito Estado <strong>de</strong> salida<br />

Tercer implícito Estado <strong>de</strong> entrada<br />

Cuarto implícito Registro <strong>de</strong> tiempo<br />

Quinto implícito Reservado<br />

Sexto y séptimo implícitos Δt (en ms) <strong>de</strong>s<strong>de</strong> el último ciclo<br />

Octavo y noveno implícitos Intervalo <strong>de</strong> resolución (en ms)<br />

950 31007526 12/2006


Estado <strong>de</strong> salida<br />

Estado <strong>de</strong><br />

entrada<br />

Registro Contenido<br />

PCFL-TOTAL: Totalizador para flujo dosificado<br />

Décimo y undécimo implícitos Última entrada, X_1<br />

Duodécimo y <strong>de</strong>cimotercer implícitos Valor <strong>de</strong> reinicio<br />

Decimocuarto y <strong>de</strong>cimoquinto implícitos Valor <strong>de</strong> consigna, <strong>de</strong>stino<br />

Decimosexto y <strong>de</strong>cimoséptimo implícitos Valor <strong>de</strong> consigna, flujo <strong>de</strong> valor <strong>de</strong> umbral<br />

Decimoctavo y <strong>de</strong>cimonoveno implícitos % <strong>de</strong>l flujo total para el umbral <strong>de</strong> valor <strong>de</strong><br />

consigna<br />

Vigésimo y vigesimoprimer implícitos Flujo total<br />

Vigesimosegundo y vigesimotercer implícitos Cantidad restante para el valor <strong>de</strong> consigna<br />

Vigesimocuarto y vigesimoquinto implícitos Suma resultante<br />

Vigesimosexto y vigesimoséptimo implícitos Salida para el elemento <strong>de</strong> control final<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 2 No utilizados<br />

3 a 4 0 0 = inactivo<br />

0 1 = flujo <strong>de</strong> valor <strong>de</strong> umbral<br />

1 0 = flujo total<br />

5 1 = operación finalizada<br />

6 1 = totalizador en ejecución<br />

7 1 = rebasamiento <strong>de</strong>l valor <strong>de</strong> consigna en más <strong>de</strong> un 5%<br />

8 1 = parámetros fuera <strong>de</strong> rango<br />

9 a 16 Bits <strong>de</strong> salida estándar (flags)<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 4 Bits <strong>de</strong> entrada estándar (flags)<br />

5 1 = restablecer suma<br />

6 1 = <strong>de</strong>tener integración<br />

7 1 = valor <strong>de</strong> consigna <strong>de</strong> <strong>de</strong>sviación<br />

0 = valor <strong>de</strong> consigna absoluto<br />

8 1 = utilizar valor <strong>de</strong> umbral adicional para valor <strong>de</strong> consigna<br />

9 a 16 No utilizados<br />

31007526 12/2006 951


PCFL-TOTAL: Totalizador para flujo dosificado<br />

952 31007526 12/2006


Presentación<br />

PEER: Transacción PEER<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción PEER.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

153<br />

Apartado Página<br />

Descripción breve 954<br />

Representación 955<br />

Descripción <strong>de</strong> los parámetros 957<br />

31007526 12/2006 953


PEER: Transacción PEER<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

Nota: Esta instrucción sólo estará disponible si ha expandido e instalado las<br />

instrucciones cargables DX; encontrará más información en p. 49.<br />

Los módulos opcionales <strong>de</strong> interfase S975 Modbus II utilizan dos <strong>bloques</strong> <strong>de</strong><br />

función cargables: MBUS y PEER. La instrucción PEER pue<strong>de</strong> iniciar transacciones<br />

<strong>de</strong> mensajes idénticas hasta con 16 equipos al mismo tiempo en Modbus II. En una<br />

transacción PEER sólo se pue<strong>de</strong>n escribir datos <strong>de</strong> registro.<br />

954 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

repetir<br />

Longitud: 1–249<br />

bloque <strong>de</strong><br />

control<br />

bloque <strong>de</strong><br />

datos<br />

longitud <strong>de</strong><br />

PEER<br />

completa<br />

activa<br />

PEER: Transacción PEER<br />

31007526 12/2006 955<br />

error


PEER: Transacción PEER<br />

Descripción <strong>de</strong><br />

parámetros<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Bloque <strong>de</strong><br />

control<br />

(nodo superior)<br />

Bloque <strong>de</strong><br />

datos<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno Habilita la transacción MBUS.<br />

0x, 1x Ninguno Repite la transacción en el mismo ciclo.<br />

4x INT, UINT,<br />

WORD<br />

Primero <strong>de</strong> 19 registros contiguos en el<br />

bloque <strong>de</strong> control PEER.<br />

(Para obtener más información,<br />

consulte p. 957.)<br />

4x INT, UINT Primer registro <strong>de</strong> un bloque <strong>de</strong> datos que<br />

se va a transmitir mediante la función<br />

PEER.<br />

INT, UINT Longitud, es <strong>de</strong>cir, número <strong>de</strong> registros en<br />

espera <strong>de</strong>l bloque <strong>de</strong> datos; rango: <strong>de</strong><br />

1 a 249.<br />

Salida superior 0x Ninguno Transacción finalizada.<br />

Salida<br />

intermedia<br />

0x Ninguno Transacción en curso o inicio <strong>de</strong> nueva<br />

transacción.<br />

Salida inferior 0x Ninguno Error <strong>de</strong>tectado en la transacción.<br />

956 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Bloque<br />

<strong>de</strong> control<br />

(asiento<br />

superior)<br />

PEER: Transacción PEER<br />

El registro 4x introducido en el asiento superior es el primero <strong>de</strong> 19 registros<br />

contiguos <strong>de</strong>l bloque <strong>de</strong> control PEER.<br />

Registro Función<br />

Visualizado Indica el estado <strong>de</strong> las transacciones <strong>de</strong> cada equipo; el bit más a<br />

la izquierda representa el estado <strong>de</strong>l equipo nº 1, y el bit más a la<br />

<strong>de</strong>recha el estado <strong>de</strong>l equipo nº 16: 0 = correcto, 1 = error <strong>de</strong><br />

transacción.<br />

Primer implícito Define la referencia al primer registro 4x que hay que escribir en el<br />

equipo receptor; un cero en este campo representa un valor no<br />

válido y producirá un error (la salida inferior se activará).<br />

Segundo implícito Tiempo asignado para que se complete una transacción antes <strong>de</strong><br />

que se <strong>de</strong>clare un error; se expresa como múltiplo <strong>de</strong> 10 ms; por<br />

ejemplo, 100 indica 1.000 ms; el timeout pre<strong>de</strong>terminado es <strong>de</strong> 250<br />

ms.<br />

Tercer implícito Dirección <strong>de</strong>l puerto 3 Modbus <strong>de</strong>l primer equipo receptor; rango <strong>de</strong><br />

dirección: 1 a 255 (0 = no se requiere transacción).<br />

Cuarto implícito Dirección <strong>de</strong>l puerto 3 Modbus <strong>de</strong>l segundo equipo receptor; rango<br />

<strong>de</strong> dirección: 1 a 255 (0 = no se requiere transacción).<br />

. . . . . .<br />

Decimoctavo implícito Dirección <strong>de</strong>l puerto 3 Modbus <strong>de</strong>l <strong>de</strong>cimosexto equipo receptor;<br />

rango <strong>de</strong> dirección: 1 a 255.<br />

31007526 12/2006 957


PEER: Transacción PEER<br />

958 31007526 12/2006


Presentación<br />

PID2:<br />

Proporcional integral <strong>de</strong>rivada<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción PID2.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

154<br />

Apartado Página<br />

Descripción breve 960<br />

Representación 961<br />

Descripción <strong>de</strong>tallada 963<br />

Descripción <strong>de</strong> los parámetros 966<br />

Errores <strong>de</strong> ejecución 971<br />

31007526 12/2006 959


PID2: Proporcional integral <strong>de</strong>rivada<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

La instrucción PID2 ejecuta un algoritmo que realiza operaciones proporcionalintegral-diferencial.<br />

El algoritmo ajusta la operación <strong>de</strong> bucle cerrado <strong>de</strong> una forma<br />

similar a los tradicionales controladores electrónicos <strong>de</strong> bucle neumáticos y<br />

analógicos. Utiliza un filtro para limitación <strong>de</strong> ganancia <strong>de</strong> crecimiento (RGL) en PV<br />

<strong>de</strong>l mismo modo que para el término diferencial, filtrando así fuentes <strong>de</strong> ruido en PV<br />

<strong>de</strong> mayor frecuencia (aleatorias y generadas por el proceso).<br />

Fórmula Control proporcional:<br />

MV = K1E+ bias<br />

Control proporcional-integral:<br />

⎛ ⎞<br />

MV = K ⎜<br />

1 E+ K2∫EΔt⎟ ⎜ ⎟<br />

⎝ ⎠<br />

t<br />

0<br />

Control proporcional-integral-diferencial:<br />

⎛ ⎞<br />

ΔPV<br />

MV =<br />

K ⎜<br />

1 E+ K2∫EΔt+ K ----------- ⎟<br />

⎜ 3 Δt ⎟<br />

⎝ ⎠<br />

t<br />

0<br />

960 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

manual/automática<br />

carga previa <strong>de</strong> integral<br />

acción directa/inv.<br />

Longitud: 1–255<br />

fuente<br />

<strong>de</strong>stino<br />

intervalo <strong>de</strong><br />

resolución <strong>de</strong><br />

PID2<br />

PID2: Proporcional integral <strong>de</strong>rivada<br />

resolución <strong>de</strong> bucle<br />

alarma superior<br />

alarma inferior<br />

31007526 12/2006 961


PID2: Proporcional integral <strong>de</strong>rivada<br />

Descripción <strong>de</strong><br />

parámetros<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno 0 = modalidad manual.<br />

1 = modalidad automática.<br />

0x, 1x Ninguno 0 = carga previa <strong>de</strong> integral OFF.<br />

1 = carga previa <strong>de</strong> integral ON.<br />

Entrada inferior 0x, 1x Ninguno 0 = la salida aumenta a medida que E<br />

aumenta.<br />

1 = la salida disminuye a medida que E<br />

disminuye.<br />

Fuente<br />

(nodo superior)<br />

Destino<br />

(nodo<br />

intermedio)<br />

Intervalo <strong>de</strong><br />

resolución<br />

(nodo inferior)<br />

4x INT, UINT Primero <strong>de</strong> 21 registros en espera<br />

contiguos <strong>de</strong> un bloque <strong>de</strong> fuente.<br />

(Para obtener más información,<br />

consulte p. 966.)<br />

4x INT, UINT Primero <strong>de</strong> nueve registros en espera<br />

contiguos utilizados para el cálculo PID2.<br />

No cargue nada en estos registros.<br />

(Para obtener más información,<br />

consulte p. 969.)<br />

INT, UINT Contiene un número <strong>de</strong>l rango 1...255,<br />

que indica la frecuencia con la que se<br />

realiza la función.<br />

Salida superior 0x Ninguno 1 = parámetro <strong>de</strong> usuario no válido o bucle<br />

ACTIVO pero sin ejecutar.<br />

Salida<br />

intermedia<br />

0x Ninguno 1 = PV ≥ límite superior <strong>de</strong> alarma.<br />

Salida inferior 0x Ninguno 1 = PV ≤ límite inferior <strong>de</strong> alarma.<br />

962 31007526 12/2006


Descripción <strong>de</strong>tallada<br />

Diagrama en<br />

<strong>bloques</strong><br />

Xn-1 +<br />

+<br />

(4y + 6)/8<br />

PV +<br />

- Δ Pv RGL<br />

Δ x<br />

SP<br />

Bias<br />

M n-1<br />

M<br />

I n-1<br />

4x13<br />

+<br />

4x8<br />

F IOC<br />

4x16<br />

-<br />

(4x1 - 4x2)<br />

(4x11 - 4x12)<br />

Modo<br />

<strong>de</strong> carga<br />

previa<br />

TIOC 4x20<br />

PID2: Proporcional integral <strong>de</strong>rivada<br />

31007526 12/2006 963<br />

X n<br />

60(RGL - 1)K3 RGL Ts E E<br />

Realimentación<br />

<strong>de</strong> integral<br />

x 4095<br />

+<br />

-<br />

Qn Limitación<br />

<strong>de</strong> integral<br />

-<br />

+<br />

W n<br />

Componente<br />

proporcional<br />

Componente<br />

integral<br />

K 2 T 2<br />

600000<br />

In-1<br />

Δ I<br />

+<br />

+<br />

Componente<br />

diferencial<br />

(4y + 6)/8<br />

I n<br />

+<br />

-<br />

100<br />

PB<br />

+<br />

+<br />

+<br />

Z n<br />

I n<br />

GE<br />

4y + 3, + 4, + 5<br />

Limitación<br />

<strong>de</strong> salida<br />

4x17<br />

4x18<br />

X n<br />

I n<br />

M n<br />

4x2


PID2: Proporcional integral <strong>de</strong>rivada<br />

El significado <strong>de</strong> los elementos <strong>de</strong>l diagrama en <strong>bloques</strong> es el siguiente.<br />

Elemento Significado<br />

E Error, expresado en unida<strong>de</strong>s analógicas brutas.<br />

SP Valor <strong>de</strong> consigna, en el rango 0 a 4.095.<br />

PV Variable <strong>de</strong> proceso, en el rango 0 a 4.095.<br />

x Variable <strong>de</strong> proceso filtrada.<br />

K2 Constante <strong>de</strong> ganancia <strong>de</strong> modo integral, expresada en 0,01 min-1 .<br />

K3 Constante <strong>de</strong> ganancia <strong>de</strong> modo diferencial, expresada en centésimas <strong>de</strong><br />

minuto.<br />

RGL Constante <strong>de</strong> filtro <strong>de</strong> limitación <strong>de</strong> ganancia <strong>de</strong> crecimiento, en el rango 2 a 30.<br />

Ts Tiempo <strong>de</strong> resolución, expresado en centésimas <strong>de</strong> segundo.<br />

PB Banda proporcional, en el rango 5 a 500%.<br />

bias Factor <strong>de</strong> bias <strong>de</strong> la salida <strong>de</strong>l regulador, en el rango 0 a 4.095.<br />

M Salida <strong>de</strong>l regulador.<br />

GE Error bruto, la componente proporcional-diferencial a la salida <strong>de</strong>l regulador.<br />

Z Componente <strong>de</strong> modo diferencial <strong>de</strong> GE.<br />

Qn Salida <strong>de</strong>l regulador sin bias.<br />

F Valor <strong>de</strong> realimentación, en el rango 0 a 4.095.<br />

I Componente <strong>de</strong> modo integral <strong>de</strong> la salida <strong>de</strong>l regulador.<br />

Ilow Valor <strong>de</strong> consigna (SP) bajo <strong>de</strong> antisaturación <strong>de</strong> la acción integral, en el rango<br />

0 a 4.095.<br />

Ihigh Valor <strong>de</strong> consigna (SP) alto <strong>de</strong> antisaturación <strong>de</strong> la acción integral, en el rango<br />

0 a 4.095.<br />

K1 100/PB.<br />

Nota: El cálculo <strong>de</strong> la componente <strong>de</strong> modo integral integra la diferencia entre la<br />

salida y la suma integral, que en la práctica es lo mismo que integrar el error.<br />

964 31007526 12/2006


Control<br />

proporcional<br />

Control<br />

proporcionalintegral<br />

Control<br />

proporcionalintegraldiferencial<br />

PID2: Proporcional integral <strong>de</strong>rivada<br />

Con un control sólo proporcional (P) se pue<strong>de</strong> calcular la variable manipulada<br />

multiplicando el error por una constante proporcional, K1, y <strong>de</strong>spués sumándole un<br />

bias. Consulte p. 960.<br />

No obstante, las condiciones <strong>de</strong>l proceso en la mayoría <strong>de</strong> las aplicaciones se<br />

cambian por otras variables <strong>de</strong>l sistema <strong>de</strong> forma que el bias no permanezca<br />

constante, el resultado es un error <strong>de</strong> offset, don<strong>de</strong> PV tiene un offset constante<br />

respecto a SP. Esta situación limita la capacidad <strong>de</strong>l control sólo proporcional.<br />

Nota: El valor en el término integral (en los registros 4y + 3, 4y + 4 y 4y + 5) se<br />

utiliza siempre, aunque el modo integral no esté habilitado. El uso <strong>de</strong> este valor es<br />

necesario para garantizar que no haya perturbaciones en la transferencia <strong>de</strong> un<br />

modo a otro. Si <strong>de</strong>sea <strong>de</strong>sactivar la transferencia sin perturbaciones, <strong>de</strong>berá borrar<br />

estos tres registros.<br />

En modo manual, los cambios en los valores <strong>de</strong> consigna no tendrán efecto a<br />

menos que se borren los tres registros mencionados y el modo vuelva a ser<br />

automático. La transferencia no podrá realizarse sin perturbaciones.<br />

Para eliminar este error <strong>de</strong> offset sin tener que cambiar manualmente el bias, se<br />

pueda agregar una función integral a la ecuación <strong>de</strong> control. Consulte p. 960.<br />

El control Proporcional-integral (PI) elimina el offset integrando E como función <strong>de</strong><br />

tiempo. K1 es la constante integral expresada en rep/minuto. Siempre que E ≠ 0, el<br />

valor <strong>de</strong>l integrador aumentará (o disminuirá), ajustando Mv. Este proceso<br />

continuará hasta que se elimine el error <strong>de</strong> offset.<br />

Si <strong>de</strong>sea añadir una funcionalidad diferencial a la ecuación <strong>de</strong> control para<br />

minimizar los efectos <strong>de</strong> los frecuentes cambios <strong>de</strong> carga o para anular la función<br />

integral y así alcanzar el estado SP más rápido. Consulte p. 960.<br />

El control proporcional-integral-diferencial (PID) se pue<strong>de</strong> utilizar para ahorrar<br />

energía en el proceso o como válvula <strong>de</strong> seguridad en el caso <strong>de</strong> que se produzca<br />

un cambio repentino e inesperado en el flujo <strong>de</strong>l proceso. K3 es la constante <strong>de</strong><br />

tiempo <strong>de</strong> componente diferencial expresada en minutos. DPV es el cambio en la<br />

variable <strong>de</strong> proceso durante un periodo <strong>de</strong> tiempo <strong>de</strong> Δt.<br />

Ejemplo Encontrará un ejemplo <strong>de</strong> control <strong>de</strong> nivel con PID2 en "Ejemplo <strong>de</strong> control <strong>de</strong> nivel<br />

con PID2."<br />

31007526 12/2006 965


PID2: Proporcional integral <strong>de</strong>rivada<br />

Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong> fuente<br />

(asiento<br />

superior)<br />

El registro 4x introducido en el asiento superior es el primero <strong>de</strong> 21 registros <strong>de</strong><br />

salida contiguos <strong>de</strong> un bloque <strong>de</strong> fuente. El contenido <strong>de</strong> los registros implícitos<br />

quinto a octavo <strong>de</strong>termina si la operación será P, PI o PID.<br />

Operación Quinto implícito Sexto implícito Séptimo implícito Octavo implícito<br />

P Activo Activo<br />

PI Activo Activo<br />

PID Activo Activo Activo<br />

El bloque <strong>de</strong> fuente compren<strong>de</strong> las siguientes asignaciones <strong>de</strong> registros.<br />

Registro Nombre Contenido<br />

Visualizado PV escalada El bloque lo carga cada vez que se realiza una<br />

exploración; en el registro 4x + 13 se realiza un escalado<br />

linear utilizando los rangos alto y bajo <strong>de</strong> los registros 4x<br />

+ 11 y 4x + 12:<br />

PV escalada = (4x13 / 4095) * (4x11 - 4x12) + 4x12.<br />

Primer<br />

implícito<br />

Segundo<br />

implícito<br />

Tercer<br />

implícito<br />

Cuarto<br />

implícito<br />

SP El valor <strong>de</strong> consigna <strong>de</strong>be especificarse en unida<strong>de</strong>s<br />

físicas; dicho valor <strong>de</strong>berá ser < el valor <strong>de</strong>l<br />

<strong>de</strong>cimoprimer registro implícito y > el valor <strong>de</strong>l<br />

duodécimo registro implícito.<br />

Mv El bloque lo carga cada vez que se resuelve el bucle;<br />

está fijo en el rango <strong>de</strong> 0 a 4.095, lo que hace que la<br />

salida sea compatible con un módulo <strong>de</strong> salida<br />

analógica; el registro <strong>de</strong> variable manipulada se pue<strong>de</strong><br />

utilizar para realizar más cálculos en la CPU, como<br />

bucles <strong>de</strong> cascada.<br />

Límite superior <strong>de</strong><br />

alarma<br />

Límite inferior <strong>de</strong><br />

alarma<br />

Cargue un valor en este registro para especificar una<br />

alarma superior para PV (en o por encima <strong>de</strong> SP);<br />

introduzca el valor en unida<strong>de</strong>s físicas <strong>de</strong>ntro <strong>de</strong>l rango<br />

especificado en los registros implícitos undécimo y<br />

duodécimo.<br />

Cargue un valor en este registro para especificar una<br />

alarma inferior para PV (en o por encima <strong>de</strong> SP);<br />

introduzca el valor en unida<strong>de</strong>s físicas <strong>de</strong>ntro <strong>de</strong>l rango<br />

especificado en los registros implícitos undécimo y<br />

duodécimo.<br />

966 31007526 12/2006


Registro Nombre Contenido<br />

Quinto<br />

implícito<br />

Sexto<br />

implícito<br />

Séptimo<br />

implícito<br />

Octavo<br />

implícito<br />

Noveno<br />

implícito<br />

Décimo<br />

implícito<br />

Undécimo<br />

implícito<br />

Duodécimo<br />

implícito<br />

Banda<br />

proporcional<br />

Constante <strong>de</strong><br />

tiempo <strong>de</strong> reinicio<br />

Constante <strong>de</strong><br />

tiempo <strong>de</strong><br />

crecimiento<br />

PID2: Proporcional integral <strong>de</strong>rivada<br />

Cargue este registro con la constante proporcional<br />

<strong>de</strong>seada en el rango 5 a 500; cuanto menor sea el<br />

número, mayor será la componente proporcional; para<br />

que PID2 funcione <strong>de</strong>be haber un número válido en este<br />

registro.<br />

Cargue este registro para añadir una acción integral al<br />

cálculo; introduzca un valor entre 0000 y 9.999 para<br />

representar un rango <strong>de</strong> 00,00 a 99,99 repeticiones/<br />

minuto; cuanto mayor sea el número, mayor será la<br />

componente integral; un valor > 9.999 <strong>de</strong>tiene el cálculo<br />

PID2.<br />

Cargue este registro para añadir una acción diferencial<br />

al cálculo; introduzca un valor entre 0000 y 9.999 para<br />

representar un rango <strong>de</strong> 00,00 a 99,99 minutos; cuanto<br />

mayor sea el número, mayor será la componente<br />

diferencial; un valor > 9.999 <strong>de</strong>tiene el cálculo PID2.<br />

Bias Cargue este registro para añadir un bias a la salida; el<br />

valor <strong>de</strong>be estar entre 000 y 4.095, y se añadirá<br />

directamente a Mv, in<strong>de</strong>pendientemente <strong>de</strong> si el término<br />

integral está o no activado.<br />

Límite superior <strong>de</strong><br />

saturación <strong>de</strong> la<br />

integral<br />

Límite inferior <strong>de</strong><br />

saturación <strong>de</strong> la<br />

integral<br />

Rango físico<br />

superior<br />

Rango físico<br />

inferior<br />

Cargue este registro con el límite superior <strong>de</strong>l valor <strong>de</strong><br />

salida (entre 0 y 4.095) don<strong>de</strong> tiene efecto la<br />

antisaturación <strong>de</strong> la acción integral; la actualización <strong>de</strong><br />

la suma integral se <strong>de</strong>tiene si rebasa este valor<br />

(normalmente es 4.095).<br />

Cargue este registro con el límite inferior <strong>de</strong>l valor <strong>de</strong><br />

salida (entre 0 y 4095) don<strong>de</strong> tiene efecto la<br />

antisaturación <strong>de</strong> la acción integral (normalmente es 0).<br />

Cargue este registro con el valor más alto para el que se<br />

utiliza el mecanismo <strong>de</strong> medida; por ejemplo, si el<br />

margen <strong>de</strong> resistencia <strong>de</strong> temperatura <strong>de</strong> un mecanismo<br />

va <strong>de</strong> 0 a 500 grados C, el valor <strong>de</strong>l rango físico superior<br />

será 500; el rango se indicará como un entero positivo<br />

entre 0001 y 9.999, correspondiendo a la entrada<br />

analógica bruta 4.095.<br />

Cargue este registro con el valor más bajo para el que<br />

se utiliza el mecanismo <strong>de</strong> medida; el rango se indicará<br />

como un entero positivo entre 0 y 9.998, y <strong>de</strong>berá ser<br />

menor que el valor <strong>de</strong>l <strong>de</strong>cimoprimer registro implícito;<br />

correspon<strong>de</strong> a la entrada analógica bruta 0.<br />

31007526 12/2006 967


PID2: Proporcional integral <strong>de</strong>rivada<br />

Registro Nombre Contenido<br />

Decimotercer<br />

o implícito<br />

Decimocuarto<br />

implícito<br />

Decimoquinto<br />

implícito<br />

Decimosexto<br />

implícito<br />

Decimoséptim<br />

o implícito<br />

Decimoctavo<br />

implícito<br />

Decimonoven<br />

o implícito<br />

Vigésimo<br />

implícito<br />

Medida <strong>de</strong> valor<br />

analógico bruto<br />

Pointer al registro<br />

<strong>de</strong> contador <strong>de</strong><br />

bucle<br />

Número máximo<br />

<strong>de</strong> bucles<br />

Pointer a la<br />

entrada <strong>de</strong><br />

realimentación <strong>de</strong><br />

reinicio<br />

Limitación <strong>de</strong><br />

salida, superior<br />

Limitación la<br />

salida, inferior<br />

Constante <strong>de</strong><br />

limitación <strong>de</strong><br />

ganancia <strong>de</strong><br />

crecimiento (RGL)<br />

Pointer a carga<br />

previa <strong>de</strong> integral<br />

El programa lógico carga este registro con PV; la<br />

medida <strong>de</strong>be estar escalada y ser linear en el rango 0 a<br />

4095.<br />

El valor que se carga en este registro señala al registro<br />

que contabiliza el número <strong>de</strong> bucles resueltos en cada<br />

ciclo; la entrada viene <strong>de</strong>terminada mediante el rechazo<br />

<strong>de</strong>l dígito <strong>de</strong> mayor valor en el registro don<strong>de</strong> el<br />

controlador contabilizará los bucles resueltos/ciclo; por<br />

ejemplo, si el PLC realiza la contabilización en el<br />

registro 41236, carga 1236 al <strong>de</strong>cimocuarto registro<br />

implícito; se <strong>de</strong>berá cargar el mismo valor en el<br />

<strong>de</strong>cimocuarto registro implícito en cada bloque PID2 <strong>de</strong>l<br />

programa lógico.<br />

Resueltos en un ciclo: si el <strong>de</strong>cimocuarto registro<br />

implícito contiene un valor distinto <strong>de</strong> cero, se podrá<br />

cargar un valor en este registro para limitar el número <strong>de</strong><br />

bucles que se <strong>de</strong>ben resolver en un ciclo.<br />

El valor que se carga en este registro apunta al registro<br />

<strong>de</strong> salida que contiene el valor <strong>de</strong> realimentación (F);<br />

elimine el 4 <strong>de</strong>l registro <strong>de</strong> realimentación e introduzca<br />

los cuatro dígitos restantes en este registro; los cálculos<br />

<strong>de</strong> la integración <strong>de</strong>pen<strong>de</strong>n <strong>de</strong>l valor F, que pue<strong>de</strong> variar<br />

<strong>de</strong> 0 a 4.095.<br />

El valor introducido en este registro <strong>de</strong>termina el límite<br />

superior <strong>de</strong> Mv (normalmente es 4.095).<br />

El valor introducido en este registro <strong>de</strong>termina el límite<br />

inferior <strong>de</strong> Mv (normalmente es 0).<br />

El valor introducido en este registro <strong>de</strong>termina el grado<br />

<strong>de</strong> eficacia <strong>de</strong>l filtrado diferencial; el rango pue<strong>de</strong> ir <strong>de</strong> 2<br />

a 30; cuanto menor sea el valor, mayor será el filtrado.<br />

El valor introducido en este registro apunta al registro <strong>de</strong><br />

salida que contiene el valor <strong>de</strong> la entrada <strong>de</strong><br />

seguimiento (T); elimine el 4 <strong>de</strong>l registro <strong>de</strong> seguimiento<br />

e introduzca los cuatro dígitos restantes en este registro;<br />

el valor <strong>de</strong>l registro T estará conectado a la entrada <strong>de</strong>l<br />

retardo <strong>de</strong> integral si el bit automático y el bit <strong>de</strong> carga<br />

previa <strong>de</strong> integral son verda<strong>de</strong>ros (true).<br />

968 31007526 12/2006


Destino (asiento<br />

intermedio)<br />

PID2: Proporcional integral <strong>de</strong>rivada<br />

El registro 4y introducido en el asiento intermedio es el primero <strong>de</strong> nueve registros<br />

<strong>de</strong> salida contiguos que se utilizan para los cálculos PID2. No es necesario cargar<br />

ningún dato en estos registros.<br />

Registro Nombre Contenido<br />

Visualizado Registro <strong>de</strong> estado<br />

<strong>de</strong> bucle<br />

Primer<br />

implícito<br />

Segundo<br />

implícito<br />

Tercer<br />

implícito<br />

Cuarto<br />

implícito<br />

Quinto<br />

implícito<br />

Sexto<br />

implícito<br />

Séptimo<br />

implícito<br />

Octavo<br />

implícito<br />

Bits <strong>de</strong> estado <strong>de</strong><br />

error (E)<br />

Registro <strong>de</strong><br />

temporizador <strong>de</strong><br />

bucle<br />

Doce <strong>de</strong> los 16 bits <strong>de</strong> este registro se utilizan para<br />

<strong>de</strong>finir el estado <strong>de</strong> bucle.<br />

Este registro muestra códigos <strong>de</strong> error PID2.<br />

Este registro almacena la lectura en tiempo real <strong>de</strong>l<br />

reloj <strong>de</strong>l sistema cada vez que se resuelve el bucle: la<br />

diferencia entre el valor actual <strong>de</strong>l reloj y el valor<br />

almacenado en el registro es el tiempo transcurrido; si<br />

el tiempo transcurrido ≥ el intervalo <strong>de</strong> resolución (10<br />

veces el valor indicado en el asiento inferior <strong>de</strong>l bloque<br />

PID2), el bucle <strong>de</strong>berá resolverse en este ciclo.<br />

Para uso interno Integral (parte <strong>de</strong>l entero).<br />

Para uso interno Integral-fracción 1 (1/3.000).<br />

Para uso interno Integral-fracción 2 (1/600.000).<br />

Pv x 8 (filtrado) Este registro almacena el resultado <strong>de</strong> la entrada<br />

analógica filtrada (<strong>de</strong>s<strong>de</strong> el registro 4x14) multiplicado<br />

por 8; este valor es útil en las operaciones <strong>de</strong> control<br />

diferencial.<br />

Valor absoluto <strong>de</strong> E Este registro, que se actualiza <strong>de</strong>spués <strong>de</strong> cada<br />

resolución <strong>de</strong> bucle, contiene el valor absoluto <strong>de</strong> (SP<br />

- PV); el bit 8 <strong>de</strong>l registro 4y + 1 indica el signo <strong>de</strong> E.<br />

Para uso interno Intervalo <strong>de</strong> resolución actual.<br />

31007526 12/2006 969


PID2: Proporcional integral <strong>de</strong>rivada<br />

Registro <strong>de</strong><br />

estado <strong>de</strong> bucle<br />

Intervalo <strong>de</strong><br />

resolución<br />

(asiento inferior)<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 Estado <strong>de</strong> salida superior (participante <strong>de</strong>sconectado o error <strong>de</strong> parámetro).<br />

2 Estado <strong>de</strong> salida intermedia (alarma superior).<br />

3 Estado <strong>de</strong> salida inferior (alarma inferior).<br />

4 Bucle en modo automático y tiempo <strong>de</strong>s<strong>de</strong> la última resolución ≥ el intervalo <strong>de</strong><br />

resolución.<br />

5 Modo wind-down (para versión B o mayor).<br />

6 Bucle en servicio automático, pero no se resuelve.<br />

7 El registro 4x14 referenciado por 4x15 es válido.<br />

8 Signo <strong>de</strong> E en 4y + 7:<br />

0 = + (más).<br />

1 = - (menos).<br />

9 Versión B o mayor.<br />

10 El límite <strong>de</strong> saturación integral nunca se <strong>de</strong>fine.<br />

11 Saturación <strong>de</strong> la integral saturada.<br />

12 Valores negativos en la ecuación.<br />

13 Estado <strong>de</strong> la entrada inferior (forma <strong>de</strong> trabajo directa/inversa).<br />

14 Estado <strong>de</strong> entrada intermedia (modo <strong>de</strong> seguimiento):<br />

1 = seguimiento.<br />

0 = sin seguimiento.<br />

15 Estado <strong>de</strong> la entrada superior (MANUAL/AUTOMÁTICO).<br />

16 El bit 16 se <strong>de</strong>fine tras el arranque inicial o la instalación <strong>de</strong>l bucle. Si se borra el<br />

bit, las acciones siguientes se ejecutan en un ciclo:<br />

Se restablece el registro <strong>de</strong> estado <strong>de</strong>l bucle 4y.<br />

El valor actual <strong>de</strong>l reloj en tiempo real se almacena en el primer registro<br />

implícito (4y+1).<br />

Se borran los valores en los registros tercero a quinto (4y+2,3).<br />

El valor <strong>de</strong>l <strong>de</strong>cimotercer registro implícito (4x+13) x 8 se almacena en el<br />

sexto registro implícito (4y+6).<br />

Se borran los registros implícitos séptimo y octavo (4y+7,8).<br />

El asiento inferior indica que se trata <strong>de</strong> una función PID2 y contiene un número<br />

entre 1 y 255 que indica la frecuencia con que <strong>de</strong>be ejecutarse la función. El número<br />

representa un valor <strong>de</strong> tiempo en décimas <strong>de</strong> segundo, por ejemplo el número 17<br />

indica que la función PID se <strong>de</strong>berá realizar cada 1,7 s.<br />

970 31007526 12/2006


Errores <strong>de</strong> ejecución<br />

Bit <strong>de</strong> estado <strong>de</strong><br />

error<br />

PID2: Proporcional integral <strong>de</strong>rivada<br />

El primer registro implícito <strong>de</strong>l <strong>de</strong>stino contiene los bits <strong>de</strong> estado <strong>de</strong> error.<br />

Código Explicación Verifique estos registros<br />

en el bloque <strong>de</strong> fuente<br />

(asiento superior)<br />

0000 Sin errores, todas las validaciones correctas. Ninguno<br />

0001 Valor <strong>de</strong> consigna (SP) escalado por encima <strong>de</strong><br />

9.999.<br />

Primer implícito<br />

0002 Alarma superior por encima <strong>de</strong> 9.999. Tercer implícito<br />

0003 Alarma inferior por encima <strong>de</strong> 9.999. Cuarto implícito<br />

0004 Banda proporcional por <strong>de</strong>bajo <strong>de</strong> 5. Quinto implícito<br />

0005 Banda proporcional superior a 500. Quinto implícito<br />

0006 Rinicio superior a 99,99 r/m. Sexto implícito<br />

0007 Tasa <strong>de</strong> crecimiento superior a 99,99 m. Séptimo implícito<br />

0008 Bias superior a 4.095. Octavo implícito<br />

0009 Límite integral superior por encima <strong>de</strong> 4.095. Noveno implícito<br />

0010 Límite integral inferior por encima <strong>de</strong> 4.095. Décimo implícito<br />

0011 Escala <strong>de</strong> unidad física (E.U.) superior por encima<br />

<strong>de</strong> 9.999.<br />

Undécimo implícito<br />

0012 Escala <strong>de</strong> unidad física inferior por encima <strong>de</strong><br />

9.999.<br />

0013 Unidad física superior por <strong>de</strong>bajo <strong>de</strong> la unidad física<br />

inferior.<br />

0014 Valor teórico escalado por encima <strong>de</strong> la unidad<br />

física superior.<br />

0015 Valor teórico escalado por <strong>de</strong>bajo <strong>de</strong> la unidad<br />

física inferior.<br />

0016 Máximos bucles/ciclo > 9.999.<br />

Nota:Activado por la función <strong>de</strong> bucle máximo, es<br />

<strong>de</strong>cir, sólo si 4x15 no es cero.<br />

0017 Pointer <strong>de</strong> realimentación <strong>de</strong> reinicio fuera <strong>de</strong><br />

rango.<br />

0018 Limitación superior <strong>de</strong> la salida por encima <strong>de</strong><br />

4.095.<br />

Duodécimo implícito<br />

Undécimo y duodécimo<br />

implícitos<br />

Primer y undécimo<br />

implícitos<br />

Primero y duodécimo<br />

implícitos<br />

Decimoquinto implícito<br />

Decimosexto implícito<br />

Decimoséptimo implícito<br />

0019 Limitación inferior <strong>de</strong> la salida por encima <strong>de</strong> 4.095. Decimoctavo implícito<br />

0020 Limitación inferior <strong>de</strong> la salida por encima <strong>de</strong> la<br />

limitación superior <strong>de</strong> la salida.<br />

Decimoséptimo y<br />

<strong>de</strong>cimoctavo implícitos<br />

31007526 12/2006 971


PID2: Proporcional integral <strong>de</strong>rivada<br />

Código Explicación Verifique estos registros<br />

en el bloque <strong>de</strong> fuente<br />

(asiento superior)<br />

0021 RGL por <strong>de</strong>bajo <strong>de</strong> 2. Decimonoveno implícito<br />

0022 RGL superior a 30. Decimonoveno implícito<br />

0023 Pointer F <strong>de</strong> seguimiento fuera <strong>de</strong> rango.<br />

Vigésimo implícito con<br />

Nota: Activado únicamente si la función <strong>de</strong> entrada intermedia<br />

seguimiento está activada, es <strong>de</strong>cir, la entrada<br />

media <strong>de</strong>l bloque PID2 está recibiendo corriente<br />

mientras se encuentra en modo AUTO.<br />

activada<br />

0024 El pointer F <strong>de</strong> seguimiento es cero.<br />

Nota: Activado únicamente si la función <strong>de</strong><br />

seguimiento está activada, es <strong>de</strong>cir, la entrada<br />

media <strong>de</strong>l bloque PID2 está recibiendo corriente<br />

mientras se encuentra en modo AUTO.<br />

0025 Participante bloqueado (tiempo <strong>de</strong> ciclo<br />

insuficiente).<br />

Nota:Activado por la función <strong>de</strong> bucle máximo, es<br />

<strong>de</strong>cir, sólo si 4x15 no es cero.<br />

Nota: Si se producen bloqueos a menudo y los<br />

parámetros son todos válidos, aumente el número<br />

máximo <strong>de</strong> bucles/ciclo. Los bloqueos también<br />

pue<strong>de</strong>n producirse si los registros <strong>de</strong> recuento en<br />

uso no se borran cuando es necesario.<br />

0026 El pointer <strong>de</strong>l contador <strong>de</strong> bucles es cero.<br />

Nota:Activado por la función <strong>de</strong> bucle máximo, es<br />

<strong>de</strong>cir, sólo si 4x15 no es cero.<br />

0027 El pointer <strong>de</strong>l contador <strong>de</strong> bucles está fuera <strong>de</strong><br />

rango.<br />

Vigésimo implícito con<br />

entrada intermedia<br />

activada<br />

Ninguno<br />

Decimocuarto y<br />

<strong>de</strong>cimoquinto implícitos<br />

Decimocuarto y<br />

<strong>de</strong>cimoquinto implícitos<br />

972 31007526 12/2006


Presentación<br />

Descripción <strong>de</strong> instrucciones<br />

(R a Z)<br />

VI<br />

Introducción En esta sección se muestran las <strong>de</strong>scripciones <strong>de</strong> las instrucciones <strong>de</strong> la R a la Z<br />

or<strong>de</strong>nadas alfabéticamente.<br />

Contenido Esta parte contiene los siguientes capítulos:<br />

Capítulo Nombre <strong>de</strong>l capítulo Página<br />

155 R --> T: De registro a tabla 975<br />

156 RBIT: Restablecer bit 981<br />

157 READ: Lectura 985<br />

158 RET: Retorno <strong>de</strong>s<strong>de</strong> una subrutina 991<br />

159 RTTI - De registro a tabla <strong>de</strong> entrada 995<br />

160 RTTO - De registro a tabla <strong>de</strong> salida 999<br />

161 RTU - Unidad remota <strong>de</strong> terminal 1003<br />

162 SAVE: Guardar flash 1009<br />

163 SBIT: Establecer bit 1013<br />

164 SCIF: Interfases <strong>de</strong> control secuencial 1017<br />

165 SENS: Detección 1023<br />

166 Conexiones 1029<br />

167 SKP – Saltar re<strong>de</strong>s 1033<br />

168 SRCH: Buscar 1037<br />

169 STAT: Estado 1043<br />

170 SU16: Resta <strong>de</strong> 16 bits 1071<br />

171 SUB: Resta 1075<br />

172 SWAP - Permutación <strong>de</strong> bit VME 1079<br />

173 TTR - De tabla a registro 1083<br />

174 T --> R <strong>de</strong> tabla a registro 1087<br />

31007526 12/2006 973


Descripción <strong>de</strong> instrucciones (R a Z)<br />

Capítulo Nombre <strong>de</strong>l capítulo Página<br />

175 T --> T: De tabla a tabla 1093<br />

176 Temporizador T.01: Temporizador <strong>de</strong> centésimas <strong>de</strong> segundo 1099<br />

177 Temporizador T0.1: Temporizador <strong>de</strong> décimas <strong>de</strong> segundo 1103<br />

178 Temporizador T1.0: Temporizador <strong>de</strong> segundos 1107<br />

179 Temporizador T1MS: Temporizador <strong>de</strong> milisegundos 1111<br />

180 TBLK: De tabla a bloque 1117<br />

181 TEST: Prueba <strong>de</strong> dos valores 1123<br />

182 UCTR: Contador progresivo 1127<br />

183 VMER - Lectura <strong>de</strong> VME 1131<br />

184 VMEW - Escritura <strong>de</strong> VME 1137<br />

185 WRIT: Escritura 1143<br />

186 XMIT - Transmisión 1149<br />

187 Bloque <strong>de</strong> comunicación XMIT 1157<br />

188 Bloque <strong>de</strong> estado <strong>de</strong>l puerto XMIT 1169<br />

189 Bloque <strong>de</strong> conversión XMIT 1177<br />

190 XMRD: Lectura <strong>de</strong> memoria extendida 1185<br />

191 XMWT: Escritura en memoria extendida 1191<br />

192 XOR: O exclusiva 1197<br />

974 31007526 12/2006


Presentación<br />

R --> T: De registro a tabla<br />

Introducción Este capítulo <strong>de</strong>scribe la instrucción R → T.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

155<br />

Apartado Página<br />

Descripción breve 976<br />

Representación 977<br />

Descripción <strong>de</strong> los parámetros 979<br />

31007526 12/2006 975


R --> T: De registro a tabla<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instruction →T copia el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> un registro o <strong>de</strong> una ca<strong>de</strong>na <strong>de</strong><br />

registros binarios almacenados en una palabra en un registro específico ubicado en<br />

una tabla. Pue<strong>de</strong> transferir un registro/palabra por ciclo.<br />

976 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control/<br />

incrementar pointer<br />

impi<strong>de</strong> que se<br />

incremente el pointer<br />

restablecer pointer<br />

Longitud:<br />

máx. 255 - PLC <strong>de</strong> 16 bits<br />

máx. 999 - PLC <strong>de</strong> 24 bits.<br />

fuente<br />

pointer <strong>de</strong><br />

<strong>de</strong>stino<br />

longitud <strong>de</strong> la<br />

tabla<br />

R → T<br />

activa<br />

R --> T: De registro a tabla<br />

pointer = longitud <strong>de</strong> tabla<br />

31007526 12/2006 977


R --> T: De registro a tabla<br />

Descripción <strong>de</strong><br />

parámetros<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = copia los datos <strong>de</strong> fuente e<br />

incrementa el valor <strong>de</strong>l pointer.<br />

0x, 1x Ninguno ON = congela el valor <strong>de</strong>l pointer.<br />

Entrada inferior 0x, 1x Ninguno ON = restablece el valor <strong>de</strong>l pointer a cero.<br />

Fuente<br />

(nodo superior)<br />

Pointer <strong>de</strong><br />

<strong>de</strong>stino<br />

(nodo<br />

intermedio)<br />

Longitud <strong>de</strong><br />

tabla<br />

(nodo inferior)<br />

0x, 1x, 3x, 4x INT, UINT,<br />

WORD<br />

Datos <strong>de</strong> fuente que hay que copiar en el<br />

ciclo actual.<br />

4x INT, UINT Tabla <strong>de</strong> <strong>de</strong>stino en la que se copiarán los<br />

datos <strong>de</strong> fuente durante el ciclo.<br />

INT, UINT Número <strong>de</strong> registros en la tabla <strong>de</strong><br />

<strong>de</strong>stino, rango: 1...999<br />

Longitud:<br />

Máx. 255- PLC <strong>de</strong> 16 bits<br />

Máx. 999- PLC <strong>de</strong> 24 bits<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = valor <strong>de</strong>l pointer = longitud <strong>de</strong> la<br />

tabla (la instrucción no se pue<strong>de</strong><br />

incrementar más).<br />

978 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Entrada superior La entrada <strong>de</strong>l asiento superior inicia la operación <strong>de</strong> movimiento DX.<br />

Entrada<br />

intermedia<br />

R --> T: De registro a tabla<br />

Cuando la entrada intermedia se activa, el valor actual almacenado en el registro<br />

<strong>de</strong>l pointer <strong>de</strong> <strong>de</strong>stino se congela mientras continúa la operación DX. Esto hace que<br />

los nuevos datos que se están copiando en el <strong>de</strong>stino sobrescriban los datos<br />

copiados en el ciclo anterior.<br />

Entrada inferior Si la entrada inferior se activa, el valor <strong>de</strong>l registro <strong>de</strong>l pointer <strong>de</strong> <strong>de</strong>stino se<br />

restablecerá en cero. Esto hace que la siguiente operación <strong>de</strong> movimiento DX copie<br />

los datos <strong>de</strong> fuente en el primer registro <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino.<br />

Datos <strong>de</strong> fuente<br />

(asiento<br />

superior)<br />

Pointer <strong>de</strong><br />

<strong>de</strong>stino (asiento<br />

intermedio)<br />

Cuando se utilizan tipos <strong>de</strong> registro 0x o 1x:<br />

Primera referencia 0x en una ca<strong>de</strong>na <strong>de</strong> 16 salidas binarias o bobinas contiguas.<br />

Primera referencia 1x en una ca<strong>de</strong>na <strong>de</strong> 16 entradas binarias.<br />

El registro 4x introducido en el asiento intermedio es un pointer a la tabla <strong>de</strong> <strong>de</strong>stino<br />

en la que se copiarán los datos en el ciclo. El primer registro <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino<br />

es el siguiente registro contiguo 4x que sigue al pointer, es <strong>de</strong>cir, si el registro <strong>de</strong>l<br />

pointer es 400027, la tabla <strong>de</strong> <strong>de</strong>stino empezará en el registro 400028.<br />

El valor consignado en el registro <strong>de</strong>l pointer indica el registro <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino<br />

en el que se copiarán los datos <strong>de</strong> fuente. Un valor <strong>de</strong> cero indica que los datos <strong>de</strong><br />

fuente se copiarán en el primer registro <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino; un valor <strong>de</strong> 1 indica<br />

que los datos <strong>de</strong> fuente se copiarán en el segundo registro <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino,<br />

etc.<br />

Nota: El valor consignado en el registro <strong>de</strong>l pointer <strong>de</strong> <strong>de</strong>stino no pue<strong>de</strong> ser mayor<br />

que el valor entero <strong>de</strong> la longitud <strong>de</strong> la tabla especificado en este asiento.<br />

Salidas R→T pue<strong>de</strong> generar dos salidas posibles, <strong>de</strong>s<strong>de</strong> el asiento superior y <strong>de</strong>s<strong>de</strong> el<br />

asiento intermedio. El estado <strong>de</strong> la salida <strong>de</strong>l asiento superior refleja el estado <strong>de</strong> la<br />

entrada superior. La salida <strong>de</strong>l asiento intermedio se activa cuando el valor <strong>de</strong>l<br />

registro <strong>de</strong>l pointer <strong>de</strong> <strong>de</strong>stino es igual que la longitud <strong>de</strong> tabla especificada. En este<br />

punto, la instrucción no pue<strong>de</strong> seguir aumentando.<br />

31007526 12/2006 979


R --> T: De registro a tabla<br />

980 31007526 12/2006


Presentación<br />

RBIT: Restablecer bit<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción RBIT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

156<br />

Apartado Página<br />

Descripción breve 982<br />

Representación 983<br />

31007526 12/2006 981


RBIT: Restablecer bit<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción <strong>de</strong> puesta a cero <strong>de</strong> bit (RBIT) permite borrar un bit fijado en estado<br />

activo enviando corriente a la entrada superior. El bit permanece borrado <strong>de</strong>spués<br />

<strong>de</strong> que la entrada <strong>de</strong>je <strong>de</strong> recibir corriente. Esta instrucción sirve para borrar un bit<br />

establecido con la instrucción SBIT.<br />

Nota: La instrucción RBIT no sigue las mismas reglas <strong>de</strong> ubicación en la red que<br />

las bobinas referenciadas con 0x. Una instrucción RBIT no podrá ubicarse en la<br />

columna 11 <strong>de</strong> un red, pero sí podrá situarse a la izquierda <strong>de</strong> otros asientos<br />

lógicos en los mismos escalones <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong>.<br />

982 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

n.° <strong>de</strong><br />

registro<br />

número <strong>de</strong> bit que hay<br />

que restablecer<br />

(1–16)<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

N.° <strong>de</strong> registro<br />

(nodo superior)<br />

N.° <strong>de</strong> bit<br />

(nodo inferior)<br />

RBIT<br />

n.º <strong>de</strong> bit<br />

(1...16)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

RBIT: Restablecer bit<br />

0x, 1x Ninguno ON = pone a 0 el bit especificado, que<br />

permanece a 0 <strong>de</strong>spués <strong>de</strong> que la entrada<br />

<strong>de</strong>je <strong>de</strong> recibir corriente.<br />

4x WORD Registro en espera cuyo mo<strong>de</strong>lo <strong>de</strong> bits se<br />

está controlando.<br />

INT, UINT Indica cuál <strong>de</strong> los 16 bits se está poniendo<br />

a 0.<br />

Salida superior 0x Ninguno ON = el bit especificado se ha puesto a 0.<br />

31007526 12/2006 983


RBIT: Restablecer bit<br />

984 31007526 12/2006


Presentación<br />

READ: Lectura<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción READ.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

157<br />

Apartado Página<br />

Descripción breve 986<br />

Representación 987<br />

Descripción <strong>de</strong> los parámetros 989<br />

31007526 12/2006 985


READ: Lectura<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

La instrucción READ permite leer datos <strong>de</strong> un dispositivo <strong>de</strong> entrada ASCII (teclado,<br />

lector <strong>de</strong> código <strong>de</strong> barras, etc.) e introducirlos en la memoria <strong>de</strong>l PLC a través <strong>de</strong><br />

una red RIO. La conexión al equipo ASCII se realiza en una interfase RIO.<br />

En el proceso <strong>de</strong> gestión <strong>de</strong> la operación <strong>de</strong> los mensajes, la instrucción READ<br />

realiza las siguientes funciones:<br />

Verificar la longitud <strong>de</strong> los campos <strong>de</strong> datos variables.<br />

Verificar la corrección <strong>de</strong> los parámetros <strong>de</strong> comunicación ASCII, por ejemplo, el<br />

número <strong>de</strong> puerto o el número <strong>de</strong> mensaje.<br />

Realizar la <strong>de</strong>tección y grabación <strong>de</strong> errores.<br />

Informar <strong>de</strong>l estado <strong>de</strong> la interfase RIO.<br />

La instrucción READ necesita dos tablas <strong>de</strong> registros: una tabla <strong>de</strong> <strong>de</strong>stino en la que<br />

se almacenan los datos variables recuperados (el mensaje) y un bloque <strong>de</strong> control<br />

don<strong>de</strong> se i<strong>de</strong>ntifican los parámetros correspondientes al puerto <strong>de</strong> comunicaciones<br />

y al mensaje.<br />

Encontrará más información sobre cómo formatear mensajes en p. 31.<br />

986 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

control<br />

(<strong>de</strong> OFF a ON)<br />

pausar operación<br />

cancelar operación<br />

Longitud:<br />

máx. 255 - PLC <strong>de</strong> 16 bits<br />

máx. 999 - PLC <strong>de</strong> 24 bits.<br />

bloque <strong>de</strong><br />

control<br />

<strong>de</strong>stino<br />

longitud <strong>de</strong><br />

la tabla<br />

READ<br />

activo<br />

error (un ciclo)<br />

completar (un ciclo)<br />

READ: Lectura<br />

31007526 12/2006 987


READ: Lectura<br />

Descripción <strong>de</strong><br />

parámetros<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia una instrucción READ.<br />

0x, 1x Ninguno ON = pausa en la operación <strong>de</strong> READ.<br />

Entrada inferior 0x, 1x Ninguno ON = interrupción <strong>de</strong> la operación <strong>de</strong><br />

READ.<br />

Bloque <strong>de</strong><br />

control<br />

(nodo superior)<br />

Destino<br />

(nodo<br />

intermedio)<br />

Longitud <strong>de</strong><br />

tabla<br />

(nodo inferior)<br />

4x INT, UINT,<br />

WORD<br />

4x INT, UINT,<br />

WORD<br />

Bloque <strong>de</strong> control (el primero <strong>de</strong> siete<br />

registros en espera contiguos).<br />

Tabla <strong>de</strong> <strong>de</strong>stino<br />

INT, UINT Longitud <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino (cantidad<br />

<strong>de</strong> registros en los que se almacenarán<br />

los datos <strong>de</strong>l mensaje), rango: 1...999<br />

Longitud:<br />

Máx. 255- PLC <strong>de</strong> 16 bits<br />

Máx. 999- PLC <strong>de</strong> 24 bits<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = error en la comunicación o ha<br />

vencido la temporización <strong>de</strong> la operación<br />

(para un ciclo).<br />

Salida inferior 0x Ninguno ON = instrucción READ completada (para<br />

un ciclo).<br />

988 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Bloque<br />

<strong>de</strong> control<br />

(asiento<br />

superior)<br />

Número <strong>de</strong><br />

puerto y código<br />

<strong>de</strong> error<br />

READ: Lectura<br />

El registro 4x introducido en el asiento superior es el primero <strong>de</strong> siete registros <strong>de</strong><br />

salida contiguos en el bloque <strong>de</strong> control.<br />

Registro Definición<br />

Visualizado Núómero <strong>de</strong> puerto y cdigo <strong>de</strong> error<br />

Primer implícito Número <strong>de</strong> mensaje<br />

Segundo implícito Cantidad <strong>de</strong> registros necesarios para satisfacer el formato<br />

Tercer implícito Recuento <strong>de</strong> la cantidad <strong>de</strong> registros transferidos hasta el momento<br />

Cuarto implícito Estado <strong>de</strong>l ciclo<br />

Quinto implícito Reservado<br />

Sexto implícito Suma <strong>de</strong> control <strong>de</strong> los registros 0 a 5<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 a 4 Código <strong>de</strong> error <strong>de</strong>l PLC.<br />

5 No utilizados.<br />

6 La entrada proce<strong>de</strong>nte <strong>de</strong>l dispositivo ASCII no es compatible con el formato.<br />

7 Desbor<strong>de</strong> <strong>de</strong>l búfer <strong>de</strong> entrada, los datos se han recibido <strong>de</strong>masiado rápido en<br />

el RIOP.<br />

8 Error USART, se ha recibido un byte no válido en el RIOP.<br />

9 Dispositivo ASCII offline, compruebe el cableado.<br />

10 Formato no válido, no se ha recibido correctamente por el RIOP.<br />

11 Mensaje ASCII finalizado <strong>de</strong> forma prematura (en modo <strong>de</strong> teclado).<br />

12 ... 16 Número <strong>de</strong>l puerto <strong>de</strong> comunicaciones (1 a <strong>32</strong>).<br />

31007526 12/2006 989


READ: Lectura<br />

Destino (asiento<br />

intermedio)<br />

Código <strong>de</strong> error <strong>de</strong>l PLC<br />

Bit Significado<br />

1 2 3 4<br />

0 0 0 1 Error en la entrada en el RIOP proce<strong>de</strong>nte <strong>de</strong>l dispositivo ASCII.<br />

0 0 1 0 Respuesta <strong>de</strong> excepción <strong>de</strong>l RIOP, datos no válidos.<br />

0 0 1 1 El número secuenciado <strong>de</strong>l RIOP es diferente <strong>de</strong>l valor esperado.<br />

0 1 0 0 Error <strong>de</strong> suma <strong>de</strong> control <strong>de</strong>l registro <strong>de</strong> la aplicación, normalmente<br />

<strong>de</strong>bido a que se han alterado registros <strong>de</strong> READ mientras el bloque<br />

estaba activo.<br />

0 1 0 1 Se ha <strong>de</strong>tectado un puerto o número <strong>de</strong> mensaje no válido.<br />

0 1 1 0 Interrupción iniciada por el usuario, entrada inferior activada.<br />

0 1 1 1 No hay respuesta <strong>de</strong> la estación, error <strong>de</strong> comunicación.<br />

1 0 0 0 Asiento interrumpido <strong>de</strong>bido a instrucción SKP.<br />

1 0 0 1 Campo <strong>de</strong> mensajes confuso, recargar memoria.<br />

1 0 1 0 Puerto no configurado en la asignación <strong>de</strong> E/S.<br />

1 0 1 2 Solicitud ASCII no válida.<br />

1 1 0 0 Respuesta <strong>de</strong>sconocida <strong>de</strong>l puerto ASCII.<br />

1 1 0 1 Elemento ASCII no válido <strong>de</strong>tectado en la lógica <strong>de</strong> la aplicación.<br />

1 1 1 1 RIOP <strong>de</strong>l PLC fuera <strong>de</strong> servicio.<br />

El asiento intermedio contiene el registro 4x en un bloque <strong>de</strong> <strong>de</strong>stino. Los datos<br />

variables <strong>de</strong> un mensaje READ se escriben en esta tabla. La longitud <strong>de</strong> la tabla se<br />

<strong>de</strong>fine en el asiento inferior.<br />

Ejemplo <strong>de</strong> mensaje READ:<br />

Introduzca la contraseña: AAAAAAAAAA<br />

(Texto incrustado) (Datos variables)<br />

Nota: Un mensaje ASCII READ pue<strong>de</strong> contener el texto incrustado, entre comillas,<br />

así como los datos variables en la instrucción <strong>de</strong> formato, es <strong>de</strong>cir, el mensaje<br />

ASCII.<br />

El campo ASCII <strong>de</strong> 10 caracteres AAAAAAAAAA es el campo <strong>de</strong> datos variables;<br />

los datos variables <strong>de</strong>ben introducirse a través <strong>de</strong> un dispositivo <strong>de</strong> entrada ASCII.<br />

990 31007526 12/2006


Presentación<br />

RET:<br />

Retorno <strong>de</strong>s<strong>de</strong> una subrutina<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción RET.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

158<br />

Apartado Página<br />

Descripción breve 992<br />

Representación: RET - Retorno a lógica programada 993<br />

31007526 12/2006 991


RET: Retorno <strong>de</strong>s<strong>de</strong> una subrutina<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción RET se pue<strong>de</strong> utilizar para condicionar el retorno <strong>de</strong>l ciclo lógico al<br />

asiento que sigue inmediatamente al último bloque JSR ejecutado. Esta instrucción<br />

sólo se pue<strong>de</strong> llevar a cabo <strong>de</strong>s<strong>de</strong> <strong>de</strong>ntro <strong>de</strong>l segmento <strong>de</strong> la subrutina, el último<br />

segmento (sin administrar) <strong>de</strong>l programa <strong>de</strong> lógica <strong>de</strong> aplicación.<br />

Nota: Si una subrutina no contiene un bloque RET, como retorno pre<strong>de</strong>terminado<br />

<strong>de</strong> la subrutina servirá tanto un bloque LAB como el final <strong>de</strong> la lógica (lo que<br />

aparezca primero).<br />

Encontrará un ejemplo <strong>de</strong> utilización <strong>de</strong> subrutinas en p. 47.<br />

992 31007526 12/2006


Representación: RET - Retorno a lógica programada<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

RETORNO A LÓGICA<br />

ANTERIOR<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

RET: Retorno <strong>de</strong>s<strong>de</strong> una subrutina<br />

ERROR<br />

31007526 12/2006 993<br />

RET<br />

00001<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = retorno a la lógica anterior.<br />

En estado activo, el ciclo lógico vuelve al<br />

nodo inmediatamente posterior a la<br />

instrucción JSR ejecutada recientemente<br />

o al punto en el que se produjo la<br />

interrupción en el ciclo lógico.<br />

00001 INT, UINT Valor constante, no se pue<strong>de</strong> modificar.<br />

Salida superior 0x Ninguno ON = error en la subrutina especificada.


RET: Retorno <strong>de</strong>s<strong>de</strong> una subrutina<br />

994 31007526 12/2006


Presentación<br />

RTTI -<br />

De registro a tabla <strong>de</strong> entrada<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción RTTI.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

159<br />

Apartado Página<br />

Descripción breve 996<br />

Representación 997<br />

31007526 12/2006 995


RTTI - De registro a tabla <strong>de</strong> entrada<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> funciones<br />

El bloque <strong>de</strong> registro a tabla <strong>de</strong> entrada es una <strong>de</strong> cuatro instrucciones <strong>de</strong><br />

reemplazo 484. Copia el contenido <strong>de</strong> un registro <strong>de</strong> entrada o en espera en otro<br />

distinto. El registro <strong>de</strong> entrada implícito por la constante <strong>de</strong>l nodo inferior se encarga<br />

<strong>de</strong> apuntar a este registro <strong>de</strong> <strong>de</strong>stino. En cada ciclo, el sistema sólo pue<strong>de</strong> realizar<br />

una operación <strong>de</strong> este tipo.<br />

996 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

fuente<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Fuente<br />

(nodo superior)<br />

Pointer<br />

(nodo inferior)<br />

pointer <strong>de</strong><br />

offset <strong>de</strong><br />

<strong>de</strong>stino<br />

RTTI<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

RTTI - De registro a tabla <strong>de</strong> entrada<br />

31007526 12/2006 997<br />

error<br />

0x, 1x Ninguno Fuente <strong>de</strong> control.<br />

3x, 4x INT,<br />

UINT<br />

(1 ... 254)<br />

(801 ... 8<strong>32</strong>)<br />

INT,<br />

UINT<br />

El nodo <strong>de</strong> fuente (nodo superior) contiene la<br />

dirección <strong>de</strong> registro <strong>de</strong> fuente. Los datos<br />

situados en la dirección <strong>de</strong> registro <strong>de</strong> fuente se<br />

copiarán en la dirección <strong>de</strong> <strong>de</strong>stino,<br />

<strong>de</strong>terminada por el pointer <strong>de</strong> offset <strong>de</strong> <strong>de</strong>stino.<br />

El pointer es 3xxxx implícito mediante una<br />

constante (es <strong>de</strong>cir, 00018 -> 30018) cuyo<br />

contenido indica el <strong>de</strong>stino. Un valor <strong>de</strong> 1 a 254<br />

indica un registro en espera (40001 - 40254) y<br />

un valor <strong>de</strong> 801 a 8<strong>32</strong> indica un registro <strong>de</strong><br />

entrada (30001 - 300<strong>32</strong>). Si el valor está fuera<br />

<strong>de</strong> este rango, la operación no se realizará y la<br />

barra ERROR se activará. Tenga en cuenta que<br />

el valor <strong>de</strong>l pointer NO se incrementa<br />

automáticamente.<br />

Salida superior 0x Ninguno Refleja el valor <strong>de</strong> la entrada superior.<br />

Salida inferior 0x Ninguno ON = error.<br />

Valor <strong>de</strong>l pointer fuera <strong>de</strong> rango.


RTTI - De registro a tabla <strong>de</strong> entrada<br />

998 31007526 12/2006


Presentación<br />

RTTO -<br />

De registro a tabla <strong>de</strong> salida<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción RTTO.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

160<br />

Apartado Página<br />

Descripción breve 1000<br />

Representación 1001<br />

31007526 12/2006 999


RTTO - De registro a tabla <strong>de</strong> salida<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> las funciones<br />

El bloque <strong>de</strong> registro a tabla <strong>de</strong> salida es una <strong>de</strong> cuatro instrucciones <strong>de</strong> reemplazo<br />

484. Copia el contenido <strong>de</strong> un registro <strong>de</strong> entrada o en espera en otro distinto. El<br />

registro en espera afectado por la constante en los puntos <strong>de</strong> nodo inferior a este<br />

registro <strong>de</strong> <strong>de</strong>stino. En cada ciclo, el sistema sólo pue<strong>de</strong> realizar una operación <strong>de</strong><br />

este tipo.<br />

1000 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control copiar<br />

fuente<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Fuente<br />

(nodo superior)<br />

Pointer<br />

(nodo inferior)<br />

pointer <strong>de</strong><br />

offset<br />

<strong>de</strong>stino<br />

RTTO<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

RTTO - De registro a tabla <strong>de</strong> salida<br />

31007526 12/2006 1001<br />

error<br />

0x, 1x Ninguno Fuente <strong>de</strong> control.<br />

3x, 4x INT, UINT El nodo <strong>de</strong> fuente (nodo superior) contiene la<br />

dirección <strong>de</strong> registro <strong>de</strong> fuente. Los datos<br />

situados en la dirección <strong>de</strong> registro <strong>de</strong> fuente<br />

se copiarán en la dirección <strong>de</strong> <strong>de</strong>stino,<br />

<strong>de</strong>terminada por el pointer <strong>de</strong> offset <strong>de</strong><br />

<strong>de</strong>stino.<br />

(1 ... 254)<br />

(801 ... 824)<br />

INT, UINT El pointer es 4xxxx implícito mediante una<br />

constante (es <strong>de</strong>cir, 00018 -> 40018) cuyo<br />

contenido indica el <strong>de</strong>stino. Un valor <strong>de</strong> 1 a<br />

254 indica un registro en espera (40001 -<br />

40254) y un valor <strong>de</strong> 801 a 8<strong>32</strong> indica un<br />

registro <strong>de</strong> entrada (30001 - 300<strong>32</strong>). Si el valor<br />

está fuera <strong>de</strong> este rango, la operación no se<br />

realizará y la barra ERROR se activará. Tenga<br />

en cuenta que el valor <strong>de</strong>l pointer NO se<br />

incrementa automáticamente.<br />

Salida superior 0x Ninguno Refleja el valor <strong>de</strong> la entrada superior.<br />

Salida inferior 0x Ninguno ON = error.<br />

Valor <strong>de</strong>l pointer fuera <strong>de</strong> rango.


RTTO - De registro a tabla <strong>de</strong> salida<br />

1002 31007526 12/2006


Presentación<br />

RTU - Unidad remota <strong>de</strong> terminal<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción RTU.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

161<br />

Apartado Página<br />

Descripción breve 1004<br />

Representación 1005<br />

31007526 12/2006 1003


RTU - Unidad remota <strong>de</strong> terminal<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> funciones<br />

El bloque <strong>de</strong> unidad terminal remota Modbus (RTU) admite las siguientes<br />

velocida<strong>de</strong>s <strong>de</strong> transferencia <strong>de</strong> datos (baudios):<br />

1.200<br />

2.400<br />

4.800<br />

9.600<br />

19.200<br />

1004 31007526 12/2006


Representación<br />

Descripción <strong>de</strong><br />

parámetros<br />

Entradas <strong>de</strong><br />

registro para<br />

velocida<strong>de</strong>s <strong>de</strong><br />

transferencia<br />

(baudios)<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción.<br />

RTU - Unidad remota <strong>de</strong> terminal<br />

Registro Función<br />

4x Número <strong>de</strong> revisión <strong>de</strong> RTU (sólo lectura).<br />

4x + 1 Campo <strong>de</strong> estado <strong>de</strong> fallos (sólo lectura).<br />

4x + 2 Campo no utilizado.<br />

4x + 3 Establece el registro <strong>de</strong> velocidad <strong>de</strong> transferencia <strong>de</strong> datos (baudios).<br />

Para obtener información más <strong>de</strong>tallada acerca <strong>de</strong> las entradas <strong>de</strong> registro<br />

para velocida<strong>de</strong>s (baudios), consulte la siguiente sección: Entradas <strong>de</strong> registro<br />

para velocida<strong>de</strong>s <strong>de</strong> transferencia (baudios).<br />

4x + 4 Establece el registro <strong>de</strong> bits <strong>de</strong> datos.<br />

Para obtener información más <strong>de</strong>tallada acerca <strong>de</strong> las entradas <strong>de</strong> registro<br />

para bits <strong>de</strong> datos (baudios), consulte la siguiente sección: Entradas <strong>de</strong> registro<br />

para bits <strong>de</strong> datos.<br />

4x + 5 Registro <strong>de</strong> paridad.<br />

4x + 6 Detiene el registro <strong>de</strong> bits.<br />

4x + 7 Campo no utilizado.<br />

4x + 8 Establece el registro <strong>de</strong> palabras <strong>de</strong> comando.<br />

Para obtener información más <strong>de</strong>tallada acerca <strong>de</strong> las entradas <strong>de</strong> registro<br />

para palabras <strong>de</strong> comando (baudios), consulte la siguiente sección: Entradas<br />

<strong>de</strong> registro para palabras <strong>de</strong> comando<br />

El bloque <strong>de</strong> unidad terminal remota Modbus (RTU) admite las siguientes<br />

velocida<strong>de</strong>s <strong>de</strong> transferencia <strong>de</strong> datos (baudios):<br />

1200<br />

2400<br />

4800<br />

9600<br />

19200<br />

31007526 12/2006 1005


RTU - Unidad remota <strong>de</strong> terminal<br />

Entradas <strong>de</strong><br />

registro para bits<br />

<strong>de</strong> datos.<br />

Entradas <strong>de</strong><br />

registro para<br />

palabras <strong>de</strong><br />

comando<br />

A continuación, se muestran las entradas <strong>de</strong> registro para las velocida<strong>de</strong>s <strong>de</strong><br />

transferencia <strong>de</strong> datos. Para configurar una velocidad <strong>de</strong> transferencia, escriba el<br />

número <strong>de</strong>cimal apropiado (por ejemplo 1.200) en el registro <strong>de</strong> velocidad <strong>de</strong><br />

transferencia (baudios).<br />

Entrada <strong>de</strong> registro Velocidad <strong>de</strong> transmisión<br />

1200 1200<br />

2400 2400<br />

4800 4800<br />

9600 9600<br />

19200 19200<br />

El bloque RTU admite los bits <strong>de</strong> datos 7 y 8. A continuación, se muestran las<br />

posibles entradas <strong>de</strong> registro para el campo <strong>de</strong> bits <strong>de</strong> datos.<br />

Entrada <strong>de</strong> registro Campo <strong>de</strong> bits <strong>de</strong> datos<br />

7 7<br />

8 8<br />

Los mensajes Modbus pue<strong>de</strong>n enviarse en formato RTU Modbus o ASCII Modbus.<br />

Si se envían en formato ASCII Modbus , escriba 7 en el campo.<br />

Si se envían en formato RTU Modbus, escriba 8.<br />

Si va a enviar mensajes con caracteres ASCII, este registro podrá establecerse en<br />

ambos bits <strong>de</strong> datos, 7 u 8.<br />

El bloque RTU interpreta cada bit <strong>de</strong> la palabra <strong>de</strong> comando como una función que<br />

se <strong>de</strong>be realizar. A continuación, se muestran las <strong>de</strong>finiciones <strong>de</strong> bit para las<br />

entradas <strong>de</strong> registro <strong>de</strong> palabras <strong>de</strong> comando.<br />

Entrada <strong>de</strong> registro Definiciones<br />

1 (bit <strong>de</strong> mayor valor) Sin utilizar.<br />

2 Habilitar control RTS/CTS.<br />

3 Sin utilizar.<br />

4 Sin utilizar.<br />

5 Sin utilizar.<br />

6 Sin utilizar.<br />

7 Habilitar mensajes <strong>de</strong> ca<strong>de</strong>na <strong>de</strong> caracteres ASCII.<br />

8 Habilitar mensajes Modbus.<br />

9 Sin utilizar.<br />

10 Sin utilizar.<br />

1006 31007526 12/2006


Entrada <strong>de</strong> registro Definiciones<br />

11 Sin utilizar.<br />

12 Sin utilizar.<br />

13 Sin utilizar.<br />

14 Colgar mó<strong>de</strong>m.<br />

15 Marcación en mó<strong>de</strong>m.<br />

16 (bit <strong>de</strong> menor valor) Inicializar mó<strong>de</strong>m.<br />

RTU - Unidad remota <strong>de</strong> terminal<br />

A continuación, se muestra información más <strong>de</strong>tallada acerca <strong>de</strong> los bits 2, 7 y 8.<br />

Bit 2 – Habilitar control <strong>de</strong> solicitud para enviar/dispuesto para enviar (RTS/CTS).<br />

Se <strong>de</strong>be establecer este bit (o True) cuando un DCE conectado al PLC requiere<br />

un protocolo <strong>de</strong> hardware utilizando el control RTS/CTS.<br />

Este bit se pue<strong>de</strong> utilizar junto con los valores incluidos en el registro <strong>de</strong> retardo<br />

<strong>de</strong> inicio <strong>de</strong> transmisión (4xxxx ¸ 13) y el registro <strong>de</strong> retardo <strong>de</strong> fin <strong>de</strong> transmisión<br />

(4xxxx + 13). El retardo <strong>de</strong>l inicio <strong>de</strong> la transmisión mantiene RTS válido para 0–<br />

9.999 ms antes <strong>de</strong> que el bloque RTU envíe un mensaje <strong>de</strong>s<strong>de</strong> el puerto <strong>de</strong>l PLC.<br />

Una vez que el bloque RTU haya enviado un mensaje, el retardo <strong>de</strong>l final <strong>de</strong> la<br />

transmisión mantendrá RTS válido durante 0–9.999 ms. Cuando el retardo haya<br />

expirado, el bloque RTU anulará RTS.<br />

Bit 7 – Habilitar mensajes <strong>de</strong> ca<strong>de</strong>na <strong>de</strong> caracteres ASCII.<br />

Para enviar mensajes <strong>de</strong> ca<strong>de</strong>na <strong>de</strong> caracteres ASCII <strong>de</strong>s<strong>de</strong> el puerto <strong>de</strong><br />

comunicación n.º 1 <strong>de</strong>l PLC, <strong>de</strong>berá establecerse este bit (o True).<br />

El bloque RTU pue<strong>de</strong> enviar una ca<strong>de</strong>na <strong>de</strong> caracteres ASCII con una longitud<br />

<strong>de</strong> hasta 512 caracteres. Cada mensaje ASCII <strong>de</strong>be programarse en registros<br />

<strong>de</strong>l PLC 4x contiguos. Se admiten dos caracteres por registro.<br />

Nota: Esta ca<strong>de</strong>na <strong>de</strong> mensajes ASCII NO no <strong>de</strong>be confundirse con un mensaje<br />

Modbus enviado en formato ASCII.<br />

Bit 8 – Habilitar mensajes Modbus.<br />

Para enviar mensajes Modbus <strong>de</strong>s<strong>de</strong> el puerto <strong>de</strong> comunicación n.º 1 <strong>de</strong>l PLC,<br />

<strong>de</strong>berá establecerse este bit (o True).<br />

Los mensajes Modbus pue<strong>de</strong>n enviarse en formato RTU o ASCII.<br />

Si <strong>de</strong>sea enviar mensajes Modbus en formato RTU, establezca en 8 los bits<br />

<strong>de</strong> datos <strong>de</strong>l registro <strong>de</strong> bits <strong>de</strong> datos (4xxxx + 4).<br />

Si <strong>de</strong>sea enviar mensajes Modbus en formato ASCII, establezca en 7 los bits<br />

<strong>de</strong> datos <strong>de</strong>l registro <strong>de</strong> bits <strong>de</strong> datos (4xxxx + 4).<br />

31007526 12/2006 1007


RTU - Unidad remota <strong>de</strong> terminal<br />

1008 31007526 12/2006


Presentación<br />

SAVE: Guardar flash<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción SAVE.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

162<br />

Apartado Página<br />

Descripción breve 1010<br />

Representación 1011<br />

Descripción <strong>de</strong> los parámetros 1012<br />

31007526 12/2006 1009


SAVE: Guardar flash<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

Nota: Esta instrucción está disponible en la familia <strong>de</strong> PLC Compact TSX, en CPU<br />

Quantum 434 12/534 14 y Momentum CCC 960 x0/980 x0.<br />

La instrucción SAVE guarda un bloque <strong>de</strong> registros 4x en la memoria <strong>de</strong> señal,<br />

don<strong>de</strong> quedan a salvo <strong>de</strong> modificaciones no autorizadas.<br />

1010 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control activa<br />

registro<br />

1, 2, 3, 4<br />

longitud <strong>de</strong><br />

SAVE<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

error<br />

SAVE no permitido<br />

SAVE: Guardar flash<br />

Entrada superior 0x, 1x Ninguno Inicio <strong>de</strong> la operación SAVE: <strong>de</strong>berá<br />

permanecer activo hasta que la operación<br />

haya finalizado correctamente o se<br />

produzca un error.<br />

Registro<br />

(nodo superior)<br />

1, 2, 3, 4<br />

(véase p. 1012)<br />

(nodo intermedio)<br />

Longitud<br />

(nodo inferior)<br />

4x INT, UINT,<br />

WORD<br />

Primero <strong>de</strong> un máximo <strong>de</strong> 512 registros 4x<br />

contiguos que hay que guardar en la<br />

memoria <strong>de</strong> señal.<br />

INT Valor entero que <strong>de</strong>fine el búfer específico<br />

en el que se va a guardar el bloque <strong>de</strong><br />

datos.<br />

INT Cantidad <strong>de</strong> palabras que se van a guardar,<br />

rango: 1...512<br />

Salida superior 0x Ninguno ON = SAVE está activo.<br />

Salida intermedia<br />

(véase p. 1012)<br />

0x Ninguno ON = no se permite ejecutar SAVE.<br />

31007526 12/2006 1011


SAVE: Guardar flash<br />

Descripción <strong>de</strong> los parámetros<br />

1, 2, 3, 4<br />

(asiento<br />

intermedio)<br />

Salida<br />

intermedia<br />

El asiento intermedio <strong>de</strong>fine el búfer específico <strong>de</strong>ntro <strong>de</strong> la memoria <strong>de</strong> señal en el<br />

que se guardará el bloque <strong>de</strong> datos. Se admiten cuatro búferes <strong>de</strong> 512 palabras.<br />

Cada búfer se <strong>de</strong>fine colocando su valor correspondiente en el asiento intermedio,<br />

es <strong>de</strong>cir, el valor 1 representa el primer búfer, el valor 2, el segundo, y así<br />

sucesivamente. Los valores permitidos son 1, 2, 3 y 4. Cuando se inicia el PLC, los<br />

cuatro búferes se ponen a cero. Por lo tanto, no podrá guardar datos en el mismo<br />

búfer sin cargarlo primero con la instrucción LOAD (véase p. 675). Al intentar<br />

realizar esta operación, la salida intermedia se activa. En otras palabras, una vez<br />

utilizado un búfer, no se podrá volver a utilizar hasta que se hayan eliminado los<br />

datos.<br />

La salida <strong>de</strong>l asiento intermedio se activa si no se ha utilizado la instrucción LOAD<br />

(véase p. 675) para acce<strong>de</strong>r a los datos previamente guardados. De esta forma se<br />

evita que se sobrescriban inadvertidamente los datos <strong>de</strong>l búfer SAVE.<br />

1012 31007526 12/2006


Presentación<br />

SBIT: Establecer bit<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción SBIT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

163<br />

Apartado Página<br />

Descripción breve 1014<br />

Representación 1015<br />

31007526 12/2006 1013


SBIT: Establecer bit<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción SBIT permite, mediante la activación <strong>de</strong> la entrada superior,<br />

establecer el estado <strong>de</strong> un bit especificado en activo (1).<br />

Nota: La instrucción SBIT no sigue las mismas reglas <strong>de</strong> ubicación en la red que<br />

las bobinas referenciadas con 0x. Una instrucción SBIT no podrá ubicarse en la<br />

columna 11 <strong>de</strong> una red, pero sí podrá situarse a la izquierda <strong>de</strong> otros asientos<br />

lógicos en los mismos escalones <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong>.<br />

1014 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

ON establece el bit en 1 activo<br />

n.° <strong>de</strong><br />

registro<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia <strong>de</strong><br />

memoria <strong>de</strong><br />

señal<br />

Entrada<br />

superior<br />

N.° <strong>de</strong> registro<br />

(nodo superior)<br />

N.° <strong>de</strong> bit<br />

(nodo inferior)<br />

SBIT: Establecer bit<br />

31007526 12/2006 1015<br />

SBIT<br />

n.º <strong>de</strong> bit<br />

(1...16)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = establece en 1 el bit especificado. El bit<br />

conserva este valor incluso <strong>de</strong>spués <strong>de</strong> que la<br />

entrada <strong>de</strong>je <strong>de</strong> recibir alimentación.<br />

4x WORD Registro en espera cuyo mo<strong>de</strong>lo <strong>de</strong> bits se está<br />

controlando.<br />

INT,<br />

UINT<br />

Indica cuál <strong>de</strong> los 16 bits se está ajustando.<br />

Salida superior 0x Ninguno Se activa cuando el bit especificado se<br />

establece y continúa activo hasta que se borra<br />

(mediante la instrucción RBIT (véase p. 981)).


SBIT: Establecer bit<br />

1016 31007526 12/2006


Presentación<br />

SCIF:<br />

Interfases <strong>de</strong> control secuencial<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción SCIF.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

164<br />

Apartado Página<br />

Descripción breve 1018<br />

Representación 1019<br />

Descripción <strong>de</strong> los parámetros 1021<br />

31007526 12/2006 1017


SCIF: Interfases <strong>de</strong> control secuencial<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción SCIF realiza una operación <strong>de</strong> secuenciación <strong>de</strong>l conmutador <strong>de</strong><br />

tambor o una comparación <strong>de</strong> entrada (ICMP) utilizando los datos <strong>de</strong>finidos en la<br />

tabla <strong>de</strong> datos <strong>de</strong> pasos.<br />

La selección <strong>de</strong> operación se realiza <strong>de</strong>finiendo el valor <strong>de</strong>l primer registro <strong>de</strong> la<br />

tabla <strong>de</strong> datos <strong>de</strong> pasos:<br />

0 = modo <strong>de</strong> tambor.<br />

La instrucción controla las salidas en la aplicación <strong>de</strong> secuenciación <strong>de</strong>l<br />

conmutador <strong>de</strong> tambor.<br />

1 = modo ICMP.<br />

La instrucción lee las entradas para asegurarse <strong>de</strong> que la posición <strong>de</strong> los<br />

interruptores <strong>de</strong> final <strong>de</strong> carrera, <strong>de</strong> proximidad, botones, etc. permita activar las<br />

salidas <strong>de</strong>l conmutador <strong>de</strong> tambor.<br />

1018 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control activa<br />

pointer <strong>de</strong><br />

pasos<br />

SCIF: Interfases <strong>de</strong> control secuencial<br />

operación específica operación específica<br />

tabla <strong>de</strong><br />

datos <strong>de</strong><br />

pasos<br />

restablecer pointer <strong>de</strong><br />

pasos<br />

Longitud: 1–255<br />

longitud <strong>de</strong><br />

SCIF<br />

(1...255)<br />

error<br />

31007526 12/2006 1019


SCIF: Interfases <strong>de</strong> control secuencial<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia la operación <strong>de</strong> control <strong>de</strong><br />

secuencia especificada.<br />

0x, 1x Ninguno Modalidad <strong>de</strong> programador cíclico: el<br />

pointer <strong>de</strong> pasos aumenta al siguiente<br />

paso.<br />

Modalidad ICMP: el estado <strong>de</strong><br />

comparación se muestra en la salida<br />

intermedia.<br />

Entrada inferior 0x, 1x Ninguno Modalidad <strong>de</strong> programador cíclico: ON<br />

= restablece el pointer <strong>de</strong> pasos a 0.<br />

Modalidad ICMP: sin utilizar.<br />

Pointer <strong>de</strong><br />

pasos<br />

(nodo superior)<br />

Tabla <strong>de</strong> datos<br />

<strong>de</strong> pasos<br />

(véase p. 1021)<br />

(nodo<br />

intermedio)<br />

Longitud<br />

(véase p. 1022)<br />

(nodo inferior)<br />

4x INT, UINT Número <strong>de</strong>l paso actual en la tabla <strong>de</strong><br />

datos <strong>de</strong> pasos.<br />

4x INT, UINT Primer registro en la tabla <strong>de</strong> datos <strong>de</strong><br />

pasos.<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte p. 1021.)<br />

INT, UINT Número <strong>de</strong> registros específicos <strong>de</strong> la<br />

aplicación utilizados en la tabla <strong>de</strong> datos<br />

<strong>de</strong> pasos.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno La modalidad <strong>de</strong> programador cíclico se<br />

activa para el último paso.<br />

Nota: Cuando utilice la salida intermedia,<br />

tenga en cuenta que al integrarse con otra<br />

lógica, si el pointer <strong>de</strong> pasos es cero y la<br />

entrada intermedia está activa, la salida<br />

intermedia también lo estará. Esta<br />

condición hará que el pointer <strong>de</strong> paso se<br />

encuentre un paso fuera <strong>de</strong> la secuencia.<br />

Salida inferior 0x Ninguno ON = se ha <strong>de</strong>tectado un error.<br />

1020 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Tabla <strong>de</strong> datos<br />

<strong>de</strong> pasos<br />

(asiento<br />

intermedio)<br />

SCIF: Interfases <strong>de</strong> control secuencial<br />

El registro 4x introducido en el asiento intermedio es el primer registro <strong>de</strong> una tabla<br />

<strong>de</strong> datos <strong>de</strong> pasos. Los siete primeros registros <strong>de</strong> la tabla contienen datos<br />

constantes y variables necesarios para ejecutar la instrucción.<br />

Registro Nombre <strong>de</strong>l registro Descripción<br />

Visualizado Tipo <strong>de</strong> subfunción 0 = modo <strong>de</strong> tambor; 1 = modo ICMP.<br />

Si se introduce cualquier otro valor en este<br />

registro, todas las salidas quedarán<br />

<strong>de</strong>sactivadas.<br />

Primer<br />

implícito<br />

Segundo<br />

implícito<br />

Tercer<br />

implícito<br />

Cuarto<br />

implícito<br />

Datos <strong>de</strong> salida<br />

enmascarados<br />

(en modo <strong>de</strong> tambor)<br />

Datos brutos <strong>de</strong> entrada<br />

(en modo ICMP)<br />

SCIF lo carga cada vez que se ejecuta el bloque;<br />

el registro incluye el contenido <strong>de</strong>l registro <strong>de</strong> los<br />

datos <strong>de</strong> paso actuales enmascarado con el<br />

registro <strong>de</strong> máscara <strong>de</strong> salida.<br />

El usuario lo carga <strong>de</strong>s<strong>de</strong> un grupo <strong>de</strong> entradas<br />

secuenciales para que el bloque lo utilice en el<br />

paso actual.<br />

Datos <strong>de</strong> paso en curso SCIF lo carga cada vez que se ejecuta el bloque;<br />

el registro contiene los datos <strong>de</strong>l paso en curso<br />

(señalados por el pointer <strong>de</strong> paso).<br />

Máscara <strong>de</strong> salida<br />

(en modo <strong>de</strong> tambor)<br />

Máscara <strong>de</strong> entrada<br />

(en modo ICMP)<br />

Datos <strong>de</strong> entrada<br />

enmascarados<br />

(en modo ICMP)<br />

No se utiliza en el modo<br />

<strong>de</strong> tambor<br />

El usuario lo carga antes <strong>de</strong> utilizar el bloque; el<br />

contenido no se ve alterado durante la ejecución<br />

lógica. Contiene una máscara que se aplicará a<br />

los datos para cada paso <strong>de</strong>l secuenciador.<br />

El usuario lo carga antes <strong>de</strong> utilizar el bloque;<br />

contiene una máscara a la que se <strong>de</strong>ben añadir<br />

mediante AND los datos brutos <strong>de</strong> entrada para<br />

cada paso (los bits enmascarados no se<br />

compararán); los datos enmascarados se<br />

<strong>de</strong>positan en el registro <strong>de</strong> datos <strong>de</strong> entrada<br />

enmascarados.<br />

SCIF lo carga cada vez que se ejecuta el bloque;<br />

contiene el resultado <strong>de</strong> los datos <strong>de</strong> entrada<br />

brutos y <strong>de</strong> la máscara <strong>de</strong> entrada a la que se ha<br />

aplicado la función AND.<br />

31007526 12/2006 1021


SCIF: Interfases <strong>de</strong> control secuencial<br />

Longitud <strong>de</strong> la<br />

tabla <strong>de</strong> datos <strong>de</strong><br />

pasos (asiento<br />

inferior)<br />

Registro Nombre <strong>de</strong>l registro Descripción<br />

Quinto<br />

implícito<br />

Sexto<br />

implícito<br />

Estado <strong>de</strong> comparación<br />

(en modo ICMP)<br />

No se utiliza en el modo<br />

<strong>de</strong> tambor<br />

SCIF lo carga cada vez que se ejecuta el bloque;<br />

contiene el resultado <strong>de</strong> aplicar la función lógica<br />

XOR a los datos <strong>de</strong> entrada enmascarados y los<br />

datos <strong>de</strong>l paso en curso. Las entradas<br />

enmascaradas que no estén en el estado lógico<br />

correcto harán que el bit <strong>de</strong> registro asociado se<br />

ponga a 1. Los bits distintos <strong>de</strong> cero provocan<br />

una discrepancia y activan la salida intermedia<br />

<strong>de</strong>s<strong>de</strong> el bloque SCIF.<br />

Inicio <strong>de</strong> la tabla <strong>de</strong> datos Primero <strong>de</strong> K registros en la tabla que contienen<br />

los datos <strong>de</strong> control especificados por el usuario.<br />

Nota: Éste y el resto <strong>de</strong> los registros<br />

representan datos <strong>de</strong> pasos específicos <strong>de</strong> la<br />

aplicación en el proceso que se está<br />

controlando.<br />

El valor entero introducido en el asiento inferior especifica la longitud, es <strong>de</strong>cir, el<br />

número <strong>de</strong> registros específicos <strong>de</strong> la aplicación utilizados en la tabla <strong>de</strong> datos <strong>de</strong><br />

pasos. La longitud pue<strong>de</strong> estar comprendida entre 1 y 255.<br />

El número total <strong>de</strong> registros necesarios para una tabla <strong>de</strong> datos <strong>de</strong> pasos es la<br />

longitud + 7. La longitud <strong>de</strong>be ser ≥ el valor indicado en el registro <strong>de</strong> pasos<br />

utilizados <strong>de</strong>l asiento intermedio.<br />

1022 31007526 12/2006


Presentación<br />

SENS: Detección<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción SENS.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

165<br />

Apartado Página<br />

Descripción breve 1024<br />

Representación 1025<br />

Descripción <strong>de</strong> los parámetros 1027<br />

31007526 12/2006 1023


SENS: Detección<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción SENS examina y notifica el sentido (1 ó 0) <strong>de</strong> una ubicación <strong>de</strong> bit<br />

específica en una matriz <strong>de</strong> datos. Una ubicación <strong>de</strong> bit se <strong>de</strong>tecta en cada ciclo.<br />

1024 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

pointer: (999 PLC <strong>de</strong> 16 bits)<br />

(máx.) (9.600 PLC <strong>de</strong> 24 bits)<br />

aumentar pointer<br />

restablecer pointer<br />

longitud <strong>de</strong> matriz (máx.)<br />

255 registros (4.080 bits PLC <strong>de</strong> 16 bits)<br />

600 registros (9.600 bits PLC <strong>de</strong> 24 bits)<br />

ubicación <strong>de</strong><br />

bit<br />

matriz <strong>de</strong><br />

datos<br />

longitud <strong>de</strong><br />

SENS<br />

activa<br />

SENS: Detección<br />

<strong>de</strong>tectar bit (ON/OFF)<br />

error<br />

pointer <strong>de</strong> operación<br />

no realizada > tamaño<br />

<strong>de</strong> matriz<br />

31007526 12/2006 1025


SENS: Detección<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = <strong>de</strong>tecta la ubicación <strong>de</strong> bit.<br />

Entrada intermedia 0x, 1x Ninguno Incrementa en uno la ubicación <strong>de</strong> bit en el<br />

siguiente ciclo.<br />

Entrada inferior 0x, 1x Ninguno Restablece la ubicación <strong>de</strong> bit a 1.<br />

Ubicación <strong>de</strong> bit 3x, 4x WORD Ubicación específica <strong>de</strong> bit que ha <strong>de</strong><br />

(véase p. 1027)<br />

<strong>de</strong>tectarse en la matriz <strong>de</strong> datos; pue<strong>de</strong><br />

(nodo superior)<br />

introducirse explícitamente como un valor<br />

entero o almacenarse en un registro;<br />

rango: 1–9.600<br />

Pointer: (999, PLC <strong>de</strong> 16 bits).<br />

Máximo (9.900, PLC <strong>de</strong> 24 bits).<br />

Matriz <strong>de</strong> datos 0x, 4x BOOL, Primera palabra o registro <strong>de</strong> la matriz <strong>de</strong><br />

(nodo intermedio)<br />

WORD datos.<br />

Longitud<br />

INT, UINT Longitud máxima <strong>de</strong> matriz<br />

(véase p. 1027)<br />

255 registros (4.080 bits, PLC <strong>de</strong> 16 bits).<br />

(nodo inferior)<br />

600 registros (9.600 bits, PLC <strong>de</strong> 24 bits).<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida intermedia 0x Ninguno ON = la <strong>de</strong>tección <strong>de</strong>l bit es 1.<br />

OFF = la <strong>de</strong>tección <strong>de</strong>l bit es 0.<br />

Salida inferior 0x Ninguno ON = error: ubicación <strong>de</strong> bit > longitud <strong>de</strong><br />

matriz.<br />

1026 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Ubicación <strong>de</strong> bit<br />

(asiento<br />

superior)<br />

Longitud<br />

<strong>de</strong> la matriz<br />

(asiento inferior)<br />

SENS: Detección<br />

Nota: Si la ubicación <strong>de</strong> bit se introduce como un entero o en un registro 3x, la<br />

instrucción ignorará el estado <strong>de</strong> las entradas intermedia e inferior.<br />

El valor entero introducido en el asiento inferior especifica la longitud <strong>de</strong> la matriz,<br />

es <strong>de</strong>cir, el número <strong>de</strong> registros o palabras <strong>de</strong> 16 bits que hay en la matriz <strong>de</strong> datos.<br />

La longitud pue<strong>de</strong> ir <strong>de</strong> 1 a 600 en una CPU <strong>de</strong> 24 bits; por ejemplo, una longitud<br />

<strong>de</strong> matriz <strong>de</strong> 200 indica 3.200 ubicaciones <strong>de</strong> bit.<br />

31007526 12/2006 1027


SENS: Detección<br />

1028 31007526 12/2006


Presentación<br />

Conexiones<br />

Introducción Este capítulo <strong>de</strong>scribe el elemento <strong>de</strong> instrucción Shorts.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

166<br />

Apartado Página<br />

Descripción breve 1030<br />

Representación 1031<br />

31007526 12/2006 1029


Conexiones<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> funciones<br />

Las conexiones (shorts) son simples uniones mediante líneas rectas entre<br />

contactos e instrucciones en una red <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong>. Las conexiones verticales (|)<br />

y horizontales (—) se utilizan para realizar conexiones entre las filas y columnas<br />

lógicas. Para cancelar una conexión vertical, utilice una apertura vertical.<br />

1030 31007526 12/2006


Representación<br />

Conexiones<br />

verticales<br />

Conexiones<br />

horizontales<br />

Conexiones<br />

Conectan contactos o instrucciones verticalmente en una columna <strong>de</strong> red, o<br />

entradas y salidas <strong>de</strong> nodos para crear condiciones <strong>de</strong> tipo O. Al unir dos contactos<br />

mediante una conexión vertical, se conducirá señal cuando uno o ambos contactos<br />

reciban señal.<br />

Expan<strong>de</strong> la lógica horizontalmente en un escalón <strong>de</strong> una red Lad<strong>de</strong>r <strong>Logic</strong>.<br />

31007526 12/2006 1031


Conexiones<br />

10<strong>32</strong> 31007526 12/2006


Presentación<br />

SKP – Saltar re<strong>de</strong>s<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción SKP.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

167<br />

Apartado Página<br />

Descripción breve 1034<br />

Representación 1035<br />

31007526 12/2006 1033


SKP - Saltar re<strong>de</strong>s<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

funciones<br />

La instrucción SKP es estándar en todos los PLC. Debe utilizarse con precaución.<br />

La instrucción SKP se utiliza para reducir el tiempo <strong>de</strong> ciclo. Para hacerlo no se<br />

ejecuta una parte <strong>de</strong> la lógica. Esta instrucción hace que el ciclo lógico salte<br />

<strong>de</strong>terminadas re<strong>de</strong>s <strong>de</strong>l programa.<br />

La función SKP pue<strong>de</strong> utilizarse para<br />

ignorar secuencias <strong>de</strong>l programa rara vez utilizadas;<br />

crear subrutinas.<br />

La instrucción SKP permite saltar un número especificado <strong>de</strong> re<strong>de</strong>s en un programa<br />

<strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong>. Cuando se activa, la operación SKP se realiza en cada ciclo. El<br />

resto <strong>de</strong> la red en la que aparece la instrucción cuenta como el inicio <strong>de</strong>l número<br />

especificado <strong>de</strong> re<strong>de</strong>s que se van a saltar. La CPU continúa saltando re<strong>de</strong>s hasta<br />

que el número total <strong>de</strong> re<strong>de</strong>s saltadas sea igual que el número especificado en el<br />

bloque <strong>de</strong> instrucciones o hasta alcanzar el límite <strong>de</strong>l segmento. Una operación<br />

SKP no pue<strong>de</strong> superar el límite <strong>de</strong> un segmento.<br />

Una instrucción SKP sólo se pue<strong>de</strong> activar si se especifica en el editor <strong>de</strong><br />

configuración <strong>de</strong>l PLC que los saltos estén permitidos. SKP es una instrucción que<br />

cuenta con un nodo superior.<br />

ADVERTENCIA<br />

ENTRADAS Y SALIDAS SALTADAS<br />

Al utilizar la instrucción SKP, vigile las entradas y salidas saltadas. SKP es una<br />

instrucción peligrosa que <strong>de</strong>be utilizarse con mucho cuidado. Si, <strong>de</strong> forma<br />

inadvertida, se salta (o no) alguna entrada o salida que normalmente ejerce un<br />

control, pue<strong>de</strong>n producirse riesgos personales y materiales.<br />

Si no se respetan estas precauciones pue<strong>de</strong>n producirse graves lesiones,<br />

daños materiales o incluso la muerte.<br />

AVISO<br />

LECTURA DE VALORES MIENTRAS SE REALIZAN CAMBIOS<br />

Utilice los registros 3xxxx y 4xxxx con precaución. El procesador pue<strong>de</strong> leer el<br />

valor mientras esté cambiando.<br />

Si no se respetan estas instrucciones, pue<strong>de</strong>n producirse daños corporales<br />

o materiales.<br />

1034 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

N.º <strong>de</strong> re<strong>de</strong>s<br />

saltadas<br />

(nodo superior)<br />

SKP - Saltar re<strong>de</strong>s<br />

31007526 12/2006 1035<br />

SKP<br />

n.º <strong>de</strong> re<strong>de</strong>s<br />

saltadas<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

1x Ninguno ON inicia una operación <strong>de</strong> salto <strong>de</strong> red<br />

cuando transfiere señal. Mientras la entrada<br />

está activa, se realiza una operación SKP en<br />

cada ciclo.<br />

3x, 4x INT, UINT<br />

WORD<br />

El valor introducido en el nodo indica el<br />

número <strong>de</strong> re<strong>de</strong>s que hay que saltar.<br />

El valor pue<strong>de</strong>:<br />

Especificarse <strong>de</strong> forma explícita como una<br />

constante (entero) en el rango <strong>de</strong> 1 a 999.<br />

Almacenarse en un registro <strong>de</strong> entrada<br />

3xxxx.<br />

Almacenarse en un registro en espera<br />

4xxxx.<br />

El valor <strong>de</strong>l nodo incluye la red que contiene la<br />

instrucción SKP. Aquellas zonas <strong>de</strong> nodos <strong>de</strong><br />

la red en la que resi<strong>de</strong> la instrucción SKP que<br />

aún no se hayan ejecutado se saltarán; esta<br />

red cuenta como una <strong>de</strong> las especificadas<br />

para saltar. La CPU continuará saltando re<strong>de</strong>s<br />

hasta que el número total <strong>de</strong> re<strong>de</strong>s saltadas<br />

sea igual al valor especificado.


SKP - Saltar re<strong>de</strong>s<br />

1036 31007526 12/2006


Presentación<br />

SRCH: Buscar<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción SRCH.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

168<br />

Apartado Página<br />

Descripción breve 1038<br />

Representación 1039<br />

Descripción <strong>de</strong> los parámetros 1041<br />

31007526 12/2006 1037


SRCH: Buscar<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

La instrucción SRCH busca en una tabla <strong>de</strong> fuente los registros <strong>de</strong> un <strong>de</strong>terminado<br />

mo<strong>de</strong>lo <strong>de</strong> bits.<br />

1038 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

iniciar búsqueda en el<br />

registro <strong>de</strong> pointer<br />

Longitud: 1–100 registros<br />

tabla <strong>de</strong><br />

fuente<br />

pointer<br />

longitud <strong>de</strong><br />

la tabla<br />

SRCH<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

activa<br />

Significado<br />

congruencia encontrada<br />

Entrada superior 0x, 1x Ninguno ON = inicia la búsqueda.<br />

Entrada intermedia 0x, 1x Ninguno OFF = busca <strong>de</strong>s<strong>de</strong> el principio.<br />

ON = busca a partir <strong>de</strong> la última<br />

congruencia.<br />

Tabla <strong>de</strong> fuente<br />

(nodo superior)<br />

Pointer<br />

(véase p. 1041)<br />

(nodo intermedio)<br />

Longitud <strong>de</strong> tabla<br />

(nodo inferior)<br />

3x, 4x INT, UINT,<br />

WORD<br />

SRCH: Buscar<br />

Tabla <strong>de</strong> fuente en la que se va a realizar<br />

la búsqueda.<br />

4x INT, UINT Pointer en la tabla <strong>de</strong> fuente.<br />

INT, UINT Número <strong>de</strong> registros en la tabla <strong>de</strong> fuente;<br />

rango: 1...100<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida intermedia 0x Ninguno ON = se ha encontrado una congruencia.<br />

31007526 12/2006 1039


SRCH: Buscar<br />

Ejemplo <strong>de</strong><br />

SRCH<br />

En el siguiente ejemplo, <strong>de</strong> busca una tabla <strong>de</strong> fuente que contiene cinco registros<br />

(40421...40425) para un mo<strong>de</strong>lo <strong>de</strong> bits específico. El registro <strong>de</strong> pointer (40430)<br />

indica que el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong>seado se guarda en el registro 40431 y, como se<br />

muestra, el registro contiene un valor <strong>de</strong> bit <strong>de</strong> 3.333.<br />

10001<br />

10002<br />

40421<br />

40430<br />

SRCH<br />

00005<br />

00142<br />

40430<br />

40500<br />

BLKM<br />

0001<br />

tabla <strong>de</strong> fuente<br />

40421<br />

40422<br />

40423<br />

40424<br />

40425<br />

contenido<br />

<strong>de</strong>l registro<br />

= 1.111<br />

= 2.222<br />

= 3.333<br />

= 4.444<br />

= 5.555<br />

pointer<br />

40430<br />

contenido<br />

<strong>de</strong>l registro<br />

40431 = 3.333<br />

En cada ciclo don<strong>de</strong> el contacto T.P. 10001 pasa <strong>de</strong> ON a OFF, se busca en la tabla<br />

<strong>de</strong> fuente un mo<strong>de</strong>lo <strong>de</strong> bits equivalente al valor 3.333. Cuando se encuentra la<br />

congruencia, la salida intermedia transfiere alimentación a la bobina 00142.<br />

Si el contacto normalmente abierto (N.A.) 10002 está inactivo al encontrar la<br />

congruencia en el registro 40423, la instrucción SRCH conectará la bobina 00142<br />

para un ciclo. A continuación, iniciará <strong>de</strong> nuevo la búsqueda en el siguiente ciclo en<br />

la parte superior <strong>de</strong> la tabla <strong>de</strong> fuente (registro 40421). Si el contacto 10002 está<br />

activo, la instrucción SRCH conectará la bobina 00142 para un ciclo e iniciará la<br />

búsqueda en el registro 40424.<br />

Dado que la entrada superior es un contacto <strong>de</strong> T.P., en cualquier ciclo en el que<br />

no se transmita alimentación a la entrada superior, el valor <strong>de</strong> pointer se borrará.<br />

Aquí utilizamos una instrucción BLKM para guardar el valor <strong>de</strong> pointer en el registro<br />

40500.<br />

1040 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Pointer (asiento<br />

intermedio)<br />

SRCH: Buscar<br />

El registro 4x introducido en el asiento intermedio será el pointer <strong>de</strong> la tabla <strong>de</strong><br />

fuente. Señala el registro <strong>de</strong> fuente que contiene el mismo valor que el almacenado<br />

en el siguiente registro contiguo <strong>de</strong>spués <strong>de</strong>l pointer; es <strong>de</strong>cir, si el registro <strong>de</strong>l<br />

pointer es 400015, el registro 400016 contendrá un valor que la instrucción SRCH<br />

comparará en la tabla <strong>de</strong> fuente.<br />

31007526 12/2006 1041


SRCH: Buscar<br />

1042 31007526 12/2006


Presentación<br />

STAT: Estado<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción STAT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

169<br />

Apartado Página<br />

Descripción breve 1044<br />

Representación 1045<br />

Descripción <strong>de</strong> los parámetros 1047<br />

Descripción <strong>de</strong> la tabla <strong>de</strong> estado 1048<br />

Estado <strong>de</strong>l PLC: palabras 1 -11 <strong>de</strong> Quantum y Momemtum 1052<br />

Estado funcional <strong>de</strong> módulo <strong>de</strong> E/S: palabras 12 - 20 para Momentum 1057<br />

Estado funcional <strong>de</strong> módulo <strong>de</strong> E/S: palabras 12 - 171 para Quantum 1059<br />

Estado <strong>de</strong> comunicaciones: palabras 172 - 277 para Quantum 1061<br />

Estado <strong>de</strong>l PLC: palabras 1 - 11 para Compact TSX y Atrium 1066<br />

Estado funcional <strong>de</strong> módulo <strong>de</strong> E/S: palabras 12 -15 para Compact TSX 1069<br />

Estado <strong>de</strong> funcionamiento global y estado <strong>de</strong> reintentos <strong>de</strong> comunicaciones:<br />

palabras 182 a 184 para Compact TSX<br />

1070<br />

31007526 12/2006 1043


STAT: Estado<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción STAT acce<strong>de</strong> a una cantidad <strong>de</strong> palabras especificada en una tabla<br />

<strong>de</strong> estado (véase Descripción <strong>de</strong> la tabla <strong>de</strong> estado, p. 1048) en la memoria <strong>de</strong>l<br />

sistema <strong>de</strong>l PLC. Aquí se <strong>de</strong>posita la información <strong>de</strong> diagnóstico vital sobre el<br />

estado <strong>de</strong> funcionamiento <strong>de</strong>l PLC y <strong>de</strong> sus estaciones remotas <strong>de</strong> E/S.<br />

En dicha información se incluye lo siguiente:<br />

Estado <strong>de</strong>l PLC<br />

Estados <strong>de</strong> error posibles en los módulos <strong>de</strong> E/S<br />

Estado <strong>de</strong> la comunicación Entrada-PLC-Salida<br />

1044 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

<strong>de</strong>stino <strong>de</strong> control entrada superior<br />

<strong>de</strong>stino<br />

longitud <strong>de</strong><br />

STAT<br />

STAT: Estado<br />

31007526 12/2006 1045


STAT: Estado<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Destino<br />

(véase p. 1047)<br />

(nodo superior)<br />

Longitud<br />

(véase p. 1047)<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = copia la cantidad <strong>de</strong> palabras<br />

especificadas <strong>de</strong>s<strong>de</strong> la tabla <strong>de</strong> estado.<br />

0x, 4x INT, UINT,<br />

BOOL,<br />

WORD<br />

Primera posición en el bloque <strong>de</strong> <strong>de</strong>stino.<br />

INT, UINT Cantidad <strong>de</strong> registros o palabras <strong>de</strong> 16<br />

bits en el bloque <strong>de</strong> <strong>de</strong>stino.<br />

El valor entero introducido en el nodo<br />

inferior especifica la longitud <strong>de</strong> la matriz,<br />

es <strong>de</strong>cir, el número <strong>de</strong> registros o palabras<br />

<strong>de</strong> 16 bits que hay en la matriz <strong>de</strong> datos.<br />

La longitud pue<strong>de</strong> variar entre 1 y 255 en<br />

una CPU <strong>de</strong> 16 bits y entre 1 y 600 en una<br />

CPU <strong>de</strong> 24 bits. Por ej., una longitud <strong>de</strong><br />

matriz <strong>de</strong> 200 indica 3.200 ubicaciones <strong>de</strong><br />

bits.<br />

Nota: Si se utilizan referencias 0xxxx<br />

como <strong>de</strong>stino, no se pue<strong>de</strong>n programar<br />

como bobinas; sólo como contactos que<br />

hagan referencia a los números <strong>de</strong><br />

bobina.<br />

(Para obtener información más <strong>de</strong>tallada<br />

relativa a longitud <strong>de</strong> tabla y PLC, consulte<br />

la sección Longitud (asiento inferior),<br />

p. 1047.)<br />

Salida superior 0x Ninguno ON = operación correcta.<br />

1046 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Modo <strong>de</strong><br />

funcionamiento<br />

Bloque <strong>de</strong><br />

<strong>de</strong>stino<br />

(asiento<br />

superior)<br />

Longitud<br />

(asiento inferior)<br />

STAT: Estado<br />

Con la instrucción STAT, pue<strong>de</strong> copiar algunas o todas las palabras <strong>de</strong> estado en<br />

un bloque <strong>de</strong> registros o en un bloque <strong>de</strong> referencias binarias contiguas.<br />

La copia al bloque STAT comienza siempre con la primera palabra en la tabla hasta<br />

la última palabra que le interese. Por ejemplo, si la tabla <strong>de</strong> estado tiene una<br />

longitud <strong>de</strong> 277 palabras y le interesan solamente las estadísticas contenidas en la<br />

palabra 11, necesitará copiar solamente las palabras 1 a 11, especificando una<br />

longitud <strong>de</strong> 11 en la instrucción STAT.<br />

El número <strong>de</strong> referencia introducido en el asiento superior es la primera posición en<br />

el bloque <strong>de</strong> <strong>de</strong>stino; es <strong>de</strong>cir, el bloque en el que se copiarán las palabras actuales<br />

<strong>de</strong> interés <strong>de</strong>s<strong>de</strong> la tabla <strong>de</strong> estado.<br />

En el asiento inferior (longitud) se especifica la cantidad <strong>de</strong> registros <strong>de</strong> salida o <strong>de</strong><br />

palabras <strong>de</strong> 16 bits en el bloque <strong>de</strong> <strong>de</strong>stino.<br />

Nota: Se recomienda no usar valores binarios en el asiento <strong>de</strong> <strong>de</strong>stino STAT,<br />

<strong>de</strong>bido al número excesivo necesario para contener la información <strong>de</strong> estado.<br />

El valor entero introducido en el asiento inferior especifica la cantidad <strong>de</strong> registros<br />

o palabras <strong>de</strong> 16 bits en el bloque <strong>de</strong> <strong>de</strong>stino en don<strong>de</strong> será escrita la información<br />

<strong>de</strong> estado actual.<br />

La longitud máxima permitida <strong>de</strong>pen<strong>de</strong>rá <strong>de</strong>l tipo <strong>de</strong> PLC en uso y <strong>de</strong>l tipo <strong>de</strong>l<br />

protocolo <strong>de</strong> comunicaciones <strong>de</strong> E/S utilizado.<br />

Para PLC 984A, 984B, o 984X Chassis Mount que utilicen el protocolo RIO S901,<br />

el rango disponible <strong>de</strong> tabla <strong>de</strong> estado <strong>de</strong>l sistema es <strong>de</strong> 1 a 75 palabras.<br />

Para PLC con CPU <strong>de</strong> 16 bits que utilicen el protocolo RIO S908, por ejemplo,<br />

los PLC 38x, 48x, and 68x Slot Mount, el rango disponible <strong>de</strong> la tabla <strong>de</strong> estado<br />

<strong>de</strong>l sistema es <strong>de</strong> 1 a 255.<br />

Para PLC con CPU <strong>de</strong> 24 bits que utilicen el protocolo RIO S908, por ejemplo,<br />

los PLC 78x Slot Mount, el rango disponible <strong>de</strong> la tabla <strong>de</strong> estado <strong>de</strong>l sistema es<br />

<strong>de</strong> 1 a 277.<br />

Para PLC Compact-984, el rango disponible <strong>de</strong> la tabla <strong>de</strong> estado <strong>de</strong>l sistema es<br />

<strong>de</strong> 1 a 184.<br />

Para PLC Modicon Micro, el rango disponible <strong>de</strong> la tabla <strong>de</strong> estado <strong>de</strong>l sistema<br />

es <strong>de</strong> 1 a 56.<br />

31007526 12/2006 1047


STAT: Estado<br />

Descripción <strong>de</strong> la tabla <strong>de</strong> estado<br />

Generalida<strong>de</strong>s La instrucción STAT se utiliza para visualizar el estado <strong>de</strong>l PLC y <strong>de</strong>l sistema <strong>de</strong> E/<br />

S en los sistemas Quantum (véase p. 1048), Atrium (véase p. 1051), Compact TSX<br />

(véase p. 1051) y Momentum (véase p. 1050).<br />

Los sistemas Quantum y Momentum utilizan las primeras 11 palabras <strong>de</strong> estado <strong>de</strong>l<br />

mismo modo; por su parte, los sistemas Compact TSX y Atrium también lo hacen<br />

<strong>de</strong> la misma forma. La siguiente información tiene un significado distinto para<br />

Quantum, Compact TSX y Momentum.<br />

Vista general <strong>de</strong><br />

Quantum<br />

Las 277 palabras <strong>de</strong> la tabla <strong>de</strong> estado están organizadas en tres secciones:<br />

Estado <strong>de</strong>l PLC (palabras 1 a 11) (véase p. 1052)<br />

Estado funcional <strong>de</strong>l módulo <strong>de</strong> E/S (palabras 12 a 171) (véase p. 1059)<br />

Estado funcional <strong>de</strong> las comunicaciones <strong>de</strong> E/S (palabras 172 a 277)<br />

(véase p. 1061)<br />

Palabras <strong>de</strong> la tabla <strong>de</strong> estado.<br />

Palabra<br />

<strong>de</strong>cimal<br />

Contenido <strong>de</strong> la palabra Palabra<br />

hexa<strong>de</strong>cimal<br />

1 Estado <strong>de</strong>l PLC 01<br />

2 Estado Hot Standby 02<br />

3 Estado <strong>de</strong>l PLC 03<br />

4 Estado RIO 04<br />

5 Estado <strong>de</strong> parada <strong>de</strong>l PLC 06<br />

6 Número <strong>de</strong> segmentos <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong> 06<br />

7 Pointer <strong>de</strong> final <strong>de</strong> lógica (EOL) 07<br />

8 Timeout y redundancia RIO 08<br />

9 Estado <strong>de</strong> mensajes ASCII 09<br />

10 Estado RUN/LOAD/DEBUG 0A<br />

11 No utilizada 0B<br />

12 Estación 1, bastidor 1 0C<br />

13 Estación 1, bastidor 2 0D<br />

. . . . . . . . . . . .<br />

16 Estación 1, bastidor 5 0F<br />

17 Estación 2, bastidor 1 10<br />

18 Estación 2, bastidor 2 11<br />

. . . . . . . . . . . .<br />

171 Estación <strong>32</strong>, bastidor 5 AB<br />

1048 31007526 12/2006


Palabra<br />

<strong>de</strong>cimal<br />

172 Código <strong>de</strong> error <strong>de</strong> arranque S908 AC<br />

173 Errores <strong>de</strong>l cable A AD<br />

174 Errores <strong>de</strong>l cable A AE<br />

175 Errores <strong>de</strong>l cable A AF<br />

176 Errores <strong>de</strong>l cable B B0<br />

178 Errores <strong>de</strong>l cable B B1<br />

178 Errores <strong>de</strong>l cable B B2<br />

179 Errores <strong>de</strong> comunicación global B3<br />

180 Errores <strong>de</strong> comunicación global B4<br />

181 Errores <strong>de</strong> comunicación global B5<br />

182 Estado <strong>de</strong> errores/funcionamiento <strong>de</strong> estación 1 y contadores <strong>de</strong><br />

reintentos (en los controladores Compact TSX 984) (primera<br />

palabra)<br />

B6<br />

183 Estado <strong>de</strong> errores/funcionamiento <strong>de</strong> estación 1 y contadores <strong>de</strong><br />

reintentos (en los controladores Compact TSX 984) (segunda<br />

palabra)<br />

184 Estado <strong>de</strong> errores/funcionamiento <strong>de</strong> estación 1 y contadores <strong>de</strong><br />

reintentos (en los controladores Compact TSX 984) (tercera<br />

palabra)<br />

185 Estado <strong>de</strong> errores/funcionamiento <strong>de</strong> estación 2 y contadores <strong>de</strong><br />

reintentos (en los controladores Compact TSX 984) (primera<br />

palabra)<br />

STAT: Estado<br />

Contenido <strong>de</strong> la palabra Palabra<br />

hexa<strong>de</strong>cimal<br />

. . . . . . . . . . . .<br />

275 Estado <strong>de</strong> errores/funcionamiento <strong>de</strong> estación <strong>32</strong> y contadores<br />

<strong>de</strong> reintentos (en los controladores Compact TSX 984) (primera<br />

palabra)<br />

113<br />

276 Estado <strong>de</strong> errores/funcionamiento <strong>de</strong> estación <strong>32</strong> y contadores<br />

<strong>de</strong> reintentos (en los controladores Compact TSX 984) (segunda<br />

palabra)<br />

277 Estado <strong>de</strong> errores/funcionamiento <strong>de</strong> estación <strong>32</strong> y contadores<br />

<strong>de</strong> reintentos (en los controladores Compact TSX 984) (tercera<br />

palabra)<br />

31007526 12/2006 1049<br />

B7<br />

B8<br />

B9<br />

114<br />

115


STAT: Estado<br />

Vista general <strong>de</strong><br />

Momentum<br />

Las 20 palabras <strong>de</strong> la tabla <strong>de</strong> estado están organizadas en dos secciones:<br />

Estado <strong>de</strong>l PLC (palabras 1 a 11) (véase p. 1052)<br />

Estado funcional <strong>de</strong>l módulo <strong>de</strong> E/S (palabras 12 a 20) (véase p. 1057)<br />

Palabras <strong>de</strong> la tabla <strong>de</strong> estado.<br />

Palabra<br />

<strong>de</strong>cimal<br />

Contenido <strong>de</strong> la palabra Palabra<br />

hexa<strong>de</strong>cimal<br />

1 Estado <strong>de</strong>l PLC 01<br />

2 Estado Hot Standby 02<br />

3 Estado <strong>de</strong>l PLC 03<br />

4 Estado RIO 04<br />

5 Estado <strong>de</strong> parada <strong>de</strong>l PLC 06<br />

6 Número <strong>de</strong> segmentos <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong> 06<br />

7 Pointer <strong>de</strong> final <strong>de</strong> lógica (EOL) 07<br />

8 Timeout y redundancia RIO 08<br />

9 Estado <strong>de</strong> mensajes ASCII 09<br />

10 Estado RUN/LOAD/DEBUG 0A<br />

11 No utilizada 0B<br />

12 Estado funcional <strong>de</strong> módulos <strong>de</strong> E/S locales Momentum 0C<br />

13 Estado funcional <strong>de</strong> módulo <strong>de</strong> bus <strong>de</strong> E/S 0D<br />

14 Estado funcional <strong>de</strong> módulo <strong>de</strong> bus <strong>de</strong> E/S 0E<br />

15 Estado funcional <strong>de</strong> módulo <strong>de</strong> bus <strong>de</strong> E/S 0F<br />

16 Estado funcional <strong>de</strong> módulo <strong>de</strong> bus <strong>de</strong> E/S 10<br />

17 Estado funcional <strong>de</strong> módulo <strong>de</strong> bus <strong>de</strong> E/S 11<br />

18 Estado funcional <strong>de</strong> módulo <strong>de</strong> bus <strong>de</strong> E/S 12<br />

19 Estado funcional <strong>de</strong> módulo <strong>de</strong> bus <strong>de</strong> E/S 13<br />

20 Estado funcional <strong>de</strong> módulo <strong>de</strong> bus <strong>de</strong> E/S 14<br />

1050 31007526 12/2006


Vista general <strong>de</strong><br />

Compact TSX y<br />

Atrium<br />

STAT: Estado<br />

Las 184 palabras <strong>de</strong> la tabla <strong>de</strong> estado están organizadas en tres secciones:<br />

Estado <strong>de</strong>l PLC (palabras 1 a 11) (véase p. 1066)<br />

Estado funcional <strong>de</strong>l módulo <strong>de</strong> E/S (palabras 12 a 15) (véase p. 1069)<br />

Sin utilizar (16 a 181)<br />

Estado funcional global y estado <strong>de</strong> reintentos <strong>de</strong> comunicaciones (palabras 182<br />

a 184) (véase p. 1070)<br />

Palabras <strong>de</strong> la tabla <strong>de</strong> estado.<br />

Palabra<br />

<strong>de</strong>cimal<br />

Contenido <strong>de</strong> la palabra Palabra<br />

hexa<strong>de</strong>cimal<br />

1 Estado <strong>de</strong> la CPU 01<br />

2 No utilizada 02<br />

3 Estado <strong>de</strong>l PLC 03<br />

4 No utilizada 04<br />

5 Estado <strong>de</strong> parada <strong>de</strong> la CPU 06<br />

6 Número <strong>de</strong> segmentos <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong> 06<br />

7 Pointer <strong>de</strong> final <strong>de</strong> lógica (EOL) 07<br />

8 No utilizada 08<br />

9 No utilizada 09<br />

10 Estado RUN/LOAD/DEBUG 0A<br />

11 No utilizada 0B<br />

12 Bastidor 1, estado <strong>de</strong> funcionamiento <strong>de</strong> E/S 0C<br />

13 Bastidor 2, estado <strong>de</strong> funcionamiento <strong>de</strong> E/S 0D<br />

14 Bastidor 3, estado <strong>de</strong> funcionamiento <strong>de</strong> E/S 0E<br />

15 Bastidor 4, estado <strong>de</strong> funcionamiento <strong>de</strong> E/S 0F<br />

16 ... 181 No utilizadas 10 ... B5<br />

182 Estado <strong>de</strong> funcionamiento B6<br />

183 Contador <strong>de</strong> errores <strong>de</strong> E/S B7<br />

184 Contador <strong>de</strong> reintentos <strong>de</strong> bus PAB B8<br />

31007526 12/2006 1051


STAT: Estado<br />

Estado <strong>de</strong>l PLC: palabras 1 -11 <strong>de</strong> Quantum y Momemtum<br />

Estado <strong>de</strong>l PLC<br />

(palabra 1)<br />

Estado<br />

Hot Standby<br />

(palabra 2)<br />

La palabra 1 representa los siguientes aspectos <strong>de</strong>l estado <strong>de</strong>l PLC:<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 5 No utilizados.<br />

6 1 = habilitar ciclo constante.<br />

7 1 = habilitar retardo <strong>de</strong> ciclo único.<br />

8 1 = lógica <strong>de</strong> usuario <strong>de</strong> 16 bits.<br />

0 = lógica <strong>de</strong> usuario <strong>de</strong> 24 bits.<br />

9 1 = alimentación <strong>de</strong> CA conectada.<br />

10 1 = señalización RUN apagada.<br />

11 1 = protección <strong>de</strong> memoria inactiva.<br />

12 1 = fallo <strong>de</strong> la batería.<br />

13 - 16 No utilizados.<br />

La palabra 2 muestra el estado Hot Standby <strong>de</strong> los PLC 984 que utilizan módulos<br />

Hot Standby S911/R911:<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = los módulos S911/R911 están presentes y funcionan correctamente.<br />

2 - 10 No utilizados.<br />

11 0 = biestable <strong>de</strong>l PLC establecido en A.<br />

1 = biestable <strong>de</strong>l PLC establecido en B.<br />

12 0 = los PLC tienen una lógica congruente.<br />

1 = los PLC no tienen una lógica congruente.<br />

13, 14 Estado <strong>de</strong>l sistema remoto:<br />

0 1 = Off line (1 <strong>de</strong>c).<br />

1 0 = primario (2 <strong>de</strong>c).<br />

1 1 = standby (3 <strong>de</strong>c).<br />

15, 16 Estado <strong>de</strong>l sistema local:<br />

0 1 = Off line (1 <strong>de</strong>c).<br />

1 0 = primario (2 <strong>de</strong>c).<br />

1 1 = standby (3 <strong>de</strong>c).<br />

1052 31007526 12/2006


Estado <strong>de</strong>l PLC<br />

(palabra 3)<br />

Estado RIO<br />

(palabra 4)<br />

Estado<br />

<strong>de</strong> parada <strong>de</strong>l<br />

PLC (palabra 5)<br />

La palabra 3 muestra más aspectos <strong>de</strong>l estado <strong>de</strong>l PLC.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = primer ciclo.<br />

2 1 = comando <strong>de</strong> inicio pendiente.<br />

3 1 = tiempo <strong>de</strong> ciclo constante excedido.<br />

4 1 = estado in<strong>de</strong>finido existente.<br />

5 - 12 No utilizados.<br />

13 - 16 Ciclos únicos.<br />

La palabra 4 se utiliza para la información IOP.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = IOP no válido.<br />

2 1 = timeout <strong>de</strong> IOP.<br />

3 1 = bucle <strong>de</strong> prueba <strong>de</strong> IOP.<br />

4 1 = fallo <strong>de</strong> memoria <strong>de</strong> IOP.<br />

5 - 12 No utilizados.<br />

13 - 16 00 = IO no ha respondido.<br />

01 = sin respuesta.<br />

02 = error en el bucle <strong>de</strong> prueba.<br />

AVISO<br />

STAT: Estado<br />

Utilización <strong>de</strong> un PLC Quantum o 984-684E/785E<br />

En un PLC Quantum o 984-684E/785E, el bit 15 <strong>de</strong> la palabra 5 no se <strong>de</strong>fine<br />

nunca. Estos PLC se pue<strong>de</strong>n iniciar y hacer funcionar con las bobinas bloqueadas<br />

en el modo RUN (optimizado). Del mismo modo, todos los bits <strong>de</strong> la palabra 5<br />

<strong>de</strong>ben establecerse en 0 cuando uno <strong>de</strong> estos PLC esté en funcionamiento.<br />

Si no se respetan estas instrucciones, pue<strong>de</strong>n producirse daños corporales<br />

o materiales.<br />

31007526 12/2006 1053


STAT: Estado<br />

La palabra 5 muestra las condiciones <strong>de</strong> estado <strong>de</strong> parada <strong>de</strong>l PLC.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = parada <strong>de</strong>l puerto periférico.<br />

2 Error <strong>de</strong> paridad <strong>de</strong> memoria extendida (para los PLC montados en chasis) o<br />

error traffic cop/S908 (para otros PLC).<br />

Si el bit es = 1 en un PLC 984B, se habrá <strong>de</strong>tectado un error en la memoria<br />

extendida; el PLC funcionará, pero la salida <strong>de</strong> error estará activa para las<br />

funciones XMRD/XMWT.<br />

Si el bit es = 1 para cualquier otro PLC que no esté montado en chasis, se<br />

habrá <strong>de</strong>tectado un error <strong>de</strong> traffic cop o faltará el S908 en una configuración <strong>de</strong><br />

estaciones múltiples.<br />

3 1= PLC en estado in<strong>de</strong>finido.<br />

4 1 = intervención periférica no válida<br />

5 1 = administrador <strong>de</strong> segmentos no válido.<br />

6 1 = el inicio <strong>de</strong>l participante no ha iniciado el segmento.<br />

7 1 = la prueba <strong>de</strong> memoria <strong>de</strong> señal ha fallado.<br />

8 1 = traffic cop no válido.<br />

9 1 = temporizador Watchdog expirado.<br />

10 1 = error <strong>de</strong> reloj en tiempo real.<br />

11 Error en la resolución <strong>de</strong> la lógica <strong>de</strong> la CPU (para PLC montados en chasis) o<br />

Tabla <strong>de</strong> uso <strong>de</strong> bobina (para otros PLC).<br />

Si el bit es = 1 en un PLC montado en chasis, el diagnóstico interno habrá<br />

<strong>de</strong>tectado un fallo en la CPU.<br />

Si el bit es = 1 en cualquier otro PLC que no sea <strong>de</strong> montaje en chasis, la Tabla<br />

<strong>de</strong> uso <strong>de</strong> bobina no presentará congruencia con las bobinas utilizadas en la<br />

lógica <strong>de</strong> aplicación.<br />

12 1 = fallo <strong>de</strong> IOP.<br />

13 1 = participante no válido.<br />

14 1 = suma <strong>de</strong> control lógica.<br />

15 1 = bobina bloqueada en modo RUN (véase el Aviso siguiente).<br />

16 1 = configuración no válida.<br />

1054 31007526 12/2006


Estado<br />

<strong>de</strong> parada <strong>de</strong>l<br />

PLC (palabra 6)<br />

Estado<br />

<strong>de</strong> parada <strong>de</strong>l<br />

PLC (palabra 7)<br />

Timeout y<br />

redundancia RIO<br />

(palabra 8)<br />

Estado <strong>de</strong><br />

mensajes ASCII<br />

(palabra 9)<br />

STAT: Estado<br />

La palabra 6 muestra la cantidad <strong>de</strong> segmentos en Lad<strong>de</strong>r <strong>Logic</strong>; se muestra un<br />

número binario.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 16 Número <strong>de</strong> segmentos (indicado en forma <strong>de</strong> número <strong>de</strong>cimal).<br />

La palabra 7 muestra la dirección <strong>de</strong>l pointer <strong>de</strong> final <strong>de</strong> lógica (EOL).<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 16 Dirección <strong>de</strong>l pointer EOL.<br />

La palabra 8 utiliza sus cuatro bits <strong>de</strong> menor valor para mostrar la constante <strong>de</strong><br />

timeout <strong>de</strong> E/S remotas.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 12 No utilizados.<br />

13 - 16 Constante <strong>de</strong> timeout RIO.<br />

La palabra 9 utiliza sus cuatro bits <strong>de</strong> menor valor para mostrar el estado <strong>de</strong> los<br />

mensajes ASCII.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 12 No utilizados.<br />

13 1 = discordancia entre número <strong>de</strong> mensajes y pointers.<br />

14 1 = pointer <strong>de</strong> mensaje no válido.<br />

15 1 = mensaje no válido.<br />

16 1 = error <strong>de</strong> suma <strong>de</strong> control <strong>de</strong> mensajes.<br />

31007526 12/2006 1055


STAT: Estado<br />

Estado RUN/<br />

LOAD/DEBUG<br />

(palabra 10)<br />

La palabra 10 utiliza sus dos bits <strong>de</strong> menor valor para mostrar el estado RUN/LOAD/<br />

DEBUG.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 14 No utilizados.<br />

15, 15 0 0 = Debug (0 <strong>de</strong>c).<br />

0 1 = Run (1 <strong>de</strong>c).<br />

1 0 = Load (2 <strong>de</strong>c).<br />

Palabra 11 Esta palabra no se utiliza.<br />

1056 31007526 12/2006


Estado funcional <strong>de</strong> módulo <strong>de</strong> E/S: palabras 12 - 20 para Momentum<br />

Estado funcional<br />

<strong>de</strong> módulo <strong>de</strong> E/S<br />

Estado funcional<br />

<strong>de</strong> módulos <strong>de</strong><br />

E/S locales<br />

Momentum<br />

STAT: Estado<br />

Las palabras <strong>de</strong> estado 12 a 20 muestran el estado funcional <strong>de</strong>l módulo <strong>de</strong> E/S.<br />

Se reserva 1 palabra para cada uno en una estación local; se utilizan 8 palabras<br />

para representar el estado <strong>de</strong> funcionamiento <strong>de</strong> hasta 128 módulos <strong>de</strong> bus <strong>de</strong> E/S.<br />

La palabra 12 muestra el estado <strong>de</strong> funcionamiento <strong>de</strong>l módulo <strong>de</strong> E/S local<br />

Momentum.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = módulo local<br />

2 - 16 No utilizados<br />

31007526 12/2006 1057


STAT: Estado<br />

Estado funcional<br />

<strong>de</strong>l módulo <strong>de</strong><br />

bus <strong>de</strong> E/S<br />

Momentum<br />

Las palabras <strong>de</strong> 13 a 20 muestran el estado funcional <strong>de</strong> los módulos <strong>de</strong> bus <strong>de</strong> E/<br />

S Momentum como se indica.<br />

Palabra Módulos <strong>de</strong> bus <strong>de</strong> E/S<br />

13 1 ... 16<br />

14 17 ... <strong>32</strong><br />

15 33 ... 48<br />

16 49 ... 64<br />

17 65 ... 80<br />

18 81 ... 96<br />

19 97 ... 112<br />

20 113 ... 128<br />

Cada palabra muestra el estado funcional <strong>de</strong> módulo <strong>de</strong> bus <strong>de</strong> E/S Momentum.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = módulo 1<br />

2 1 = módulo 2<br />

3 1 = módulo 3<br />

4 1 = módulo 4<br />

5 1 = módulo 5<br />

6 1 = módulo 6<br />

7 1 = módulo 7<br />

8 1 = módulo 8<br />

9 1 = módulo 9<br />

10 1 = módulo 10<br />

11 1 = módulo 11<br />

12 1 = módulo 12<br />

13 1 = módulo 13<br />

14 1 = módulo 14<br />

15 1 = módulo 15<br />

16 1 = módulo 16<br />

1058 31007526 12/2006


Estado funcional <strong>de</strong> módulo <strong>de</strong> E/S: palabras 12 - 171 para Quantum<br />

Palabras <strong>de</strong><br />

estado RIO<br />

STAT: Estado<br />

Las palabras <strong>de</strong> estado 12 a 20 muestran el estado funcional <strong>de</strong>l módulo <strong>de</strong> E/S.<br />

Se reservan cinco palabras para cada una <strong>de</strong> las <strong>32</strong> estaciones, es <strong>de</strong>cir, una<br />

palabra por cada uno <strong>de</strong> hasta cinco bastidores posibles (cubierta protectora <strong>de</strong> E/<br />

S) en cada estación. Cada bastidor pue<strong>de</strong> contener hasta 11 módulos <strong>de</strong> E/S; los<br />

bits 1 a 11 <strong>de</strong> cada palabra representan el estado <strong>de</strong> funcionamiento <strong>de</strong>l módulo <strong>de</strong><br />

E/S asociado que hay en cada bastidor.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = slot 1<br />

2 1 = slot 2<br />

3 1 = slot 3<br />

4 1 = slot 4<br />

5 1 = slot 5<br />

6 1 = slot 6<br />

7 1 = slot 7<br />

8 1 = slot 8<br />

9 1 = slot 9<br />

10 1 = slot 10<br />

11 1 = slot 11<br />

12 1 = slot 12<br />

13 1 = slot 13<br />

14 1 = slot 14<br />

15 1 = slot 15<br />

16 1 = slot 16<br />

Para que un módulo <strong>de</strong> E/S pueda indicar un correcto funcionamiento <strong>de</strong>ben<br />

cumplirse cuatro condiciones:<br />

Se <strong>de</strong>be controlar el tráfico en el slot (traffic cop).<br />

El slot <strong>de</strong>be contener un módulo con la personalidad correcta.<br />

Deben existir unas comunicaciones válidas entre el módulo y la interfase RIO en<br />

las estaciones remotas.<br />

Debe haber unas comunicaciones válidas entre la interfase RIO en cada<br />

estación remota y el procesador <strong>de</strong> E/S <strong>de</strong>l PLC.<br />

31007526 12/2006 1059


STAT: Estado<br />

Palabras <strong>de</strong><br />

estado para los<br />

paneles <strong>de</strong><br />

operador MMI<br />

El estado <strong>de</strong> las <strong>32</strong> unida<strong>de</strong>s <strong>de</strong> paneles con botones y PanelMate <strong>de</strong> una red RIO<br />

también se pue<strong>de</strong> supervisar con una palabra <strong>de</strong> estado <strong>de</strong> funcionamiento <strong>de</strong> E/S.<br />

Los paneles con botones ocupan el slot 4 en un bastidor <strong>de</strong> E/S y se pue<strong>de</strong>n<br />

supervisar en el bit 4 <strong>de</strong> la palabra <strong>de</strong> estado apropiada. Un PanelMate en RIO<br />

ocupa el slot 1 en el bastidor 1 <strong>de</strong> la estación y se pue<strong>de</strong> supervisar en el bit 1 <strong>de</strong><br />

la primera palabra <strong>de</strong> estado <strong>de</strong> la estación.<br />

Nota: El estado <strong>de</strong> las comunicaciones <strong>de</strong> teclados ASCII se pue<strong>de</strong> supervisar con<br />

los códigos <strong>de</strong> error en los <strong>bloques</strong> ASCII READ/WRIT.<br />

1060 31007526 12/2006


Estado <strong>de</strong> comunicaciones: palabras 172 - 277 para Quantum<br />

STAT: Estado<br />

Estado DIO Las palabras <strong>de</strong> estado 172 a 277 contienen el estado <strong>de</strong> comunicaciones <strong>de</strong>l<br />

sistema <strong>de</strong> E/S. Las palabras 172 a 181 son palabras <strong>de</strong> estado global. Entre las<br />

restantes 96 palabras, se <strong>de</strong>stinan tres para cada estación (hasta <strong>32</strong> estaciones)<br />

<strong>de</strong>pendiendo <strong>de</strong>l tipo <strong>de</strong> PLC.<br />

La palabra 172 almacena el código <strong>de</strong> error <strong>de</strong> arranque <strong>de</strong> Quantum. Esta palabra<br />

es 0 mientras el sistema se encuentra en funcionamiento. Si se produce un error, el<br />

PLC no arrancará, sino que generará un código <strong>de</strong> estado <strong>de</strong> parada <strong>de</strong> 10 (palabra<br />

5 (véase p. 1053)).<br />

Códigos <strong>de</strong> error <strong>de</strong> arranque <strong>de</strong> Quantum.<br />

Código Error Significado (dón<strong>de</strong> se ha producido el error)<br />

01 BADTCLEN Longitud <strong>de</strong> traffic cop.<br />

02 BADLNKNUM Número <strong>de</strong> conexión <strong>de</strong> E/S remotas.<br />

03 BADNUMDPS Número <strong>de</strong> estaciones en Traffic Cop.<br />

04 BADTCSUM Suma <strong>de</strong> control <strong>de</strong> Traffic Cop.<br />

10 BADDDLEN Longitud <strong>de</strong>l <strong>de</strong>scriptor <strong>de</strong> estación.<br />

11 BADDRPNUM Número <strong>de</strong> estación <strong>de</strong> E/S.<br />

12 BADHUPTIM Tiempo <strong>de</strong> autonomía <strong>de</strong> estación.<br />

13 BADASCNUM Número <strong>de</strong> puerto ASCII.<br />

14 BADNUMODS Número <strong>de</strong> módulos en la estación.<br />

15 PRECONDRP Estación ya configurada.<br />

16 PRECONPRT Puerto ya configurado.<br />

17 TOOMNYOUT Más <strong>de</strong> 1.024 puntos <strong>de</strong> salida.<br />

18 TOOMNYINS Más <strong>de</strong> 1.024 puntos <strong>de</strong> entrada.<br />

20 BADSLTNUM Dirección <strong>de</strong>l slot <strong>de</strong>l módulo.<br />

21 BADRCKNUM Dirección <strong>de</strong>l bastidor <strong>de</strong>l módulo.<br />

22 BADOUTBC Número <strong>de</strong> bytes <strong>de</strong> salida.<br />

23 BADINBC Número <strong>de</strong> bytes <strong>de</strong> entrada.<br />

25 BADRF1MAP Primer número <strong>de</strong> referencia.<br />

26 BADRF2MAP Segundo número <strong>de</strong> referencia.<br />

27 NOBYTES Sin bytes <strong>de</strong> entrada ni salida.<br />

28 BADDISMAP El registro binario no está en el límite <strong>de</strong> 16 bits.<br />

30 BADODDOUT Módulo <strong>de</strong> salida impar no apareado.<br />

31 BADODDIN Módulo <strong>de</strong> entrada impar no apareado.<br />

<strong>32</strong> BADODDREF Referencia <strong>de</strong> módulo impar no congruente.<br />

31007526 12/2006 1061


STAT: Estado<br />

Estado <strong>de</strong>l<br />

cable A<br />

Código Error Significado (dón<strong>de</strong> se ha producido el error)<br />

33 BAD3X1XRF Referencia 1x <strong>de</strong>spués <strong>de</strong> registro 3x.<br />

34 BADDMYMOD Referencia <strong>de</strong> módulo dummy ya utilizada.<br />

35 NOT3XDMY El módulo 3x no es un dummy.<br />

36 NOT4XDMY El módulo 4x no es un dummy.<br />

40 DMYREAL1X Dummy, módulo 1x real.<br />

41 REALDMY1X Real, módulo 1x dummy.<br />

42 DMYREAL3X Dummy, módulo 3x real.<br />

43 REALDMY3X Real, módulo 3x dummy.<br />

Las palabras 173 a 175 son palabras <strong>de</strong> error <strong>de</strong>l cable A:<br />

Palabra 173.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 8 Cuentan los errores <strong>de</strong> trama.<br />

9 ... 16 Cuentan los <strong>de</strong>sbor<strong>de</strong>s <strong>de</strong>l receptor DMA.<br />

Palabra 174.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 8 Cuentan los errores <strong>de</strong>l receptor.<br />

9 ... 16 Cuentan las recepciones <strong>de</strong> estación no válidas.<br />

Palabra 175.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = trama <strong>de</strong>masiado corta.<br />

2 1 = sin final <strong>de</strong> trama.<br />

3 ... 12 No utilizados.<br />

13 1 = error CRC.<br />

14 1 = error <strong>de</strong> alineación.<br />

15 1 = error <strong>de</strong> <strong>de</strong>sbor<strong>de</strong>.<br />

16 No utilizado.<br />

1062 31007526 12/2006


Estado <strong>de</strong>l<br />

cable B<br />

Estado <strong>de</strong><br />

comunicación<br />

global (Palabras<br />

179 a 181)<br />

Las palabras 176 a 178 son palabras <strong>de</strong> error <strong>de</strong>l cable A:<br />

Palabra 176.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 8 Cuentan los errores <strong>de</strong> trama.<br />

9 ... 16 Cuentan los <strong>de</strong>sbor<strong>de</strong>s <strong>de</strong>l receptor DMA.<br />

Palabra 177.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 8 Cuentan los errores <strong>de</strong>l receptor.<br />

9 -...16 Cuentan las recepciones <strong>de</strong> estación no válidas.<br />

Palabra 178.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = trama <strong>de</strong>masiado corta.<br />

2 1 = sin final <strong>de</strong> trama.<br />

3 ... 12 No utilizados.<br />

13 1 = error CRC.<br />

14 1 = error <strong>de</strong> alineación.<br />

15 1 = error <strong>de</strong> <strong>de</strong>sbor<strong>de</strong>.<br />

16 No utilizado.<br />

La palabra 179 muestra el estado <strong>de</strong> comunicación global.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = estado <strong>de</strong> comunicaciones.<br />

2 1 = estado <strong>de</strong>l cable A.<br />

3 1 = estado <strong>de</strong>l cable B.<br />

4 No utilizado.<br />

5 ... 8 Contador <strong>de</strong> pérdidas <strong>de</strong> comunicaciones.<br />

9 ... 16 Contador acumulativo <strong>de</strong> reintentos.<br />

STAT: Estado<br />

31007526 12/2006 1063


STAT: Estado<br />

Estado <strong>de</strong> E/S<br />

remotas<br />

(palabras 182 a<br />

277)<br />

La palabra 180 es el contador acumulativo <strong>de</strong> errores globales <strong>de</strong>l cable A.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 8 Cuentan los errores <strong>de</strong>tectados.<br />

9 ... 162 Cuentan los casos en que no ha habido respuesta.<br />

La palabra 181 es el contador acumulativo <strong>de</strong> errores globales <strong>de</strong>l cable B:<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 8 Cuentan los errores <strong>de</strong>tectados.<br />

9 ... 162 Cuentan los casos en que no ha habido respuesta.<br />

Las palabras 182 a 277 se utilizan para <strong>de</strong>scribir el estado <strong>de</strong> las estaciones <strong>de</strong><br />

E/S remotas; se usan tres palabras <strong>de</strong> estado para cada estación.<br />

La primera palabra <strong>de</strong> cada grupo <strong>de</strong> tres muestra el estado <strong>de</strong> la comunicación<br />

en la estación correspondiente.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = estado funcional <strong>de</strong> las comunicaciones.<br />

2 1 = Cable A status«1 = estado <strong>de</strong>l cable A.<br />

3 1 = estado <strong>de</strong>l cable B.<br />

4 No utilizado.<br />

5 ... 8 Contador <strong>de</strong> pérdidas <strong>de</strong> comunicaciones.<br />

9 ... 16 Contador acumulativo <strong>de</strong> reintentos.<br />

La segunda palabra <strong>de</strong> cada grupo <strong>de</strong> tres es el contador acumulativo <strong>de</strong> errores<br />

<strong>de</strong>l cable A para la estación correspondiente.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 8 Hay al menos un error en las palabras 173 a 175.<br />

9 ... 162 Cuentan los casos en que no ha habido respuesta.<br />

1064 31007526 12/2006


STAT: Estado<br />

La tercera palabra <strong>de</strong> cada grupo <strong>de</strong> tres es el contador acumulativo <strong>de</strong> errores <strong>de</strong>l<br />

cable B para la estación correspondiente.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 8 Hay al menos un error en las palabras 176 a 178.<br />

9 ... 162 Cuentan los casos en que no ha habido respuesta.<br />

Nota: Para los PLC en los que la estación 1 está reservada para las E/S locales,<br />

las palabras <strong>de</strong> estado 182 a 184 se utilizan <strong>de</strong>l siguiente modo.<br />

La palabra 182 muestra el estado <strong>de</strong> la estación local.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = todos los módulos funcionan correctamente.<br />

2 ... 8 Siempre 0.<br />

9 ... 162 Número <strong>de</strong> veces que un módulo ha funcionado <strong>de</strong> forma incorrecta; el contador<br />

da la vuelta al llegar a 255.<br />

La palabra 183 es un contador <strong>de</strong> errores <strong>de</strong> 16 bits, que indica el número <strong>de</strong> veces<br />

que se ha accedido al módulo y se ha comprobado que funciona incorrectamente.<br />

Da la vuelta al llegar a 65.535.<br />

La palabra 184 es un contador <strong>de</strong> errores <strong>de</strong> 16 bits, que indica el número <strong>de</strong> veces<br />

que se ha producido un error al acce<strong>de</strong>r al módulo <strong>de</strong> E/S. Da la vuelta al llegar a<br />

65.535.<br />

31007526 12/2006 1065


STAT: Estado<br />

Estado <strong>de</strong>l PLC: palabras 1 - 11 para Compact TSX y Atrium<br />

Estado <strong>de</strong> la CPU<br />

(palabra 1)<br />

La palabra 1 representa los siguientes aspectos <strong>de</strong>l estado <strong>de</strong> la CPU.<br />

Palabra 2 Esta palabra no se utiliza.<br />

Estado <strong>de</strong>l PLC<br />

(palabra 3)<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 5 No utilizados<br />

6 1 = habilitar ciclo constante<br />

7 1 = habilitar retardo <strong>de</strong> ciclo único<br />

8 1 = lógica <strong>de</strong> aplicación <strong>de</strong> 16 bits<br />

0 = lógica <strong>de</strong> aplicación <strong>de</strong> 24 bits<br />

9 1 = alimentación <strong>de</strong> CA conectada<br />

10 1 = señalización RUN apagada<br />

11 1 = protección <strong>de</strong> memoria inactiva<br />

12 1 = fallo <strong>de</strong> la batería<br />

13 - 16 No utilizados<br />

La palabra 3 muestra aspectos <strong>de</strong>l estado <strong>de</strong>l PLC.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = primer ciclo<br />

2 1 = comando <strong>de</strong> inicio pendiente<br />

3 1 = el tiempo <strong>de</strong> ciclo ha excedido el <strong>de</strong>stino <strong>de</strong> ciclo constante<br />

4 1 = estado in<strong>de</strong>finido existente<br />

5 - 12 No utilizados<br />

13 - 16 Ciclos únicos<br />

Palabra 4 Esta palabra no se utiliza.<br />

1066 31007526 12/2006


Estado <strong>de</strong> parada<br />

<strong>de</strong> la CPU<br />

(palabra 5)<br />

Número <strong>de</strong><br />

segmentos <strong>de</strong><br />

programa<br />

(palabra 6)<br />

La palabra 5 muestra las condiciones <strong>de</strong> estado <strong>de</strong> parada <strong>de</strong> la CPU.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = parada <strong>de</strong>l puerto periférico<br />

2 1 = error <strong>de</strong> paridad XMEM<br />

3 1 = estado in<strong>de</strong>finido<br />

4 1 = intervención periférica no válida<br />

5 1 = administrador <strong>de</strong> segmentos no válido<br />

6 1 = sin inicio <strong>de</strong> red (SON) al comenzar un segmento<br />

7 1 = la prueba <strong>de</strong> memoria <strong>de</strong> señal ha fallado<br />

8 1 = sin final <strong>de</strong> lógica (EOL), (lista <strong>de</strong> componentes no válida)<br />

9 1 = el temporizador Watchdog ha expirado<br />

10 1 = error <strong>de</strong>l reloj en tiempo real<br />

11 1 = fallo <strong>de</strong> CPU<br />

12 No utilizados<br />

13 1 = participante no válido en Lad<strong>de</strong>r <strong>Logic</strong><br />

14 1 = error <strong>de</strong> suma <strong>de</strong> control lógica<br />

1 1 = bobina bloqueada en modo RUN<br />

16 1 = instalación <strong>de</strong> PLC incorrecta<br />

STAT: Estado<br />

La palabra 6 muestra el número <strong>de</strong> segmentos en Lad<strong>de</strong>r <strong>Logic</strong>; se muestra un<br />

número binario. Esta palabra se confirma durante el arranque para que sea el<br />

número <strong>de</strong> participantes EOS (DOIO) más 1 (para el final <strong>de</strong> participantes lógicos);<br />

si no es verda<strong>de</strong>ra, se establecerá un código <strong>de</strong> parada, haciendo que se apague<br />

la luz <strong>de</strong> marcha.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 16 Número <strong>de</strong> segmentos <strong>de</strong>l programa Lad<strong>de</strong>r <strong>Logic</strong> actual (expresado como un<br />

número <strong>de</strong>cimal).<br />

31007526 12/2006 1067


STAT: Estado<br />

Dirección <strong>de</strong>l<br />

pointer <strong>de</strong> final<br />

<strong>de</strong> lógica<br />

(palabra 7)<br />

Palabra 8,<br />

palabra 9<br />

Estado RUN/<br />

LOAD/DEBUG<br />

(palabra 10)<br />

La palabra 7 muestra la dirección <strong>de</strong>l pointer <strong>de</strong> final <strong>de</strong> lógica (EOL).<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 - 16 Dirección <strong>de</strong>l pointer EOL<br />

Estas palabras no se utilizan.<br />

La palabra 10 utiliza sus dos bits <strong>de</strong> menor valor para mostrar el estado RUN/LOAD/<br />

DEBUG.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 14 No utilizados<br />

15, 16 0 0 = Debug (0 <strong>de</strong>c)<br />

0 1 = Run (1 <strong>de</strong>c)<br />

1 0 = Load (2 <strong>de</strong>c)<br />

Palabra 11 Esta palabra no se utiliza.<br />

1068 31007526 12/2006


Estado funcional <strong>de</strong> módulo <strong>de</strong> E/S: palabras 12 -15 para Compact TSX<br />

Estado funcional<br />

<strong>de</strong> módulos<br />

<strong>de</strong> E/S<br />

Compact TSX<br />

STAT: Estado<br />

Las palabras 12 a 15 se utilizan para representar el estado <strong>de</strong> funcionamiento <strong>de</strong><br />

los módulos <strong>de</strong> E/S A120 en los cuatro bastidores.<br />

Palabra Nº <strong>de</strong> bastidor<br />

12 1<br />

13 2<br />

14 3<br />

15 4<br />

Cada palabra contiene el estado <strong>de</strong> funcionamiento <strong>de</strong> hasta cinco módulos <strong>de</strong> E/S<br />

A120. El bit <strong>de</strong> mayor valor (más a la izquierda) representa el estado <strong>de</strong>l módulo en<br />

el slot 1 <strong>de</strong>l bastidor.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = slot 1<br />

2 1 = slot 2<br />

3 1 = slot 3<br />

4 1 = slot 4<br />

5 1 = slot 5<br />

6 ... 16 No utilizados.<br />

Si un módulo tiene una asignación <strong>de</strong> E/S y está activo, el bit tendrá un valor <strong>de</strong> "1".<br />

Si un módulo está inactivo o no tiene una asignación <strong>de</strong> E/S, el bit tendrá un valor<br />

<strong>de</strong> "0".<br />

Nota: Los slots 1 y 2 <strong>de</strong>l bastidor 1 (palabra 12) no se utilizan porque el propio PLC<br />

los usa.<br />

31007526 12/2006 1069


STAT: Estado<br />

Estado <strong>de</strong> funcionamiento global y estado <strong>de</strong> reintentos <strong>de</strong> comunicaciones:<br />

palabras 182 a 184 para Compact TSX<br />

Vista general Hay tres palabras que contienen la información <strong>de</strong> estado y comunicación <strong>de</strong> los<br />

módulos <strong>de</strong> E/S instalados. Cuando se supervisan mediante el bloque <strong>de</strong> estado,<br />

se encontrarán en las palabras 182 a 184. Esto requiere que la longitud <strong>de</strong>l bloque<br />

<strong>de</strong> estado tenga un mínimo <strong>de</strong> 184 (no se utilizan las palabras 16 a 181).<br />

Palabras<br />

16 a 181<br />

Estado <strong>de</strong><br />

funcionamiento<br />

(palabra 182)<br />

Contador <strong>de</strong><br />

errores <strong>de</strong> E/S<br />

(palabra 183)<br />

Contador <strong>de</strong><br />

reintentos<br />

<strong>de</strong> bus PAB<br />

(palabra 184)<br />

Estas palabras no se utilizan.<br />

La palabra 182 se incrementa cada vez que un módulo falla. Después <strong>de</strong> la avería<br />

<strong>de</strong> un módulo, este contador no se incrementará hasta que el módulo vuelva a<br />

funcionar correctamente y luego falle <strong>de</strong> nuevo.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = todos los módulos funcionan correctamente.<br />

2 ... 9 No utilizados.<br />

10 ... 16 Contador <strong>de</strong> "Estado <strong>de</strong> funcionamiento <strong>de</strong>l módulo pasó a ser <strong>de</strong>fectuoso".<br />

Este contador es similar al contador mencionado anteriormente, con la excepción<br />

<strong>de</strong> que esta palabra se incrementará en cada ciclo en que un módulo permanezca<br />

en un estado no válido.<br />

Los diagnósticos se ejecutan en las comunicaciones a través <strong>de</strong>l bus.<br />

Normalmente, esta palabra <strong>de</strong>be ser todo ceros. Si, <strong>de</strong>spués <strong>de</strong> 5 reintentos, se<br />

sigue <strong>de</strong>tectando un error <strong>de</strong> bus, el controlador se <strong>de</strong>tendrá y se visualizará el<br />

código <strong>de</strong> error 10. Pue<strong>de</strong> ocurrir un error por ruido o si se produce un cortocircuito<br />

en el bastidor. El contador dará vueltas mientras esté en funcionamiento. Si el<br />

número <strong>de</strong> reintentos es menor que 5, no se <strong>de</strong>tectará un error <strong>de</strong> bus.<br />

1070 31007526 12/2006


Presentación<br />

SU16: Resta <strong>de</strong> 16 bits<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción SU16.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

170<br />

Apartado Página<br />

Descripción breve 1072<br />

Representación 1073<br />

31007526 12/2006 1071


SU16: Resta <strong>de</strong> 16 bits<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción SU16 ejecuta una substracción <strong>de</strong> 16 bits con o sin signo (valor 1 -<br />

valor 2) en los valores <strong>de</strong> los asientos superior e intermedio, y <strong>de</strong>posita la diferencia<br />

con o sin signo en un registro <strong>de</strong> salida 4x <strong>de</strong>l asiento inferior.<br />

1072 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

valor máx.<br />

65.535<br />

valor máx.<br />

65.535<br />

con signo<br />

valor 1<br />

valor 2<br />

diferencia<br />

SU16<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

SU16: Resta <strong>de</strong> 16 bits<br />

valor superior > valor intermedio<br />

(+ resultado)<br />

valor superior = valor intermedio<br />

(resultado cero)<br />

valor superior < valor intermedio<br />

(- resultado)<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = habilita los valores 1–2.<br />

Entrada inferior 0x, 1x Ninguno ON = operación con signo.<br />

OFF = operación sin signo.<br />

Valor 1<br />

(nodo superior)<br />

Valor 2<br />

(nodo intermedio)<br />

Diferencia<br />

(nodo inferior)<br />

3x, 4x INT, UINT Minuendo, pue<strong>de</strong> mostrarse <strong>de</strong> forma<br />

explícita como número entero (rango<br />

165.535) o almacenarse en un registro<br />

3x, 4x INT, UINT Sustraendo, se pue<strong>de</strong> mostrar <strong>de</strong> forma<br />

explícita como número entero (rango<br />

165.535) o almacenarse en un registro<br />

4x INT, UINT Diferencia<br />

Salida superior 0x Ninguno ON = valor 1 > valor 2.<br />

Salida intermedia 0x Ninguno ON = valor 1 = valor 2.<br />

Salida inferior 0x Ninguno ON = valor 1 < valor 2.<br />

31007526 12/2006 1073


SU16: Resta <strong>de</strong> 16 bits<br />

1074 31007526 12/2006


Presentación<br />

SUB: Resta<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción SUB.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

171<br />

Apartado Página<br />

Descripción breve 1076<br />

Representación 1077<br />

31007526 12/2006 1075


SUB: Resta<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción SUB ejecuta una substracción <strong>de</strong> 16 bits con o sin signo (valor 1 -<br />

valor 2) en los valores <strong>de</strong> los asientos superior e intermedio, y <strong>de</strong>posita la diferencia<br />

con o sin signo en un registro <strong>de</strong> salida 4x <strong>de</strong>l asiento inferior.<br />

Nota: SUB se usa frecuentemente como un comparador, don<strong>de</strong> el estado <strong>de</strong> las<br />

salidas i<strong>de</strong>ntifica si el valor 1 es mayor, igual, o menor que el valor 2.<br />

1076 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control valor superior > valor<br />

valor 1<br />

intermedio<br />

(+ resultado)<br />

máx.<br />

999 - PLC <strong>de</strong> 16 bits<br />

9.999 - PLC <strong>de</strong> 24 bits<br />

65.535-785L<br />

máx.<br />

999 - PLC <strong>de</strong> 16 bits<br />

9.999 - PLC <strong>de</strong> 24 bits<br />

65.535-785L<br />

valor 2<br />

diferencia<br />

valor superior = valor<br />

intermedio<br />

(resultado cero)<br />

valor superior < valor<br />

intermedio<br />

(- resultado)<br />

SUB: Resta<br />

31007526 12/2006 1077<br />

SUB


SUB: Resta<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor 1<br />

(nodo superior)<br />

Valor 2<br />

(nodo<br />

intermedio)<br />

Diferencia<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = habilita los valores 1–2.<br />

3x, 4x INT, UINT Minuendo, pue<strong>de</strong> mostrarse <strong>de</strong> forma<br />

explícita como un número entero o<br />

guardarse en un registro.<br />

Máx. 255- PLC <strong>de</strong> 16 bits<br />

Máx. 999- PLC <strong>de</strong> 24 bits<br />

Máx. 65.535-785L.<br />

3x, 4x INT, UINT Sustraendo, pue<strong>de</strong> mostrarse <strong>de</strong> forma<br />

explícita como un número entero o<br />

guardarse en un registro.<br />

Máx. 255- PLC <strong>de</strong> 16 bits<br />

Máx. 999- PLC <strong>de</strong> 24 bits<br />

Máx. 65.535-785L.<br />

4x INT, UINT Diferencia<br />

Salida superior 0x Ninguno ON = valor 1 > valor 2.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = valor 1 = valor 2.<br />

Salida inferior 0x Ninguno ON = valor 1 < valor 2.<br />

1078 31007526 12/2006


Presentación<br />

SWAP - Permutación <strong>de</strong> bit VME<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción SWAP.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

172<br />

Apartado Página<br />

Descripción breve 1080<br />

Representación 1081<br />

31007526 12/2006 1079


SWAP - Permutación <strong>de</strong> bit VME<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> funciones<br />

El bloque SWAP permite al usuario emitir uno <strong>de</strong> tres comandos <strong>de</strong> permutación<br />

diferentes:<br />

Permutar bits alto y bajo <strong>de</strong> una palabra <strong>de</strong> 16 bits.<br />

Permutar palabras alta y baja <strong>de</strong> una palabra doble <strong>de</strong> <strong>32</strong> bits.<br />

Permutar (inversamente) bits <strong>de</strong>ntro <strong>de</strong> un byte bajo <strong>de</strong> registro.<br />

Nota: Disponible únicamente en el controlador VME-424/X Quantum.<br />

1080 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control activa<br />

valor<br />

registro<br />

SWAP<br />

n.º <strong>de</strong><br />

registros<br />

SWAP - Permutación <strong>de</strong> bit VME<br />

31007526 12/2006 1081<br />

error<br />

completo


SWAP - Permutación <strong>de</strong> bit VME<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Valor<br />

(nodo superior)<br />

Registro<br />

(nodo<br />

intermedio)<br />

N.º <strong>de</strong> registros<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON habilita la operación SWAP.<br />

INT, UINT,<br />

WORD<br />

3x, 4x INT, UINT,<br />

WORD<br />

INT, UINT,<br />

WORD<br />

Contiene una constante <strong>de</strong> 1 a 3, que<br />

especifica el tipo <strong>de</strong> permutación que se va<br />

a realizar:<br />

1. Permutar bits alto y bajo <strong>de</strong> una palabra<br />

<strong>de</strong> 16 bits.<br />

2. Permutar palabras alta y baja <strong>de</strong> una<br />

palabra doble <strong>de</strong> <strong>32</strong> bits.<br />

3. Permutar (inversamente) bits <strong>de</strong>ntro <strong>de</strong><br />

un byte bajo <strong>de</strong> registro.<br />

Contiene el registro en el que se va a<br />

realizar la permutación.<br />

Contiene una constante que indica el<br />

número <strong>de</strong> registros que se van a<br />

permutar, comenzando con el registro <strong>de</strong><br />

fuente.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno Error<br />

Salida inferior 0x Ninguno La permutación finalizó con éxito.<br />

1082 31007526 12/2006


Presentación<br />

TTR - De tabla a registro<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción TTR.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

173<br />

Apartado Página<br />

Descripción breve 1084<br />

Representación: TTR - De tabla a registro 1085<br />

31007526 12/2006 1083


TTR - De tabla a registro<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

El bloque <strong>de</strong> tabla a registro es una <strong>de</strong> cuatro instrucciones <strong>de</strong> reemplazo 484.<br />

Copia el contenido <strong>de</strong> un registro <strong>de</strong> fuente (entrada o en espera) a un registro en<br />

espera implícito mediante la constante en el nodo inferior. El registro <strong>de</strong> entrada o<br />

en espera especificado en el nodo superior se encarga <strong>de</strong> apuntar a este registro<br />

<strong>de</strong> fuente. En cada ciclo, el sistema sólo pue<strong>de</strong> realizar una operación <strong>de</strong> este tipo.<br />

Nota: Disponible únicamente en los mo<strong>de</strong>los 984-351 y 984-455.<br />

1084 31007526 12/2006


Representación: TTR - De tabla a registro<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

ENTRADA DE<br />

CONTROL<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Fuente<br />

(nodo superior)<br />

Destino<br />

(nodo inferior)<br />

fuente<br />

pointer <strong>de</strong><br />

offset <strong>de</strong><br />

<strong>de</strong>stino<br />

TTR<br />

Tipo <strong>de</strong><br />

datos<br />

COPIAR<br />

ERROR<br />

Significado<br />

0x, 1x Ninguno Fuente <strong>de</strong> control.<br />

TTR - De tabla a registro<br />

3x, 4x INT, UINT El nodo <strong>de</strong> fuente (nodo superior) contiene<br />

la dirección <strong>de</strong> registro <strong>de</strong> fuente. Los datos<br />

situados en la dirección <strong>de</strong> registro <strong>de</strong><br />

fuente se copiarán en la dirección <strong>de</strong><br />

<strong>de</strong>stino, <strong>de</strong>terminada por el pointer <strong>de</strong><br />

offset <strong>de</strong> <strong>de</strong>stino.<br />

(1 ... 254)<br />

(801 ... 824)<br />

INT, UINT El pointer es 3xxxx o 4xxxx cuyo contenido<br />

indica la fuente. Un valor <strong>de</strong> 1 a 254 indica<br />

un registro en espera (40001 - 40254) y un<br />

valor <strong>de</strong> 801 a 8<strong>32</strong> indica un registro <strong>de</strong><br />

entrada (30001 - 300<strong>32</strong>). Si el valor está<br />

fuera <strong>de</strong> este rango, la operación no se<br />

realizará y la barra ERROR se activará.<br />

Salida superior 0x Ninguno Transfiere alimentación cuando la entrada<br />

superior la recibe.<br />

Salida inferior 0x Ninguno Valor <strong>de</strong>l pointer fuera <strong>de</strong> rango.<br />

31007526 12/2006 1085


TTR - De tabla a registro<br />

1086 31007526 12/2006


Presentación<br />

T --> R <strong>de</strong> tabla a registro<br />

Introducción Este capítulo <strong>de</strong>scribe la instrucción T→R.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

174<br />

Apartado Página<br />

Descripción breve 1088<br />

Representación 1089<br />

Descripción <strong>de</strong> los parámetros 1091<br />

31007526 12/2006 1087


T --> R: De tabla a registro<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción T→R copia el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> un registro o 16 registros binarios<br />

contiguos almacenados en una tabla <strong>de</strong> un registro <strong>de</strong> salida específico. Pue<strong>de</strong><br />

transferir un registro por ciclo. Tiene tres entradas <strong>de</strong> control y genera dos posibles<br />

salidas.<br />

1088 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control/<br />

aumentar pointer<br />

impi<strong>de</strong> que el pointer<br />

aumente<br />

restablecer pointer<br />

Longitud <strong>de</strong> tabla:<br />

máx. 255 - PLC <strong>de</strong> 16 bits<br />

999 - PLC <strong>de</strong> 24 bits.<br />

tabla <strong>de</strong><br />

fuente<br />

pointer<br />

longitud <strong>de</strong> la<br />

tabla<br />

T → R<br />

activa<br />

T --> R: De tabla a registro<br />

pointer = longitud <strong>de</strong> tabla<br />

31007526 12/2006 1089


T --> R: De tabla a registro<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

(véase p. 1091)<br />

Entrada inferior<br />

(véase p. 1091)<br />

Tabla <strong>de</strong> fuente<br />

(nodo superior)<br />

Pointer<br />

(véase p. 1091)<br />

(nodo<br />

intermedio)<br />

Longitud <strong>de</strong><br />

tabla<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = copia los datos <strong>de</strong> fuente e<br />

incrementa el valor <strong>de</strong>l pointer.<br />

0x, 1x Ninguno ON = congela el valor <strong>de</strong>l pointer.<br />

0x, 1x Ninguno ON = restablece el valor <strong>de</strong>l pointer a cero.<br />

0x, 1x, 3x, 4x INT, UINT,<br />

WORD<br />

Primer registro o referencia binaria en la<br />

tabla <strong>de</strong> fuente. Se copiará un registro o<br />

una ca<strong>de</strong>na <strong>de</strong> registros binarios<br />

contiguos <strong>de</strong>s<strong>de</strong> esta tabla en un ciclo.<br />

4x INT, UINT Pointer al <strong>de</strong>stino don<strong>de</strong> se <strong>de</strong>berán<br />

copiar los datos <strong>de</strong> fuente.<br />

INT, UINT Longitud <strong>de</strong> la tabla <strong>de</strong> fuente: número <strong>de</strong><br />

registros que se pue<strong>de</strong>n copiar; rango:<br />

1999<br />

Longitud:<br />

Máx. 255 - PLC <strong>de</strong> 16 bits<br />

Máx. 999 - PLC <strong>de</strong> 24 bits<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = valor <strong>de</strong>l pointer = longitud <strong>de</strong> la<br />

tabla (la instrucción no se pue<strong>de</strong><br />

incrementar más).<br />

1090 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Entrada<br />

intermedia<br />

T --> R: De tabla a registro<br />

Cuando se activa la entrada intermedia, el valor actual almacenado en el registro<br />

<strong>de</strong>l pointer se congela mientras continúa la operación DX. Esto hace que se escriba<br />

la misma tabla <strong>de</strong> datos en el registro <strong>de</strong> <strong>de</strong>stino en cada ciclo.<br />

Entrada inferior Si se activa la entrada inferior, el valor <strong>de</strong>l pointer se pondrá a cero. Esto hace que<br />

la siguiente operación <strong>de</strong> movimiento DX copie el primer registro <strong>de</strong> <strong>de</strong>stino en la<br />

tabla.<br />

Pointer (asiento<br />

intermedio)<br />

El registro 4x introducido en el asiento intermedio es un pointer al <strong>de</strong>stino en el que<br />

se copiarán los datos <strong>de</strong> origen. El registro <strong>de</strong> <strong>de</strong>stino es el siguiente registro 4x<br />

contiguo <strong>de</strong>spués <strong>de</strong>l pointer. Por ejemplo, si el asiento intermedio muestra un<br />

pointer <strong>de</strong> 400100, el registro <strong>de</strong> <strong>de</strong>stino para la copia T→R será 400101.<br />

El valor almacenado en el registro <strong>de</strong>l pointer indica qué registro <strong>de</strong> la tabla <strong>de</strong><br />

fuente será copiado en el registro <strong>de</strong> <strong>de</strong>stino <strong>de</strong>ntro <strong>de</strong>l ciclo actual. Un valor <strong>de</strong> 0<br />

en el pointer indica que el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong>l primer registro <strong>de</strong> la tabla <strong>de</strong> fuente<br />

será copiado en el <strong>de</strong>stino; un valor <strong>de</strong> 1 en el registro <strong>de</strong>l pointer indica que el<br />

mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong>l segundo registro <strong>de</strong> la tabla <strong>de</strong> fuente será copiado en el registro<br />

<strong>de</strong> <strong>de</strong>stino; etc.<br />

31007526 12/2006 1091


T --> R: De tabla a registro<br />

1092 31007526 12/2006


Presentación<br />

T --> T: De tabla a tabla<br />

Introducción Este capítulo <strong>de</strong>scribe la instrucción T→T.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

175<br />

Apartado Página<br />

Descripción breve 1094<br />

Representación 1095<br />

Descripción <strong>de</strong> los parámetros 1097<br />

31007526 12/2006 1093


T --> T: De tabla a tabla<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción T→T copia el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> un registro o 16 registros binarios<br />

<strong>de</strong>s<strong>de</strong> una posición <strong>de</strong>ntro <strong>de</strong> una tabla a una posición equivalente en otra tabla <strong>de</strong><br />

registros. Pue<strong>de</strong> transferir un registro por ciclo. Tiene tres entradas <strong>de</strong> control y<br />

genera dos posibles salidas.<br />

1094 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control/<br />

aumentar pointer<br />

impi<strong>de</strong> que el pointer<br />

aumente<br />

restablecer pointer<br />

Longitud <strong>de</strong> tabla:<br />

máx. 255 - PLC <strong>de</strong> 16 bits<br />

999 - PLC <strong>de</strong> 24 bits<br />

65.535 *PLC.<br />

*Disponible en los siguientes PLC:<br />

E685/785<br />

L785<br />

Serie Quantum<br />

tabla <strong>de</strong><br />

fuente<br />

pointer<br />

longitud <strong>de</strong> la<br />

tabla<br />

T → R<br />

activa<br />

T --> T: De tabla a tabla<br />

pointer = longitud <strong>de</strong> tabla<br />

31007526 12/2006 1095


T --> T: De tabla a tabla<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

(véase p. 1097)<br />

Entrada inferior<br />

(véase p. 1097)<br />

Tabla <strong>de</strong> fuente<br />

(nodo superior)<br />

Pointer<br />

(véase p. 1097)<br />

(nodo<br />

intermedio)<br />

Longitud <strong>de</strong><br />

tabla<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = copia los datos <strong>de</strong> fuente e<br />

incrementa el valor <strong>de</strong>l pointer.<br />

0x, 1x Ninguno ON = congela el valor <strong>de</strong>l pointer.<br />

0x, 1x Ninguno ON = restablece el valor <strong>de</strong>l pointer a cero.<br />

0x, 1x, 3x, 4x INT, UINT,<br />

WORD<br />

Primer registro o referencia binaria en la<br />

tabla <strong>de</strong> fuente. Se copiará un registro o<br />

una ca<strong>de</strong>na <strong>de</strong> registros binarios<br />

contiguos <strong>de</strong>s<strong>de</strong> esta tabla en un ciclo.<br />

4x INT, UINT Pointer en la tabla <strong>de</strong> fuente y en la tabla<br />

<strong>de</strong> <strong>de</strong>stino.<br />

INT, UINT Longitud <strong>de</strong> la tabla <strong>de</strong> fuente y <strong>de</strong> la tabla<br />

<strong>de</strong> <strong>de</strong>stino (<strong>de</strong>be ser igual).<br />

Rango:<br />

Máx. 255 - PLC <strong>de</strong> 16 bits<br />

Máx. 999 - PLC <strong>de</strong> 24 bits<br />

Máx. 65.535 785L.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = valor <strong>de</strong>l pointer = longitud <strong>de</strong> la<br />

tabla (la instrucción no se pue<strong>de</strong><br />

incrementar más).<br />

1096 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Entrada<br />

intermedia<br />

T --> T: De tabla a tabla<br />

Cuando la entrada <strong>de</strong> asiento intermedio se ACTIVA, el valor actual almacenado en<br />

el registro <strong>de</strong>l pointer se congela mientras continúa la operación DX. Esto hace que<br />

los nuevos datos que se están copiando en el <strong>de</strong>stino sobrescriban los datos<br />

copiados en el ciclo anterior.<br />

Entrada inferior Si la entrada inferior se ACTIVA, el valor <strong>de</strong>l registro <strong>de</strong>l pointer se restablecerá en<br />

cero. Esto hace que la siguiente operación <strong>de</strong> movimiento DX copie los datos <strong>de</strong><br />

fuente en el primer registro <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino.<br />

Pointer (asiento<br />

intermedio)<br />

El registro 4x ingresado en el asiento intermedio es un pointer a las tablas <strong>de</strong> fuente<br />

y <strong>de</strong> <strong>de</strong>stino, que indica <strong>de</strong>s<strong>de</strong> y hacia dón<strong>de</strong> serán copiados los datos en el ciclo<br />

actual. El primer registro en la tabla <strong>de</strong> <strong>de</strong>stino es el registro 4x contiguo siguiente<br />

al pointer. Por ejemplo, si el asiento intermedio muestra una referencia <strong>de</strong> pointer<br />

<strong>de</strong> 400101, el primer registro en la tabla <strong>de</strong> <strong>de</strong>stino será 400101.<br />

El valor almacenado en el registro <strong>de</strong>l pointer indica el registro <strong>de</strong> la tabla <strong>de</strong> fuente<br />

que será copiado al registro <strong>de</strong>terminado en la tabla <strong>de</strong> <strong>de</strong>stino. Debido a que la<br />

longitud <strong>de</strong> ambas tablas es igual y la copia T→T tiene lugar en el registro<br />

equivalente en la tabla <strong>de</strong> <strong>de</strong>stino, el valor actual en el registro <strong>de</strong>l pointer indica<br />

también en qué registro en la tabla <strong>de</strong> <strong>de</strong>stino serán copiados los datos <strong>de</strong> fuente.<br />

Un valor <strong>de</strong> 0 en el registro <strong>de</strong>l pointer indica que el mo<strong>de</strong>lo <strong>de</strong> bits en el primer<br />

registro <strong>de</strong> la tabla <strong>de</strong> fuente será copiado al primer registro <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino;<br />

un valor <strong>de</strong> 1 en el registro <strong>de</strong>l pointer indica que el mo<strong>de</strong>lo <strong>de</strong> bits en el segundo<br />

registro <strong>de</strong> la tabla <strong>de</strong> fuente será copiado en el registro <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>stino, etc.<br />

31007526 12/2006 1097


T --> T: De tabla a tabla<br />

1098 31007526 12/2006


Presentación<br />

Temporizador T.01: Temporizador<br />

<strong>de</strong> centésimas <strong>de</strong> segundo<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción <strong>de</strong> temporizador T.01.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

176<br />

Apartado Página<br />

Descripción breve 1100<br />

Representación 1101<br />

31007526 12/2006 1099


Temporizador T.01: Temporizador <strong>de</strong> centésimas <strong>de</strong> segundo<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción T.01 mi<strong>de</strong> el tiempo en incrementos <strong>de</strong> una centésima <strong>de</strong> segundo.<br />

Pue<strong>de</strong> utilizarse para cronometrar un evento o para crear un retardo. T.01 posee<br />

dos entradas <strong>de</strong> control y pue<strong>de</strong> generar una <strong>de</strong> dos salidas posibles.<br />

1100 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

máx. 999 - PLC <strong>de</strong> 16 bits<br />

9.999 - PLC <strong>de</strong> 24 bits<br />

65.535-785L<br />

habilitar/restablecer<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Temporizador T.01: Temporizador <strong>de</strong> centésimas <strong>de</strong> segundo<br />

preajuste <strong>de</strong>l<br />

temporizador<br />

tiempo<br />

acumulado<br />

temporizador = preajuste<br />

temporizador < preajuste<br />

31007526 12/2006 1101<br />

T.01<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno OFF → ON = inicia el funcionamiento <strong>de</strong>l<br />

temporizador: tiempo acumulado en<br />

centésimas <strong>de</strong> segundo durante el que las<br />

entradas superior e inferior están activas.<br />

Entrada inferior 0x, 1x Ninguno OFF = el tiempo acumulado se pone a 0.<br />

ON = acumulación <strong>de</strong>l temporizador.<br />

Preajuste <strong>de</strong>l<br />

temporizador<br />

(nodo superior)<br />

Tiempo<br />

acumulado<br />

(nodo inferior)<br />

3x, 4x INT, UINT Valor preestablecido (número <strong>de</strong> centésimas<br />

<strong>de</strong> segundo), pue<strong>de</strong> representarse<br />

explícitamente como un entero o almacenarse<br />

en un registro.<br />

Rango:<br />

Máx. 255 - PLC <strong>de</strong> 16 bits<br />

Máx. 999 - PLC <strong>de</strong> 24 bits<br />

Máx. 65.535 785L.<br />

4x INT, UINT Conteo <strong>de</strong>l tiempo acumulado en centésimas<br />

<strong>de</strong> segundo.<br />

Salida superior 0x Ninguno ON = tiempo acumulado = preajuste <strong>de</strong>l<br />

temporizador.<br />

Salida inferior 0x Ninguno ON = tiempo acumulado < preajuste <strong>de</strong>l<br />

temporizador.


Temporizador T.01: Temporizador <strong>de</strong> centésimas <strong>de</strong> segundo<br />

1102 31007526 12/2006


Presentación<br />

Temporizador T0.1: Temporizador<br />

<strong>de</strong> décimas <strong>de</strong> segundo<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción <strong>de</strong> temporizador T0.1.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

177<br />

Apartado Página<br />

Descripción breve 1104<br />

Representación 1105<br />

31007526 12/2006 1103


Temporizador T0.1: Temporizador <strong>de</strong> décimas <strong>de</strong> segundo<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción T0.1 mi<strong>de</strong> el tiempo en incrementos <strong>de</strong> una décima <strong>de</strong> segundo.<br />

Pue<strong>de</strong> utilizarse para cronometrar un evento o para crear un retardo. T0.1 posee<br />

dos entradas <strong>de</strong> control y pue<strong>de</strong> generar una <strong>de</strong> dos salidas posibles.<br />

Nota: Si ubica en cascada temporizadores T0.1 con un valor preestablecido <strong>de</strong> 1,<br />

los temporizadores alcanzarán el valor <strong>de</strong> <strong>de</strong>sconexión al mismo tiempo; para<br />

evitar este problema, cambie los valores <strong>de</strong> ajuste preestablecido a 10 y substituya<br />

un temporizador T.01. (véase p. 1099).<br />

1104 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

máx. 999 - PLC <strong>de</strong> 16 bits<br />

9.999 - PLC <strong>de</strong> 24 bits<br />

65.535-785L<br />

habilitar/restablecer<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

inferior<br />

Preajuste <strong>de</strong>l<br />

temporizador<br />

(nodo<br />

superior)<br />

Tiempo<br />

acumulado<br />

(nodo inferior)<br />

Temporizador T0.1: Temporizador <strong>de</strong> décimas <strong>de</strong> segundo<br />

preajuste <strong>de</strong>l<br />

temporizador<br />

tiempo<br />

acumulado<br />

T0.1<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

temporizador = preajuste<br />

temporizador < preajuste<br />

0x, 1x Ninguno OFF → ON = inicia el funcionamiento <strong>de</strong>l<br />

temporizador: cuando las entradas superior e<br />

inferior están activas, el tiempo se acumula en<br />

décimas <strong>de</strong> segundo.<br />

0x, 1x Ninguno OFF = el tiempo acumulado se pone a 0.<br />

ON = acumulación <strong>de</strong>l temporizador.<br />

3x, 4x INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

Valor preestablecido (número <strong>de</strong> décimas <strong>de</strong><br />

segundo), pue<strong>de</strong> representarse explícitamente<br />

como un entero o almacenarse en un registro.<br />

Rango:<br />

Máx. 255 - PLC <strong>de</strong> 16 bits<br />

Máx. 999 - PLC <strong>de</strong> 24 bits<br />

Máx. 65.535 785L.<br />

Tiempo acumulado en décimas <strong>de</strong> segundo.<br />

Salida superior 0x Ninguno ON = tiempo acumulado = preajuste <strong>de</strong>l<br />

temporizador.<br />

Salida inferior 0x Ninguno ON = tiempo acumulado < preajuste <strong>de</strong>l<br />

temporizador.<br />

31007526 12/2006 1105


Temporizador T0.1: Temporizador <strong>de</strong> décimas <strong>de</strong> segundo<br />

1106 31007526 12/2006


Presentación<br />

Temporizador T1.0:<br />

Temporizador <strong>de</strong> segundos<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción <strong>de</strong> temporizador T1.0.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

178<br />

Apartado Página<br />

Descripción breve 1108<br />

Representación 1109<br />

31007526 12/2006 1107


Temporizador T1.0: Temporizador <strong>de</strong> segundos<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción T1.0 mi<strong>de</strong> el tiempo en incrementos <strong>de</strong> un segundo. Pue<strong>de</strong> utilizarse<br />

para cronometrar un evento o para crear un retardo. T1.0 posee dos entradas <strong>de</strong><br />

control y pue<strong>de</strong> generar una <strong>de</strong> dos salidas posibles.<br />

Nota: Si ubica en cascada temporizadores T1.0 con un valor preestablecido <strong>de</strong> 1,<br />

los temporizadores alcanzarán el valor <strong>de</strong> <strong>de</strong>sconexión al mismo tiempo; para<br />

evitar este problema, cambie los valores <strong>de</strong> ajuste preestablecido a 10 y substituya<br />

un temporizador T0.1. (véase p. 1103).<br />

1108 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

máx. 999 - PLC <strong>de</strong> 16 bits<br />

9.999 - PLC <strong>de</strong> 24 bits<br />

65.535-785L<br />

habilitar/restablecer<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

preajuste <strong>de</strong>l<br />

temporizador<br />

tiempo<br />

acumulado<br />

T1.0<br />

Tipo <strong>de</strong><br />

datos<br />

Temporizador T1.0: Temporizador <strong>de</strong> segundos<br />

Significado<br />

temporizador = preajuste<br />

temporizador < preajuste<br />

0x, 1x Ninguno OFF → ON = inicia el funcionamiento <strong>de</strong>l<br />

temporizador: cuando las entradas superior e<br />

inferior están conectadas, el tiempo se acumula<br />

en segundos.<br />

Entrada inferior 0x, 1x Ninguno OFF = el tiempo acumulado se pone a 0.<br />

ON = acumulación <strong>de</strong>l temporizador.<br />

Preajuste <strong>de</strong>l<br />

temporizador<br />

(nodo superior)<br />

Tiempo<br />

acumulado<br />

(nodo inferior)<br />

3x, 4x INT,<br />

UINT<br />

4x INT,<br />

UINT<br />

Valor preestablecido (número <strong>de</strong> segundos)<br />

que pue<strong>de</strong> representarse explícitamente como<br />

un entero o almacenarse en un registro.<br />

Rango:<br />

Máx. 255 - PLC <strong>de</strong> 16 bits<br />

Máx. 999 - PLC <strong>de</strong> 24 bits<br />

Máx. 65.535 785L.<br />

Conteo <strong>de</strong>l tiempo acumulado en segundos.<br />

Salida superior 0x Ninguno ON = tiempo acumulado = preajuste <strong>de</strong>l<br />

temporizador.<br />

Salida inferior 0x Ninguno ON = tiempo acumulado < preajuste <strong>de</strong>l<br />

temporizador.<br />

31007526 12/2006 1109


Temporizador T1.0: Temporizador <strong>de</strong> segundos<br />

1110 31007526 12/2006


Presentación<br />

Temporizador T1MS:<br />

Temporizador <strong>de</strong> milisegundos<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción <strong>de</strong> temporizador T1MS.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

179<br />

Apartado Página<br />

Descripción breve 1112<br />

Representación 1113<br />

Ejemplo 1115<br />

31007526 12/2006 1111


Temporizador T1MS: Temporizador <strong>de</strong> milisegundos<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción T1MS mi<strong>de</strong> el tiempo en incrementos <strong>de</strong> una milésima <strong>de</strong> segundo.<br />

Pue<strong>de</strong> utilizarse para cronometrar un evento o para crear un retardo.<br />

Nota: La instrucción T1MS sólo se encuentra disponible en los PLC B984-102,<br />

Micro 311, 411, 512 y 612, y Quantum 424 02.<br />

1112 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

valor preestablecido<br />

máx. 999 (en ms)<br />

habilitar/restablecer<br />

Temporizador T1MS: Temporizador <strong>de</strong> milisegundos<br />

preajuste <strong>de</strong>l<br />

temporizador<br />

tiempo<br />

acumulado<br />

T1MS<br />

temporizador = preajuste<br />

temporizador < preajuste<br />

31007526 12/2006 1113<br />

n.º 1


Temporizador T1MS: Temporizador <strong>de</strong> milisegundos<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Preajuste <strong>de</strong>l<br />

temporizador<br />

(nodo superior)<br />

Tiempo<br />

acumulado<br />

(nodo<br />

intermedio)<br />

#1<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia el funcionamiento <strong>de</strong>l<br />

temporizador: cuando las entradas<br />

superior e intermedia están activas, el<br />

tiempo se acumula en milisegundos.<br />

0x, 1x Ninguno OFF = el tiempo acumulado se pone a 0.<br />

ON = acumulación <strong>de</strong>l temporizador.<br />

3x, 4x INT, UINT Valor preestablecido (número <strong>de</strong><br />

milésimas <strong>de</strong> segundo que pue<strong>de</strong><br />

acumular el temporizador), pue<strong>de</strong><br />

representarse explícitamente como un<br />

entero (rango 1999) o almacenarse en un<br />

registro<br />

4x INT, UINT Conteo <strong>de</strong>l tiempo acumulado en<br />

milisegundos.<br />

INT, UINT Valor constante <strong>de</strong> n.º 1.<br />

Salida superior 0x Ninguno ON = tiempo acumulado = preajuste <strong>de</strong>l<br />

temporizador.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = tiempo acumulado < preajuste <strong>de</strong>l<br />

temporizador.<br />

1114 31007526 12/2006


Ejemplo<br />

Ejemplo <strong>de</strong><br />

temporizador <strong>de</strong><br />

milisegundos<br />

Temporizador T1MS: Temporizador <strong>de</strong> milisegundos<br />

Aquí se muestra la Lad<strong>de</strong>r <strong>Logic</strong> para un reloj <strong>de</strong> tiempo real con una precisión <strong>de</strong><br />

milisegundo:<br />

000001<br />

000002<br />

000003<br />

000004<br />

000005<br />

100<br />

400055<br />

T1MS<br />

1<br />

000001<br />

10<br />

UCTR<br />

400054<br />

000002<br />

UCTR<br />

400053<br />

Se programa la instrucción T1MS para transferir señal a intervalos <strong>de</strong> 100 ms; le<br />

sigue una cascada <strong>de</strong> cuatro contadores progresivos (véase p. 1127) que<br />

almacenan el tiempo en centésimas <strong>de</strong> segundo, décimas <strong>de</strong> segundo, segundos,<br />

minutos, y horas respectivamente.<br />

Cuando comienza la resolución <strong>de</strong> la lógica, el valor <strong>de</strong>l tiempo acumulado<br />

comienza incrementándose en el registro 40055 <strong>de</strong>l bloque T1MS. Después <strong>de</strong> 100<br />

incrementos <strong>de</strong> un ms, la salida superior transferirá señal y activará la bobina<br />

00001. En este punto se pone a 0 el valor en el registro 40055 <strong>de</strong>l temporizador. El<br />

valor <strong>de</strong> conteo acumulado en el registro 40054 en el primer bloque UCTR se<br />

incrementa en 1, indicando que han pasado 100 ms. Debido a que el conteo <strong>de</strong><br />

tiempo acumulado en T1MS ya no es igual al ajuste <strong>de</strong> tiempo <strong>de</strong> temporizador, el<br />

temporizador comenzará a acumular nuevamente el tiempo en ms.<br />

Cuando el conteo acumulado en el registro 40054 <strong>de</strong> la primera instrucción UCTR<br />

se incrementa a 10, la salida superior transferirá señal <strong>de</strong>l bloque <strong>de</strong> instrucción y<br />

activará la bobina 00002. El valor en el registro ahora se pone a 0 40054 y se<br />

incrementa en 1 el conteo acumulado en el registro 40053 <strong>de</strong>l segundo bloque<br />

UCTR.<br />

31007526 12/2006 1115<br />

60<br />

000003<br />

60<br />

UCTR<br />

400052<br />

000004<br />

24<br />

UCTR<br />

400051<br />

000005


Temporizador T1MS: Temporizador <strong>de</strong> milisegundos<br />

Mientras se acumulan los tiempos en cada contador, se podrá leer la hora <strong>de</strong>l día<br />

en los cinco registros <strong>de</strong> salida en la forma siguiente:<br />

Registro Unidad <strong>de</strong> tiempo Rango válido<br />

40055 Milésimas <strong>de</strong> segundo 0 ... 100<br />

40054 Décimas <strong>de</strong> segundo 0 ... 10<br />

40053 Segundos 0 ... 60<br />

40052 Minutos 0 ... 60<br />

40051 Horas 0 ... 24<br />

1116 31007526 12/2006


Presentación<br />

TBLK: De tabla a bloque<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción TBLK.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

180<br />

Apartado Página<br />

Descripción breve 1118<br />

Representación 1119<br />

Descripción <strong>de</strong> los parámetros 1121<br />

31007526 12/2006 1117


TBLK: De tabla a bloque<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción TBLK (tabla a bloque) combina las funciones <strong>de</strong> T→R<br />

(véase p. 1087) y BLKM (véase p. 75) en una sola instrucción. En un ciclo se<br />

pue<strong>de</strong>n copiar hasta 100 registros contiguos 4x <strong>de</strong>s<strong>de</strong> una tabla a un bloque <strong>de</strong><br />

<strong>de</strong>stino. El bloque <strong>de</strong> <strong>de</strong>stino tiene una longitud fija. El bloque <strong>de</strong> registros que se<br />

copia <strong>de</strong> la tabla <strong>de</strong> fuente tiene la misma longitud, pero la longitud total <strong>de</strong> la tabla<br />

<strong>de</strong> fuente está limitada solamente por la cantidad <strong>de</strong> registros en la configuración<br />

<strong>de</strong>l sistema.<br />

1118 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

<strong>de</strong>tener pointer<br />

restablecer pointer<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

(véase p. 1121)<br />

tabla <strong>de</strong><br />

fuente<br />

pointer<br />

longitud <strong>de</strong><br />

bloque<br />

TBLK<br />

Tipo <strong>de</strong><br />

datos<br />

TBLK: De tabla a bloque<br />

operación correcta<br />

31007526 12/2006 1119<br />

error<br />

Significado<br />

0x, 1x Ninguno ON = inicia la operación <strong>de</strong> movimiento.<br />

0x, 1x Ninguno ON = <strong>de</strong>tiene el pointer.<br />

Las entradas a los nodos intermedio e<br />

inferior se pue<strong>de</strong>n utilizar para controlar el<br />

valor <strong>de</strong>l pointer y, así, po<strong>de</strong>r controlar la<br />

tabla <strong>de</strong> fuente.<br />

Importante: Deberá utilizar la lógica<br />

externa junto a la entrada intermedia o<br />

inferior para llevar el valor situado en el<br />

pointer <strong>de</strong> <strong>de</strong>stino a un rango seguro.<br />

Cuando la entrada al nodo intermedio está<br />

activa, el valor en el registro <strong>de</strong>l pointer se<br />

congelará mientras continúe la operación<br />

TBLK. Esto hace que el mismo bloque <strong>de</strong><br />

datos <strong>de</strong> fuente se copie en la tabla <strong>de</strong><br />

<strong>de</strong>stino en cada ciclo.


TBLK: De tabla a bloque<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada inferior<br />

(véase p. 1121)<br />

Tabla <strong>de</strong> fuente<br />

(véase p. 1121)<br />

(nodo superior)<br />

Pointer<br />

(véase p. 1121)<br />

(nodo<br />

intermedio)<br />

Longitud <strong>de</strong><br />

bloque<br />

(nodo inferior)<br />

Tipo <strong>de</strong><br />

datos<br />

0x, 1x Ninguno ON = pone el pointer a cero.<br />

4x INT, UINT,<br />

WORD<br />

Significado<br />

Primer registro en espera <strong>de</strong> la tabla <strong>de</strong><br />

fuente.<br />

El registro 4xxxx introducido en el nodo<br />

superior será el primer registro en espera<br />

en la tabla <strong>de</strong> fuente.<br />

Nota: La tabla <strong>de</strong> fuente se ha dividido en<br />

una serie <strong>de</strong> <strong>bloques</strong> <strong>de</strong> registros, cada<br />

uno <strong>de</strong> los cuales tiene la misma longitud<br />

que el bloque <strong>de</strong> <strong>de</strong>stino. Por ello, el<br />

tamaño <strong>de</strong> la tabla <strong>de</strong> fuente es un<br />

múltiplo <strong>de</strong> la longitud <strong>de</strong>l bloque <strong>de</strong><br />

<strong>de</strong>stino, pero su tamaño total no estará<br />

<strong>de</strong>finido específicamente en la instrucción.<br />

Si no se controla, la tabla <strong>de</strong> fuente podría<br />

consumir todos los registros 4xxxx<br />

disponibles en la configuración <strong>de</strong>l PLC.<br />

4x INT, UINT Pointer al bloque <strong>de</strong> fuente, bloque <strong>de</strong><br />

<strong>de</strong>stino.<br />

INT, UINT Cantidad <strong>de</strong> registros en el bloque <strong>de</strong><br />

<strong>de</strong>stino y en los <strong>bloques</strong> <strong>de</strong>ntro <strong>de</strong> la tabla<br />

<strong>de</strong> fuente; rango: 1...100<br />

Salida superior 0x Ninguno ON = movimiento correcto.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = error/el movimiento no es posible.<br />

1120 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Entrada<br />

intermedia<br />

Entrada inferior<br />

Tabla <strong>de</strong> fuente<br />

(asiento<br />

superior)<br />

Pointer (asiento<br />

intermedio)<br />

TBLK: De tabla a bloque<br />

Cuando la entrada intermedia está ACTIVA, el valor en el registro <strong>de</strong>l pointer se<br />

congelará mientras continúe la operación TBLK. Esto hace que el mismo bloque <strong>de</strong><br />

datos <strong>de</strong> fuente sea copiado en la tabla <strong>de</strong> <strong>de</strong>stino en cada ciclo.<br />

AVISO<br />

Confine el valor en el pointer <strong>de</strong> <strong>de</strong>stino en un rango seguro.<br />

Deberá utilizar lógica externa con las entradas intermedia o inferior para confinar<br />

el valor situado en el pointer <strong>de</strong> <strong>de</strong>stino en un rango seguro.<br />

Si no se respetan estas instrucciones, pue<strong>de</strong>n producirse daños corporales<br />

o materiales.<br />

Si la entrada inferior está ACTIVA, el valor <strong>de</strong>l pointer se restablecerá en cero. Esto<br />

hará que la operación TBLK copie los datos <strong>de</strong>l primer bloque <strong>de</strong> registros en la<br />

tabla <strong>de</strong> fuente.<br />

El registro 4x introducido en el asiento superior será el primer registro <strong>de</strong> salida en<br />

la tabla <strong>de</strong> fuente.<br />

Nota: La tabla <strong>de</strong> fuente se ha dividido en una serie <strong>de</strong> <strong>bloques</strong> <strong>de</strong> registros, cada<br />

uno <strong>de</strong> los cuales tiene la misma longitud que el bloque <strong>de</strong> <strong>de</strong>stino. Por ello, el<br />

tamaño <strong>de</strong> la tabla <strong>de</strong> fuente es un múltiplo <strong>de</strong> la longitud <strong>de</strong>l bloque <strong>de</strong> <strong>de</strong>stino,<br />

pero su tamaño total no estará <strong>de</strong>finido específicamente en la instrucción. Si no se<br />

controla, la tabla <strong>de</strong> fuente podría consumir todos los registros 4x disponibles en<br />

la configuración <strong>de</strong>l PLC.<br />

El registro 4x introducido en el asiento intermedio es el pointer <strong>de</strong>l bloque <strong>de</strong> fuente.<br />

El primer registro en el bloque <strong>de</strong> <strong>de</strong>stino es el registro contiguo siguiente al pointer.<br />

Por ejemplo, si el pointer es el registro 400107, el primer registro en el bloque <strong>de</strong><br />

<strong>de</strong>stino será 400108.<br />

El valor almacenado en el pointer indica qué bloque <strong>de</strong> datos será copiado <strong>de</strong>s<strong>de</strong><br />

la tabla <strong>de</strong> fuente al bloque <strong>de</strong> <strong>de</strong>stino. Este valor especifica un número <strong>de</strong> bloque<br />

<strong>de</strong>ntro <strong>de</strong> la tabla <strong>de</strong> fuente.<br />

31007526 12/2006 1121


TBLK: De tabla a bloque<br />

1122 31007526 12/2006


Presentación<br />

TEST: Prueba <strong>de</strong> dos valores<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción TEST.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

181<br />

Apartado Página<br />

Descripción breve 1124<br />

Representación 1125<br />

31007526 12/2006 1123


TEST: Prueba <strong>de</strong> dos valores<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción TEST compara el tamaño <strong>de</strong> valores <strong>de</strong> 16 bits, con o sin signo en<br />

los asientos superior e intermedio y <strong>de</strong>scribe el grado <strong>de</strong> relación a través <strong>de</strong> la<br />

salida <strong>de</strong>l bloque.<br />

1124 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

valor máx.: 65.535<br />

valor máx.: 65.535<br />

con signo<br />

valor 1<br />

valor 2<br />

TEST<br />

n.º 1<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Tipo <strong>de</strong><br />

datos<br />

TEST: Prueba <strong>de</strong> dos valores<br />

valor superior > valor intermedio<br />

valor superior = valor intermedio<br />

valor superior < valor intermedio<br />

Significado<br />

Entrada superior 0x, 1x Ninguno ON = compara los valores 1 y 2.<br />

Entrada inferior 0x, 1x Ninguno ON = operación con signo.<br />

OFF = operación sin signo.<br />

Valor 1<br />

(nodo superior)<br />

Valor 2<br />

(nodo intermedio)<br />

1<br />

(nodo inferior)<br />

3x, 4x INT, UINT Valor 1, pue<strong>de</strong> mostrarse <strong>de</strong> forma<br />

explícita como número entero (rango<br />

165.535) o almacenarse en un registro<br />

3x, 4x INT, UINT Valor 2, pue<strong>de</strong> mostrarse <strong>de</strong> forma<br />

explícita como número entero (rango<br />

165.535) o almacenarse en un registro<br />

INT, UINT Valor constante, no se pue<strong>de</strong> modificar.<br />

Salida superior 0x Ninguno ON = valor 1 > valor 2.<br />

Salida intermedia 0x Ninguno ON = valor 1 = valor 2.<br />

Salida inferior 0x Ninguno ON = valor 1 < valor 2.<br />

31007526 12/2006 1125


TEST: Prueba <strong>de</strong> dos valores<br />

1126 31007526 12/2006


Presentación<br />

UCTR: Contador progresivo<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción UCTR.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

182<br />

Apartado Página<br />

Descripción breve 1128<br />

Representación 1129<br />

31007526 12/2006 1127


UCTR: Contador progresivo<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción UCTR realiza un conteo progresivo <strong>de</strong> las transiciones <strong>de</strong> entrada <strong>de</strong><br />

control <strong>de</strong> estado inactivo a activo <strong>de</strong>s<strong>de</strong> cero hasta un valor <strong>de</strong> contador<br />

preestablecido.<br />

1128 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

control<br />

valor preestablecido: 999 - PLC <strong>de</strong> 16 bits<br />

(máx.) 9.999 - PLC <strong>de</strong> 24 bits<br />

65.535 - *PLC<br />

habilitar/restablecer<br />

valor <strong>de</strong> conteo<br />

*Disponible en los siguientes PLC:<br />

E685/785<br />

L785<br />

Serie Quantum<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia <strong>de</strong><br />

memoria <strong>de</strong><br />

señal<br />

Entrada<br />

superior<br />

Tipo <strong>de</strong><br />

datos<br />

preajuste<br />

<strong>de</strong>l<br />

conteo<br />

acumulado<br />

UCTR<br />

Significado<br />

UCTR: Contador progresivo<br />

condición <strong>de</strong> salida<br />

UCTR: conteo = preajuste<br />

condición <strong>de</strong> salida<br />

UCTR: conteo <<br />

preajuste<br />

0x, 1x Ninguno OFF → OFF = inicia el funcionamiento <strong>de</strong>l<br />

contador.<br />

Entrada inferior 0x, 1x Ninguno OFF = pone el acumulador a 0.<br />

ON = contador acumulable.<br />

Preajuste <strong>de</strong>l<br />

contador<br />

(nodo superior)<br />

Conteo<br />

acumulado<br />

(nodo inferior)<br />

3x, 4x INT, UINT Valor preestablecido que pue<strong>de</strong> mostrarse <strong>de</strong><br />

forma explícita como número entero o guardarse<br />

en un registro.<br />

Valor preestablecido:<br />

Máx. 255 - PLC <strong>de</strong> 16 bits<br />

Máx. 999 - PLC <strong>de</strong> 24 bits<br />

Máx. 65.535 785L.<br />

4x INT, UINT Valor <strong>de</strong> cantidad (valor real); se incrementa <strong>de</strong><br />

uno en uno con cada transición <strong>de</strong> estado OFF a<br />

ON <strong>de</strong> la entrada superior, hasta que alcanza el<br />

valor preestablecido <strong>de</strong>l contador especificado.<br />

Salida superior 0x Ninguno ON = conteo acumulado = preajuste <strong>de</strong>l<br />

contador.<br />

Salida inferior 0x Ninguno ON = conteo acumulado < preajuste <strong>de</strong>l<br />

contador.<br />

31007526 12/2006 1129


UCTR: Contador progresivo<br />

1130 31007526 12/2006


Presentación<br />

VMER - Lectura <strong>de</strong> VME<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción VMER.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

183<br />

Apartado Página<br />

Descripción breve 11<strong>32</strong><br />

Representación 1133<br />

Descripción <strong>de</strong> parámetros 1135<br />

31007526 12/2006 1131


VMER - Lectura <strong>de</strong> VME<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> funciones<br />

El bloque <strong>de</strong> lectura <strong>de</strong> VME permite que el usuario lea datos <strong>de</strong>s<strong>de</strong> dispositivos en<br />

el bus VME. Si la permutación <strong>de</strong> bytes está activa, el byte alto se intercambia con<br />

el byte bajo <strong>de</strong> una palabra <strong>de</strong>spués <strong>de</strong> leerse <strong>de</strong>s<strong>de</strong> el bus VME. Si la permutación<br />

<strong>de</strong> palabras está habilitada, la palabra superior se intercambia con la palabra<br />

inferior <strong>de</strong> una doble <strong>de</strong>spués <strong>de</strong> leerse. Si ambas entradas están activadas al<br />

mismo tiempo, se producirá un error.<br />

Nota: Disponible únicamente en el controlador VME-424/X Quantum.<br />

11<strong>32</strong> 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

permutación <strong>de</strong><br />

bytes<br />

permutación <strong>de</strong><br />

palabras<br />

registro<br />

pointer<br />

valor <strong>de</strong><br />

VMER<br />

(1...255)<br />

activa<br />

VMER - Lectura <strong>de</strong> VME<br />

31007526 12/2006 1133<br />

error<br />

completa


VMER - Lectura <strong>de</strong> VME<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON habilita la lectura.<br />

0x, 1x Ninguno ON = permutación <strong>de</strong> bytes.<br />

Entrada inferior 0x, 1x Ninguno ON = permutación <strong>de</strong> palabras.<br />

Registro<br />

(nodo superior)<br />

Pointer<br />

(nodo<br />

intermedio)<br />

Valor<br />

(nodo inferior)<br />

4x INT, UINT,<br />

WORD<br />

4x INT, UINT<br />

WORD<br />

INT, UINT<br />

WORD<br />

Existen cinco registros <strong>de</strong> control en el<br />

nodo superior. Se asignan <strong>de</strong>l siguiente<br />

modo:<br />

4x - Código <strong>de</strong> modificador <strong>de</strong> dirección<br />

VME (39, 3A, 3D, 3E, 29 ó 2D)<br />

4x+1 a 4x+4 - El bloque <strong>de</strong> control VME.<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte p. 1135.)<br />

Pointer al primer registro <strong>de</strong> <strong>de</strong>stino.<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte p. 1135.)<br />

Constante que especifica el número <strong>de</strong><br />

registros <strong>de</strong> <strong>de</strong>stino a los que se transfieren<br />

los datos. Esta constante pue<strong>de</strong> oscilar <strong>de</strong><br />

1 a 255.<br />

Salida superior 0x Ninguno ON cuando la entrada superior recibe<br />

alimentación.<br />

Salida<br />

intermedia<br />

0x Ninguno ON cuando se produce un error.<br />

Salida inferior 0x Ninguno ON cuando ha finalizado la lectura.<br />

1134 31007526 12/2006


Descripción <strong>de</strong> parámetros<br />

Bloque <strong>de</strong><br />

control VME<br />

Estado <strong>de</strong><br />

códigos <strong>de</strong> error.<br />

Éste es el bloque <strong>de</strong> control VME.<br />

Registro Descripción<br />

Visualizado Código <strong>de</strong> modificador <strong>de</strong> dirección VME.<br />

Primer implícito Estado <strong>de</strong> códigos <strong>de</strong> error.<br />

Consulte la tabla <strong>de</strong> estado <strong>de</strong> códigos <strong>de</strong> error.<br />

Segundo implícito Longitud <strong>de</strong> datos que van a leerse/escribirse.<br />

Tercer implícito Dirección <strong>de</strong> dispositivo VME (byte bajo).<br />

Cuarto implícito Dirección <strong>de</strong> dispositivo VME (byte alto).<br />

Ésta es la tabla <strong>de</strong> estado <strong>de</strong> códigos <strong>de</strong> error.<br />

VMER - Lectura <strong>de</strong> VME<br />

Error Descripción<br />

01 Conteo <strong>de</strong> palabras no válido. Debe ser un número par <strong>de</strong> palabras.<br />

02 Longitud no válida, superior a 255.<br />

03 Longitud <strong>de</strong> datos no válida. La longitud es 0 o superior a 255.<br />

04 Modificador <strong>de</strong> dirección no válido en el primer bloque <strong>de</strong> control.<br />

05 Comando no válido en el nodo superior <strong>de</strong>l bloque SWAP.<br />

06 Interfase <strong>de</strong> bus VME no válida.<br />

07 Dirección <strong>de</strong> bus VME inexistente.<br />

08 Timeout 486 VME.<br />

09 Interfase <strong>de</strong> bus ME no configurada.<br />

10 Se han seleccionado ambas entradas <strong>de</strong> permutación: BYTE y WORD.<br />

11 Congruencia con el tipo implícito por el código <strong>de</strong> modificador <strong>de</strong> función (A16 o A2).<br />

31007526 12/2006 1135


VMER - Lectura <strong>de</strong> VME<br />

1136 31007526 12/2006


Presentación<br />

VMEW - Escritura <strong>de</strong> VME<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción VMEW.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

184<br />

Apartado Página<br />

Descripción breve 1138<br />

Representación 1139<br />

Descripción <strong>de</strong> parámetros 1141<br />

31007526 12/2006 1137


VMEW - Escritura <strong>de</strong> VME<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> funciones<br />

El bloque <strong>de</strong> escritura <strong>de</strong> VME permite que el usuario escriba datos en dispositivos<br />

<strong>de</strong>l bus VME. Si la PERMUTACIÓN DE BYTES está activa, el byte alto se<br />

intercambia con el byte bajo <strong>de</strong> una palabra antes <strong>de</strong> escribirse en el bus VME. Si<br />

la PERMUTACIÓN DE PALABRAS está activa, la palabra superior se intercambia<br />

con la palabra inferior <strong>de</strong> una doble antes <strong>de</strong> escribirse. Si ambas entradas están<br />

activadas al mismo tiempo, se producirá un error.<br />

Nota: Disponible únicamente en el controlador VME-424/X Quantum.<br />

1138 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

permutación <strong>de</strong> bytes<br />

permutación <strong>de</strong><br />

palabras<br />

registro<br />

pointer<br />

valor <strong>de</strong><br />

VMEW<br />

(1...255)<br />

activa<br />

VMEW - Escritura <strong>de</strong> VME<br />

31007526 12/2006 1139<br />

error<br />

completa


VMEW - Escritura <strong>de</strong> VME<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON habilita la lectura.<br />

0x, 1x Ninguno ON = permutación <strong>de</strong> bytes.<br />

Entrada inferior 0x, 1x Ninguno ON = permutación <strong>de</strong> palabras.<br />

Registro<br />

(nodo superior)<br />

Pointer<br />

(nodo<br />

intermedio)<br />

Valor<br />

(nodo inferior)<br />

4x INT, UINT<br />

WORD<br />

3x, 4x INT, UINT<br />

WORD<br />

INT, UINT<br />

WORD<br />

Existen cinco registros <strong>de</strong> control en el<br />

nodo superior. Se asignan <strong>de</strong>l siguiente<br />

modo:<br />

4x - Byte alto: código <strong>de</strong> modificador <strong>de</strong><br />

dirección VME (39, 3A, 3D, 3E, 29 ó 2D).<br />

4x - Byte bajo: tamaño <strong>de</strong> bus <strong>de</strong> datos.<br />

4x + 1 a 4x + 4 - Bloque <strong>de</strong> control VME.<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte p. 1141.)<br />

Pointer al primer registro <strong>de</strong> <strong>de</strong>stino.<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte la tabla <strong>de</strong>nominada p. 1141.)<br />

Constante que especifica el número <strong>de</strong><br />

registros <strong>de</strong> <strong>de</strong>stino a los que se transfieren<br />

los datos. Esta constante pue<strong>de</strong> oscilar <strong>de</strong><br />

1 a 255.<br />

Salida superior 0x Ninguno ON cuando la entrada superior recibe<br />

alimentación.<br />

Transfiere alimentación cuando la entrada<br />

superior la recibe.<br />

Salida<br />

intermedia<br />

0x Ninguno ON cuando se produce un error.<br />

Salida inferior 0x Ninguno ON cuando se completa la escritura.<br />

1140 31007526 12/2006


Descripción <strong>de</strong> parámetros<br />

Bloque <strong>de</strong><br />

control VME<br />

Estado <strong>de</strong><br />

códigos <strong>de</strong> error.<br />

Éste es el bloque <strong>de</strong> control VME.<br />

Ésta es la tabla <strong>de</strong> estado <strong>de</strong> códigos <strong>de</strong> error.<br />

VMEW - Escritura <strong>de</strong> VME<br />

Registro Descripción<br />

Visualizado Código <strong>de</strong> modificador <strong>de</strong> dirección VME.<br />

Primer implícito Estado <strong>de</strong> códigos <strong>de</strong> error.<br />

Consulte la tabla <strong>de</strong> estado <strong>de</strong> códigos <strong>de</strong> error.<br />

Segundo implícito Longitud <strong>de</strong> datos que van a leerse/escribirse.<br />

Tercer implícito Dirección <strong>de</strong> dispositivo VME (byte bajo).<br />

Cuarto implícito Dirección <strong>de</strong> dispositivo VME (byte alto).<br />

Error Descripción<br />

01 Conteo <strong>de</strong> palabras no válido. Debe ser un número par <strong>de</strong> palabras.<br />

02 Longitud no válida, superior a 255.<br />

03 Longitud <strong>de</strong> datos no válida. La longitud es 0 o superior a 255.<br />

04 Modificador <strong>de</strong> dirección no válido en el primer bloque <strong>de</strong> control.<br />

05 Comando no válido en el nodo superior <strong>de</strong>l bloque SWAP.<br />

06 Interfase <strong>de</strong> bus VME no válida.<br />

07 Dirección <strong>de</strong> bus VME inexistente.<br />

08 Timeout 486 VME.<br />

09 Interfase <strong>de</strong> bus ME no configurada.<br />

10 Se han seleccionado ambas entradas <strong>de</strong> permutación: BYTE y WORD.<br />

11 Congruencia con el tipo implícito por el código <strong>de</strong> modificador <strong>de</strong> función (A16 o A2).<br />

31007526 12/2006 1141


VMEW - Escritura <strong>de</strong> VME<br />

1142 31007526 12/2006


Presentación<br />

WRIT: Escritura<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción WRIT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

185<br />

Apartado Página<br />

Descripción breve 1144<br />

Representación 1145<br />

Descripción <strong>de</strong> los parámetros 1147<br />

31007526 12/2006 1143


WRIT: Escritura<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción WRIT envía un mensaje <strong>de</strong>s<strong>de</strong> el PLC a través <strong>de</strong> un enlace <strong>de</strong><br />

comunicaciones RIO a un visualizador ASCII (monitor, impresora, etc.).<br />

En el proceso <strong>de</strong> enviar la operación <strong>de</strong> los mensajes, WRIT realiza las siguientes<br />

funciones:<br />

Verificar la corrección <strong>de</strong> los parámetros <strong>de</strong> comunicación ASCII, por ejemplo, el<br />

número <strong>de</strong> puerto o el número <strong>de</strong> mensaje.<br />

Verificar la longitud <strong>de</strong> los campos <strong>de</strong> datos variables.<br />

Realizar la <strong>de</strong>tección y grabación <strong>de</strong> errores.<br />

Informar <strong>de</strong>l estado <strong>de</strong> la interfase RIO.<br />

WRIT necesita dos tablas <strong>de</strong> registros: una tabla <strong>de</strong> fuente en la que se copian los<br />

datos variables (el mensaje) y un bloque <strong>de</strong> control don<strong>de</strong> se i<strong>de</strong>ntifican los<br />

parámetros correspondientes al puerto <strong>de</strong> comunicaciones y al mensaje.<br />

Encontrará más información sobre cómo formatear mensajes en p. 31.<br />

1144 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

pausar operación<br />

cancelar operación<br />

longitud máx. <strong>de</strong> la<br />

tabla: 255<br />

fuente<br />

bloque <strong>de</strong><br />

control<br />

longitud <strong>de</strong><br />

la tabla<br />

WRIT<br />

activa<br />

error (un ciclo)<br />

completar (un ciclo)<br />

WRIT: Escritura<br />

31007526 12/2006 1145


WRIT: Escritura<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = inicia una instrucción WRIT.<br />

0x, 1x Ninguno ON = pausa en la operación WRIT.<br />

Entrada inferior 0x, 1x Ninguno ON = cancelación <strong>de</strong> la operación <strong>de</strong><br />

WRIT.<br />

Fuente<br />

(véase p. 1147)<br />

(nodo superior)<br />

Bloque <strong>de</strong><br />

control<br />

(véase p. 1147)<br />

(nodo<br />

intermedio)<br />

Longitud <strong>de</strong><br />

tabla<br />

(nodo inferior)<br />

3x, 4x INT, UINT,<br />

WORD<br />

4x INT, UINT,<br />

WORD<br />

Tabla <strong>de</strong> fuente<br />

Bloque <strong>de</strong> control ASCII (el primero <strong>de</strong><br />

siete registros en espera contiguos).<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte p. 1147.)<br />

INT, UINT Longitud <strong>de</strong> la tabla <strong>de</strong> fuente (cantidad <strong>de</strong><br />

registros en los que se almacenarán los<br />

datos <strong>de</strong>l mensaje), rango: 1...255<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.<br />

Salida<br />

intermedia<br />

0x Ninguno ON = error en la comunicación o ha<br />

vencido la temporización <strong>de</strong> la operación<br />

(para un ciclo).<br />

Salida inferior 0x Ninguno ON = instrucción WRIT completada (para<br />

un ciclo).<br />

1146 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Tabla <strong>de</strong> fuente<br />

(asiento<br />

superior)<br />

Bloque <strong>de</strong><br />

control (asiento<br />

intermedio)<br />

WRIT: Escritura<br />

El asiento superior contiene el primer registro 3x ó 4x en una tabla <strong>de</strong> fuente, cuya<br />

longitud se especifica en el asiento inferior. Esta tabla contiene los datos requeridos<br />

para completar el campo <strong>de</strong> variable en un mensaje.<br />

Consi<strong>de</strong>re el siguiente mensaje WRIT.<br />

vessel #1 temperature is: III<br />

El campo ASCII <strong>de</strong> 3 caracteres III es el campo <strong>de</strong> datos variables; los datos<br />

variables se cargan típicamente, a través <strong>de</strong> movimientos DX, en una tabla <strong>de</strong> datos<br />

<strong>de</strong> campos variables.<br />

El registro 4x introducido en el asiento intermedio es el primero <strong>de</strong> siete registros <strong>de</strong><br />

salida contiguos en el bloque <strong>de</strong> control.<br />

Registro Definición<br />

Visualizado Número <strong>de</strong> puerto y código <strong>de</strong> error, p. 1148<br />

Primer implícito Número <strong>de</strong> mensaje.<br />

Segundo implícito Cantidad <strong>de</strong> registros necesarios para satisfacer el formato.<br />

Tercer implícito Recuento <strong>de</strong> la cantidad <strong>de</strong> registros transferidos hasta el momento.<br />

Cuarto implícito Estado <strong>de</strong>l ciclo.<br />

Quinto implícito Reservado.<br />

Sexto implícito Suma <strong>de</strong> control <strong>de</strong> los registros 0 a 5.<br />

31007526 12/2006 1147


WRIT: Escritura<br />

Número <strong>de</strong><br />

puerto y código<br />

<strong>de</strong> error<br />

Número <strong>de</strong> puerto y código <strong>de</strong> error.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 ... 4 Número <strong>de</strong> error <strong>de</strong> PLC (consulte la tabla que aparece a continuación).<br />

5 No utilizado.<br />

6 La entrada proce<strong>de</strong>nte <strong>de</strong>l dispositivo ASCII no es compatible con el formato.<br />

7 Desbor<strong>de</strong> <strong>de</strong>l búfer <strong>de</strong> entrada. Los datos se han recibido <strong>de</strong>masiado rápido en<br />

el RIOP.<br />

8 Error USART, se ha recibido un byte no válido en el RIOP.<br />

9 Formato no válido, no se ha recibido correctamente por el RIOP.<br />

10 Dispositivo ASCII offline, compruebe el cableado.<br />

11 Mensaje ASCII finalizado <strong>de</strong> forma prematura (en modo <strong>de</strong> teclado).<br />

12 ... 16 Número <strong>de</strong>l puerto <strong>de</strong> comunicaciones (1 a <strong>32</strong>).<br />

Código <strong>de</strong> error <strong>de</strong>l PLC<br />

Bit Significado<br />

1 2 3 4<br />

0 0 0 1 Error en la entrada <strong>de</strong>l RIOP proce<strong>de</strong>nte <strong>de</strong>l dispositivo ASCII.<br />

0 0 1 0 Respuesta <strong>de</strong> excepción <strong>de</strong>l RIOP, datos no válidos.<br />

0 0 1 1 El número <strong>de</strong> secuencia <strong>de</strong>l RIOP es diferente <strong>de</strong>l valor esperado.<br />

0 1 0 0 Error <strong>de</strong> suma <strong>de</strong> control <strong>de</strong>l registro <strong>de</strong> la aplicación,<br />

normalmente <strong>de</strong>bido a que se han alterado registros <strong>de</strong> READ<br />

mientras el bloque estaba activo.<br />

0 1 0 1 Se ha <strong>de</strong>tectado un puerto o número <strong>de</strong> mensaje no válido.<br />

0 1 1 0 Interrupción iniciada por el usuario, entrada inferior activada.<br />

0 1 1 1 No hay respuesta <strong>de</strong> la estación, error <strong>de</strong> comunicación.<br />

1 0 0 0 Asiento interrumpido <strong>de</strong>bido a la instrucción SKP.<br />

1 0 0 1 Campo <strong>de</strong> mensajes confuso, recargar memoria.<br />

1 0 1 0 Puerto no configurado en la asignación <strong>de</strong> E/S.<br />

1 0 1 1 Solicitud ASCII no válida.<br />

1 1 0 0 Respuesta <strong>de</strong>sconocida <strong>de</strong>l puerto ASCII.<br />

1 1 0 1 Elemento ASCII no válido <strong>de</strong>tectado en la lógica <strong>de</strong> la aplicación.<br />

1 1 1 1 RIOP <strong>de</strong>l PLC fuera <strong>de</strong> servicio.<br />

1148 31007526 12/2006


Presentación<br />

XMIT - Transmisión<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción XMIT - Transmisión.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

186<br />

Apartado Página<br />

Descripción breve 1150<br />

Funciones Modbus XMIT 1151<br />

31007526 12/2006 1149


XMIT - Transmisión<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> funciones<br />

El bloque <strong>de</strong> funciones XMIT (transmisión) envía mensajes Modbus <strong>de</strong> un PLC<br />

maestro a varios PLC esclavo o envía ca<strong>de</strong>nas <strong>de</strong> caracteres ASCII <strong>de</strong>s<strong>de</strong> los<br />

puertos esclavo Modbus 1 ó 2 <strong>de</strong>l PLC a impresoras y terminales ASCII. XMIT envía<br />

estos mensajes a través <strong>de</strong> mó<strong>de</strong>ms <strong>de</strong> conexión telefónica, mó<strong>de</strong>ms <strong>de</strong> radio o<br />

simplemente por medio <strong>de</strong> una conexión directa.<br />

Para obtener información <strong>de</strong>tallada sobre el bloque <strong>de</strong> funciones XMIT,<br />

consulte p. 1151.<br />

XMIT dispone <strong>de</strong> tres modalida<strong>de</strong>s: comunicación, estado <strong>de</strong> puerto y conversión.<br />

Estas modalida<strong>de</strong>s se <strong>de</strong>scriben en las secciones siguientes:<br />

Bloque <strong>de</strong> comunicación XMIT, p. 1157<br />

Bloque <strong>de</strong> estado <strong>de</strong>l puerto XMIT, p. 1169<br />

Bloque <strong>de</strong> conversión XMIT, p. 1177<br />

El XMIT realiza funciones <strong>de</strong> entradas ASCII generales en la modalidad <strong>de</strong><br />

comunicación, incluidas las ASCII simples y las ASCII finalizadas. Pue<strong>de</strong> utilizar un<br />

bloque adicional XMIT para enviar información sobre estado <strong>de</strong> puertos a registros<br />

mientras otro módulo XMIT realiza la función <strong>de</strong> comunicación ASCII. Podrá<br />

importar y exportar ASCII o datos binarios en el PLC y convertirlos en distintos tipos<br />

<strong>de</strong> datos binarios o ASCII para enviarlos a dispositivos DCE según las necesida<strong>de</strong>s<br />

<strong>de</strong> su aplicación.<br />

El bloque posee un sistema <strong>de</strong> diagnóstico interno que garantiza que no hay ningún<br />

otro módulo XMIT activo en el PLC. Dentro <strong>de</strong>l bloque XMIT, una tabla <strong>de</strong> control<br />

permite al usuario manejar los enlaces entre el PLC y los dispositivos DCE (Data<br />

Communication Equipment) conectados a los puertos 1 ó 2 <strong>de</strong>l PLC. El bloque XMIT<br />

no activa el LED <strong>de</strong>l puerto cuando está transmitiendo datos.<br />

Nota: El protocolo Modbus es un protocolo maestro/esclavo diseñado para tener<br />

un único maestro que son<strong>de</strong>a varios esclavos. Por lo tanto, cuando utilice el<br />

bloque XMIT en una red con varios maestros, correspon<strong>de</strong> al usuario resolver<br />

conflictos y evitar colisiones, lo cual podrá hacerse fácilmente a través <strong>de</strong> una<br />

programación <strong>de</strong> Lad<strong>de</strong>r <strong>Logic</strong>.<br />

1150 31007526 12/2006


Funciones Modbus XMIT<br />

XMIT - Transmisión<br />

Presentación El bloque <strong>de</strong> función XMIT es compatible con los siguientes códigos <strong>de</strong> función<br />

Modbus:<br />

Códigos <strong>de</strong><br />

función Modbus<br />

<strong>de</strong> 01 a 06<br />

01 - 06<br />

08<br />

15 y 16<br />

20 y 21<br />

Para los mensajes Modbus, la matriz MSG_OUT <strong>de</strong>be contener la tabla <strong>de</strong><br />

<strong>de</strong>finición <strong>de</strong> Modbus. La tabla <strong>de</strong> <strong>de</strong>finición <strong>de</strong> Modbus para el código <strong>de</strong> función<br />

<strong>de</strong> Modbus: 01, 02, 03, 04, 05, 06, 15 y 16 constan <strong>de</strong> 5 registros y <strong>de</strong>be establecer<br />

XMIT_SET.MessageLen en 5 para que el XMIT funcione correctamente. La tabla<br />

<strong>de</strong> <strong>de</strong>finición <strong>de</strong> Modbus aparece en la tabla siguiente<br />

Para los mensajes Modbus, la matriz MSG_OUT <strong>de</strong>be contener la tabla <strong>de</strong><br />

<strong>de</strong>finición <strong>de</strong> Modbus. La tabla <strong>de</strong> <strong>de</strong>finición <strong>de</strong> Modbus para el código <strong>de</strong> función<br />

<strong>de</strong> Modbus: 01, 02, 03, 04, 05, 06, 15 y 16 constan <strong>de</strong> 5 registros y <strong>de</strong>be establecer<br />

XMIT_SET.MessageLen en 5 para que el XMIT funcione correctamente. La tabla<br />

<strong>de</strong> <strong>de</strong>finición <strong>de</strong> Modbus aparece en la tabla siguiente<br />

Códigos <strong>de</strong> función <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>finición <strong>de</strong> Modbus (<strong>de</strong> 01 a 06, 15 y 16)<br />

Contenido Descripción<br />

Código <strong>de</strong><br />

función <strong>de</strong><br />

Modbus<br />

(MSG_OUT[1])<br />

Cantidad<br />

(MSG_OUT[2])<br />

Dirección <strong>de</strong>l<br />

PLC esclavo<br />

(MSG_OUT[3])<br />

XMIT es compatible con los siguientes códigos <strong>de</strong> función:<br />

01= Leer varias bobinas (0x)<br />

02 =Leer varias entradas binarias (1x)<br />

03= Leer varios registros en espera (4x)<br />

04= Leer varios registros <strong>de</strong> entrada (3x)<br />

05 = Escribir una sola bobina (0x)<br />

06 = Escribir un solo registro en espera (4x)<br />

15= Escribir varias bobinas (0x)<br />

16= Escribir varios registros en espera (4x)<br />

Introduzca la cantidad <strong>de</strong> información que <strong>de</strong>sea escribir en el PLC esclavo<br />

o leer <strong>de</strong>l PLC esclavo. Por ejemplo, introduzca 100 para leer 100 registros<br />

en espera <strong>de</strong>l PLC esclavo o introduzca <strong>32</strong> para escribir <strong>32</strong> bobinas en el<br />

PLC esclavo. Hay un límite <strong>de</strong> tamaño con respecto a la cantidad en función<br />

<strong>de</strong>l mo<strong>de</strong>lo <strong>de</strong>l PLC. Consulte el Apéndice A para obtener más información<br />

acerca <strong>de</strong> los límites.<br />

Introduzca la dirección <strong>de</strong>l PLC Modbus esclavo. Normalmente, el rango <strong>de</strong><br />

dirección <strong>de</strong>l Modbus va <strong>de</strong> 1 a 247. Para enviar un mensaje Modbus a<br />

varios PLC, introduzca 0 en la dirección <strong>de</strong>l PLC esclavo. Esto se <strong>de</strong>nomina<br />

modo <strong>de</strong> difusión. El modo <strong>de</strong> difusión sólo es compatible con los códigos<br />

<strong>de</strong> función Modbus que escriben información <strong>de</strong>s<strong>de</strong> el PLC maestro a los<br />

PLC esclavos. El modo <strong>de</strong> difusión NO es compatible con los códigos <strong>de</strong><br />

función Modbus que leen información <strong>de</strong> los PLC esclavos.<br />

31007526 12/2006 1151


XMIT - Transmisión<br />

Contenido Descripción<br />

Campo <strong>de</strong> datos<br />

<strong>de</strong>l PLC esclavo<br />

(MSG_OUT[4])<br />

Campo <strong>de</strong> datos<br />

<strong>de</strong>l PLC<br />

maestro<br />

(MSG_OUT[5])<br />

Para un comando <strong>de</strong> lectura, el campo <strong>de</strong> datos <strong>de</strong>l PLC esclavo es el<br />

origen <strong>de</strong> la información. Para un comando <strong>de</strong> escritura, el campo <strong>de</strong> datos<br />

<strong>de</strong>l PLC esclavo es el <strong>de</strong>stino <strong>de</strong> la información. Por ejemplo, cuando quiera<br />

leer bobinas (<strong>de</strong> 00300 a 00500) <strong>de</strong>s<strong>de</strong> un PLC esclavo, introduzca 300 en<br />

este campo. Cuando quiera escribir información <strong>de</strong>s<strong>de</strong> un PLC maestro y<br />

ubicarla en el registro (40100) <strong>de</strong>l PLC esclavo, introduzca 100 en este<br />

campo. En función <strong>de</strong>l tipo <strong>de</strong> comando Modbus (escritura o lectura), los<br />

campos <strong>de</strong> datos <strong>de</strong>stino y origen <strong>de</strong>ben ser como aparecen en la siguiente<br />

tabla <strong>de</strong> campos <strong>de</strong> datos <strong>de</strong> origen y <strong>de</strong>stino.<br />

Para un comando <strong>de</strong> lectura, el campo <strong>de</strong> datos <strong>de</strong>l PLC maestro es el<br />

<strong>de</strong>stino <strong>de</strong> los datos <strong>de</strong>vueltos por el esclavo. Para un comando <strong>de</strong><br />

escritura, el campo <strong>de</strong> datos <strong>de</strong>l PLC maestro es el origen <strong>de</strong> la información.<br />

Por ejemplo, cuando quiera escribir bobinas (<strong>de</strong> 00016 a 000<strong>32</strong>) ubicadas<br />

en el PLC maestro a un PLC esclavo, introduzca 16 en el campo. Cuando<br />

quiera leer registros <strong>de</strong> entrada (<strong>de</strong> 30001 a 30100) <strong>de</strong> un PLC esclavo y<br />

ubicar los datos en el campo <strong>de</strong> datos <strong>de</strong>l PLC maestro (<strong>de</strong> 40100 a 40199),<br />

introduzca 100 en este campo. En función <strong>de</strong>l tipo <strong>de</strong> comando Modbus<br />

(escritura o lectura), los campos <strong>de</strong> datos <strong>de</strong> <strong>de</strong>stino y <strong>de</strong> origen <strong>de</strong>ben ser<br />

como se <strong>de</strong>talla en la siguiente tabla <strong>de</strong> campos <strong>de</strong> datos <strong>de</strong> origen y<br />

<strong>de</strong>stino.<br />

Códigos <strong>de</strong> función para los campos <strong>de</strong> datos <strong>de</strong> origen y <strong>de</strong>stino<br />

(<strong>de</strong> 01 a 06, 15 y 16)<br />

Código <strong>de</strong> función Campo <strong>de</strong> datos <strong>de</strong>l PLC<br />

maestro<br />

03= (Leer varios 4x) 4x (<strong>de</strong>stino) 4x (origen)<br />

04= (Leer varios 3x) 4x (<strong>de</strong>stino) 3x (origen)<br />

01= (Leer varios 0x) 0x (<strong>de</strong>stino) 0x (origen)<br />

02= (Leer varios 1x) 0x (<strong>de</strong>stino) 1x (origen)<br />

16= (Escribir varios 4x) 4x (origen) 4x (<strong>de</strong>stino)<br />

15= (Escribir varios 0x) 0x (origen) 0x (<strong>de</strong>stino)<br />

05 = (Escribir un solo 0x) 0x (origen) 0x (<strong>de</strong>stino)<br />

06 = (Escribir un solo 4x) 4x (origen) 4x (<strong>de</strong>stino)<br />

Campo <strong>de</strong> datos <strong>de</strong>l PLC<br />

esclavo<br />

Cuando <strong>de</strong>see enviar 20 mensajes Modbus fuera <strong>de</strong>l PLC, <strong>de</strong>be transferir 20 tablas<br />

<strong>de</strong> <strong>de</strong>finición Modbus, una a una, al MSG_OUT tras cada operación correcta <strong>de</strong>l<br />

XMIT o pue<strong>de</strong> programar 20 <strong>bloques</strong> XMIT in<strong>de</strong>pendientes y activarlos, <strong>de</strong> uno en<br />

uno, mediante la lógica <strong>de</strong> aplicación.<br />

1152 31007526 12/2006


Código <strong>de</strong><br />

función <strong>de</strong><br />

Modbus (08)<br />

XMIT - Transmisión<br />

La tabla <strong>de</strong> <strong>de</strong>finición <strong>de</strong> Modbus para el código <strong>de</strong> función <strong>de</strong> Modbus: 08 consta<br />

<strong>de</strong> 5 registros y <strong>de</strong>be establecer XMIT_SET.MessageLen en 5 para los mensajes<br />

Modbus, la matriz MSG_OUT <strong>de</strong>be contener la <strong>de</strong>finición <strong>de</strong> Modbus para el<br />

correcto funcionamiento <strong>de</strong> XMIT. La tabla <strong>de</strong> <strong>de</strong>finición <strong>de</strong> Modbus aparece en la<br />

tabla siguiente.<br />

Códigos <strong>de</strong> función <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>finición <strong>de</strong> Modbus (08)<br />

Contenido Descripción<br />

Código <strong>de</strong> función <strong>de</strong> Modbus<br />

(MSG_OUT[1])<br />

XMIT es compatible con el siguiente código <strong>de</strong> función: 08=<br />

Diagnósticos<br />

Diagnósticos (MSG_OUT[2]) Introduzca el valor <strong>de</strong>cimal <strong>de</strong>l código <strong>de</strong> subfunción <strong>de</strong><br />

diagnósticos en este campo para realizar la función <strong>de</strong><br />

diagnósticos que <strong>de</strong>see. Admite las siguientes<br />

subfunciones <strong>de</strong> diagnóstico:<br />

Código Descripción<br />

00 Devolución <strong>de</strong> los datos <strong>de</strong> la pregunta<br />

01 Reinicio <strong>de</strong> la opción <strong>de</strong> comunicación<br />

02 Devolución <strong>de</strong>l registro <strong>de</strong> diagnóstico<br />

03 Modificación <strong>de</strong>l <strong>de</strong>limitador <strong>de</strong> entradas ASCII<br />

04 Forzado <strong>de</strong> modo <strong>de</strong> sólo escucha<br />

05 ... 09 Reservado<br />

10 Reinicio <strong>de</strong> contadores (y registros <strong>de</strong> diagnóstico<br />

en 384, 484)<br />

11 Devolución contador mensajes bus<br />

12 Devolución contador error comun. bus<br />

13 Devolución contador error excepción bus<br />

14 ... 15 No compatible<br />

16 Devolución contador NAK <strong>de</strong>l esclavo<br />

17 Devolución contador ocupado <strong>de</strong>l esclavo<br />

18 Devolución <strong>de</strong>l contador <strong>de</strong> <strong>de</strong>sbordamiento <strong>de</strong><br />

caracteres <strong>de</strong>l bus<br />

19 ... 21 No compatible<br />

Dirección <strong>de</strong>l PLC esclavo<br />

(MSG_OUT[3])<br />

El contenido <strong>de</strong>l campo <strong>de</strong><br />

datos <strong>de</strong> la función <strong>de</strong><br />

diagnóstico (MSG_OUT[4])<br />

Introduzca la dirección <strong>de</strong>l PLC Modbus esclavo.<br />

Normalmente, el rango <strong>de</strong> dirección <strong>de</strong>l Modbus va <strong>de</strong> 1 a<br />

247. El código <strong>de</strong> función dosis 8 NO es compatible con el<br />

modo <strong>de</strong> difusión (Dirección 0)<br />

Debe introducir el valor <strong>de</strong>cimal necesario para el campo <strong>de</strong><br />

datos <strong>de</strong> la subfunción <strong>de</strong> diagnóstico específica. Para las<br />

subfunciones 02, 04, 10, 11, 12, 13, 16, 17 y 18, este valor<br />

se establece a cero <strong>de</strong> manera automática. Para las<br />

subfunciones 00, 01 y 03, <strong>de</strong>be introducir el valor <strong>de</strong>l campo<br />

<strong>de</strong> datos <strong>de</strong>seado. Para obtener más información, consulte<br />

la guía <strong>de</strong> referencia <strong>de</strong>l protocolo Modbus Modicon (PI-<br />

MBUS-300).<br />

31007526 12/2006 1153


XMIT - Transmisión<br />

Códigos <strong>de</strong><br />

función <strong>de</strong><br />

Modbus (20, 21)<br />

Contenido Descripción<br />

Campo <strong>de</strong> datos <strong>de</strong>l PLC<br />

maestro (MSG_OUT[5])<br />

Para todas las subfunciones, el campo <strong>de</strong> datos <strong>de</strong>l PLC<br />

maestro es el <strong>de</strong>stino <strong>de</strong> los datos <strong>de</strong>vueltos por el esclavo.<br />

Debe especificar un registro 4x que señale el inicio <strong>de</strong>l<br />

campo <strong>de</strong> datos don<strong>de</strong> se ubican los datos <strong>de</strong>vueltos. Por<br />

ejemplo, para ubicar los datos en el campo <strong>de</strong> datos <strong>de</strong>l<br />

PLC maestro que comience por (40100), introduzca 100 en<br />

este campo. La subfunción 04 NO contesta. Para obtener<br />

más información, consulte la guía <strong>de</strong> referencia <strong>de</strong>l<br />

protocolo Modbus Modicon (PI-MBUS-300).<br />

Para los mensajes Modbus, la matriz MSG_OUT <strong>de</strong>be contener la tabla <strong>de</strong><br />

<strong>de</strong>finición <strong>de</strong> Modbus. Tabla <strong>de</strong> <strong>de</strong>finición <strong>de</strong> Modbus para los códigos <strong>de</strong> función<br />

<strong>de</strong> Modbus: 20 Y 21 constan <strong>de</strong> 6 registros y <strong>de</strong>be establecer<br />

XMIT_SET.MessageLen en 6 para que el XMIT funcione correctamente. La tabla<br />

<strong>de</strong> <strong>de</strong>finición <strong>de</strong> Modbus aparece en la tabla siguiente.<br />

Códigos <strong>de</strong> función <strong>de</strong> la tabla <strong>de</strong> <strong>de</strong>finición <strong>de</strong> Modbus (20, 21)<br />

Contenido Descripción<br />

Código <strong>de</strong> función <strong>de</strong><br />

Modbus (MSG_OUT[1])<br />

XMIT es compatible con los siguientes códigos <strong>de</strong> función: 20 =<br />

Leer referencia general (6x) 21 = Escribir referencia general (6x)<br />

Cantidad (MSG_OUT[2]) Introduzca la cantidad <strong>de</strong> información que <strong>de</strong>sea escribir en el PLC<br />

esclavo o leer <strong>de</strong>l PLC esclavo. Por ejemplo, introduzca 100 para<br />

leer 100 registros <strong>de</strong> mantenimiento <strong>de</strong>l PLC esclavo o introduzca<br />

<strong>32</strong> para escribir <strong>32</strong> bobinas en un PLC esclavo. Hay un límite <strong>de</strong><br />

tamaño con respecto a la cantidad en función <strong>de</strong>l mo<strong>de</strong>lo <strong>de</strong>l PLC.<br />

Consulte el Apéndice A para obtener más información acerca <strong>de</strong><br />

los límites.<br />

Dirección <strong>de</strong>l PLC<br />

esclavo (MSG_OUT[3])<br />

Campo <strong>de</strong> datos <strong>de</strong>l PLC<br />

esclavo (MSG_OUT[4])<br />

Introduzca la dirección <strong>de</strong>l PLC Modbus <strong>de</strong>l esclavo.<br />

Normalmente, el rango <strong>de</strong> dirección <strong>de</strong>l Modbus va <strong>de</strong> 1 a 247. El<br />

código <strong>de</strong> función 20 y 21 NO es compatible con el modo <strong>de</strong><br />

difusión (Dirección 0).<br />

Para un comando <strong>de</strong> lectura, el campo <strong>de</strong> datos <strong>de</strong>l PLC esclavo<br />

es el origen <strong>de</strong> la información. Para un comando <strong>de</strong> escritura, el<br />

campo <strong>de</strong> datos <strong>de</strong>l PLC esclavo es el <strong>de</strong>stino <strong>de</strong> la información.<br />

Por ejemplo, cuando quiera leer registros (<strong>de</strong> 600300 a 600399)<br />

<strong>de</strong>s<strong>de</strong> un PLC esclavo, introduzca 300 en este campo. Cuando<br />

quiera escribir información <strong>de</strong>s<strong>de</strong> un PLC maestro y ubicarla en el<br />

registro (600100) <strong>de</strong>l PLC esclavo, introduzca 100 en este campo.<br />

En función <strong>de</strong>l tipo <strong>de</strong> comando Modbus (escritura o lectura), los<br />

campos <strong>de</strong> datos <strong>de</strong> <strong>de</strong>stino y <strong>de</strong> origen <strong>de</strong>ben ser como aparecen<br />

en la siguiente tabla <strong>de</strong> campos <strong>de</strong> datos <strong>de</strong> origen y <strong>de</strong>stino. El<br />

registro extendido inferior se <strong>de</strong>nomina registro "cero" (600000). El<br />

registro en espera inferior se <strong>de</strong>nomina registro "uno" (400001).<br />

1154 31007526 12/2006


Contenido Descripción<br />

Campo <strong>de</strong> datos <strong>de</strong>l PLC<br />

maestro (MSG_OUT[5])<br />

Número <strong>de</strong> archivo<br />

(MSG_OUT[6])<br />

XMIT - Transmisión<br />

Para un comando <strong>de</strong> lectura, el campo <strong>de</strong> datos <strong>de</strong>l PLC maestro<br />

es el <strong>de</strong>stino <strong>de</strong> los datos <strong>de</strong>vueltos por el esclavo. Para un<br />

comando <strong>de</strong> escritura, el campo <strong>de</strong> datos <strong>de</strong>l PLC maestro es el<br />

origen <strong>de</strong> la información. Por ejemplo, cuando quiera escribir<br />

registros (<strong>de</strong> 40016 a 400<strong>32</strong>) ubicados en el PLC maestro a<br />

registros 6x en el PLC esclavo, introduzca 16 en este campo.<br />

Cuando quiera leer registros 6x (<strong>de</strong> 600001 a 600100) <strong>de</strong> un PLC<br />

esclavo y ubicar los datos en el campo <strong>de</strong> datos <strong>de</strong>l PLC maestro<br />

(<strong>de</strong> 40100 a 40199), introduzca 100 en este campo. En función <strong>de</strong>l<br />

tipo <strong>de</strong> comando Modbus (escritura o lectura), los campos <strong>de</strong><br />

datos <strong>de</strong> <strong>de</strong>stino y <strong>de</strong> origen <strong>de</strong>ben ser como aparecen en la<br />

siguiente tabla <strong>de</strong> campos <strong>de</strong> datos <strong>de</strong> origen y <strong>de</strong>stino. El registro<br />

extendido inferior se <strong>de</strong>nomina registro "cero" (600000). El registro<br />

<strong>de</strong> mantenimiento inferior se <strong>de</strong>nomina registro "uno" (400001).<br />

Introduzca el número <strong>de</strong> archivo para que los registros 6x en los<br />

que se va a escribir o que se van a leer. (<strong>de</strong> 1 a 10) en función <strong>de</strong>l<br />

tamaño <strong>de</strong>l campo <strong>de</strong> datos <strong>de</strong>l registro extendido. 600001 es el<br />

archivo 1 60001, y 690001 es el archivo 10 60001, según lo<br />

<strong>de</strong>tecta el editor <strong>de</strong> datos <strong>de</strong> referencia.<br />

Códigos <strong>de</strong> función para los campos <strong>de</strong> datos <strong>de</strong> origen y <strong>de</strong>stino (20, 21)<br />

Código <strong>de</strong> función Campo <strong>de</strong> datos <strong>de</strong>l PLC<br />

maestro<br />

20 (Leer referencia general 6x) 4x (<strong>de</strong>stino) 6x (origen)<br />

21 (Escribir referencia general 6x) 4x (origen) 6x (<strong>de</strong>stino)<br />

Campo <strong>de</strong> datos <strong>de</strong>l PLC<br />

esclavo<br />

Cuando <strong>de</strong>see enviar 20 mensajes Modbus fuera <strong>de</strong>l PLC, <strong>de</strong>be transferir 20 tablas<br />

<strong>de</strong> <strong>de</strong>finición Modbus una tras otra al MSG_OUT tras el correcto funcionamiento <strong>de</strong>l<br />

XMIT o pue<strong>de</strong> programar 20 <strong>bloques</strong> XMIT y activarlos, <strong>de</strong> uno en uno, mediante la<br />

lógica <strong>de</strong> aplicación.<br />

31007526 12/2006 1155


XMIT - Transmisión<br />

1156 31007526 12/2006


Presentación<br />

Bloque <strong>de</strong> comunicación XMIT<br />

Introducción En este capítulo se <strong>de</strong>scribe el bloque <strong>de</strong> comunicación XMIT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

187<br />

Apartado Página<br />

Descripción breve 1158<br />

Representación 1159<br />

Descripción <strong>de</strong> parámetros 1161<br />

Descripción <strong>de</strong> parámetros 1166<br />

Descripción <strong>de</strong> parámetros 1168<br />

31007526 12/2006 1157


Bloque <strong>de</strong> comunicación XMIT<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> funciones<br />

El bloque <strong>de</strong> comunicación XMIT sirve para recibir y transmitir mensajes ASCII y<br />

mensajes maestro <strong>de</strong> Modbus por medio <strong>de</strong> puertos PLC.<br />

El bloque <strong>de</strong> instrucciones XMIT no funcionará correctamente en los siguientes<br />

casos:<br />

Las instrucciones NSUP y XMIT cargables no están instaladas.<br />

La instrucción NSUP cargable está instalada <strong>de</strong>spués <strong>de</strong> XMIT.<br />

Las instrucciones NSUP y XMIT cargables están instaladas en un PLC Quantum<br />

con un executive anticuado (anterior a las versiones 2.10 ó 2.12).<br />

Para obtener una <strong>de</strong>scripción general <strong>de</strong> la instrucción XMIT, consulte p. 1150.<br />

1158 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

inicio<br />

cancelación<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

puerto<br />

n.º 0001<br />

o<br />

n.º 0002<br />

registro<br />

constante<br />

XMIT =<br />

n.º 0016<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Bloque <strong>de</strong> comunicación XMIT<br />

la operación está activa<br />

la operación no ha finalizado<br />

satisfactoriamente<br />

operación correcta<br />

0x, 1x Ninguno ON inicia una instrucción XMIT y START <strong>de</strong>berá<br />

permanecer en estado activo hasta que la<br />

operación haya finalizado satisfactoriamente o<br />

se produzca un error.<br />

0x, 1x Ninguno ON interrumpe cualquier operación XMIT activa<br />

y fuerza el puerto a la modalidad esclavo. En el<br />

registro <strong>de</strong> estado <strong>de</strong> error se insertará el código<br />

<strong>de</strong> interrupción (121). El puerto permanecerá<br />

cerrado mientras esta entrada esté activa.<br />

Nota:Para restablecer un error <strong>de</strong> XMIT y borrar<br />

el registro <strong>de</strong> error, la entrada superior <strong>de</strong>be<br />

permanecer inactiva durante al menos un ciclo<br />

<strong>de</strong>l PLC.<br />

31007526 12/2006 1159


Bloque <strong>de</strong> comunicación XMIT<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Puerto n.º 0001<br />

o n.º 0002<br />

(nodo superior)<br />

Registro<br />

(nodo<br />

intermedio)<br />

#0016<br />

(nodo inferior)<br />

4x INT,<br />

UINT,<br />

WORD<br />

4x INT,<br />

UINT,<br />

WORD<br />

INT,<br />

UINT,<br />

WORD<br />

El nodo superior <strong>de</strong>be contener una <strong>de</strong> las<br />

siguientes constantes, ya sea para seleccionar<br />

el puerto n.º 1 <strong>de</strong>l PLC (n.º 0001), o para<br />

seleccionar el puerto n.º 2 <strong>de</strong>l PLC (n.º 0002).<br />

Nota: La versión cargable ACEPTA registros<br />

4xxxx en el nodo superior; la versión integrada<br />

NO.<br />

El registro 4xxxx introducido en el nodo<br />

intermedio es el primero <strong>de</strong> un grupo <strong>de</strong> 16<br />

registros en espera contiguos que compren<strong>de</strong>n<br />

el bloque <strong>de</strong> control, tal como se muestra en la<br />

tabla <strong>de</strong> control <strong>de</strong> comunicación.<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte p. 1161 en la <strong>de</strong>scripción <strong>de</strong><br />

parámetros: nodo intermedio - Bloque <strong>de</strong><br />

comunicación XMIT.)<br />

Importante:NO modifique la dirección <strong>de</strong>l nodo<br />

intermedio <strong>de</strong>l bloque XMIT ni borre la dirección<br />

<strong>de</strong>s<strong>de</strong> el bloque mientras el programa esté<br />

activo. Esto bloqueará el puerto e impedirá las<br />

comunicaciones.<br />

El nodo inferior <strong>de</strong>be contener una constante<br />

igual al n.º 0016. Éste es el número <strong>de</strong> registros<br />

utilizados por la instrucción XMIT.<br />

Salida superior 0x Ninguno ON mientras la operación XMIT está en curso.<br />

Transfiere alimentación mientras la operación<br />

XMIT está en curso.<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x Ninguno ON cuando XMIT haya <strong>de</strong>tectado un error o<br />

enviado un aviso <strong>de</strong> cancelación.<br />

Transfiere alimentación cuando XMIT <strong>de</strong>tecta un<br />

error o cuando se cancela una operación XMIT.<br />

Salida inferior 0x Ninguno ON sólo durante un ciclo cuando la operación<br />

XMIT haya finalizado correctamente.<br />

Transfiere alimentación cuando la operación<br />

XMIT ha finalizado correctamente.<br />

Nota: La entrada START <strong>de</strong>be permanecer ON<br />

hasta que OPERATION SUCCESSFUL esté<br />

OFF.<br />

1160 31007526 12/2006


Descripción <strong>de</strong> parámetros<br />

Tabla <strong>de</strong> control<br />

<strong>de</strong> comunicación<br />

Bloque <strong>de</strong> comunicación XMIT<br />

Esta tabla representa el primero <strong>de</strong> un grupo <strong>de</strong> 16 registros en espera contiguos<br />

que compren<strong>de</strong>n el bloque <strong>de</strong> control.<br />

Registro Nombre Descripción Entradas<br />

no válidas<br />

4xxxx Número <strong>de</strong> revisión Muestra el número <strong>de</strong> revisión actual <strong>de</strong>l<br />

bloque XMIT.<br />

Este número se carga automáticamente<br />

mediante el bloque y éste sobrescribe<br />

cualquier otro número introducido en este<br />

registro.<br />

4xxxx + 1 Estado <strong>de</strong> fallo Este campo muestra un código <strong>de</strong> error<br />

generado por el bloque <strong>de</strong> estado <strong>de</strong> puerto<br />

XMIT.<br />

(Para obtener una información más<br />

<strong>de</strong>tallada, consulte p. 1166 en la <strong>de</strong>scripción<br />

<strong>de</strong> parámetros: sección <strong>de</strong>l bloque <strong>de</strong><br />

comunicación XMIT.)<br />

4xxxx + 2 Disponible para el<br />

usuario<br />

El bloque XMIT no utiliza este registro. Sin<br />

embargo, pue<strong>de</strong> utilizarse en Lad<strong>de</strong>r <strong>Logic</strong><br />

como pointer. Un modo eficaz <strong>de</strong> utilizar el<br />

bloque XMIT es situar un valor <strong>de</strong> pointer <strong>de</strong><br />

una instrucción TBLK en este registro.<br />

4xxxx + 3 Velocidad <strong>de</strong> datos XMIT admite las siguientes velocida<strong>de</strong>s <strong>de</strong><br />

transferencia <strong>de</strong> datos: 50, 75, 110, 134, 150,<br />

300, 600, 1.200, 1.800, 2.000, 2.400, 3.600,<br />

4.800, 7.200, 9.600 y 19.200.<br />

Para configurar una velocidad <strong>de</strong><br />

transferencia <strong>de</strong> datos, escriba su número<br />

<strong>de</strong>cimal en este campo. Cuando se introduce<br />

una velocidad no válida, el bloque muestra<br />

un error <strong>de</strong> configuración no válida (código<br />

<strong>de</strong> error 127) en el registro Estado <strong>de</strong> fallo<br />

(4xxxx + 1).<br />

Sólo<br />

lectura<br />

Sólo<br />

lectura<br />

Lectura/<br />

escritura<br />

Lectura/<br />

escritura<br />

31007526 12/2006 1161


Bloque <strong>de</strong> comunicación XMIT<br />

Registro Nombre Descripción Entradas<br />

no válidas<br />

4xxxx + 4 Bits <strong>de</strong> datos XMIT admite los siguientes bits <strong>de</strong> datos: 7 y<br />

8.<br />

Para configurar un tamaño <strong>de</strong> bit <strong>de</strong> datos,<br />

escriba su número <strong>de</strong>cimal en este registro.<br />

Nota: Los mensajes Modbus pue<strong>de</strong>n<br />

enviarse en modalidad ASCII o RTU. La<br />

modalidad ASCII requiere 7 bits <strong>de</strong> datos,<br />

mientras que la modalidad RTU requiere 8<br />

bits <strong>de</strong> datos. Cuando se envía un mensaje<br />

con caracteres ASCII, pue<strong>de</strong> utilizar 7 u 8 bits<br />

<strong>de</strong> datos. Cuando se introduce un bit <strong>de</strong><br />

datos no válido, el bloque muestra un error<br />

<strong>de</strong> configuración no válida (código <strong>de</strong> error<br />

127) en el registro Estado <strong>de</strong> fallo (4xxxx + 1).<br />

4xxxx + 5 Bits <strong>de</strong> paridad XMIT admite la siguiente paridad: ninguna,<br />

impar o par. Escriba un <strong>de</strong>cimal: 0 = sin<br />

paridad, 1 = paridad impar o 2 = paridad par.<br />

Cuando se introduce una paridad no válida,<br />

el bloque muestra un error <strong>de</strong> configuración<br />

no válida (código <strong>de</strong> error 127) en el registro<br />

Estado <strong>de</strong> fallo (4xxxx + 1).<br />

4xxxx + 6 Bits <strong>de</strong> parada XMIT admite uno <strong>de</strong> dos bits <strong>de</strong> parada.<br />

Escriba un <strong>de</strong>cimal: 1 = un bit <strong>de</strong> parada o 2<br />

= dos bits <strong>de</strong> parada. Cuando se introduce un<br />

bit <strong>de</strong> parada no válido, el bloque muestra un<br />

error <strong>de</strong> configuración no válida (código <strong>de</strong><br />

error 127) en el registro Estado <strong>de</strong> fallo<br />

(4xxxx + 1).<br />

4xxxx + 7 Disponible para el<br />

usuario<br />

El bloque XMIT no utiliza este registro. Sin<br />

embargo, pue<strong>de</strong> utilizarse en Lad<strong>de</strong>r <strong>Logic</strong><br />

como pointer. Un modo eficaz <strong>de</strong> utilizar el<br />

bloque XMIT es situar un valor <strong>de</strong> pointer <strong>de</strong><br />

una instrucción TBLK en este registro.<br />

Lectura/<br />

escritura<br />

Lectura/<br />

escritura<br />

Lectura/<br />

escritura<br />

Lectura/<br />

escritura<br />

1162 31007526 12/2006


4xxxx + 8 Palabra <strong>de</strong><br />

comando<br />

Bloque <strong>de</strong> comunicación XMIT<br />

Registro Nombre Descripción Entradas<br />

no válidas<br />

4xxxx + 9 Palabra <strong>de</strong> pointer<br />

<strong>de</strong> mensajes<br />

(número binario <strong>de</strong> 16 dígitos)<br />

XMIT interpreta cada bit <strong>de</strong> la palabra <strong>de</strong><br />

comando como una función que se <strong>de</strong>be<br />

realizar. Si los bits 7 y 8 están activos <strong>de</strong><br />

forma simultánea o si dos o más bits 13, 14,<br />

15 ó 16 están activos simultáneamente; o<br />

bien, si el bit 7 no está activo cuando los bits<br />

13, 14, 15 ó 16 están activos, se generará un<br />

error 129.<br />

Para obtener una información más <strong>de</strong>tallada,<br />

consulte la p. 1168 en la <strong>de</strong>scripción <strong>de</strong><br />

parámetros: sección <strong>de</strong>l bloque <strong>de</strong><br />

comunicación XMIT.<br />

(pointer <strong>de</strong> mensajes)<br />

Valores limitados por el rango <strong>de</strong> registros 4x<br />

configurado.<br />

La tabla <strong>de</strong> mensajes se compone <strong>de</strong><br />

Caracteres ASCII.<br />

Para las ca<strong>de</strong>nas <strong>de</strong> caracteres ASCII, el<br />

pointer es el offset <strong>de</strong> registro para el<br />

primer registro <strong>de</strong> la ca<strong>de</strong>na <strong>de</strong> caracteres<br />

ASCII. Cada registro pue<strong>de</strong> constar <strong>de</strong><br />

hasta dos caracteres ASCII. Cada ca<strong>de</strong>na<br />

ASCII pue<strong>de</strong> tener una longitud <strong>de</strong> hasta<br />

1.024 caracteres. Por ejemplo, cuando se<br />

quieren enviar 10 mensajes ASCII <strong>de</strong>s<strong>de</strong><br />

el PLC, se <strong>de</strong>ben programar 10 ca<strong>de</strong>nas<br />

<strong>de</strong> caracteres ASCII en registros 4xxxx<br />

<strong>de</strong>l PLC y, mediante Lad<strong>de</strong>r <strong>Logic</strong>,<br />

posicionar el pointer al inicio <strong>de</strong> cada<br />

mensaje tras cada operación <strong>de</strong> XMIT<br />

llevada a cabo satisfactoriamente.<br />

Códigos <strong>de</strong> función Modbus<br />

Para obtener información más <strong>de</strong>tallada,<br />

consulte p. 1151.<br />

Se <strong>de</strong>be introducir un pointer que señale el<br />

comienzo <strong>de</strong> la tabla <strong>de</strong> mensajes.<br />

Lectura/<br />

escritura<br />

Lectura/<br />

escritura<br />

31007526 12/2006 1163


Bloque <strong>de</strong> comunicación XMIT<br />

Registro Nombre Descripción Entradas<br />

no válidas<br />

4xxxx + 10 Longitud <strong>de</strong><br />

mensajes<br />

4xxxx + 11 Timeout <strong>de</strong><br />

respuesta (ms)<br />

4xxxx + 12 Límite <strong>de</strong><br />

reintentos<br />

(0 - 512)<br />

Escriba la longitud <strong>de</strong>l mensaje actual.<br />

Cuando XMIT envía mensajes Modbus para<br />

los códigos <strong>de</strong> función 01, 02, 03, 04, 05, 06,<br />

08, 15 y 16, la longitud <strong>de</strong>l mensaje se<br />

establece automáticamente como cinco.<br />

Cuando XMIT está recibiendo una entrada<br />

ASCII finalizada, la longitud <strong>de</strong>l mensaje<br />

<strong>de</strong>be establecerse en cinco o se producirá un<br />

error. Cuando XMIT está enviando mensajes<br />

Modbus para los códigos <strong>de</strong> función 20 y 21,<br />

la longitud <strong>de</strong>l mensaje se configurará<br />

automáticamente como seis. Cuando XMIT<br />

está enviando mensajes ASCII, la longitud<br />

pue<strong>de</strong> variar <strong>de</strong> 1 a 1.024 caracteres ASCII<br />

por mensaje.<br />

(0–65.535 milisegundos)<br />

Escriba el valor <strong>de</strong>l tiempo en milisegundos<br />

(ms) para <strong>de</strong>terminar la duración <strong>de</strong> espera<br />

<strong>de</strong> XMIT para un mensaje <strong>de</strong> respuesta<br />

válido <strong>de</strong> un dispositivo esclavo (PLC,<br />

mó<strong>de</strong>m, etc.). A<strong>de</strong>más, el tiempo hace<br />

referencia a transmisiones ASCII y a<br />

operaciones <strong>de</strong> control <strong>de</strong> flujo. Cuando el<br />

mensaje <strong>de</strong> respuesta no está<br />

completamente formado <strong>de</strong>ntro <strong>de</strong> este<br />

tiempo especificado, XMIT envía un fallo. El<br />

rango válido oscila entre 0 y 65.535 ms. El<br />

timeout se inicia <strong>de</strong>spués <strong>de</strong> enviar el último<br />

carácter <strong>de</strong>l mensaje.<br />

(0–65.535 milisegundos)<br />

Escriba la cantidad <strong>de</strong> reintentos para<br />

<strong>de</strong>terminar cuántas veces XMIT envía un<br />

mensaje para obtener una respuesta válida<br />

<strong>de</strong>s<strong>de</strong> un dispositivo esclavo (PLC, mó<strong>de</strong>m,<br />

etc.). Cuando el mensaje <strong>de</strong> respuesta no<br />

está completamente formado <strong>de</strong>ntro <strong>de</strong> este<br />

tiempo especificado, XMIT envía un fallo y un<br />

código <strong>de</strong> fallo. El rango válido es 065.535 n.º<br />

<strong>de</strong> reintentos. Este campo se utiliza junto con<br />

el timeout <strong>de</strong> respuesta (4xxxx + 11).<br />

Lectura/<br />

escritura<br />

Lectura/<br />

escritura<br />

Lectura/<br />

escritura<br />

1164 31007526 12/2006


Bloque <strong>de</strong> comunicación XMIT<br />

Registro Nombre Descripción Entradas<br />

no válidas<br />

4xxxx + 13 Retardo <strong>de</strong> inicio<br />

<strong>de</strong> transmisión<br />

(ms)<br />

4xxxx + 14 Retardo <strong>de</strong> fin <strong>de</strong><br />

transmisión (ms)<br />

(0–65.535 milisegundos)<br />

Escriba el valor <strong>de</strong> tiempo <strong>de</strong> espera en<br />

milisegundos (ms) cuando se active el<br />

control RTS/CTS, para <strong>de</strong>terminar cuánto<br />

tiempo espera XMIT <strong>de</strong>spués <strong>de</strong> recibir CTS<br />

y antes <strong>de</strong> transmitir un mensaje fuera <strong>de</strong>l<br />

puerto n.º 1 <strong>de</strong>l PLC. A<strong>de</strong>más, pue<strong>de</strong> utilizar<br />

este registro aunque RTS/CTS NO esté<br />

controlado. En esta situación, el valor <strong>de</strong><br />

tiempo <strong>de</strong> espera introducido <strong>de</strong>termina<br />

cuánto tiempo espera XMIT antes <strong>de</strong> enviar<br />

un mensaje fuera <strong>de</strong>l puerto n.º 1 <strong>de</strong>l PLC.<br />

Pue<strong>de</strong> utilizarlo como temporizador <strong>de</strong><br />

retardo <strong>de</strong>l mensaje previo. El rango válido<br />

oscila entre 0 y 65.535 ms.<br />

(0–65.535 milisegundos)<br />

Para <strong>de</strong>terminar la duración en la que XMIT<br />

mantiene un estado lógico TRUE <strong>de</strong> RTS una<br />

vez que el mensaje se envía fuera <strong>de</strong>l puerto<br />

n.º 1 <strong>de</strong>l PLC, escriba el valor <strong>de</strong> tiempo <strong>de</strong><br />

espera en milisegundos (ms) cuando se<br />

habilite el control RTS/CTS. Una vez<br />

expirado el tiempo, XMIT finaliza el estado<br />

lógico TRUE <strong>de</strong> RTS. A<strong>de</strong>más, pue<strong>de</strong> utilizar<br />

este registro aunque RTS/CTS NO esté<br />

controlado. En esta situación, el valor <strong>de</strong><br />

tiempo <strong>de</strong> espera introducido <strong>de</strong>termina<br />

cuánto tiempo espera XMIT <strong>de</strong>spués <strong>de</strong><br />

enviar un mensaje fuera <strong>de</strong>l puerto n.º 1 <strong>de</strong>l<br />

PLC. Pue<strong>de</strong> utilizarlo como temporizador <strong>de</strong><br />

retardo <strong>de</strong>l mensaje posterior. El rango válido<br />

oscila entre 0 y 65.535 ms.<br />

4xxxx + 15 Reintento actual El valor visualizado indica el número actual<br />

<strong>de</strong> reintentos realizados por el bloque XMIT.<br />

Lectura/<br />

escritura<br />

Lectura/<br />

escritura<br />

Sólo<br />

lectura<br />

31007526 12/2006 1165


Bloque <strong>de</strong> comunicación XMIT<br />

Descripción <strong>de</strong> parámetros<br />

Tabla <strong>de</strong> estado<br />

<strong>de</strong> fallos<br />

A continuación, hay una lista <strong>de</strong> los códigos <strong>de</strong> fallo generados por el bloque <strong>de</strong><br />

estado <strong>de</strong> puerto XMIT (4x + 1).<br />

Código<br />

<strong>de</strong>l fallo<br />

Descripción <strong>de</strong>l fallo<br />

1 Excepción Modbus - Función no válida<br />

2 Excepción Modbus - Dirección <strong>de</strong> datos no válida<br />

3 Excepción Modbus - Valor <strong>de</strong> datos no válido<br />

4 Excepción Modbus - Error en dispositivo esclavo<br />

5 Excepción Modbus - Acuse <strong>de</strong> recibo<br />

6 Excepción Modbus - Dispositivo esclavo ocupado<br />

7 Excepción Modbus - Acuse <strong>de</strong> recibo negativo<br />

8 Excepción Modbus - Error <strong>de</strong> paridad <strong>de</strong> memoria<br />

De 9 a 99 Reservado<br />

100 El área <strong>de</strong> datos <strong>de</strong>l PLC esclavo no pue<strong>de</strong> ser cero.<br />

101 El área <strong>de</strong> datos <strong>de</strong>l PLC maestro no pue<strong>de</strong> ser cero.<br />

102 Bobina (0x) sin configurar.<br />

103 Registro en espera (4xxxx) sin configurar.<br />

104 La longitud <strong>de</strong> datos no pue<strong>de</strong> ser igual a cero.<br />

105 El pointer <strong>de</strong> la tabla <strong>de</strong> mensajes no pue<strong>de</strong> ser igual a cero.<br />

106 Pointer <strong>de</strong> la tabla <strong>de</strong> mensajes fuera <strong>de</strong>l rango <strong>de</strong> los registros en espera<br />

configurados (4xxxx).<br />

107 Timeout <strong>de</strong> la transferencia <strong>de</strong> mensajes.<br />

(Este error aparece cuando el UART no pue<strong>de</strong> completar una transmisión en 10<br />

segundos o menos. Este error ignora el contador <strong>de</strong> reintentos y activa la salida<br />

<strong>de</strong> error en el primer error.)<br />

108 Error no <strong>de</strong>finido.<br />

109 El mó<strong>de</strong>m anuncia ERROR.<br />

110 El mó<strong>de</strong>m anuncia SIN PORTADORA.<br />

111 El mó<strong>de</strong>m anuncia SIN TONO DE MARCADO.<br />

112 El mó<strong>de</strong>m anuncia OCUPADO.<br />

113 Suma <strong>de</strong> control LRC <strong>de</strong>l PLC esclavo no válida.<br />

114 Suma <strong>de</strong> control CRC <strong>de</strong>l PLC esclavo no válida.<br />

115 Código <strong>de</strong> función Modbus no válido.<br />

116 Timeout <strong>de</strong>l mensaje <strong>de</strong> respuesta <strong>de</strong> Modbus.<br />

1166 31007526 12/2006


Código<br />

<strong>de</strong>l fallo<br />

Descripción <strong>de</strong>l fallo<br />

Bloque <strong>de</strong> comunicación XMIT<br />

117 Timeout <strong>de</strong> respuesta <strong>de</strong>l mó<strong>de</strong>m.<br />

118 XMIT no recibió acceso al puerto 1 o puerto 2 <strong>de</strong> comunicación <strong>de</strong>l PLC.<br />

119 XMIT no pue<strong>de</strong> habilitar el receptor <strong>de</strong> puerto <strong>de</strong>l PLC.<br />

120 XMIT no pue<strong>de</strong> establecer UART <strong>de</strong> PLC.<br />

121 Comando <strong>de</strong> cancelación introducido por el usuario.<br />

122 El nodo superior <strong>de</strong> XMIT no es igual a cero, uno o dos.<br />

123 El nodo inferior <strong>de</strong> XMIT no es igual a siete, ocho ni dieciséis.<br />

124 Estado interno sin <strong>de</strong>finir.<br />

125 No se admite la modalidad <strong>de</strong> difusión en este código <strong>de</strong> función Modbus.<br />

126 DCE no afirmó CTS.<br />

127 Configuración no válida<br />

(velocidad <strong>de</strong> transferencia, bits <strong>de</strong> datos, paridad o bits <strong>de</strong> parada).<br />

128 Se recibió una respuesta no válida <strong>de</strong>l esclavo Modbus.<br />

129 Configuración <strong>de</strong> palabra <strong>de</strong> comando no válida.<br />

130 Palabra <strong>de</strong> comando modificada mientras se encontraba activa.<br />

131 Conteo <strong>de</strong> caracteres no válido.<br />

1<strong>32</strong> Bloque <strong>de</strong> registros no válido.<br />

133 Error <strong>de</strong> <strong>de</strong>sbor<strong>de</strong> FIFO en entrada ASCII.<br />

134 Cantidad no válida <strong>de</strong> caracteres <strong>de</strong> inicio o <strong>de</strong> caracteres <strong>de</strong> finalización.<br />

31007526 12/2006 1167


Bloque <strong>de</strong> comunicación XMIT<br />

Descripción <strong>de</strong> parámetros<br />

Tabla <strong>de</strong><br />

funciones <strong>de</strong><br />

comunicación <strong>de</strong><br />

palabra <strong>de</strong><br />

comando<br />

Esta tabla <strong>de</strong>scribe la función realizada como XMIT e interpreta cada bit <strong>de</strong> la<br />

palabra <strong>de</strong> comando.<br />

(4x + 8) Función <strong>de</strong> palabra <strong>de</strong><br />

comando<br />

Bits <strong>de</strong> la palabra <strong>de</strong><br />

comando que <strong>de</strong>ben<br />

establecerse en 1<br />

Bits <strong>de</strong> la palabra <strong>de</strong><br />

comando que <strong>de</strong>ben<br />

establecerse en 0<br />

Entrada ASCII finalizada (Bit 5=1) 2,3,9,10,11,12 6,7,8,13,14,15,16<br />

Entrada ASCII simple (Bit 6=1) 2,3,9,10,11,12 5,7,8,13,14,15,16<br />

Salida ASCII simple (Bit 7=1) 2,3,9,10,11,12 5,6,8,13,14,15,16<br />

Salida <strong>de</strong> mó<strong>de</strong>m (Bit 7=1) 2,3,13,14,15,16 5,6,8,9,10,11,12<br />

(más uno, pero SÓLO uno<br />

<strong>de</strong> los siguientes bits se<br />

establece como 1: 13, 14,<br />

15 ó 16, mientras que los<br />

otros tres bits se<br />

establecen como 0).<br />

Salida <strong>de</strong> mensajes master Modbus 2,3 5,6,7,9,10,11,12,13,14,15,<br />

(Bit 8=1)<br />

16<br />

Habilitar únicamente FIFO <strong>de</strong><br />

entrada <strong>de</strong> recepción ASCII (Bit 9=1)<br />

2, 3, 10, 11, 12 5, 6, 7, 8, 13, 14, 15, 16<br />

1168 31007526 12/2006


Presentación<br />

Bloque <strong>de</strong> estado <strong>de</strong>l puerto XMIT<br />

188<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción <strong>de</strong> bloque <strong>de</strong> estado <strong>de</strong> puerto XMIT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

Apartado Página<br />

Descripción breve 1170<br />

Representación 1171<br />

Descripción <strong>de</strong> parámetros 1173<br />

31007526 12/2006 1169


Bloque <strong>de</strong> estado <strong>de</strong>l puerto XMIT<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

El bloque <strong>de</strong> estado <strong>de</strong>l puerto XMIT muestra el estado actual <strong>de</strong>l puerto, la<br />

actividad <strong>de</strong>l esclavo Modbus, FIFO <strong>de</strong> entrada ASCII e información <strong>de</strong> control <strong>de</strong><br />

flujo que se pue<strong>de</strong> utilizar en Lad<strong>de</strong>r <strong>Logic</strong> para diversas aplicaciones. El bloque <strong>de</strong><br />

estado <strong>de</strong>l puerto XMIT es totalmente pasivo. No ocupa, <strong>de</strong>sconecta ni controla el<br />

puerto <strong>de</strong>l PLC.<br />

Para obtener una <strong>de</strong>scripción general <strong>de</strong> la instrucción XMIT, consulte p. 1150.<br />

1170 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

inicio<br />

puerto<br />

n.º 0001<br />

o<br />

n.º 0002<br />

registro<br />

constante<br />

XMIT =<br />

n.º 0007<br />

Bloque <strong>de</strong> estado <strong>de</strong>l puerto XMIT<br />

la operación no ha finalizado<br />

satisfactoriamente<br />

operación correcta<br />

31007526 12/2006 1171


Bloque <strong>de</strong> estado <strong>de</strong>l puerto XMIT<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Puerto n.º 0001<br />

o n.º 0002<br />

(nodo superior)<br />

Registro<br />

(nodo<br />

intermedio)<br />

Constante = n.º<br />

0007<br />

(nodo inferior)<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON inicia una operación XMIT y <strong>de</strong>berá<br />

permanecer en dicho estado hasta que la<br />

operación haya finalizado correctamente o<br />

se produzca un error.<br />

4x INT, UINT<br />

WORD<br />

4x INT, UINT,<br />

WORD<br />

INT, UINT,<br />

WORD<br />

Debe contener una da las siguientes<br />

constantes, ya sea para seleccionar el<br />

puerto n.º 1 <strong>de</strong>l PLC (n.º 0001) o para<br />

seleccionar el puerto n.º 2 <strong>de</strong>l PLC (n.º<br />

0002).<br />

Nota: La versión cargable ACEPTA<br />

registros 4xxxx en el nodo superior; la<br />

versión integrada NO.<br />

El registro 4xxxx introducido en el nodo<br />

intermedio es el primero <strong>de</strong> un grupo <strong>de</strong><br />

siete (7) registros en espera contiguos que<br />

se compone <strong>de</strong>l bloque <strong>de</strong> visualización <strong>de</strong>l<br />

estado <strong>de</strong> puerto, tal y como se muestra en<br />

p. 1173 <strong>de</strong> la sección Descripción <strong>de</strong><br />

parámetros: Nodo intermedio - Bloque <strong>de</strong><br />

conversión XMIT.<br />

Importante:NO modifique la dirección <strong>de</strong>l<br />

nodo intermedio <strong>de</strong>l bloque XMIT ni borre<br />

la dirección <strong>de</strong>s<strong>de</strong> el programa mientras el<br />

bloque esté activo. Esto bloqueará el<br />

puerto e impedirá las comunicaciones.<br />

Debe contener una constante igual a (n.º<br />

0007). Éste es el número <strong>de</strong> registros<br />

utilizados por la instrucción <strong>de</strong> estado <strong>de</strong>l<br />

puerto XMIT.<br />

0x Ninguno ON cuando XMIT haya <strong>de</strong>tectado un error<br />

o enviado un aviso <strong>de</strong> cancelación.<br />

Salida inferior 0x Ninguno ON cuando la operación XMIT haya<br />

finalizado correctamente.<br />

1172 31007526 12/2006


Descripción <strong>de</strong> parámetros<br />

Descripción<br />

general<br />

Tabla <strong>de</strong><br />

visualización <strong>de</strong><br />

estado <strong>de</strong> puerto<br />

Bloque <strong>de</strong> estado <strong>de</strong>l puerto XMIT<br />

Esta sección proporciona información <strong>de</strong>tallada relevante para el nodo intermedio.<br />

Consta <strong>de</strong> seis unida<strong>de</strong>s.<br />

Tabla <strong>de</strong> visualización <strong>de</strong> estado <strong>de</strong> puerto<br />

Tabla <strong>de</strong> generación <strong>de</strong> códigos <strong>de</strong> fallo<br />

Tabla <strong>de</strong> generación <strong>de</strong> estado<br />

Tabla <strong>de</strong> propiedad <strong>de</strong>l puerto<br />

Tabla <strong>de</strong> estado <strong>de</strong> entrada FIFO<br />

Tabla <strong>de</strong> longitud <strong>de</strong> entrada FIFO<br />

Esta tabla representa el primero <strong>de</strong> un grupo <strong>de</strong> siete registros en espera contiguos<br />

que compren<strong>de</strong>n el bloque <strong>de</strong> estado <strong>de</strong>l puerto.<br />

Registro Nombre Descripción Entradas<br />

no válidas<br />

4xxxx Número <strong>de</strong> revisión Muestra el número <strong>de</strong> revisión actual<br />

<strong>de</strong>l bloque XMIT.<br />

Este número se carga<br />

automáticamente mediante el bloque y<br />

éste sobrescribe cualquier otro número<br />

introducido en este registro.<br />

Sólo lectura<br />

4xxxx + 1 Estado <strong>de</strong> fallo Este campo muestra un código <strong>de</strong> error<br />

generado por el bloque <strong>de</strong> estado <strong>de</strong>l<br />

puerto XMIT.<br />

(Para obtener información más<br />

<strong>de</strong>tallada, consulte la tabla <strong>de</strong><br />

generación <strong>de</strong> códigos <strong>de</strong> fallo.)<br />

4xxxx + 2 Estado <strong>de</strong> conexión <strong>de</strong>l<br />

esclavo/<br />

Estado activo <strong>de</strong>l<br />

puerto esclavo<br />

Este registro muestra el estado <strong>de</strong> dos<br />

elementos generados por el bloque <strong>de</strong><br />

estado <strong>de</strong> puerto XMIT.<br />

Los dos elementos son el estado <strong>de</strong><br />

conexión <strong>de</strong>l esclavo y el estado activo<br />

<strong>de</strong>l puerto esclavo.<br />

Lad<strong>de</strong>r <strong>Logic</strong> pue<strong>de</strong> utilizar esta<br />

información para reducir o eliminar<br />

colisiones en una red Modbus con<br />

varios maestros.<br />

(Para obtener información más<br />

<strong>de</strong>tallada, consulte la tabla <strong>de</strong><br />

generación <strong>de</strong> estado.)<br />

Sólo lectura<br />

Sólo lectura<br />

31007526 12/2006 1173


Bloque <strong>de</strong> estado <strong>de</strong>l puerto XMIT<br />

Registro Nombre Descripción Entradas<br />

no válidas<br />

4xxxx + 3 Contador <strong>de</strong><br />

transacciones <strong>de</strong><br />

esclavo<br />

Este registro muestra el número <strong>de</strong><br />

transacciones <strong>de</strong> esclavo generadas<br />

por el bloque <strong>de</strong> estado <strong>de</strong>l puerto<br />

XMIT. El contador se incrementa cada<br />

vez que el puerto esclavo Modbus <strong>de</strong>l<br />

PLC recibe otro comando <strong>de</strong>l maestro<br />

Modbus. Lad<strong>de</strong>r <strong>Logic</strong> pue<strong>de</strong> utilizar<br />

esta información para reducir o eliminar<br />

colisiones en una red Modbus con<br />

varios maestros.<br />

4xxxx + 4 Estado <strong>de</strong> puerto Este registro muestra la propiedad <strong>de</strong>l<br />

puerto y su estado. El bloque <strong>de</strong> estado<br />

<strong>de</strong> puerto XMIT es quien genera este<br />

registro.<br />

(Para obtener información más<br />

<strong>de</strong>tallada, consulte la tabla <strong>de</strong><br />

propiedad <strong>de</strong>l puerto.)<br />

4xxxx + 5 Bits <strong>de</strong> estado <strong>de</strong><br />

entrada FIFO<br />

4xxxx + 6 Longitud <strong>de</strong> entrada<br />

FIFO<br />

Este registro muestra el estado <strong>de</strong> siete<br />

elementos relativos a la entrada FIFO.<br />

El bloque <strong>de</strong> estado <strong>de</strong> puerto XMIT es<br />

quien genera este registro.<br />

(Para obtener información más<br />

<strong>de</strong>tallada, consulte la tabla <strong>de</strong> entrada<br />

FIFO.)<br />

Este registro muestra el número actual<br />

<strong>de</strong> caracteres que hay en la entrada<br />

FIFO <strong>de</strong> ASCII. Pue<strong>de</strong> contener otros<br />

valores según el estado <strong>de</strong> la entrada<br />

FIFO y si la longitud está vacía o<br />

<strong>de</strong>sbordada. El bloque <strong>de</strong> estado <strong>de</strong><br />

puerto XMIT es quien genera este<br />

registro.<br />

(Para obtener información más<br />

<strong>de</strong>tallada, consulte la tabla <strong>de</strong> longitud<br />

<strong>de</strong> entrada FIFO.)<br />

Sólo lectura<br />

Sólo lectura<br />

Sólo lectura<br />

Sólo lectura<br />

1174 31007526 12/2006


Tabla <strong>de</strong><br />

generación <strong>de</strong><br />

códigos <strong>de</strong> fallo<br />

Tabla <strong>de</strong><br />

generación <strong>de</strong><br />

estado<br />

Tabla <strong>de</strong><br />

propiedad <strong>de</strong>l<br />

puerto<br />

Bloque <strong>de</strong> estado <strong>de</strong>l puerto XMIT<br />

Esta tabla <strong>de</strong>scribe los códigos <strong>de</strong> fallo generados por el bloque <strong>de</strong> estado <strong>de</strong> puerto<br />

XMIT <strong>de</strong>l registro (4x + 1).<br />

Código <strong>de</strong>l<br />

fallo<br />

Descripción <strong>de</strong>l fallo<br />

118 XMIT no ha podido obtener acceso al puerto <strong>de</strong> comunicaciones 1 ó 2 <strong>de</strong>l PLC.<br />

122 El nodo superior <strong>de</strong> XMIT no es igual a cero, uno o dos.<br />

123 El nodo inferior <strong>de</strong> XMIT no es igual a siete, ocho o dieciséis.<br />

Esta tabla <strong>de</strong>scribe el estado <strong>de</strong> conexión <strong>de</strong>l esclavo y el estado activo <strong>de</strong> puerto<br />

esclavo generados por el bloque <strong>de</strong> estado <strong>de</strong> puerto XMIT para el registro (4x + 2).<br />

(4x + 2, byte alto)<br />

Estado <strong>de</strong> conexión <strong>de</strong>l esclavo<br />

Sí - Cuando un dispositivo <strong>de</strong> programación<br />

esté conectado actualmente a este puerto<br />

esclavo <strong>de</strong>l PLC.<br />

No - Cuando un dispositivo <strong>de</strong><br />

programación no esté conectado<br />

actualmente a este puerto esclavo <strong>de</strong>l PLC.<br />

Nota: Un maestro Modbus pue<strong>de</strong> enviar<br />

comandos, pero no pue<strong>de</strong> conectarse.<br />

(4x + 2, byte bajo)<br />

Estado activo <strong>de</strong>l puerto esclavo<br />

Sí - Cuando el PLC tenga la propiedad <strong>de</strong>l<br />

puerto y esté recibiendo actualmente un<br />

comando Mod-bus o transmitiendo una<br />

respuesta Mod-bus.<br />

No - Cuando el PLC NO tenga la propiedad <strong>de</strong>l<br />

puerto y no esté recibiendo actualmente un<br />

comando Mod-bus o transmitiendo una<br />

respuesta Mod-bus.<br />

Esta tabla <strong>de</strong>scribe la propiedad <strong>de</strong>l puerto y el estado <strong>de</strong>l registro (4x + 4).<br />

Propietario<br />

<strong>de</strong>l puerto<br />

Estado activo Valor<br />

PLC Esclavo Modbus <strong>de</strong>l PLC. 0<br />

XMIT Mó<strong>de</strong>m <strong>de</strong> marcación por tonos. 1<br />

XMIT Colgar mó<strong>de</strong>m. 2<br />

XMIT Mensajes Modbus 3<br />

XMIT Salida ASCII simple. 4<br />

XMIT Mó<strong>de</strong>m <strong>de</strong> marcación por pulsos. 5<br />

XMIT Inicializar mó<strong>de</strong>m. 6<br />

XMIT Entrada ASCII simple. 7<br />

XMIT Entrada ASCII finalizada. 8<br />

XMIT La entrada FIFO <strong>de</strong> ASCII está activa, pero no hay ninguna función<br />

XMIT que lo esté.<br />

9<br />

31007526 12/2006 1175


Bloque <strong>de</strong> estado <strong>de</strong>l puerto XMIT<br />

Tabla <strong>de</strong> estado<br />

<strong>de</strong> entrada FIFO<br />

Tabla <strong>de</strong> longitud<br />

<strong>de</strong> entrada FIFO<br />

Esta tabla <strong>de</strong>scribe los bits <strong>de</strong> estado relativos a la entrada FIFO <strong>de</strong>l registro<br />

(4x + 5).<br />

Bit n.º Definición Sí/1 No/0<br />

1 - 3 Reservado<br />

4 Puerto propiedad <strong>de</strong>... XMIT PLC<br />

5 - 7 Reservado<br />

8 Transmisión <strong>de</strong> salida Bloqueada por el Desbloqueada por el<br />

ASCII...<br />

dispositivo <strong>de</strong> recepción dispositivo <strong>de</strong> recepción<br />

9 Entrada ASCII recibida... Nuevo carácter No hay nuevo carácter<br />

10 La entrada FIFO <strong>de</strong> ASCII... Está vacía No está vacía<br />

11 La entrada FIFO <strong>de</strong> ASCII... Se <strong>de</strong>sborda (error) No se <strong>de</strong>sborda (error)<br />

12 La entrada FIFO <strong>de</strong> ASCII... Está ON Está OFF<br />

13 - 15 Reservado<br />

16 Recepción <strong>de</strong> entrada XMIT ha bloqueado el XMIT ha <strong>de</strong>sbloqueado<br />

ASCII...<br />

dispositivo <strong>de</strong> envío el dispositivo <strong>de</strong> envío<br />

Esta tabla <strong>de</strong>scribe el número actual <strong>de</strong> caracteres que hay en la entrada FIFO <strong>de</strong><br />

ASCII para el registro (4x + 6).<br />

Cuando la entrada FIFO Longitud<br />

= OFF = 0<br />

= ON y vacía = 0<br />

= ON y con <strong>de</strong>sbor<strong>de</strong> = 512<br />

1176 31007526 12/2006


Presentación<br />

Bloque <strong>de</strong> conversión XMIT<br />

Introducción En este capítulo se <strong>de</strong>scribe el bloque <strong>de</strong> conversión XMIT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

189<br />

Apartado Página<br />

Descripción breve 1178<br />

Representación 1179<br />

Descripción <strong>de</strong> parámetros 1181<br />

31007526 12/2006 1177


Bloque <strong>de</strong> conversión XMIT<br />

Descripción breve<br />

Descripción <strong>de</strong><br />

las funciones<br />

El objetivo <strong>de</strong>l bloque <strong>de</strong> conversión XMIT es tomar datos y pasarlos a otras formas<br />

utilizables basándose en las necesida<strong>de</strong>s <strong>de</strong> cada aplicación. El bloque <strong>de</strong><br />

conversión realiza 11 funciones u opciones diferentes. Algunas funciones incluyen<br />

<strong>de</strong> ASCII a binario, <strong>de</strong> entero a ASCII, permutación <strong>de</strong> bytes, búsqueda <strong>de</strong> ca<strong>de</strong>nas<br />

<strong>de</strong> caracteres ASCII, etc. Este bloque permite realizar conversiones internas<br />

utilizando <strong>de</strong> <strong>bloques</strong> <strong>de</strong> fuente 4xxxx a <strong>bloques</strong> <strong>de</strong> <strong>de</strong>stino 4xxxx.<br />

Para obtener una <strong>de</strong>scripción general <strong>de</strong> la instrucción XMIT, consulte p. 1150.<br />

1178 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

inicio<br />

constante<br />

n.º 0001<br />

registro<br />

constante<br />

XMIT =<br />

n.º 0008<br />

Bloque <strong>de</strong> conversión XMIT<br />

la operación no ha finalizado<br />

satisfactoriamente<br />

operación correcta<br />

31007526 12/2006 1179


Bloque <strong>de</strong> conversión XMIT<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Constante n.º<br />

0001<br />

(nodo superior)<br />

Registro<br />

(nodo<br />

intermedio)<br />

Constante = n.º<br />

0008<br />

(nodo inferior)<br />

Salida<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON inicia una operación XMIT y <strong>de</strong>berá<br />

permanecer en dicho estado hasta que la<br />

operación haya finalizado correctamente o<br />

se produzca un error.<br />

Nota:Para restablecer un error <strong>de</strong> XMIT y<br />

borrar el registro <strong>de</strong> error, la entrada<br />

superior <strong>de</strong>be permanecer inactiva durante<br />

al menos un ciclo <strong>de</strong>l PLC.<br />

4x INT, UINT<br />

WORD<br />

4x INT, UINT,<br />

WORD<br />

INT, UINT,<br />

WORD<br />

El nodo superior <strong>de</strong>be contener una<br />

constante (n.º 0000), ya que las<br />

conversiones no trabajan con el puerto <strong>de</strong>l<br />

PLC.<br />

La versión cargable ACEPTA registros<br />

4xxxx en el nodo superior; la versión<br />

integrada NO.<br />

El registro 4xxxx introducido en el nodo<br />

intermedio es el primero <strong>de</strong> un grupo <strong>de</strong><br />

ocho (8) registros <strong>de</strong> en espera contiguos<br />

que contiene el bloque <strong>de</strong> control, tal y<br />

como se muestra en p. 1181 <strong>de</strong> la sección<br />

Descripción <strong>de</strong> parámetros: Bloque <strong>de</strong><br />

conversión XMIT.<br />

Importante:NO modifique la dirección <strong>de</strong>l<br />

nodo intermedio <strong>de</strong>l bloque XMIT ni borre<br />

la dirección <strong>de</strong>s<strong>de</strong> el programa mientras el<br />

bloque esté activo. Esto bloqueará el<br />

puerto e impedirá la comunicación.<br />

El nodo inferior <strong>de</strong>be contener una<br />

constante igual a (n.º 0008). Éste es el<br />

número <strong>de</strong> registros utilizados por la<br />

instrucción <strong>de</strong> conversión XMIT.<br />

0x Ninguno ON cuando XMIT haya <strong>de</strong>tectado un error<br />

o enviado un aviso <strong>de</strong> cancelación.<br />

Salida inferior 0x Ninguno ON cuando la operación XMIT haya<br />

finalizado correctamente.<br />

1180 31007526 12/2006


Descripción <strong>de</strong> parámetros<br />

Descripción<br />

general<br />

Tabla <strong>de</strong> control<br />

<strong>de</strong>l bloque <strong>de</strong><br />

conversión<br />

Bloque <strong>de</strong> conversión XMIT<br />

Esta sección proporciona información <strong>de</strong>tallada relevante para el nodo intermedio.<br />

Consta <strong>de</strong> cuatro unida<strong>de</strong>s.<br />

Tabla <strong>de</strong> control <strong>de</strong>l bloque <strong>de</strong> conversión<br />

Tabla <strong>de</strong> generación <strong>de</strong> códigos <strong>de</strong> fallo<br />

Tabla <strong>de</strong> bits <strong>de</strong> control <strong>de</strong> la conversión <strong>de</strong> datos<br />

Tabla <strong>de</strong> códigos operacionales <strong>de</strong> la conversión <strong>de</strong> datos<br />

Esta tabla representa el primero <strong>de</strong> un grupo <strong>de</strong> ocho registros en espera contiguos<br />

que compren<strong>de</strong>n el bloque <strong>de</strong> estado <strong>de</strong>l puerto.<br />

Registro Nombre Descripción Entradas<br />

no válidas<br />

4xxxx Número <strong>de</strong> revisión<br />

<strong>de</strong> XMIT<br />

Muestra el número <strong>de</strong> revisión actual <strong>de</strong>l<br />

bloque XMIT.<br />

Este número se carga automáticamente<br />

mediante el bloque y éste sobrescribe<br />

cualquier otro número introducido en este<br />

registro.<br />

4xxxx + 1 Estado <strong>de</strong> fallo Este campo muestra un código <strong>de</strong> error<br />

generado por el bloque <strong>de</strong> estado <strong>de</strong>l<br />

puerto XMIT.<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte la tabla <strong>de</strong> generación <strong>de</strong> códigos<br />

<strong>de</strong> fallo.)<br />

4xxxx + 2 Disponible para el<br />

usuario<br />

4xxxx + 3 Bits <strong>de</strong> control <strong>de</strong><br />

conversión <strong>de</strong> datos<br />

0 (pue<strong>de</strong> utilizarse como pointers para<br />

instrucciones como TBLK).<br />

El bloque <strong>de</strong> conversión XMIT no utiliza<br />

este registro. Sin embargo, pue<strong>de</strong><br />

utilizarse en Lad<strong>de</strong>r <strong>Logic</strong> como pointer. Un<br />

modo eficaz <strong>de</strong> utilizar el bloque XMIT es<br />

situar un valor <strong>de</strong> pointer <strong>de</strong> una instrucción<br />

TBLK en este registro.<br />

Esta palabra <strong>de</strong> 16 bits hace referencia a la<br />

palabra <strong>de</strong> conversión <strong>de</strong> datos (4xxxx +<br />

3). Estos bits proporcionan opciones <strong>de</strong><br />

control adicional según las once<br />

conversiones que se seleccionen.<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte la tabla <strong>de</strong> bits <strong>de</strong> control <strong>de</strong> la<br />

conversión <strong>de</strong> datos.)<br />

Sólo lectura<br />

Sólo lectura<br />

Lectura/<br />

escritura<br />

Lectura/<br />

escritura<br />

31007526 12/2006 1181


Bloque <strong>de</strong> conversión XMIT<br />

Tabla <strong>de</strong><br />

generación <strong>de</strong><br />

códigos <strong>de</strong> fallo<br />

Registro Nombre Descripción Entradas<br />

no válidas<br />

4xxxx + 4 Códigos<br />

operacionales <strong>de</strong> la<br />

conversión <strong>de</strong> datos<br />

Seleccione el tipo <strong>de</strong> conversión que <strong>de</strong>see<br />

realizar en la lista con 11 opciones que se<br />

incluye en la tabla <strong>de</strong> códigos<br />

operacionales <strong>de</strong> conversión <strong>de</strong> datos.<br />

Después <strong>de</strong> seleccionar el tipo <strong>de</strong><br />

conversión, consulte los bits <strong>de</strong> control <strong>de</strong><br />

la conversión <strong>de</strong> datos (4xxxx + 4) y la tabla<br />

<strong>de</strong> bits <strong>de</strong> control <strong>de</strong> la conversión <strong>de</strong> datos<br />

para obtener más información sobre<br />

opciones <strong>de</strong> control adicionales<br />

relacionadas con el tipo <strong>de</strong> conversión<br />

seleccionado.<br />

4xxxx + 5 Registro <strong>de</strong> fuente Introduzca el registro 4xxxx <strong>de</strong>seado.<br />

Éste es el primer registro <strong>de</strong>l bloque <strong>de</strong><br />

fuente que se lee. Asegúrese <strong>de</strong><br />

seleccionar la ubicación en la que <strong>de</strong>sea<br />

iniciar la lectura (byte alto o bajo).<br />

4xxxx + 6 Registro <strong>de</strong> <strong>de</strong>stino Introduzca el registro 4xxxx <strong>de</strong>seado.<br />

Éste es el primer registro <strong>de</strong>l bloque <strong>de</strong><br />

fuente que se lee. Asegúrese <strong>de</strong><br />

seleccionar la ubicación en la que <strong>de</strong>sea<br />

iniciar la lectura (byte alto o bajo).<br />

La selección <strong>de</strong>spués <strong>de</strong> este registro en<br />

DX zoom es la misma que el bit 16 en<br />

(4xxxx + 3).<br />

4xxxx + 7 Cantidad <strong>de</strong><br />

caracteres <strong>de</strong> la<br />

ca<strong>de</strong>na ASCII<br />

Introduzca la zona <strong>de</strong> búsqueda. Este<br />

registro <strong>de</strong>fine la zona <strong>de</strong> búsqueda.<br />

Si la fuente <strong>de</strong> avance automático (bit 13) o<br />

el <strong>de</strong>stino <strong>de</strong> avance automático (bit 14)<br />

están activos y no se <strong>de</strong>tecta ningún<br />

carácter ASCII, el bloque ajustará<br />

automáticamente la cantidad <strong>de</strong><br />

caracteres.<br />

Lectura/<br />

escritura<br />

Lectura/<br />

escritura<br />

Lectura/<br />

escritura<br />

Lectura/<br />

escritura<br />

Esta tabla <strong>de</strong>scribe los códigos <strong>de</strong> fallo generados por el bloque <strong>de</strong> conversión<br />

XMIT <strong>de</strong>l registro (4x + 1).<br />

Código <strong>de</strong>l fallo Descripción <strong>de</strong>l fallo<br />

122 El nodo superior <strong>de</strong> XMIT no es igual a cero, uno ni dos.<br />

123 El nodo inferior <strong>de</strong> XMIT no es igual a siete, ocho ni dieciséis.<br />

1182 31007526 12/2006


Tabla <strong>de</strong> bits <strong>de</strong><br />

control <strong>de</strong> la<br />

conversión <strong>de</strong><br />

datos<br />

Código <strong>de</strong>l fallo Descripción <strong>de</strong>l fallo<br />

131 Conteo <strong>de</strong> caracteres no válido<br />

135 Bloque <strong>de</strong> registros <strong>de</strong> <strong>de</strong>stino no válido.<br />

136 Bloque <strong>de</strong> registros <strong>de</strong> fuente no válido.<br />

137 No hay ningún número ASCII.<br />

138 Hay varios caracteres con signo.<br />

139 Desbor<strong>de</strong> numérico <strong>de</strong>tectado.<br />

140 Error <strong>de</strong> discrepancia en la ca<strong>de</strong>na <strong>de</strong> caracteres.<br />

141 No se encuentra la ca<strong>de</strong>na <strong>de</strong> caracteres.<br />

142 Comprobación <strong>de</strong> errores no válida <strong>de</strong>tectada.<br />

143 Código operacional <strong>de</strong> conversión no válido.<br />

Bloque <strong>de</strong> conversión XMIT<br />

Esta tabla <strong>de</strong>scribe las opciones <strong>de</strong> control disponibles basándose en la conversión<br />

seleccionada en el registro (4x + 3).<br />

Bit n.º Definición 1 = 0 =<br />

2 Inicio <strong>de</strong> CRC 16. 0x0000 0xFFFF<br />

3 Tipo <strong>de</strong> comprobación <strong>de</strong> errores. LRC 8 CRC 16<br />

4 Comprobación <strong>de</strong> errores. Validar Añadir<br />

7 Conversión <strong>de</strong> letras. De mayúscula a De minúscula a<br />

minúscula mayúscula<br />

8 Distinción entre mayúsculas y minúsculas No Sí<br />

9 Formato no significativo. Ceros Vacío<br />

10 Formato <strong>de</strong> salida. Fija Variable<br />

11 Tipo <strong>de</strong> conversión. Sin signo Con signo<br />

12 Palabra <strong>de</strong> conversión. <strong>32</strong> bits 16 bits<br />

13 Pointer <strong>de</strong> fuente <strong>de</strong> avance automático<br />

(apunta al siguiente carácter <strong>de</strong>spués <strong>de</strong>l<br />

último carácter tomado).<br />

Sí No<br />

14 Pointer <strong>de</strong> <strong>de</strong>stino <strong>de</strong> avance automático<br />

(apunta al siguiente carácter <strong>de</strong>spués <strong>de</strong>l<br />

último carácter tomado).<br />

15 Comenzar la lectura <strong>de</strong> ASCII en el inicio <strong>de</strong><br />

fuente con...<br />

16 Comenzar a guardar ASCII en el inicio <strong>de</strong><br />

<strong>de</strong>stino con...<br />

Sí No<br />

Byte bajo Byte alto (normal)<br />

Byte bajo Byte alto (normal)<br />

31007526 12/2006 1183


Bloque <strong>de</strong> conversión XMIT<br />

Tabla <strong>de</strong> códigos<br />

operacionales <strong>de</strong><br />

la conversión <strong>de</strong><br />

datos<br />

Esta tabla <strong>de</strong>scribe las 11 funciones u opciones para realizar conversiones<br />

utilizando los códigos operacionales <strong>de</strong> conversión <strong>de</strong> datos que hay en el registro<br />

(4x + 4).<br />

Código operacional Acción Tipo <strong>de</strong> datos<br />

(bloque 4xxxx)<br />

Código operacional no válido Visualizado al<br />

<strong>de</strong>tectar el código<br />

operacional no válido.<br />

No aplicable<br />

(1 Hex.)<br />

Ca<strong>de</strong>na <strong>de</strong> caracteres <strong>de</strong>cimales ASCII<br />

recibida.<br />

(2 Hex.)<br />

Ca<strong>de</strong>na <strong>de</strong> caracteres hexa<strong>de</strong>cimales ASCII<br />

recibida.<br />

(3 Hex.)<br />

Ca<strong>de</strong>na <strong>de</strong> caracteres hexa<strong>de</strong>cimales ASCII<br />

recibida.<br />

(4 Hex.)<br />

Entero con o sin signo <strong>de</strong> 16 ó <strong>32</strong> bits.<br />

(5 Hex.)<br />

Entero binario sin signo <strong>de</strong> 16 ó <strong>32</strong> bits.<br />

(6 Hex.)<br />

Matriz con número entero sin signo <strong>de</strong> 16<br />

bits.<br />

(7 Hex.)<br />

Bytes alto y bajo <strong>de</strong>l bloque <strong>de</strong> registros <strong>de</strong><br />

fuente ASCII guardado.<br />

(8 Hex.)<br />

Ca<strong>de</strong>na ASCII <strong>de</strong>s<strong>de</strong> el bloque <strong>de</strong> registros<br />

<strong>de</strong> fuente<br />

(9 Hex.)<br />

Bloque <strong>de</strong> registros <strong>de</strong> fuente ASCII<br />

(10 Hex.)<br />

Bloque <strong>de</strong> registros <strong>de</strong> fuente ASCII.<br />

(11 Hex.)<br />

Comprobación <strong>de</strong> errores, LRC <strong>de</strong> 8 bits o<br />

CRC <strong>de</strong> 16 bits.<br />

Convertida en Entero binario con o sin signo <strong>de</strong> 16 ó <strong>32</strong> bits.<br />

Convertida en Entero binario sin signo <strong>de</strong> 16 ó <strong>32</strong> bits.<br />

Convertida en Matriz con número entero binario sin signo <strong>de</strong><br />

16 bits.<br />

Convertida en Ca<strong>de</strong>na <strong>de</strong> caracteres <strong>de</strong>cimales ASCII para<br />

transmisión.<br />

Convertida en Ca<strong>de</strong>na <strong>de</strong> caracteres hexa<strong>de</strong>cimales ASCII<br />

para transmisión.<br />

Convertida en Ca<strong>de</strong>na <strong>de</strong> caracteres hexa<strong>de</strong>cimales ASCII<br />

para transmisión.<br />

Permutado en Bloque <strong>de</strong> registros <strong>de</strong> <strong>de</strong>stino ASCII.<br />

Copiada en Bloque <strong>de</strong> registros <strong>de</strong> <strong>de</strong>stino ASCII con o sin<br />

conversión <strong>de</strong> mayúsculas y minúsculas.<br />

Comparado con Ca<strong>de</strong>na <strong>de</strong> caracteres ASCII <strong>de</strong>finida en el<br />

bloque <strong>de</strong> registros <strong>de</strong> <strong>de</strong>stino con o sin<br />

distinción entre mayúsculas y minúsculas.<br />

Buscar Ca<strong>de</strong>na <strong>de</strong> caracteres ASCII <strong>de</strong>finida en el<br />

bloque <strong>de</strong> registros <strong>de</strong> <strong>de</strong>stino con o sin<br />

distinción entre mayúsculas y minúsculas.<br />

Validado o añadido<br />

en<br />

Ca<strong>de</strong>na <strong>de</strong> caracteres ASCII <strong>de</strong>l bloque <strong>de</strong><br />

registros <strong>de</strong> fuente.<br />

1184 31007526 12/2006


Presentación<br />

XMRD:<br />

Lectura <strong>de</strong> memoria extendida<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción XMRD.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

190<br />

Apartado Página<br />

Descripción breve 1186<br />

Representación 1187<br />

Descripción <strong>de</strong> los parámetros 1189<br />

31007526 12/2006 1185


XMRD: Lectura <strong>de</strong> memoria extendida<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción XMRD se utiliza para copiar una tabla <strong>de</strong> registros <strong>de</strong> memoria<br />

extendida 6x en una tabla <strong>de</strong> registros <strong>de</strong> salida 4x en memoria <strong>de</strong> señal.<br />

1186 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

habilitar offset <strong>de</strong> borrado<br />

habilitar cancelación<br />

en caso <strong>de</strong> error<br />

bloque <strong>de</strong><br />

control<br />

<strong>de</strong>stino<br />

XMRD<br />

n.º 1<br />

XMRD: Lectura <strong>de</strong> memoria extendida<br />

activa<br />

31007526 12/2006 1187<br />

error<br />

completar (un ciclo)


XMRD: Lectura <strong>de</strong> memoria extendida<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = activa la operación <strong>de</strong> lectura.<br />

0x, 1x Ninguno OFF = pone el offset a 0.<br />

ON = no borra el offset.<br />

Entrada inferior 0x, 1x Ninguno OFF = cancela la operación cuando hay<br />

un error.<br />

ON = no cancela cuando hay un error.<br />

Bloque <strong>de</strong><br />

control<br />

(véase p. 1189)<br />

(nodo superior)<br />

Destino<br />

(nodo<br />

intermedio)<br />

1<br />

(nodo inferior)<br />

4x INT, UINT,<br />

WORD<br />

4x INT, UINT,<br />

WORD<br />

Primero <strong>de</strong> seis registros en espera<br />

contiguos en la memoria extendida.<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte p. 1189.)<br />

El primer registro en espera 4x en una<br />

tabla <strong>de</strong> registros en don<strong>de</strong> se reciben los<br />

datos transferidos <strong>de</strong>s<strong>de</strong> los registros <strong>de</strong><br />

almacenamiento <strong>de</strong> memoria extendida<br />

6x.<br />

INT, UINT Contiene el valor constante 1, que no<br />

pue<strong>de</strong> modificarse.<br />

Salida superior 0x Ninguno Lectura <strong>de</strong> transferencia activa.<br />

Salida<br />

intermedia<br />

0x Ninguno Se <strong>de</strong>tectó una estado <strong>de</strong> error.<br />

Salida inferior 0x Ninguno ON = operación completa.<br />

1188 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Bloque<br />

<strong>de</strong> control<br />

(asiento<br />

superior)<br />

XMRD: Lectura <strong>de</strong> memoria extendida<br />

El registro 4x introducido en el asiento superior es el primero <strong>de</strong> seis registros <strong>de</strong><br />

salida contiguos en el bloque <strong>de</strong> control <strong>de</strong> memoria extendida.<br />

Referencia Nombre <strong>de</strong>l<br />

registro<br />

Descripción<br />

Visualizado Palabra <strong>de</strong> estado Contiene la información <strong>de</strong> diagnóstico acerca <strong>de</strong> la<br />

memoria extendida (consulte p. 1190").<br />

Primer<br />

implícito<br />

Segundo<br />

implícito<br />

Tercer<br />

implícito<br />

Cuarto<br />

implícito<br />

Quinto<br />

implícito<br />

Número <strong>de</strong><br />

archivo<br />

Especifica cuál <strong>de</strong> los archivos <strong>de</strong> memoria extendida<br />

está actualmente en uso (rango: 1 ... 10).<br />

Dirección <strong>de</strong> inicio Especifica qué registro <strong>de</strong> almacenamiento 6x en el<br />

archivo actual es la dirección <strong>de</strong> inicio; 0 = 60000, 9999<br />

= 69999.<br />

Cantidad Especifica la cantidad <strong>de</strong> registros que <strong>de</strong>berán leerse<br />

o escribirse en un ciclo cuando se activa el bloque <strong>de</strong><br />

función apropiado. Rango 0 ... 9999, sin exce<strong>de</strong>r el<br />

número máximo <strong>de</strong> registros especificado (quinto<br />

implícito).<br />

Offset Suma <strong>de</strong> forma continua la cantidad <strong>de</strong> registros<br />

transferidos.<br />

Cantidad máxima<br />

<strong>de</strong> registros<br />

Especifica la cantidad máxima <strong>de</strong> registros que pue<strong>de</strong>n<br />

ser transferidos cuando se activa el bloque <strong>de</strong> función<br />

(rango: 0 ... 9999).<br />

Si se encuentra en el modo <strong>de</strong> ciclos múltiples (multi-scan), estos seis registros<br />

pue<strong>de</strong>n ser unificados en este bloque <strong>de</strong> función.<br />

31007526 12/2006 1189


XMRD: Lectura <strong>de</strong> memoria extendida<br />

Palabra <strong>de</strong><br />

estado <strong>de</strong>l<br />

bloque <strong>de</strong><br />

control<br />

Palabra <strong>de</strong> estado <strong>de</strong>l bloque <strong>de</strong> control.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = error <strong>de</strong> diagnóstico <strong>de</strong> arranque.<br />

2 1 = error <strong>de</strong> paridad en la memoria extendida.<br />

3 1 = no existe memoria extendida.<br />

4 0 = la transferencia no se está ejecutando.<br />

1 = ocupado.<br />

5 0 = transferencia en progreso.<br />

1 = transferencia completa.<br />

6 1 = transgresión <strong>de</strong> límite <strong>de</strong> archivo.<br />

7 1 = parámetro offset <strong>de</strong>masiado gran<strong>de</strong>.<br />

8 - 9 No utilizado.<br />

10 1 = memoria <strong>de</strong> señal no existente.<br />

11 No utilizado.<br />

12 1 = error <strong>de</strong> parámetro <strong>de</strong> cantidad máxima <strong>de</strong> registros.<br />

13 1 = error <strong>de</strong> parámetro <strong>de</strong> offset.<br />

14 1 = error <strong>de</strong> parámetro <strong>de</strong> contador.<br />

15 1 = error <strong>de</strong> parámetro <strong>de</strong> dirección <strong>de</strong> inicio.<br />

16 1 = error <strong>de</strong> parámetro <strong>de</strong> número <strong>de</strong> archivo.<br />

1190 31007526 12/2006


Presentación<br />

XMWT:<br />

Escritura en memoria extendida<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción XMWT.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

191<br />

Apartado Página<br />

Descripción breve 1192<br />

Representación 1193<br />

Descripción <strong>de</strong> los parámetros 1195<br />

31007526 12/2006 1191


XMWT: Escritura en memoria extendida<br />

Descripción breve<br />

Descripción<br />

<strong>de</strong> la función<br />

La instrucción XMWT se utiliza para escribir datos <strong>de</strong>s<strong>de</strong> un bloque <strong>de</strong> registros <strong>de</strong><br />

entrada o <strong>de</strong> salida en la memoria <strong>de</strong> señal a un bloque <strong>de</strong> registros 6x en un fichero<br />

<strong>de</strong> memoria extendida.<br />

1192 31007526 12/2006


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

entrada <strong>de</strong> control<br />

habilitar offset <strong>de</strong> borrado<br />

habilitar cancelación en<br />

caso <strong>de</strong> error<br />

fuente<br />

bloque <strong>de</strong><br />

control<br />

XMWT<br />

XMWT: Escritura en memoria extendida<br />

activa<br />

31007526 12/2006 1193<br />

1<br />

error<br />

completar (un ciclo)


XMWT: Escritura en memoria extendida<br />

Descripción <strong>de</strong><br />

parámetros<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

Entrada<br />

superior<br />

Entrada<br />

intermedia<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

0x, 1x Ninguno ON = activa la operación <strong>de</strong> escritura.<br />

0x, 1x Ninguno OFF = pone el offset a 0.<br />

ON = no borra el offset.<br />

Entrada inferior 0x, 1x Ninguno OFF = cancela la operación cuando hay<br />

un error.<br />

ON = no cancela cuando hay un error.<br />

Fuente<br />

(nodo superior)<br />

Bloque <strong>de</strong><br />

control<br />

(véase p. 1195)<br />

(nodo<br />

intermedio)<br />

1<br />

(nodo inferior)<br />

3x, 4x INT, UINT,<br />

WORD<br />

4x INT, UINT,<br />

WORD<br />

Primer registro 3x o 4x en un bloque <strong>de</strong><br />

registros <strong>de</strong> registros <strong>de</strong> fuente contiguos,<br />

es <strong>de</strong>cir, registros <strong>de</strong> entrada o en espera,<br />

cuyo contenido se escribirá en registros 6x<br />

<strong>de</strong> memoria extendida.<br />

Primero <strong>de</strong> seis registros en espera<br />

contiguos en la memoria extendida.<br />

(Para obtener información más <strong>de</strong>tallada,<br />

consulte p. 1195.)<br />

INT, UINT Contiene el valor constante 1, que no<br />

pue<strong>de</strong> modificarse.<br />

Salida superior 0x Ninguno Escritura <strong>de</strong> transferencia activa.<br />

Salida<br />

intermedia<br />

0x Ninguno Se <strong>de</strong>tectó un estado <strong>de</strong> error.<br />

Salida inferior 0x Ninguno ON = operación completa.<br />

1194 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Bloque <strong>de</strong><br />

control (asiento<br />

intermedio)<br />

XMWT: Escritura en memoria extendida<br />

El registro 4x introducido en el asiento intermedio es el primero <strong>de</strong> seis registros <strong>de</strong><br />

salida contiguos en el bloque <strong>de</strong> control <strong>de</strong> memoria extendida.<br />

Referencia Nombre <strong>de</strong>l<br />

registro<br />

Descripción<br />

Visualizado Palabra <strong>de</strong> estado Contiene la información <strong>de</strong> diagnóstico acerca <strong>de</strong> la<br />

memoria extendida (consulte p. 1196").<br />

Primer<br />

implícito<br />

Segundo<br />

implícito<br />

Tercer<br />

implícito<br />

Cuarto<br />

implícito<br />

Quinto<br />

implícito<br />

Número <strong>de</strong><br />

archivo<br />

Especifica cuál <strong>de</strong> los archivos <strong>de</strong> memoria extendida<br />

está actualmente en uso (rango: 1 a 10).<br />

Dirección <strong>de</strong> inicio Especifica qué registro <strong>de</strong> almacenamiento 6x en el<br />

archivo actual es la dirección <strong>de</strong> inicio; 0 = 60000, 9999<br />

= 69999.<br />

Cantidad Especifica la cantidad <strong>de</strong> registros que <strong>de</strong>berán leerse o<br />

escribirse en un ciclo cuando se activa el bloque <strong>de</strong><br />

función apropiado. Rango 0 a9999, sin exce<strong>de</strong>r el<br />

número máximo <strong>de</strong> registros especificado (quinto<br />

implícito).<br />

Offset Suma <strong>de</strong> forma continua la cantidad <strong>de</strong> registros<br />

transferidos.<br />

Cantidad máxima<br />

<strong>de</strong> registros<br />

Especifica la cantidad máxima <strong>de</strong> registros que pue<strong>de</strong>n<br />

ser transferidos cuando se activa el módulo <strong>de</strong> función<br />

(rango: 0 a 9999).<br />

Si se encuentra en el modo <strong>de</strong> ciclos múltiples (multi-scan), estos seis registros<br />

pue<strong>de</strong>n ser unificados en este bloque <strong>de</strong> función.<br />

31007526 12/2006 1195


XMWT: Escritura en memoria extendida<br />

Palabra <strong>de</strong><br />

estado <strong>de</strong>l<br />

bloque <strong>de</strong><br />

control<br />

Palabra <strong>de</strong> estado <strong>de</strong>l bloque <strong>de</strong> control.<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16<br />

Bit Función<br />

1 1 = error <strong>de</strong> diagnóstico <strong>de</strong> arranque.<br />

2 1 = error <strong>de</strong> paridad en la memoria extendida.<br />

3 1 = no existe memoria extendida.<br />

4 0 = la transferencia no se está ejecutando.<br />

1 = ocupado.<br />

5 0 = transferencia en progreso.<br />

1 = transferencia completa.<br />

6 1 = transgresión <strong>de</strong> límite <strong>de</strong> archivo.<br />

7 1 = parámetro offset <strong>de</strong>masiado gran<strong>de</strong>.<br />

8 - 9 No utilizados.<br />

10 1 = memoria <strong>de</strong> señal no existente.<br />

11 No utilizado.<br />

12 1 = error <strong>de</strong> parámetro <strong>de</strong> cantidad máxima <strong>de</strong> registros.<br />

13 1 = error <strong>de</strong> parámetro <strong>de</strong> offset.<br />

14 1 = error <strong>de</strong> parámetro <strong>de</strong> contador.<br />

15 1 = error <strong>de</strong> parámetro <strong>de</strong> dirección <strong>de</strong> inicio.<br />

16 1 = error <strong>de</strong> parámetro <strong>de</strong> número <strong>de</strong> archivo.<br />

1196 31007526 12/2006


Presentación<br />

XOR: O exclusiva<br />

Introducción En este capítulo se <strong>de</strong>scribe la instrucción XOR.<br />

Contenido: Este capítulo contiene los siguiente apartados:<br />

192<br />

Apartado Página<br />

Descripción breve 1198<br />

Representación 1199<br />

Descripción <strong>de</strong> los parámetros 1201<br />

31007526 12/2006 1197


XOR: O exclusiva<br />

Descripción breve<br />

Descripción <strong>de</strong> la<br />

función<br />

XOR sobrescribirá las bobinas bloqueadas <strong>de</strong>ntro <strong>de</strong> la matriz <strong>de</strong> <strong>de</strong>stino sin<br />

habilitarlas.<br />

Esto pue<strong>de</strong> provocar daños personales si una bobina ha bloqueado una<br />

operación, por motivos <strong>de</strong> reparación o mantenimiento, ya que el estado <strong>de</strong> la<br />

bobina pue<strong>de</strong> cambiar como resultado <strong>de</strong> una operación XOR.<br />

Si no se respetan estas precauciones pue<strong>de</strong>n producirse graves lesiones,<br />

daños materiales o incluso la muerte.<br />

La instrucción XOR realiza una operación booleana OR exclusivo en el mo<strong>de</strong>lo <strong>de</strong><br />

bits <strong>de</strong> las matrices <strong>de</strong> fuente y <strong>de</strong> <strong>de</strong>stino.<br />

El mo<strong>de</strong>lo <strong>de</strong> bits que ha recibido la instrucción XOR se envía, a continuación, a la<br />

matriz <strong>de</strong> <strong>de</strong>stino, sobrescribiendo los contenidos anteriores.<br />

source<br />

bits<br />

ADVERTENCIA<br />

0 1 1 0<br />

XOR<br />

0 0<br />

XOR<br />

0 1<br />

1 0<br />

1198 31007526 12/2006<br />

XOR<br />

XOR<br />

1 1<br />

<strong>de</strong>stination<br />

bits


Representación<br />

Símbolo Representación <strong>de</strong> la instrucción<br />

Descripción <strong>de</strong><br />

parámetros<br />

entrada <strong>de</strong> control<br />

tamaño <strong>de</strong> matriz<br />

Longitud: 1–100 registros<br />

(<strong>de</strong> 16 a 1.600 bits)<br />

Descripción <strong>de</strong> los parámetros <strong>de</strong> la instrucción<br />

Parámetros Referencia<br />

<strong>de</strong> memoria<br />

<strong>de</strong> señal<br />

matriz <strong>de</strong><br />

fuente<br />

matriz <strong>de</strong><br />

<strong>de</strong>stino<br />

longitud <strong>de</strong><br />

activa<br />

XOR: O exclusiva<br />

31007526 12/2006 1199<br />

XOR<br />

Tipo <strong>de</strong><br />

datos<br />

Significado<br />

Entrada superior 0x, 1x Ninguno Inicia XOR.<br />

Matriz <strong>de</strong> fuente<br />

(nodo superior)<br />

Matriz <strong>de</strong> <strong>de</strong>stino<br />

(nodo intermedio)<br />

Longitud<br />

(nodo inferior)<br />

0x, 1x, 3x, 4x BOOL,<br />

WORD<br />

0x, 4x BOOL,<br />

WORD<br />

Primera referencia en la matriz <strong>de</strong> fuente.<br />

Primera referencia en la matriz <strong>de</strong> <strong>de</strong>stino.<br />

INT, UINT Longitud <strong>de</strong> la matriz; rango 1100 registros.<br />

Salida superior 0x Ninguno Refleja el estado <strong>de</strong> la entrada superior.


XOR: O exclusiva<br />

Ejemplo <strong>de</strong> XOR Cuando el contacto 10001 transfiere alimentación, la matriz <strong>de</strong> fuente formada por<br />

el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> los registros 40600 y 40601 se enlaza mediante la instrucción<br />

O con la matriz <strong>de</strong> <strong>de</strong>stino formada por el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> los registros 40608 y<br />

40609, <strong>de</strong> modo que sobrescribe el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> <strong>de</strong>stino original.<br />

10001<br />

40600<br />

40608<br />

XOR<br />

00002<br />

matriz <strong>de</strong> fuente<br />

40600 = 1111111100000000 40601 = 1111111100000000<br />

matriz <strong>de</strong> <strong>de</strong>stino original<br />

40608 = 1111111111111111 40609 = 0000000000000000<br />

Matriz <strong>de</strong> <strong>de</strong>stino con la instrucción XOR<br />

40608 = 0000000011111111 40609 = 1111111100000000<br />

Nota: Si <strong>de</strong>sea guardar el mo<strong>de</strong>lo <strong>de</strong> bits <strong>de</strong> <strong>de</strong>stino original <strong>de</strong> los registros 40608<br />

y 40609, copie la información en otra tabla con la instrucción BLKM antes <strong>de</strong> llevar<br />

a cabo la operación XOR.<br />

1200 31007526 12/2006


Descripción <strong>de</strong> los parámetros<br />

Longitud<br />

<strong>de</strong> la matriz<br />

(asiento inferior)<br />

XOR: O exclusiva<br />

El número entero introducido en el asiento inferior especifica la longitud <strong>de</strong> la matriz,<br />

es <strong>de</strong>cir, el número <strong>de</strong> registros o palabras <strong>de</strong> 16 bits que hay en las dos matrices.<br />

La longitud máxima <strong>de</strong>be estar comprendida entre 1 y 100. Una longitud <strong>de</strong> 2 indica<br />

que se aplicará la instrucción XOR a <strong>32</strong> bits en cada matriz.<br />

31007526 12/2006 1201


XOR: O exclusiva<br />

1202 31007526 12/2006


A<br />

Glosario<br />

Advertencia Si durante el procesamiento <strong>de</strong> un FFB o <strong>de</strong> un paso se <strong>de</strong>tecta un estado crítico<br />

(p. ej., valores <strong>de</strong> entrada críticos o rebasamiento <strong>de</strong>l límite <strong>de</strong> tiempo), se generará<br />

una advertencia que se pue<strong>de</strong> ver con el comando <strong>de</strong> menú Online → Indicación<br />

<strong>de</strong> eventos... . En el caso <strong>de</strong> los FFB, la salida ENO permanece en «1».<br />

Ajustes <strong>de</strong> la<br />

transmisión <strong>de</strong><br />

datos<br />

Ajustes que establecen la forma en que se va a transmitir la información <strong>de</strong>l<br />

dispositivo <strong>de</strong> programación al PLC.<br />

ANL_IN ANL_IN representa el tipo <strong>de</strong> datos «entrada analógica» y se utiliza para el<br />

procesamiento <strong>de</strong> valores analógicos. Las referencias 3x <strong>de</strong>l módulo <strong>de</strong> entrada<br />

analógica configurado <strong>de</strong>finidas en la lista <strong>de</strong> componentes <strong>de</strong> E/S se asignan<br />

automáticamente al tipo <strong>de</strong> datos y, por eso, sólo pue<strong>de</strong>n estar ocupadas por<br />

Unlocated variables.<br />

ANL_OUT ANL_OUT representa el tipo <strong>de</strong> datos «salida analógica» y se utiliza para el<br />

procesamiento <strong>de</strong> valores analógicos. Las referencias 4x <strong>de</strong>l módulo <strong>de</strong> salida<br />

analógica configurado <strong>de</strong>finidas en la lista <strong>de</strong> componentes <strong>de</strong> E/S se asignan<br />

automáticamente al tipo <strong>de</strong> datos y, por eso, sólo pue<strong>de</strong>n estar ocupadas por<br />

Unlocated variables.<br />

ANY En la presente versión, «ANY» incluye los tipos <strong>de</strong> datos elementales BOOL, BYTE,<br />

DINT, INT, REAL, UDINT, UINT, TIME y WORD y los tipos <strong>de</strong> datos <strong>de</strong>rivados <strong>de</strong><br />

ellos.<br />

ANY_BIT En la presente versión, «ANY_BIT» incluye los tipos <strong>de</strong> datos BOOL, BYTE y<br />

WORD.<br />

31007526 12/2006 xxxi


Glosario<br />

ANY_ELEM En la presente versión, «ANY_ELEM» incluye los tipos <strong>de</strong> datos elementales<br />

BOOL, BYTE, DINT, INT, REAL, UDINT, UINT, TIME y WORD.<br />

ANY_INT En la presente versión, «ANY_INT» incluye los tipos <strong>de</strong> datos DINT, INT, UDINT y<br />

UINT.<br />

ANY_NUM En la presente versión, «ANY_NUM» incluye los tipos <strong>de</strong> datos DINT, INT, REAL,<br />

UDINT y UINT.<br />

ANY_REAL En la presente versión, «ANY_REAL» incluye el tipo <strong>de</strong> datos REAL.<br />

Archivo<br />

<strong>de</strong> datos Back up<br />

(EFB Concept)<br />

Archivo <strong>de</strong> datos<br />

<strong>de</strong> <strong>de</strong>finición<br />

(EFB Concept)<br />

Archivo <strong>de</strong><br />

datos <strong>de</strong> mo<strong>de</strong>lo<br />

(EFB Concept)<br />

Archivo <strong>de</strong> datos<br />

<strong>de</strong> prototipo<br />

(EFB Concept)<br />

Archivo <strong>de</strong> datos<br />

<strong>de</strong>l código fuente<br />

(EFB Concept)<br />

El archivo <strong>de</strong> copia <strong>de</strong> seguridad es una copia <strong>de</strong>l último archivo <strong>de</strong> fuente. El<br />

nombre <strong>de</strong> este archivo <strong>de</strong> copia <strong>de</strong> seguridad es «backup??.c» (se asume que no<br />

tiene más <strong>de</strong> 100 copias <strong>de</strong>l archivo <strong>de</strong> código fuente). El primer archivo <strong>de</strong> back up<br />

se llama «backup00.c». Si se han realizado cambios en el archivo <strong>de</strong> <strong>de</strong>finición, que<br />

no crea ningún cambio en la interfaz en el EFB, no es necesario crear un archivo <strong>de</strong><br />

back up editando los archivos <strong>de</strong> fuente (Objetos → Fuente). Si crea un archivo <strong>de</strong><br />

back up, pue<strong>de</strong> darle el nombre <strong>de</strong>l archivo <strong>de</strong> fuente.<br />

El archivo <strong>de</strong> <strong>de</strong>finición contiene información <strong>de</strong>scriptiva general sobre el EFB<br />

seleccionado y sus parámetros formales.<br />

El archivo <strong>de</strong> datos <strong>de</strong> mo<strong>de</strong>lo es un archivo ASCII con información <strong>de</strong> diseño para<br />

el editor <strong>de</strong> FBD Concept y los parámetros para la generación <strong>de</strong> códigos.<br />

El archivo <strong>de</strong> datos <strong>de</strong> prototipo contiene todos los prototipos <strong>de</strong> las funciones<br />

asignadas. Por tanto, si está disponible, se proporciona una <strong>de</strong>finición <strong>de</strong> tipo <strong>de</strong> la<br />

estructura <strong>de</strong>l estado interno.<br />

El archivo <strong>de</strong> datos <strong>de</strong>l código fuente es un archivo <strong>de</strong> fuente C++ convencional.<br />

Después <strong>de</strong> ejecutar el comando <strong>de</strong> menú <strong>Biblioteca</strong> → Generar archivos <strong>de</strong><br />

datos, este archivo contiene un cuadro <strong>de</strong> códigos <strong>de</strong> EFB en el que <strong>de</strong>berá<br />

introducir un código específico para el EFB seleccionado. Para ello, haga clic en el<br />

comando <strong>de</strong> menú Objetos → Fuente.<br />

Argumento Significa lo mismo que parámetros reales.<br />

Atrium El controlador basado en PC se encuentra en una tarjeta AT estándar y se pue<strong>de</strong><br />

utilizar <strong>de</strong>ntro <strong>de</strong> un equipo host en un slot <strong>de</strong> bus ISA. El módulo dispone <strong>de</strong> una<br />

placa base (necesita el controlador SA85) con dos slots para tarjetas PC104. Una<br />

<strong>de</strong> estas tarjetas PC104 se utiliza como CPU y la otra, como controlador<br />

INTERBUS.<br />

xxxii 31007526 12/2006


B<br />

Banco <strong>de</strong> datos<br />

<strong>de</strong>l proyecto<br />

Glosario<br />

Banco <strong>de</strong> datos <strong>de</strong>l dispositivo <strong>de</strong> programación que contiene la información <strong>de</strong><br />

proyección para un proyecto.<br />

<strong>Biblioteca</strong> Colección <strong>de</strong> objetos <strong>de</strong> software previstos para reutilizarlos al programar nuevos<br />

proyectos, o incluso para formar nuevas bibliotecas. Como ejemplos se pue<strong>de</strong>n<br />

citar las bibliotecas <strong>de</strong> los tipos <strong>de</strong> <strong>bloques</strong> <strong>de</strong> funciones elementales.<br />

Las bibliotecas EFB se pue<strong>de</strong>n subdividir en grupos.<br />

Bits <strong>de</strong> entrada<br />

(referencias 1x)<br />

El estado 1/0 <strong>de</strong> los bits <strong>de</strong> entrada se controla mediante los datos <strong>de</strong> proceso, que<br />

llegan a la CPU <strong>de</strong>s<strong>de</strong> un dispositivo <strong>de</strong> entrada.<br />

Bits <strong>de</strong> estado Existe un bit <strong>de</strong> estado para cada participante con entrada global o entrada/salida<br />

específica <strong>de</strong> datos Peer Cop. Si se ha transmitido con éxito un grupo <strong>de</strong>finido <strong>de</strong><br />

datos <strong>de</strong>ntro <strong>de</strong>l timeout establecido, el bit <strong>de</strong> estado correspondiente pasará a 1.<br />

En caso contrario, este bit pasará a 0 y se borrarán todos los datos pertenecientes<br />

a este grupo (<strong>de</strong> 0).<br />

Bloque <strong>de</strong><br />

funciones<br />

(elemento) (FB)<br />

Nota: La x que aparece <strong>de</strong>trás <strong>de</strong> la primera cifra <strong>de</strong>l tipo <strong>de</strong> referencia representa<br />

un lugar <strong>de</strong> almacenamiento <strong>de</strong> cinco posiciones en la memoria <strong>de</strong> datos <strong>de</strong> la<br />

aplicación; por ejemplo, la referencia 100201 significa un bit <strong>de</strong> entrada en la<br />

dirección 201 <strong>de</strong> la memoria <strong>de</strong> señal.<br />

Un bloque <strong>de</strong> funciones es una unidad organizativa <strong>de</strong>l programa que calcula, <strong>de</strong><br />

acuerdo con la funcionalidad <strong>de</strong>finida en la <strong>de</strong>scripción <strong>de</strong>l tipo <strong>de</strong> bloque <strong>de</strong><br />

funciones, los valores para sus salidas y variable o variables internas cuando se<br />

ejecuta como un elemento <strong>de</strong>terminado. Todos los valores <strong>de</strong> las salidas y variables<br />

internas <strong>de</strong> un <strong>de</strong>terminado elemento <strong>de</strong>l bloque <strong>de</strong> funciones se conservan como<br />

una llamada <strong>de</strong>l bloque <strong>de</strong> funciones hasta la siguiente. Aunque se ejecute varias<br />

veces un mismo elemento <strong>de</strong>l bloque <strong>de</strong> funciones con los mismos argumentos<br />

(valores <strong>de</strong> parámetros <strong>de</strong> entrada), no se obtendrán necesariamente los mismos<br />

valores <strong>de</strong> salida.<br />

Cada elemento <strong>de</strong>l bloque <strong>de</strong> funciones se representa gráficamente mediante un<br />

símbolo <strong>de</strong> bloque rectangular. El nombre <strong>de</strong>l tipo <strong>de</strong> bloque <strong>de</strong> funciones está<br />

<strong>de</strong>ntro <strong>de</strong>l rectángulo, centrado en la parte superior. El nombre <strong>de</strong>l elemento <strong>de</strong>l<br />

bloque <strong>de</strong> funciones también está arriba, pero fuera <strong>de</strong>l rectángulo. Se genera<br />

automáticamente al crear una instancia, pero, en caso necesario, el usuario pue<strong>de</strong><br />

modificarlo manualmente. Las entradas se representan en la parte izquierda <strong>de</strong>l<br />

bloque; las salidas, en la <strong>de</strong>recha. Los nombres <strong>de</strong> los parámetros formales <strong>de</strong><br />

entrada/salida aparecen <strong>de</strong>ntro <strong>de</strong>l rectángulo, en el lugar correspondiente.<br />

31007526 12/2006 xxxiii


Glosario<br />

La <strong>de</strong>scripción anterior <strong>de</strong> la representación gráfica también es aplicable en general<br />

a las llamadas <strong>de</strong> funciones y a las llamadas <strong>de</strong> DFB. En las correspondientes<br />

<strong>de</strong>finiciones se indican las diferencias.<br />

Bobina Una bobina es un elemento LD que transmite, sin modificarlo, el estado <strong>de</strong> la<br />

conexión horizontal <strong>de</strong> su izquierda a la conexión horizontal <strong>de</strong> su <strong>de</strong>recha. De este<br />

modo, el estado se guarda en la variable/dirección directa asociada.<br />

BOOL BOOL indica el tipo <strong>de</strong> datos «booleano». La longitud <strong>de</strong> los elementos <strong>de</strong> datos es<br />

<strong>de</strong> 1 bit (en la memoria se guarda en 1 byte). El rango <strong>de</strong> valores para las variables<br />

<strong>de</strong> este tipo <strong>de</strong> datos es 0 (FALSE) y 1 (TRUE).<br />

BYTE BYTE indica el tipo <strong>de</strong> datos «secuencia <strong>de</strong> bits 8». La entrada se efectúa en forma<br />

<strong>de</strong> literal <strong>de</strong> base 2, literal <strong>de</strong> base 8 o literal <strong>de</strong> base 16. La longitud <strong>de</strong>l elemento<br />

<strong>de</strong> datos es <strong>de</strong> 8 bits. A este tipo <strong>de</strong> datos no se le pue<strong>de</strong> asignar un rango <strong>de</strong><br />

valores numérico.<br />

C<br />

Caché El portapapeles es una memoria temporal para objetos cortados o copiados. Estos<br />

objetos se pue<strong>de</strong>n pegar en secciones. Cada vez que se vuelva a cortar o copiar,<br />

se sobrescribirá el contenido anterior <strong>de</strong>l portapapeles.<br />

Ciclo <strong>de</strong>l<br />

programa<br />

Un ciclo <strong>de</strong>l programa se compone <strong>de</strong> la lectura <strong>de</strong> las entradas, el procesamiento<br />

<strong>de</strong> la lógica <strong>de</strong>l programa y la salida <strong>de</strong> las salidas.<br />

Conexión Comprobación o flujo <strong>de</strong> conexión <strong>de</strong> datos entre objetos gráficos (p. ej., pasos en<br />

el editor <strong>de</strong> SFC, <strong>bloques</strong> <strong>de</strong> funciones en el editor <strong>de</strong> FBD) en una sección, que se<br />

muestra gráficamente como una línea.<br />

Conexión local La conexión <strong>de</strong> red local es la red que conecta al participante local con otros<br />

participantes, ya sea directamente o mediante un amplificador <strong>de</strong> bus.<br />

Conexiones<br />

binarias<br />

Conexiones entre salidas y entradas <strong>de</strong> FFB <strong>de</strong>l tipo <strong>de</strong> datos BOOL.<br />

Constantes Las constantes son Unlocated variables a las que se ha asignado un valor que la<br />

lógica <strong>de</strong>l programa no pue<strong>de</strong> modificar (protegido contra escritura).<br />

xxxiv 31007526 12/2006


Glosario<br />

Contacto Un contacto es un elemento LD que transmite un estado a la conexión horizontal <strong>de</strong><br />

su <strong>de</strong>recha. Este estado se obtiene <strong>de</strong> la operación booleana AND <strong>de</strong>l estado <strong>de</strong> la<br />

conexión horizontal <strong>de</strong> la izquierda con el estado <strong>de</strong> la variable/dirección directa<br />

correspondiente. Un contacto no modifica el valor <strong>de</strong> la variable/dirección directa<br />

asociada.<br />

Contador <strong>de</strong><br />

funciones<br />

Convenciones<br />

<strong>de</strong> nomenclatura<br />

IEC<br />

(i<strong>de</strong>ntificador)<br />

Creación <strong>de</strong><br />

instancias<br />

Cuadro <strong>de</strong><br />

diálogo <strong>de</strong>l<br />

bloque <strong>de</strong><br />

funciones (FBD)<br />

El contador <strong>de</strong> funciones sirve para i<strong>de</strong>ntificar inequívocamente una función en un<br />

programa o DFB. El contador <strong>de</strong> funciones no se pue<strong>de</strong> editar y se asigna automáticamente.<br />

El contador <strong>de</strong> funciones tiene siempre la estructura: .n.m<br />

n = número <strong>de</strong> la sección (número en ejecución)<br />

m = número <strong>de</strong>l objeto FFB <strong>de</strong>ntro <strong>de</strong> la sección (número en ejecución)<br />

Un i<strong>de</strong>ntificador es una secuencia <strong>de</strong> letras, números y guiones bajos que <strong>de</strong>be<br />

empezar por una letra o un guión bajo (p. ej., el nombre <strong>de</strong> un tipo <strong>de</strong> bloque <strong>de</strong><br />

funciones, un elemento, una variable o una sección). Se pue<strong>de</strong>n utilizar las letras<br />

propias <strong>de</strong> los juegos <strong>de</strong> caracteres nacionales (p. ej., ö, ü, é, õ), excepto en los<br />

nombres <strong>de</strong> proyecto y <strong>de</strong> DFB.<br />

Los guiones bajos son significativos en los i<strong>de</strong>ntificadores, p. ej., «A_BCD» y<br />

«AB_CD» se interpretan como dos i<strong>de</strong>ntificadores distintos. No se permiten varios<br />

guiones bajos iniciales ni seguidos.<br />

Los i<strong>de</strong>ntificadores no pue<strong>de</strong>n contener espacios en blanco. Las mayúsculas o<br />

minúsculas no son significativas, p. ej., «ABCD» y «abcd» se interpretan como el<br />

mismo i<strong>de</strong>ntificador.<br />

Los i<strong>de</strong>ntificadores no pue<strong>de</strong>n ser palabras clave.<br />

Creación <strong>de</strong> un elemento.<br />

Una o varias secciones que contienen representaciones gráficas <strong>de</strong> re<strong>de</strong>s <strong>de</strong><br />

funciones, <strong>bloques</strong> <strong>de</strong> funciones y conexiones.<br />

31007526 12/2006 xxxv


Glosario<br />

D<br />

DDE (Dynamic<br />

Data Exchange,<br />

Intercambio <strong>de</strong><br />

datos dinámico)<br />

La interfase DDE permite el intercambio <strong>de</strong> datos dinámico entre dos programas<br />

que se ejecuten en Windows. El usuario pue<strong>de</strong> utilizar la interfase DDE en el<br />

monitor ampliado para ejecutar sus propias aplicaciones <strong>de</strong> visualización. Mediante<br />

esta interfase, el usuario (el cliente DDE) no sólo lee datos <strong>de</strong>l monitor ampliado<br />

(servidor DDE), sino que también pue<strong>de</strong> escribir datos en el PLC a través <strong>de</strong>l<br />

servidor. De esta forma, el usuario pue<strong>de</strong> modificar los datos directamente en el<br />

PLC mientras vigila y analiza los resultados. Si utiliza esta interfase, el usuario<br />

pue<strong>de</strong> crear e integrar en el sistema sus propias «Graphic Tool», «Face Plate» o<br />

«Tuning Tool». Estas herramientas se pue<strong>de</strong>n escribir en cualquier lenguaje que<br />

DDE pueda interpretar, por ejemplo, Visual Basic o Visual-C++. Las herramientas<br />

se ejecutan cuando uno <strong>de</strong> los botones <strong>de</strong>l cuadro <strong>de</strong> diálogo <strong>de</strong> monitor ampliado<br />

utiliza Concept Graphic Tool: mediante la conexión DDE entre Concept y Concept<br />

Graphic Tool se pue<strong>de</strong>n representar las señales <strong>de</strong> una preparación como<br />

cronograma.<br />

Declaración Mecanismo para establecer la <strong>de</strong>finición <strong>de</strong> un elemento <strong>de</strong> lenguaje.<br />

Normalmente, una <strong>de</strong>claración incluye la conexión <strong>de</strong> un i<strong>de</strong>ntificador con un<br />

elemento <strong>de</strong> lenguaje y la asignación <strong>de</strong> atributos como tipos <strong>de</strong> datos y algoritmos.<br />

Derived Function<br />

Block (DFB)<br />

(bloque <strong>de</strong><br />

funciones<br />

<strong>de</strong>rivadas)<br />

Un bloque <strong>de</strong> funciones <strong>de</strong>rivadas representa la llamada <strong>de</strong> un tipo <strong>de</strong> bloque <strong>de</strong><br />

funciones <strong>de</strong>rivadas. Encontrará más <strong>de</strong>talles acerca <strong>de</strong> la forma gráfica <strong>de</strong> la<br />

llamada en la <strong>de</strong>finición <strong>de</strong> «bloque <strong>de</strong> funciones (elemento)». A diferencia <strong>de</strong> las<br />

llamadas <strong>de</strong> los tipos EFB, las llamadas <strong>de</strong> los tipos DFB se i<strong>de</strong>ntifican mediante<br />

líneas verticales dobles en la parte <strong>de</strong>recha e izquierda <strong>de</strong>l símbolo <strong>de</strong> bloque<br />

rectangular.<br />

El cuerpo <strong>de</strong> un tipo <strong>de</strong> bloque <strong>de</strong> funciones <strong>de</strong>rivado se diseña en el lenguaje FBD,<br />

pero sólo en la versión actual <strong>de</strong>l sistema <strong>de</strong> programación. Todavía no se pue<strong>de</strong>n<br />

utilizar otros lenguajes IEC para la <strong>de</strong>finición <strong>de</strong> tipos DFB, y las funciones<br />

<strong>de</strong>rivadas tampoco se pue<strong>de</strong>n <strong>de</strong>finir en la versión actual.<br />

Se distingue entre DFB locales y globales.<br />

DFB globales Los DFB globales están disponibles en todos los proyectos <strong>de</strong> Concept y se<br />

encuentran en el directorio DFB, justo <strong>de</strong>bajo <strong>de</strong>l directorio Concept.<br />

DFB locales Los DFB locales sólo están disponibles en un único proyecto <strong>de</strong> Concept y se<br />

guardan en el directorio DFB bajo el directorio <strong>de</strong>l proyecto.<br />

Diagrama <strong>de</strong><br />

contactos (LD)<br />

Diagrama <strong>de</strong> contactos es un lenguaje <strong>de</strong> programación gráfico que cumple la<br />

norma IEC1131 y se orienta ópticamente al «escalón» <strong>de</strong> un diagrama <strong>de</strong> contactos<br />

<strong>de</strong> relés.<br />

xxxvi 31007526 12/2006


Glosario<br />

DINT DINT representa el tipo <strong>de</strong> datos «entero doble». La entrada se efectúa en forma <strong>de</strong><br />

literal entero, literal <strong>de</strong> base 2, literal <strong>de</strong> base 8 o literal <strong>de</strong> base 16. La longitud <strong>de</strong>l<br />

elemento <strong>de</strong> datos es <strong>de</strong> <strong>32</strong> bits. El rango <strong>de</strong> valores para las variables <strong>de</strong> este tipo<br />

<strong>de</strong> datos va <strong>de</strong> -2 exp (31) a 2 exp (31) -1.<br />

Dirección <strong>de</strong><br />

nodo<br />

La dirección <strong>de</strong> nodo sirve para i<strong>de</strong>ntificar sin posibilidad <strong>de</strong> confusión un nodo <strong>de</strong><br />

red en la ruta <strong>de</strong> acceso. La dirección se configura directamente en el participante,<br />

p. ej., mediante un conmutador rotativo en la parte posterior <strong>de</strong>l módulo.<br />

Direcciones Las direcciones (directas) son zonas <strong>de</strong> memoria en el PLC. Se encuentran en la<br />

memoria <strong>de</strong> señal y pue<strong>de</strong>n estar asignadas a módulos <strong>de</strong> entrada/salida.<br />

La visualización/entrada <strong>de</strong> direcciones directas pue<strong>de</strong> realizarse en los siguientes<br />

formatos:<br />

Formato estándar (400001)<br />

Formato <strong>de</strong> separador (4:00001)<br />

Formato compacto (4:1)<br />

Formato IEC (QW1)<br />

Dispositivo <strong>de</strong><br />

programación<br />

Hardware y software que permiten programar, configurar, probar, implementar y<br />

buscar errores tanto en las aplicaciones <strong>de</strong>l PLC como en las aplicaciones <strong>de</strong>l<br />

sistema <strong>de</strong>scentralizadas para hacer posible la documentación y el archivo <strong>de</strong> la<br />

fuente. En <strong>de</strong>terminadas circunstancias, el dispositivo <strong>de</strong> programación se pue<strong>de</strong><br />

utilizar también para la visualización <strong>de</strong> procesos.<br />

Dummy Archivo <strong>de</strong> datos vacío compuesto por un encabezado <strong>de</strong> texto con información<br />

general sobre el archivo como, por ejemplo, autor, fecha <strong>de</strong> creación, <strong>de</strong>nominación<br />

<strong>de</strong>l EFB, etc. El usuario <strong>de</strong>be completarlo por medio <strong>de</strong> otras entradas.<br />

E<br />

Elemento <strong>de</strong><br />

lenguaje<br />

Cualquier elemento básico en uno <strong>de</strong> los lenguajes <strong>de</strong> programación IEC, p. ej., un<br />

paso en SFC, un elemento <strong>de</strong> bloque <strong>de</strong> funciones en FBD o el valor inicial <strong>de</strong> una<br />

variable.<br />

31007526 12/2006 xxxvii


Glosario<br />

EN/ENO<br />

(Habilitación/<br />

Indicación <strong>de</strong><br />

error)<br />

Si el valor <strong>de</strong> EN es «0», cuando se ejecute el FFB no se ejecutarán los algoritmos<br />

<strong>de</strong>finidos mediante el FFB, y todas las salidas conservarán su valor anterior. En<br />

este caso, el valor <strong>de</strong> ENO se ajustará automáticamente a «0». Si el valor <strong>de</strong> EN es<br />

«1», cuando se ejecute el FFB se ejecutarán los algoritmos <strong>de</strong>finidos mediante el<br />

FFB. Una vez que se hayan ejecutado estos algoritmos sin errores, el valor <strong>de</strong> ENO<br />

se ajustará automáticamente a «1». Si se produce un error durante la ejecución <strong>de</strong><br />

estos algoritmos, ENO pasará a «0» automáticamente. El comportamiento <strong>de</strong> salida<br />

<strong>de</strong> los FFB no <strong>de</strong>pen<strong>de</strong> <strong>de</strong> si los FFB se han ejecutado sin EN/ENO o con EN=1. Si<br />

está activada la visualización <strong>de</strong> EN/ENO, habrá que conectar obligatoriamente la<br />

entrada EN. De no ser así, no se ejecutará el FFB. La configuración <strong>de</strong> EN y ENO<br />

se activa y <strong>de</strong>sactiva en el cuadro <strong>de</strong> diálogo <strong>de</strong> las propieda<strong>de</strong>s <strong>de</strong> los <strong>bloques</strong>.<br />

Este cuadro <strong>de</strong> diálogo se abre con los comandos <strong>de</strong> menú Objetos →<br />

Propieda<strong>de</strong>s...o haciendo doble clic en el FFB.<br />

Error Si durante el procesamiento <strong>de</strong> un FFB o <strong>de</strong> un paso se <strong>de</strong>tecta un error (p. ej.,<br />

valores <strong>de</strong> entrada no permitidos o un error <strong>de</strong> tiempos), se generará un mensaje<br />

<strong>de</strong> error que se pue<strong>de</strong> ver con el comando <strong>de</strong> menú Online → Indicación <strong>de</strong><br />

eventos.... En el caso <strong>de</strong> los FFB, la salida ENO se ajustará a «0».<br />

Error <strong>de</strong><br />

ejecución<br />

Estación DCP<br />

<strong>de</strong> E/S<br />

Error que se produce durante el procesamiento <strong>de</strong>l programa en el PLC con objetos<br />

SFC (p. ej., pasos) o FFB. Estos errores pue<strong>de</strong>n ser, por ejemplo, <strong>de</strong>sbor<strong>de</strong>s <strong>de</strong>l<br />

rango <strong>de</strong> valores con cifras o errores <strong>de</strong> tiempo en pasos.<br />

Con un procesador <strong>de</strong> control distribuido (D908) pue<strong>de</strong> instalar una red remota con<br />

un PLC primario. Si se utiliza un D908 con un PLC remoto, el PLC primario<br />

consi<strong>de</strong>rará al PLC remoto como una estación <strong>de</strong> E/S remota. El D908 y el PLC<br />

remoto se comunican a través <strong>de</strong> un bus <strong>de</strong> sistema, lo que proporciona un alto<br />

rendimiento con una mínima repercusión en el tiempo <strong>de</strong> ciclo. El intercambio <strong>de</strong><br />

datos entre el procesador D908 y el PLC primario se realiza a 1,5 megabits por<br />

segundo mediante el bus <strong>de</strong> E/S remotas. Un PLC primario pue<strong>de</strong> admitir hasta 31<br />

(dirección 2-<strong>32</strong>) procesadores D908.<br />

Evaluación Proceso por el cual se averigua el valor <strong>de</strong> una función o <strong>de</strong> las salidas <strong>de</strong> un bloque<br />

<strong>de</strong> funciones durante la ejecución <strong>de</strong>l programa.<br />

Expresión Las expresiones se componen <strong>de</strong> operadores y operandos.<br />

F<br />

FFB (funciones/<br />

<strong>bloques</strong> <strong>de</strong><br />

funciones)<br />

Término colectivo para EFB (funciones/<strong>bloques</strong> <strong>de</strong> funciones elementales) y DFB<br />

(<strong>bloques</strong> <strong>de</strong> funciones <strong>de</strong>rivados).<br />

xxxviii 31007526 12/2006


Filtro FIR Filtro con respuesta <strong>de</strong> impulsos finita (Finite Impulse Response Filter).<br />

Filtro IIR Filtro con respuesta <strong>de</strong> impulsos infinita (Infinite Impulse Response Filter)<br />

Formato<br />

compacto (4:1)<br />

Formato <strong>de</strong><br />

separador<br />

(4:00001)<br />

Formato<br />

estándar<br />

(400001)<br />

Formato<br />

horizontal<br />

Formato IEC<br />

(QW1)<br />

Glosario<br />

La primera cifra (la referencia) se separa <strong>de</strong> la siguiente dirección mediante dos<br />

puntos (:) sin poner en la dirección los ceros a la izquierda.<br />

La primera cifra (la referencia) se separa mediante dos puntos (:) <strong>de</strong> las siguientes<br />

cinco posiciones <strong>de</strong> la dirección.<br />

Justo <strong>de</strong>trás <strong>de</strong> la primera cifra (la referencia) está la dirección <strong>de</strong> cinco posiciones.<br />

El formato horizontal indica que la página <strong>de</strong>l texto impreso es más ancha que alta.<br />

En la primera posición <strong>de</strong> la dirección hay un i<strong>de</strong>ntificador conforme a IEC, seguido<br />

<strong>de</strong> la dirección <strong>de</strong> cinco posiciones:<br />

%0x12345 = %Q12345<br />

%1x12345 = %I12345<br />

%3x12345 = %IW12345<br />

%4x12345 = %QW12345<br />

Formato vertical El formato vertical indica que la página <strong>de</strong>l texto impreso es más alta que ancha.<br />

Función (FUNC) Unidad organizativa <strong>de</strong>l programa que proporciona exactamente un elemento <strong>de</strong><br />

datos en la ejecución. Una función no tiene información interna <strong>de</strong> estado. Si se<br />

ejecuta varias veces la misma función con los mismos valores en los parámetros <strong>de</strong><br />

entrada, se obtienen siempre los mismos valores <strong>de</strong> salida.<br />

Encontrará más <strong>de</strong>talles acerca <strong>de</strong> la forma gráfica <strong>de</strong> las llamadas <strong>de</strong> funciones en<br />

la <strong>de</strong>finición <strong>de</strong> «bloque <strong>de</strong> funciones (elemento)». A diferencia <strong>de</strong> las llamadas a<br />

<strong>bloques</strong> <strong>de</strong> funciones, las llamadas a funciones sólo tienen una única salida sin<br />

nombre, ya que éste coinci<strong>de</strong> con el nombre <strong>de</strong> la función. En FBD, cada llamada<br />

se i<strong>de</strong>ntifica mediante un número inequívoco que le asigna el bloque gráfico; este<br />

número se genera <strong>de</strong> forma automática y no se pue<strong>de</strong> modificar.<br />

Funciones/<br />

<strong>bloques</strong> <strong>de</strong><br />

funciones<br />

elementales<br />

(EFB)<br />

Denominación <strong>de</strong> las funciones o los <strong>bloques</strong> <strong>de</strong> funciones cuyas <strong>de</strong>finiciones <strong>de</strong><br />

tipos no han sido formuladas en uno <strong>de</strong> los lenguajes IEC; es <strong>de</strong>cir, el cuerpo <strong>de</strong> las<br />

<strong>de</strong>finiciones no se pue<strong>de</strong> modificar con el editor DFB (DFB Concept), por ejemplo.<br />

Los tipos <strong>de</strong> EFB se programan en «C» y están disponibles mediante bibliotecas en<br />

la forma previa a la compilación.<br />

31007526 12/2006 xxxix


Glosario<br />

G<br />

Grupos (EFB) Algunas bibliotecas <strong>de</strong> EFB (p. ej., la biblioteca <strong>de</strong> IEC) están subdivididas en<br />

grupos. Esto facilita la búsqueda <strong>de</strong> FFB, especialmente en bibliotecas amplias.<br />

I<br />

IEC 61131-3 Norma internacional: controladores programables–parte 3: lenguajes <strong>de</strong><br />

programación.<br />

Instrucción<br />

(984LL)<br />

Al programar los controles eléctricos, el usuario <strong>de</strong>berá implementar instrucciones<br />

codificadas operacionalmente en forma <strong>de</strong> objetos <strong>de</strong> imagen que están divididos<br />

en forma <strong>de</strong> contactos reconocibles. A nivel <strong>de</strong> usuario, los objetos <strong>de</strong> programa<br />

<strong>de</strong>signados se convierten durante el proceso <strong>de</strong> carga en códigos OP que pue<strong>de</strong><br />

utilizar el equipo. Estos códigos OP se <strong>de</strong>scodifican en la CPU y las funciones <strong>de</strong><br />

firmware <strong>de</strong>l controlador los procesan <strong>de</strong> forma que se pue<strong>de</strong> implementar el control<br />

<strong>de</strong>seado.<br />

Instrucción (IL) Las instrucciones son los «comandos» <strong>de</strong>l lenguaje <strong>de</strong> programación IL. Cada<br />

instrucción comienza en una línea nueva y va seguida <strong>de</strong> un operador o modificador<br />

y, si fuera necesario para la operación en cuestión, <strong>de</strong> uno o más operandos. Si se<br />

utilizan varios operandos, éstos se separarán con comas. Antes <strong>de</strong> la instrucción<br />

pue<strong>de</strong> haber una marca, que irá seguida <strong>de</strong> dos puntos (:). Si hubiera un<br />

comentario, <strong>de</strong>berá ser el último elemento <strong>de</strong> la línea.<br />

Instrucción (ST) Las instrucciones son los «comandos» <strong>de</strong>l lenguaje <strong>de</strong> programación ST. Cada una<br />

<strong>de</strong> ellas <strong>de</strong>be finalizar con punto y coma (;). En una línea pue<strong>de</strong> haber varias<br />

instrucciones (separadas por punto y coma).<br />

INT INT representa el tipo <strong>de</strong> datos «número entero». La entrada se efectúa en forma<br />

<strong>de</strong> literal entero, literal <strong>de</strong> base 2, literal <strong>de</strong> base 8 o literal <strong>de</strong> base 16. La longitud<br />

<strong>de</strong>l elemento <strong>de</strong> datos es <strong>de</strong> 16 bits. El rango <strong>de</strong> valores para las variables <strong>de</strong> este<br />

tipo <strong>de</strong> datos va <strong>de</strong> -2 exp (15) a 2 exp (15) -1.<br />

xl 31007526 12/2006


Glosario<br />

INTERBUS (PCP) Para utilizar el canal INTERBUS PCP y el pretratamiento <strong>de</strong> datos <strong>de</strong> proceso<br />

INTERBUS (PDV) se ha introducido en el configurador <strong>de</strong> Concept el nuevo tipo <strong>de</strong><br />

estación <strong>de</strong> E/S INTERBUS (PCP). A este tipo <strong>de</strong> estación <strong>de</strong> E/S se le ha asignado<br />

<strong>de</strong> forma fija el módulo <strong>de</strong> conexión INTERBUS 180-CRP-660-01.<br />

El 180-CRP-660-01 sólo se diferencia <strong>de</strong>l 180-CRP-660-00 en que el rango <strong>de</strong> E/S<br />

en la memoria <strong>de</strong> señal <strong>de</strong>l controlador es consi<strong>de</strong>rablemente mayor.<br />

L<br />

Lad<strong>de</strong>r <strong>Logic</strong> 984 En los términos Lad<strong>de</strong>r <strong>Logic</strong> y Diagrama <strong>de</strong> contactos, la palabra Lad<strong>de</strong>r (contacto)<br />

se refiere a la ejecución. A diferencia <strong>de</strong>l esquema <strong>de</strong> conexiones, en electricidad<br />

se utiliza el esquema <strong>de</strong> contactos para dibujar un circuito eléctrico (con símbolos<br />

eléctricos) que representa el <strong>de</strong>sarrollo <strong>de</strong> los eventos, y no los cables que conectan<br />

los elementos entre sí. Una interfase <strong>de</strong> usuario convencional para controlar las<br />

acciones <strong>de</strong> los dispositivos <strong>de</strong> automatización admite una interfase <strong>de</strong> esquema <strong>de</strong><br />

contactos para que los técnicos electricistas no tengan que apren<strong>de</strong>r ningún<br />

lenguaje <strong>de</strong> programación con el que no estén familiarizados para implementar un<br />

programa <strong>de</strong> control.<br />

La estructura <strong>de</strong>l diagrama <strong>de</strong> contactos real permite conectar los elementos<br />

eléctricos <strong>de</strong> tal forma que se genere una salida <strong>de</strong> control que <strong>de</strong>penda <strong>de</strong> un flujo<br />

<strong>de</strong> corriente lógico a través <strong>de</strong> los objetos eléctricos utilizados, que representan la<br />

condición antes exigida <strong>de</strong> un dispositivo eléctrico físico.<br />

De forma sencilla, la interfase <strong>de</strong> usuario es una pantalla <strong>de</strong> ví<strong>de</strong>o generada por la<br />

aplicación <strong>de</strong> programación <strong>de</strong>l PLC que configura un reticulado vertical y horizontal<br />

en el que se organizan los objetos <strong>de</strong> programación. El contacto recibe corriente por<br />

la parte izquierda <strong>de</strong>l reticulado y, al unir los objetos que están activos, la corriente<br />

fluye <strong>de</strong> izquierda a <strong>de</strong>recha.<br />

Lenguaje <strong>de</strong><br />

ejecución<br />

secuencial (SFC)<br />

Lista <strong>de</strong><br />

componentes <strong>de</strong><br />

E/S<br />

Lista <strong>de</strong><br />

instrucciones<br />

(IL)<br />

Los elementos <strong>de</strong> lenguaje SFC permiten subdividir una unidad organizativa <strong>de</strong> un<br />

programa <strong>de</strong> PLC en un número <strong>de</strong> pasos y transiciones vinculados entre sí<br />

mediante conexiones horizontales. A cada paso le correspon<strong>de</strong> un número <strong>de</strong><br />

acciones, y cada transición está vinculada a una condición <strong>de</strong> transición.<br />

En la lista <strong>de</strong> componentes <strong>de</strong> E/S se configuran las E/S y los módulos expertos <strong>de</strong><br />

las distintas CPU.<br />

IL es un lenguaje <strong>de</strong> texto conforme a IEC 1131 en el que las operaciones como,<br />

por ejemplo, las llamadas condicionales o incondicionales <strong>de</strong> <strong>bloques</strong> <strong>de</strong> funciones<br />

y funciones, los saltos condicionales o incondicionales, etc., se representan<br />

mediante instrucciones.<br />

31007526 12/2006 xli


Glosario<br />

Literal genérico Si no consi<strong>de</strong>ra relevante el tipo <strong>de</strong> datos <strong>de</strong> un literal, indique solamente el valor<br />

para dicho literal. En este caso, Concept asignará al literal un tipo <strong>de</strong> datos<br />

a<strong>de</strong>cuado <strong>de</strong> forma automática.<br />

Literal real Los literales reales sirven para indicar la entrada <strong>de</strong> los valores reales en el sistema<br />

<strong>de</strong>cimal. Los literales reales se caracterizan por la indicación <strong>de</strong> la coma <strong>de</strong>cimal.<br />

Los valores pue<strong>de</strong>n ir precedidos por los signos (+/-). Los guiones bajos<br />

individuales (_) situados entre los números no son significativos.<br />

Literal real con<br />

exponente<br />

Ejemplo<br />

-12,0, 0,0, +0,456, 3,14159_26<br />

Los literales reales con exponente sirven para indicar los valores con coma flotante<br />

en el sistema <strong>de</strong>cimal. Los literales reales con exponente se caracterizan por la<br />

indicación <strong>de</strong> la coma <strong>de</strong>cimal. El exponente indica la potencia clave por la que se<br />

<strong>de</strong>be multiplicar el número <strong>de</strong> partida para obtener el valor que hay que representar.<br />

La base pue<strong>de</strong> ir precedida por el signo negativo (-). El exponente pue<strong>de</strong> ir<br />

precedido por el signo negativo o positivo (+/-). Los guiones bajos individuales (_)<br />

situados entre los números no son significativos. (Sólo entre cifras, pero no <strong>de</strong>lante<br />

o <strong>de</strong>trás <strong>de</strong> la coma <strong>de</strong>cimal y tampoco <strong>de</strong>lante o <strong>de</strong>trás <strong>de</strong> «E», «E+» o «E-».)<br />

Ejemplo<br />

-1,34E-12 ó -1,34e-12<br />

1,0E+6 ó 1,0e+6<br />

1,234E6 ó 1,234e6<br />

Literales Los literales sirven para proporcionar directamente valores a las entradas <strong>de</strong> FFB,<br />

las condiciones <strong>de</strong> transición, etc. La lógica <strong>de</strong>l programa no pue<strong>de</strong> sobrescribir<br />

estos valores (están protegidos contra escritura). Se distingue entre literales<br />

genéricos y normalizados.<br />

A<strong>de</strong>más, los literales sirven para asignar un valor a las constantes o un valor inicial<br />

a una variable.<br />

La entrada se efectúa en forma <strong>de</strong> literal <strong>de</strong> base 2, literal <strong>de</strong> base 8, literal <strong>de</strong> base<br />

16, literal entero, literal real o literal real con exponente.<br />

Literales<br />

<strong>de</strong> base 16<br />

Los literales <strong>de</strong> base 16 sirven para indicar valores enteros en el sistema<br />

hexa<strong>de</strong>cimal. La base <strong>de</strong>be i<strong>de</strong>ntificarse mediante el prefijo 16#. Los valores no<br />

pue<strong>de</strong>n ir precedidos por el signo (+/-). Los guiones bajos individuales (_) situados<br />

entre los números no son significativos.<br />

Ejemplo<br />

16#F_F o 16#FF (255 <strong>de</strong>cimal)<br />

16#E_0 ó 16#E0 (224 <strong>de</strong>cimal)<br />

xlii 31007526 12/2006


Literales<br />

<strong>de</strong> base 2<br />

Literales<br />

<strong>de</strong> base 8<br />

Literales<br />

<strong>de</strong> duración<br />

Glosario<br />

Los literales <strong>de</strong> base 2 sirven para indicar valores enteros en el sistema dual. La<br />

base <strong>de</strong>be i<strong>de</strong>ntificarse mediante el prefijo 0,91 kg. Los valores no pue<strong>de</strong>n ir<br />

precedidos por el signo (+/-). Los guiones bajos individuales (_) situados entre los<br />

números no son significativos.<br />

Ejemplo<br />

2#1111_1111 ó 2#11111111 (255 <strong>de</strong>cimal)<br />

2#1110_1111 ó 2#11100000 (224 <strong>de</strong>cimal)<br />

Los literales <strong>de</strong> base 8 sirven para indicar valores enteros en el sistema octal. La<br />

base <strong>de</strong>be i<strong>de</strong>ntificarse mediante el prefijo 3,63 kg. Los valores no pue<strong>de</strong>n ir<br />

precedidos por el signo (+/-). Los guiones bajos individuales (_) situados entre los<br />

números no son significativos.<br />

Ejemplo<br />

8#3_1111 ó 8#377 (255 <strong>de</strong>cimal)<br />

8#34_1111 ó 8#340 (224 <strong>de</strong>cimal)<br />

Las unida<strong>de</strong>s permitidas para la duración (TIME) son días (D), horas (H), minutos<br />

(M), segundos (S) y milisegundos (MS) o combinaciones <strong>de</strong> ellas. La duración se<br />

<strong>de</strong>be i<strong>de</strong>ntificar con el prefijo t#, T#, time# o TIME#. El «<strong>de</strong>sbor<strong>de</strong>» <strong>de</strong> la unidad <strong>de</strong><br />

mayor valor está permitido; por ejemplo, la entrada T#25H15M es válida.<br />

Ejemplo<br />

t#14MS, T#14,7S, time#18M, TIME#19,9H, t#20,4D, T#25H15M,<br />

time#5D14H12M18S3,5MS<br />

Literales enteros Los literales enteros sirven para indicar los valores enteros en el sistema <strong>de</strong>cimal.<br />

Los valores pue<strong>de</strong>n ir precedidos por el signo (+/-). Los guiones bajos individuales<br />

(_) situados entre los números no son significativos.<br />

Literales<br />

normalizados<br />

Ejemplo<br />

-12, 0, 123_456, +986<br />

Si <strong>de</strong>sea establecer usted mismo el tipo <strong>de</strong> datos <strong>de</strong> un literal, pue<strong>de</strong> hacerlo con la<br />

siguiente construcción: «Nombre <strong>de</strong>l tipo <strong>de</strong> datos»#«Valor <strong>de</strong>l literal».<br />

Ejemplo<br />

INT#15 (tipo <strong>de</strong> datos: entero, valor: 15),<br />

BYTE#00001111 (tipo <strong>de</strong> datos: Byte, valor: 00001111)<br />

REAL#23,0 (tipo <strong>de</strong> datos: real, valor: 23,0)<br />

Para la asignación <strong>de</strong>l tipo <strong>de</strong> datos REAL también se pue<strong>de</strong> indicar el valor <strong>de</strong> la<br />

siguiente forma: 23,0.<br />

31007526 12/2006 xliii


Glosario<br />

Indicando una posición <strong>de</strong> la coma se asigna automáticamente el tipo <strong>de</strong> datos<br />

REAL.<br />

Llamada Operación por la que se inicia la ejecución <strong>de</strong> una operación.<br />

Located Variable A las Located variables se les asigna una dirección <strong>de</strong> memoria <strong>de</strong> señal<br />

(direcciones <strong>de</strong> referencia 0x, 1x, 3x, 4x). El valor <strong>de</strong> estas variables se almacena<br />

en la memoria <strong>de</strong> señal y se pue<strong>de</strong> modificar online con el editor <strong>de</strong> datos <strong>de</strong><br />

referencia. Para acce<strong>de</strong>r a estas variables, se pue<strong>de</strong> utilizar su nombre simbólico o<br />

su dirección <strong>de</strong> referencia.<br />

M<br />

Todas las entradas y salidas <strong>de</strong>l PLC están conectadas a la memoria <strong>de</strong> señal. El<br />

acceso <strong>de</strong>l programa a señales periféricas conectadas al PLC se efectúa sólo<br />

mediante Located variables. Los accesos al PLC externos a través <strong>de</strong> las interfases<br />

Modbus o Modbus Plus, p. ej., por parte <strong>de</strong> sistemas <strong>de</strong> visualización, también son<br />

posibles mediante Located variables.<br />

Macro Las macros se crean con ayuda <strong>de</strong>l software DFB Concept.<br />

Las macros sirven para duplicar las secciones y re<strong>de</strong>s que se utilizan con frecuencia<br />

(incluidas su lógica, sus variables y su <strong>de</strong>claración <strong>de</strong> variables).<br />

Se distingue entre macros locales y globales.<br />

Las macros tienen las siguientes propieda<strong>de</strong>s:<br />

Sólo se pue<strong>de</strong>n crear macros en los lenguajes <strong>de</strong> programación FBD y LD.<br />

Las macros contienen una única sección.<br />

Las macros pue<strong>de</strong>n contener una sección <strong>de</strong> cualquier complejidad.<br />

Des<strong>de</strong> el punto <strong>de</strong> vista técnico, una macro para la que se ha creado un<br />

instancia, es <strong>de</strong>cir, una macro insertada en una sección, no se distingue <strong>de</strong> una<br />

sección generada <strong>de</strong> forma convencional.<br />

Llamada <strong>de</strong> DFB en una macro<br />

Declaración <strong>de</strong> variables<br />

Utilización <strong>de</strong> estructuras <strong>de</strong> datos propias <strong>de</strong> la macro<br />

Aceptación automática <strong>de</strong> las variables <strong>de</strong>claradas en la macro<br />

Valores iniciales para variables<br />

Creación <strong>de</strong> varias instancias <strong>de</strong> una macro en todo el programa con variables<br />

diferentes<br />

El nombre <strong>de</strong> la sección, <strong>de</strong> la variable y <strong>de</strong> la estructura <strong>de</strong> datos pue<strong>de</strong>n<br />

contener hasta 10 marcas <strong>de</strong> intercambio distintas (<strong>de</strong> @0 a @9).<br />

xliv 31007526 12/2006


Macros globales Las macros globales están disponibles en todos los proyectos <strong>de</strong> Concept y se<br />

encuentran en el directorio DFB, justo <strong>de</strong>bajo <strong>de</strong>l directorio Concept.<br />

Glosario<br />

Macros locales Las macros locales sólo están disponibles en un único proyecto <strong>de</strong> Concept y se<br />

guardan en el directorio DFB bajo el directorio <strong>de</strong>l proyecto.<br />

Memoria <strong>de</strong><br />

señal<br />

La memoria <strong>de</strong> señal es el almacenamiento <strong>de</strong> todas las magnitu<strong>de</strong>s, a las que se<br />

acce<strong>de</strong> a través <strong>de</strong> referencias (representación directa) en el programa <strong>de</strong> la<br />

aplicación. Por ejemplo, en la memoria <strong>de</strong> señal hay bits <strong>de</strong> entrada, registros<br />

binarios, palabras <strong>de</strong> entrada y palabras binarias.<br />

MMI Interfase hombre-máquina<br />

Modalidad ASCII American Standard Co<strong>de</strong> for Information Interchange (código estándar americano<br />

para el intercambio <strong>de</strong> información). La modalidad ASCII se utiliza para la<br />

comunicación con distintos dispositivos host. ASCII funciona con siete bits <strong>de</strong> datos.<br />

Modalidad RTU Remote Terminal Unit (unidad <strong>de</strong> terminal remota)<br />

La modalidad RTU se utiliza para la comunicación entre el PLC y un or<strong>de</strong>nador<br />

personal compatible con IBM. RTU funciona con ocho bits <strong>de</strong> datos.<br />

Módulo SA85 El módulo SA85 es un adaptador Modbus Plus para or<strong>de</strong>nadores IBM-AT o<br />

compatibles.<br />

N<br />

Nodo <strong>de</strong> red Un nodo es un dispositivo con una dirección (164) en la red Modbus Plus.<br />

Nodos <strong>de</strong> red<br />

locales<br />

Nombre <strong>de</strong><br />

elemento<br />

El nodo local es aquél que se está configurando en este momento.<br />

I<strong>de</strong>ntificador que pertenece a un <strong>de</strong>terminado elemento <strong>de</strong> bloque <strong>de</strong> funciones. El<br />

nombre <strong>de</strong> elemento sirve para i<strong>de</strong>ntificar sin posibilidad <strong>de</strong> confusión un bloque <strong>de</strong><br />

funciones en una unidad organizativa <strong>de</strong>l programa. El nombre <strong>de</strong> elemento se<br />

genera automáticamente, pero se pue<strong>de</strong> editar. El nombre <strong>de</strong> elemento <strong>de</strong>be ser<br />

único en toda la unidad organizativa <strong>de</strong>l programa y, en este caso, no se distingue<br />

entre mayúsculas y minúsculas. Si ya existe el nombre indicado, aparecerá una<br />

advertencia y <strong>de</strong>berá seleccionar otro nombre. El nombre <strong>de</strong> elemento se <strong>de</strong>be<br />

formular <strong>de</strong> acuerdo con las convenciones <strong>de</strong> nomenclatura IEC; si no, aparecerá<br />

un mensaje <strong>de</strong> error. El nombre <strong>de</strong> instancia generado <strong>de</strong> manera automática tiene<br />

siempre la estructura: FBI_n_m<br />

31007526 12/2006 xlv


Glosario<br />

FBI = elemento <strong>de</strong> bloque <strong>de</strong> funciones<br />

n = número <strong>de</strong> la sección (número en ejecución)<br />

m = número <strong>de</strong>l objeto FFB <strong>de</strong>ntro <strong>de</strong> la sección (número en ejecución)<br />

Nombre <strong>de</strong>l paso El nombre <strong>de</strong>l paso sirve para i<strong>de</strong>ntificar sin posibilidad <strong>de</strong> confusión un paso <strong>de</strong>ntro<br />

<strong>de</strong> una unidad organizativa <strong>de</strong>l programa. El nombre <strong>de</strong>l paso se genera automáticamente,<br />

pero se pue<strong>de</strong> editar. El nombre <strong>de</strong>l paso <strong>de</strong>be ser único en toda la unidad<br />

organizativa <strong>de</strong>l programa; si no, se generará un mensaje <strong>de</strong> error.<br />

El nombre <strong>de</strong> paso generado automáticamente tiene siempre la estructura: S_n_m<br />

O<br />

S = paso<br />

n = número <strong>de</strong> la sección (número en ejecución)<br />

m = número <strong>de</strong> pasos <strong>de</strong>ntro <strong>de</strong> la sección (número en ejecución)<br />

Operador Un operador es un símbolo <strong>de</strong> una operación booleana o aritmética que hay que<br />

realizar.<br />

Operando Un operando es un literal, una variable, una llamada <strong>de</strong> función o una expresión.<br />

P<br />

Palabras clave Las palabras clave son combinaciones únicas <strong>de</strong> caracteres que se utilizan como<br />

elementos sintácticos especiales tal y como se <strong>de</strong>fine en el anexo B <strong>de</strong> la norma<br />

IEC 1131-3. Todas las palabras clave que se utilizan en la norma IEC 1131-3 y, por<br />

tanto, en Concept aparecen enumeradas en el anexo C <strong>de</strong> la norma IEC 1131-3.<br />

Las palabras clave <strong>de</strong> esta lista no se <strong>de</strong>berán utilizar para ningún otro fin, p. ej.,<br />

como nombres <strong>de</strong> variables, <strong>de</strong> secciones, <strong>de</strong> elementos, etc.<br />

Palabras <strong>de</strong><br />

entrada<br />

(referencias 3x)<br />

Una palabra <strong>de</strong> entrada contiene información que proce<strong>de</strong> <strong>de</strong> una fuente externa y<br />

se representa mediante un número <strong>de</strong> 16 bits. Un registro 3x también pue<strong>de</strong><br />

contener 16 bits <strong>de</strong> entrada consecutivos cargados en el registro en formato binario<br />

o BCD (<strong>de</strong>cimal codificado en binario). Nota: La x, que aparece <strong>de</strong>trás <strong>de</strong> la primera<br />

cifra <strong>de</strong>l tipo <strong>de</strong> referencia representa un lugar <strong>de</strong> almacenamiento <strong>de</strong> cinco<br />

posiciones en la memoria <strong>de</strong> datos <strong>de</strong> la aplicación; por ejemplo, la referencia<br />

300201 significa una palabra <strong>de</strong> entrada <strong>de</strong> 16 bits en la dirección 201 <strong>de</strong> la<br />

memoria <strong>de</strong> señal.<br />

xlvi 31007526 12/2006


Palabras <strong>de</strong><br />

salida/marcador<br />

(referencias 4x)<br />

Parámetro <strong>de</strong><br />

entrada (entrada)<br />

Glosario<br />

Una palabra <strong>de</strong> salida/marcador pue<strong>de</strong> utilizarse para almacenar datos numéricos<br />

(binarios o <strong>de</strong>cimales) en la memoria <strong>de</strong> señal, o también para enviar los datos <strong>de</strong><br />

la CPU a una unidad <strong>de</strong> salida <strong>de</strong>l sistema <strong>de</strong> control. Nota: La x, que aparece<br />

<strong>de</strong>trás <strong>de</strong> la primera cifra <strong>de</strong>l tipo <strong>de</strong> referencia representa un lugar <strong>de</strong> almacenamiento<br />

<strong>de</strong> cinco posiciones en la memoria <strong>de</strong> datos <strong>de</strong> la aplicación; por ejemplo, la<br />

referencia 400201 significa una palabra <strong>de</strong> salida o marca <strong>de</strong> 16 bits en la dirección<br />

201 <strong>de</strong> la memoria <strong>de</strong> señal.<br />

Transmite el argumento asociado al ejecutar un FFB.<br />

Parámetro real Parámetro <strong>de</strong> entrada/salida conectado actualmente.<br />

Parámetros <strong>de</strong><br />

salida (salida)<br />

Parámetros<br />

formales<br />

Parámetro con el que se <strong>de</strong>vuelve el resultado o los resultados <strong>de</strong> la evaluación <strong>de</strong><br />

un FFB.<br />

Parámetros <strong>de</strong> entrada/salida que se utilizan <strong>de</strong>ntro <strong>de</strong> la lógica <strong>de</strong> un FFB y se<br />

ejecutan como entradas/salidas <strong>de</strong>s<strong>de</strong> el FFB.<br />

Paso Elemento <strong>de</strong> lenguaje SFC: situaciones en las que el comportamiento <strong>de</strong> un<br />

programa sigue, en lo que respecta a sus entradas y salidas, aquellas operaciones<br />

que se han <strong>de</strong>finido mediante las correspondientes acciones <strong>de</strong>l paso.<br />

Paso inicial Primer paso <strong>de</strong> una ca<strong>de</strong>na. En todas las ca<strong>de</strong>nas secuenciales <strong>de</strong>be existir un<br />

paso inicial <strong>de</strong>finido. La ca<strong>de</strong>na se inicia con el paso inicial la primera vez que éste<br />

se ejecuta.<br />

PLC Controlador programable<br />

Procesador Peer El procesador Peer procesa los ciclos <strong>de</strong> token y el flujo <strong>de</strong> datos entre la red<br />

Modbus Plus y la lógica <strong>de</strong> la aplicación <strong>de</strong>l PLC.<br />

Programa Máxima unidad organizativa <strong>de</strong>l programa. Un programa se carga y se cierra en un<br />

único PLC.<br />

Programación<br />

<strong>de</strong>l sistema<br />

redundante (Hot<br />

Standby)<br />

Un sistema redundante está compuesto por dos dispositivos <strong>de</strong> PLC con idéntica<br />

configuración que se comunican entre sí mediante procesadores redundantes. En<br />

caso <strong>de</strong> que falle el PLC primario, el PLC secundario asume el control. En<br />

condiciones normales, el PLC secundario no asume ninguna función <strong>de</strong> control,<br />

sino que comprueba la información <strong>de</strong> estado para <strong>de</strong>tectar fallos.<br />

31007526 12/2006 xlvii


Glosario<br />

Proyecto Denominación general <strong>de</strong>l nivel superior <strong>de</strong> una estructura en árbol <strong>de</strong> software que<br />

<strong>de</strong>termina el nombre <strong>de</strong> proyecto primario <strong>de</strong> una aplicación <strong>de</strong>l PLC. Tras<br />

especificar el nombre <strong>de</strong>l proyecto, pue<strong>de</strong> guardarse el programa <strong>de</strong> control y<br />

configuración <strong>de</strong>l sistema con este nombre. Todos los datos resultantes durante la<br />

creación <strong>de</strong> la configuración y el programa pertenecen a este proyecto primario para<br />

esta automatización especial.<br />

Denominación general <strong>de</strong>l conjunto completo <strong>de</strong> la información <strong>de</strong> programación y<br />

configuración en el banco <strong>de</strong> datos <strong>de</strong>l proyecto que representa el código fuente<br />

que <strong>de</strong>scribe la automatización <strong>de</strong> un sistema.<br />

Puente Un puente es un dispositivo que conecta re<strong>de</strong>s. Permite la comunicación entre<br />

nodos <strong>de</strong> las dos re<strong>de</strong>s. Cada red tiene su propia secuencia <strong>de</strong> rotación <strong>de</strong> token.<br />

El token no se transmite a través <strong>de</strong> puentes.<br />

Puertos serie En los puertos serie (COM) se transmite la información bit a bit.<br />

R<br />

REAL REAL representa el tipo <strong>de</strong> datos «real». La entrada se efectúa como literal real o<br />

como literal real con exponente. La longitud <strong>de</strong>l elemento <strong>de</strong> datos es <strong>de</strong> <strong>32</strong> bits. El<br />

rango <strong>de</strong> valores para variables <strong>de</strong> este tipo <strong>de</strong> datos va <strong>de</strong> 8,43E-37 a 3,36E+38.<br />

Red Una red es la interconexión <strong>de</strong> dispositivos en una ruta <strong>de</strong> información común que<br />

se comunican entre sí mediante un mismo protocolo.<br />

Red <strong>de</strong>scentral<br />

(DIO)<br />

Nota: Según el tipo <strong>de</strong> procesador matemático <strong>de</strong> la CPU, no será posible<br />

representar distintos rangos <strong>de</strong>ntro <strong>de</strong>l rango <strong>de</strong> valores permitidos. Esto es válido<br />

para valores cercanos a ZERO y a INFINITY. En tales casos, la modalidad <strong>de</strong><br />

animación no mostrará un valor numérico, sino NAN (Not A Number) o INF<br />

(INFinite).<br />

La programación <strong>de</strong>scentralizada en la red Modbus Plus permite alcanzar el<br />

máximo rendimiento en la transmisión <strong>de</strong> datos sin requisitos especiales en los<br />

vínculos. La programación <strong>de</strong> una red remota es sencilla. Para instalar la red no<br />

hace falta crear ninguna lógica adicional <strong>de</strong> esquema <strong>de</strong> contactos. Mediante las<br />

entradas correspondientes en el procesador Peer Cop se cumplen todos los<br />

requisitos para la transmisión <strong>de</strong> datos.<br />

xlviii 31007526 12/2006


Glosario<br />

Referencia Cada dirección directa es una referencia que comienza por una clave que indica si<br />

se trata <strong>de</strong> una entrada o una salida o <strong>de</strong> un bit o una palabra. Las referencias que<br />

empiezan con la clave 6 representan registros <strong>de</strong> la memoria extendida <strong>de</strong> la<br />

memoria <strong>de</strong> señal.<br />

Rango 0x = salidas binarias<br />

Área 1x = bits <strong>de</strong> entrada<br />

Área 3x = palabras <strong>de</strong> entrada<br />

Área 4x = palabras <strong>de</strong> salida/marcador<br />

Área 6x = registros en la memoria extendida<br />

Registro en la<br />

memoria<br />

extendida<br />

(referencia 6x)<br />

Representación<br />

directa<br />

RIO (Remote I/O,<br />

E/S remotas)<br />

Las referencias 6x son palabras <strong>de</strong> marca en la memoria extendida <strong>de</strong>l PLC. Sólo<br />

se pue<strong>de</strong>n utilizar programas <strong>de</strong> usuario 984LL y la CPU 213 04 ó 424 02.<br />

Método para la representación <strong>de</strong> variables en el programa <strong>de</strong> PLC <strong>de</strong>s<strong>de</strong> el que la<br />

asignación <strong>de</strong> la memoria configurada pue<strong>de</strong> <strong>de</strong>rivar directa e indirectamente <strong>de</strong> la<br />

memoria física.<br />

La estación <strong>de</strong> E/S remota indica un lugar físico <strong>de</strong> los dispositivos <strong>de</strong> control <strong>de</strong><br />

puntos <strong>de</strong> E/S en relación con el procesador que los controla. Las entradas/salidas<br />

remotas están conectadas al dispositivo <strong>de</strong> control a través <strong>de</strong> un cable <strong>de</strong><br />

comunicación.<br />

RP (PROFIBUS) RP = periferia remota (remote peripheral)<br />

S<br />

Salida/registros<br />

binarios<br />

(referencias 0x)<br />

Nota: La x que aparece <strong>de</strong>trás <strong>de</strong> la primera cifra <strong>de</strong> cada tipo <strong>de</strong> referencia<br />

representa un lugar <strong>de</strong> almacenamiento <strong>de</strong> cinco posiciones en la memoria <strong>de</strong><br />

datos <strong>de</strong> la aplicación; por ejemplo, la referencia 400201 significa una palabra <strong>de</strong><br />

salida o marca <strong>de</strong> 16 bits en la dirección 201 <strong>de</strong> la memoria <strong>de</strong> señal.<br />

Un bit <strong>de</strong> salida/marca se pue<strong>de</strong> utilizar para controlar los datos <strong>de</strong> salida reales<br />

mediante una unidad <strong>de</strong> salida <strong>de</strong>l sistema <strong>de</strong> control o para <strong>de</strong>finir una o varias<br />

salidas binarias en la memoria <strong>de</strong> señal. Nota: La x, que aparece <strong>de</strong>trás <strong>de</strong> la<br />

primera cifra <strong>de</strong>l tipo <strong>de</strong> referencia representa un lugar <strong>de</strong> almacenamiento <strong>de</strong> cinco<br />

posiciones en la memoria <strong>de</strong> datos <strong>de</strong> la aplicación; por ejemplo, la referencia<br />

000201 significa un bit <strong>de</strong> salida/marca en la dirección 201 <strong>de</strong> la memoria <strong>de</strong> señal.<br />

Salto Elemento <strong>de</strong>l lenguaje SFC. Los saltos se utilizan para saltar áreas <strong>de</strong> la ca<strong>de</strong>na.<br />

31007526 12/2006 xlix


Glosario<br />

Sección Una sección se pue<strong>de</strong> utilizar, por ejemplo, para <strong>de</strong>scribir el funcionamiento <strong>de</strong> una<br />

unidad tecnológica, como un motor.<br />

Un programa o DFB está compuesto <strong>de</strong> una o varias secciones. Las secciones se<br />

pue<strong>de</strong>n programar con los lenguajes <strong>de</strong> programación IEC FBD y SFC. Dentro <strong>de</strong><br />

una sección sólo se pue<strong>de</strong> utilizar uno <strong>de</strong> los lenguajes <strong>de</strong> programación<br />

mencionados.<br />

Cada sección tiene su propia ventana <strong>de</strong> documento en Concept. Para tener una<br />

mejor visión <strong>de</strong> conjunto, es mejor dividir una sección gran<strong>de</strong> en varias más<br />

pequeñas. Para <strong>de</strong>splazarse <strong>de</strong>ntro <strong>de</strong> la sección se utiliza la barra <strong>de</strong><br />

<strong>de</strong>splazamiento.<br />

Secuencia <strong>de</strong><br />

bits<br />

Elemento <strong>de</strong> datos compuesto por uno o varios bits.<br />

Símbolo (icono) Representación gráfica <strong>de</strong> distintos objetos en Windows, p. ej., unida<strong>de</strong>s <strong>de</strong> disco,<br />

programas <strong>de</strong> aplicación y ventanas <strong>de</strong> documento.<br />

SY/MAX En los dispositivos <strong>de</strong> control Quantum, Concept incluye la preparación <strong>de</strong> la<br />

dotación <strong>de</strong> E/S para módulos <strong>de</strong> E/S SY/MAX para el control RIO mediante el PLC<br />

Quantum. El subbastidor remoto SY/MAX tiene un adaptador remoto <strong>de</strong> E/S en el<br />

slot 1 que se comunica mediante un sistema <strong>de</strong> E/S Modicon S908 R. Los módulos<br />

<strong>de</strong> E/S SY/MAX se incluyen en la dotación <strong>de</strong> E/S <strong>de</strong> la configuración <strong>de</strong> Concept<br />

para marcarlos e integrarlos.<br />

T<br />

Texto<br />

estructurado<br />

(ST)<br />

ST es un lenguaje <strong>de</strong> texto conforme a IEC 1131, en el que las operaciones como,<br />

por ejemplo, las llamadas <strong>de</strong> <strong>bloques</strong> <strong>de</strong> funciones y funciones, la ejecución<br />

condicionada <strong>de</strong> instrucciones, la repetición <strong>de</strong> instrucciones, etc., se representan<br />

mediante instrucciones.<br />

TIME TIME representa el tipo <strong>de</strong> datos «duración». La entrada se realiza como literal <strong>de</strong><br />

duración. La longitud <strong>de</strong>l elemento <strong>de</strong> datos es <strong>de</strong> <strong>32</strong> bits. El rango <strong>de</strong> valores para<br />

las variables <strong>de</strong> este tipo <strong>de</strong> datos va <strong>de</strong> 0 a 2exp(<strong>32</strong>)-1. La unidad para el tipo <strong>de</strong><br />

datos TIME es 1 ms.<br />

l 31007526 12/2006


Tipo <strong>de</strong> bloque<br />

<strong>de</strong> funciones<br />

Tipo <strong>de</strong> datos<br />

<strong>de</strong>rivado<br />

Tipo <strong>de</strong> datos<br />

genérico<br />

Glosario<br />

Elemento <strong>de</strong> lenguaje compuesto por lo siguiente: 1. La <strong>de</strong>finición <strong>de</strong> una estructura<br />

<strong>de</strong> datos, dividida en variables <strong>de</strong> entrada, <strong>de</strong> salida e internas. 2. Un conjunto <strong>de</strong><br />

operaciones, que se realizan con los elementos <strong>de</strong> la estructura <strong>de</strong> datos cuando<br />

se ejecuta una instancia <strong>de</strong>l tipo <strong>de</strong> bloque <strong>de</strong> funciones. Este conjunto <strong>de</strong><br />

operaciones pue<strong>de</strong> estar formulado en uno <strong>de</strong> los lenguajes IEC (tipo DFB) o en<br />

«C» (tipo EFB). Un tipo <strong>de</strong> bloque <strong>de</strong> funciones se pue<strong>de</strong> mostrar como instancia<br />

(ejecutar) varias veces.<br />

Los tipos <strong>de</strong> datos <strong>de</strong>rivados son tipos <strong>de</strong> datos que se han <strong>de</strong>rivado <strong>de</strong> los tipos <strong>de</strong><br />

datos elementales o <strong>de</strong> otros tipos <strong>de</strong> datos <strong>de</strong>rivados. La <strong>de</strong>finición <strong>de</strong> los tipos <strong>de</strong><br />

datos <strong>de</strong>rivados se realiza en el editor <strong>de</strong> tipos <strong>de</strong> datos <strong>de</strong> Concept.<br />

Se distingue entre tipos <strong>de</strong> datos globales y tipos <strong>de</strong> datos locales.<br />

Tipo <strong>de</strong> datos que sustituye a otros tipos <strong>de</strong> datos.<br />

Tipos <strong>de</strong> datos La visión general muestra la jerarquía <strong>de</strong> los tipos <strong>de</strong> datos tal y como se utilizan en<br />

las entradas y salidas <strong>de</strong> funciones y <strong>bloques</strong> <strong>de</strong> funciones. Los tipos <strong>de</strong> datos<br />

genéricos se i<strong>de</strong>ntifican mediante el prefijo «ANY».<br />

ANY_ELEM<br />

ANY_NUM<br />

ANY_REAL (REAL)<br />

ANY_INT (DINT, INT, UDINT, UINT)<br />

ANY_BIT (BOOL, BYTE, WORD)<br />

TIME<br />

Tipos <strong>de</strong> datos <strong>de</strong> sistema (extensiones IEC)<br />

Derivado (<strong>de</strong> los tipos <strong>de</strong> datos «ANY»)<br />

Tipos <strong>de</strong> datos<br />

<strong>de</strong>rivados<br />

globales<br />

Tipos <strong>de</strong> datos<br />

<strong>de</strong>rivados<br />

locales<br />

Los tipos <strong>de</strong> datos <strong>de</strong>rivados globales están disponibles en todos los proyectos <strong>de</strong><br />

Concept y se encuentran en el directorio DFB, justo <strong>de</strong>bajo <strong>de</strong>l directorio Concept.<br />

Los tipos <strong>de</strong> datos <strong>de</strong>rivados locales sólo están disponibles en un único proyecto <strong>de</strong><br />

Concept y sus DFB locales, y se guardan en el directorio DFB bajo el directorio <strong>de</strong>l<br />

proyecto.<br />

Token La red «Token» controla la propiedad temporal <strong>de</strong>l <strong>de</strong>recho <strong>de</strong> transmisión por parte<br />

<strong>de</strong> un único nodo. El Token recorre el nodo en una secuencia <strong>de</strong> direcciones circular<br />

(ascen<strong>de</strong>nte). Todos los nodos siguen el recorrido <strong>de</strong>l token y pue<strong>de</strong>n recibir todos<br />

los datos posibles enviados.<br />

Traffic Cop Traffic Cop es una lista <strong>de</strong> componentes que se genera a partir <strong>de</strong> la lista <strong>de</strong><br />

componentes <strong>de</strong>l usuario. La lista Traffic Cop se gestiona en el PLC y contiene,<br />

a<strong>de</strong>más <strong>de</strong> la lista <strong>de</strong> componentes <strong>de</strong>l usuario, información <strong>de</strong> estado <strong>de</strong> los<br />

módulos y las estaciones <strong>de</strong> E/S, por ejemplo.<br />

31007526 12/2006 li


Glosario<br />

Transición Condición necesaria para que el control pase <strong>de</strong> uno o varios pasos pre<strong>de</strong>cesores<br />

a uno o varios pasos sucesores a lo largo <strong>de</strong> una conexión direccional.<br />

U<br />

UDEFB Funciones/<strong>bloques</strong> <strong>de</strong> funciones elementales <strong>de</strong>finidos por el usuario<br />

Funciones o <strong>bloques</strong> <strong>de</strong> funciones creados con el lenguaje <strong>de</strong> programación C y<br />

disponibles en las bibliotecas <strong>de</strong> Concept.<br />

UDINT UDINT representa el tipo <strong>de</strong> datos «entero doble sin signo». La entrada se efectúa<br />

en forma <strong>de</strong> literal entero, literal <strong>de</strong> base 2, literal <strong>de</strong> base 8 o literal <strong>de</strong> base 16. La<br />

longitud <strong>de</strong>l elemento <strong>de</strong> datos es <strong>de</strong> <strong>32</strong> bits. El rango <strong>de</strong> valores para las variables<br />

<strong>de</strong> este tipo <strong>de</strong> datos va <strong>de</strong> 0 a 2exp(<strong>32</strong>)-1.<br />

UINT UINT representa el tipo <strong>de</strong> datos «entero sin signo». La entrada se efectúa en forma<br />

<strong>de</strong> literal entero, literal <strong>de</strong> base 2, literal <strong>de</strong> base 8 o literal <strong>de</strong> base 16. La longitud<br />

<strong>de</strong>l elemento <strong>de</strong> datos es <strong>de</strong> 16 bits. El rango <strong>de</strong> valores para las variables <strong>de</strong> este<br />

tipo <strong>de</strong> datos va <strong>de</strong> 0 a (2exp 16)-1.<br />

Unidad<br />

organizativa <strong>de</strong>l<br />

programa<br />

Unlocated<br />

Variable<br />

V<br />

Función, bloque <strong>de</strong> funciones o programa. Este término se pue<strong>de</strong> referir tanto a un<br />

tipo como a un elemento.<br />

A las Unlocated variables no se les asigna ninguna dirección <strong>de</strong> memoria <strong>de</strong> señal.<br />

Por lo tanto, tampoco ocupan ninguna dirección <strong>de</strong> memoria <strong>de</strong> señal. El sistema<br />

almacena el valor <strong>de</strong> estas variables, que se pue<strong>de</strong> modificar con el editor <strong>de</strong> datos<br />

<strong>de</strong> referencia, <strong>de</strong> forma interna. A estas variables sólo se acce<strong>de</strong> mediante su<br />

nombre simbólico.<br />

Las señales que no necesitan acceso a la periferia, p. ej., resultados intermedios,<br />

marcas <strong>de</strong> sistema, etc., <strong>de</strong>ben <strong>de</strong>clararse preferiblemente como Unlocated<br />

variables.<br />

Valor inicial Valor asignado a una variable durante el inicio <strong>de</strong>l programa. La asignación <strong>de</strong>l valor<br />

se realiza en forma <strong>de</strong> literal.<br />

lii 31007526 12/2006


Glosario<br />

Variables Las variables sirven para el intercambio <strong>de</strong> datos <strong>de</strong>ntro <strong>de</strong> una misma sección,<br />

entre secciones distintas y entre el programa y el PLC.<br />

Las variables se componen como mínimo <strong>de</strong> un nombre <strong>de</strong> variable y un tipo <strong>de</strong><br />

datos.<br />

Si se asigna una dirección directa (referencia) a una variable, se habla <strong>de</strong> una<br />

Located variable. Si a una variable no se le asigna ninguna dirección directa, se<br />

habla <strong>de</strong> una Unlocated variable. Si a la variable se le asigna un tipo <strong>de</strong> datos<br />

<strong>de</strong>rivado, se habla <strong>de</strong> una variable <strong>de</strong> elementos múltiples.<br />

A<strong>de</strong>más, también existen constantes y literales.<br />

Variables <strong>de</strong><br />

campo<br />

Variables <strong>de</strong><br />

elementos<br />

múltiples<br />

Variables<br />

estructuradas<br />

Variables a las que se les ha asignado un tipo <strong>de</strong> datos <strong>de</strong>rivado con ayuda <strong>de</strong> la<br />

palabra clave ARRAY (campo). Un campo es una colección <strong>de</strong> elementos <strong>de</strong> datos<br />

<strong>de</strong>l mismo tipo <strong>de</strong> datos.<br />

Variables a las que se ha asignado un tipo <strong>de</strong> datos <strong>de</strong>rivado <strong>de</strong>finido con STRUCT<br />

o ARRAY.<br />

Se distingue entre variables <strong>de</strong> campo y variables estructuradas.<br />

Variables a las que se ha asignado un tipo <strong>de</strong> datos <strong>de</strong>rivados <strong>de</strong>finido con<br />

STRUCT (estructura).<br />

Una estructura es una colección <strong>de</strong> elementos <strong>de</strong> datos <strong>de</strong> distintos tipos en general<br />

(tipos <strong>de</strong> datos elementales o tipos <strong>de</strong> datos <strong>de</strong>rivados).<br />

ventana activa Ventana seleccionada actualmente. Sólo pue<strong>de</strong> haber una ventana activa cada vez.<br />

Cuando se activa una ventana, cambia el color <strong>de</strong> su barra <strong>de</strong> título para distinguirla<br />

<strong>de</strong> las <strong>de</strong>más ventanas. Las ventanas no seleccionadas están inactivas.<br />

Ventana <strong>de</strong><br />

documento<br />

Ventana <strong>de</strong> la<br />

aplicación<br />

Ventana <strong>de</strong>ntro <strong>de</strong> una ventana <strong>de</strong> aplicación. Dentro <strong>de</strong> una ventana <strong>de</strong> aplicación<br />

pue<strong>de</strong>n abrirse varias ventanas <strong>de</strong> documento al mismo tiempo. No obstante, sólo<br />

pue<strong>de</strong> haber una ventana <strong>de</strong> documento activa. Las ventanas <strong>de</strong> documento en<br />

Concept son, por ejemplo, las secciones, la ventana <strong>de</strong> mensajes, el editor <strong>de</strong> datos<br />

<strong>de</strong> referencia y la configuración <strong>de</strong>l PLC.<br />

Ventana que contiene el área <strong>de</strong> trabajo, la barra <strong>de</strong> menús y la barra <strong>de</strong><br />

herramientas <strong>de</strong>l programa <strong>de</strong> la aplicación. El nombre <strong>de</strong>l programa <strong>de</strong> la<br />

aplicación aparece en la barra <strong>de</strong> título. Una ventana <strong>de</strong> la aplicación pue<strong>de</strong><br />

contener varias ventanas <strong>de</strong> documento. En Concept, la ventana <strong>de</strong> aplicación<br />

correspon<strong>de</strong> a un proyecto.<br />

31007526 12/2006 liii


Glosario<br />

W<br />

WORD WORD representa el tipo <strong>de</strong> datos «secuencia <strong>de</strong> bits 16». La entrada se efectúa<br />

en forma <strong>de</strong> literal <strong>de</strong> base 2, literal <strong>de</strong> base 8 o literal <strong>de</strong> base 16. La longitud <strong>de</strong>l<br />

elemento <strong>de</strong> datos es <strong>de</strong> 16 bits. A este tipo <strong>de</strong> datos no se le pue<strong>de</strong> asignar un<br />

rango <strong>de</strong> valores numérico.<br />

Z<br />

Zoom DX Esta propiedad permite conectarse a un objeto <strong>de</strong> programación para observar y,<br />

en caso necesario, modificar los valores <strong>de</strong> los datos.<br />

liv 31007526 12/2006


Numerics<br />

1x3x, 53<br />

Índice<br />

31007526 12/2006 lv<br />

CBA<br />

984LL<br />

1x3x, 53<br />

AD16, 57<br />

ADD, 61<br />

BCD, 71<br />

BLKM, 75<br />

BLKT, 79<br />

bloque <strong>de</strong> comunicación XMIT, 1157<br />

bloque <strong>de</strong> conversión XMIT, 1177<br />

bloque <strong>de</strong> estado <strong>de</strong>l puerto XMIT, 1169<br />

BMDI, 83<br />

bobinas, 153<br />

bobinas, contactos e interconexiones, 39<br />

BROT, 87<br />

CALL, 91<br />

CANT, 99<br />

CCPF, 107<br />

CCPV, 111<br />

CFGC, 115<br />

CFGF, 119<br />

CFGI, 123<br />

CFGR, 127<br />

CFGS, 131<br />

CHS, 135<br />

CKSM, 143<br />

CMPR, 149<br />

COMM, 157<br />

COMP, 161<br />

conexiones, 1029<br />

contactos, 167<br />

control <strong>de</strong> bucle cerrado/valores


In<strong>de</strong>x<br />

analógicos, 19<br />

CONV, 171<br />

CTIF, 175<br />

DCTR, 183<br />

DIOH, 187<br />

DISA, 193<br />

DIV, 197<br />

DLOG, 203<br />

DMTH, 211<br />

DRUM, 219<br />

DV16, 225<br />

EARS, 233<br />

EMTH, 241<br />

EMTH-ADDDP, 247<br />

EMTH-ADDFP, 253<br />

EMTH-ADDIF, 259<br />

EMTH-ANLOG, 265<br />

EMTH-ARCOS, 271<br />

EMTH-ARSIN, 277<br />

EMTH-ARTAN, 283<br />

EMTH-CHSIN, 289<br />

EMTH-CMPFP, 295<br />

EMTH-CMPIF, 301<br />

EMTH-CNVDR, 307<br />

EMTH-CNVFI, 313<br />

EMTH-CNVIF, 319<br />

EMTH-CNVRD, <strong>32</strong>5<br />

EMTH-COS, 331<br />

EMTH-DIVDP, 337<br />

EMTH-DIVFI, 343<br />

EMTH-DIVFP, 349<br />

EMTH-DIVIF, 355<br />

EMTH-ERLOG, 361<br />

EMTH-EXP, 367<br />

EMTH-LNFP, 373<br />

EMTH-LOG, 379<br />

EMTH-LOGFP, 385<br />

EMTH-MULDP, 391<br />

EMTH-MULFP, 397<br />

EMTH-MULIF, 403<br />

EMTH-PI, 409<br />

EMTH-POW, 415<br />

EMTH-SINE, 421<br />

EMTH-SQRFP, 427<br />

EMTH-SQRT, 433<br />

EMTH-SQRTP, 439<br />

EMTH-SUBDP, 445<br />

EMTH-SUBFI, 451<br />

EMTH-SUBFP, 457<br />

EMTH-SUBIF, 463<br />

EMTH-TAN, 469<br />

ESI, 475<br />

EUCA, 495<br />

FIN, 509<br />

formateo <strong>de</strong> mensajes para operaciones<br />

lvi 31007526 12/2006


READ/WRIT <strong>de</strong> ASCII, 31<br />

FOUT, 513<br />

FTOI, 519<br />

G392, 573<br />

GD92, 523<br />

gestión <strong>de</strong> interrupt, 45<br />

gestión <strong>de</strong> subrutinas, 47<br />

GFNX, 535<br />

GG92, 549<br />

GM92, 561<br />

HLTH, 585<br />

HSBY, 601<br />

IBKR, 607<br />

IBKW, 611<br />

ICMP, 615<br />

ID, 623<br />

IE, 627<br />

IMIO, 631<br />

IMOD, 639<br />

INDX, 649<br />

ITMR, 653<br />

ITOF, 659<br />

JOGS, 663<br />

JSR, 667<br />

LAB, 671<br />

LOAD, 675<br />

MAP3, 679<br />

MATH, 687<br />

MBIT, 695<br />

MBUS, 701<br />

MMFB, 711<br />

MMFE, 715<br />

MMFI, 719<br />

MMFS, 725<br />

MOVE, 729<br />

MRTM, 733<br />

MSPX, 739<br />

MSTR, 743<br />

MU16, 789<br />

MUL, 793<br />

NBIT, 799<br />

NCBT, 803<br />

NOBT, 807<br />

NOL, 811<br />

O, 819<br />

PCFL, 825<br />

PCFL-AIN, 833<br />

PCFL-ALARM, 839<br />

PCFL-AVER, 849<br />

PCFL-CALC, 855<br />

PCFL-DELAY, 861<br />

PCFL-EQN, 865<br />

PCFL-INTEG, 871<br />

PCFL-KPID, 875<br />

PCFL-LIMIT, 883<br />

PCFL-LIMV, 887<br />

PCFL-LKUP, 891<br />

PCFL-LLAG, 897<br />

PCFL-MODE, 901<br />

PCFL-ONOFF, 905<br />

PCFL-PI, 911<br />

PCFL-PID, 917<br />

PCFL-RAMP, 923<br />

PCFL-RATE, 929<br />

PCFL-RATIO, 933<br />

PCFL-RMPLN, 937<br />

PCFL-SEL, 941<br />

PCFL-TOTAL, 947<br />

PEER, 953<br />

PID2, 959<br />

R --> T, 975<br />

RBIT, 981<br />

READ, 985<br />

RET, 991<br />

RTTI, 995<br />

RTU, 1003<br />

SAVE, 1009<br />

SBIT, 1013<br />

SCIF, 1017<br />

SENS, 1023<br />

SKP, 1033<br />

SRCH, 1037<br />

STAT, 1043<br />

SU16, 1071<br />

SUB, 1075<br />

SWAP, 1079<br />

T-->R, 1087<br />

T-->T, 1093<br />

TBLK, 1117<br />

temporizador T.01, 1099<br />

temporizador T0.1, 1103<br />

temporizador T1.0, 1107<br />

In<strong>de</strong>x<br />

31007526 12/2006 lvii


In<strong>de</strong>x<br />

temporizador T1MS, 1111<br />

TEST, 1123<br />

TTR, 1083<br />

UCTR, 1127<br />

VMER, 1131<br />

VMEW, 1137<br />

WRIT, 1143<br />

XMIT, 1149<br />

XMRD, 1185<br />

XMWT, 1191<br />

XOR, 1197<br />

Y, 65<br />

A<br />

AD16, 57<br />

ADD, 61<br />

Adición<br />

EMTH-ADDFP, 259<br />

Adición <strong>de</strong> coma flotante<br />

EMTH-ADDFP, 253<br />

Adición <strong>de</strong> coma flotante + entero<br />

EMTH-ADDIF, 259<br />

Adición <strong>de</strong> doble precisión<br />

EMTH-ADDDP, 247<br />

Adición <strong>de</strong> entero + coma flotante<br />

EMTH-ADDIF, 259<br />

Administrador central <strong>de</strong> alarmas, 839<br />

AGA n.º 3<br />

flujo <strong>de</strong> gas GD92, 523<br />

G392, 573<br />

GG92, 549<br />

GM92, 561<br />

AGA n.º 3 ‘85<br />

GFNX, 535<br />

AGA n.º 8<br />

GD92, 523<br />

GM92, 561<br />

Alarma<br />

PCFL-ALARM, 839<br />

Alarmas y conversión <strong>de</strong> unida<strong>de</strong>s físicas<br />

EUCA, 495<br />

Algoritmos PID, 917<br />

PCFL-PID, 917<br />

Antilogaritmo <strong>de</strong> base 10<br />

EMTH-ANLOG, 265<br />

Arcocoseno <strong>de</strong> coma flotante<br />

EMTH-ARCOS, 271<br />

Arcocoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

EMTH-ARCOS, 271<br />

Arcoseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

EMTH-ARSIN, 277<br />

Arcoseno <strong>de</strong> un ángulo (en radianes)<br />

EMTH-ARSIN, 277<br />

Arcotangente <strong>de</strong> coma flotante<br />

EMTH-ARTAN, 283<br />

Arcotangente <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

EMTH-ARTAN, 283<br />

B<br />

Banda muerta, valores ON/OFF<br />

PCFL-ONOFF, 905<br />

BCD, 71<br />

<strong>Biblioteca</strong> <strong>de</strong> funciones <strong>de</strong> control <strong>de</strong><br />

procesos, 825<br />

Binario bloqueado, control<br />

DISA, 193<br />

Bit normalmente abierto, 807<br />

Bit normalmente cerrado, 803<br />

BLKM, 75<br />

BLKT, 79<br />

Bloque a tabla, 79<br />

Bloque <strong>de</strong> bits Motion Framework, 711<br />

Bloque <strong>de</strong> comunicación<br />

XMIT, 1157<br />

Bloque <strong>de</strong> comunicación XMIT, 1157<br />

Bloque <strong>de</strong> conversión<br />

XMIT, 1177<br />

Bloque <strong>de</strong> conversión XMIT, 1177<br />

Bloque <strong>de</strong> estado <strong>de</strong>l puerto<br />

XMIT, 1169<br />

Bloque <strong>de</strong> estado <strong>de</strong>l puerto XMIT, 1169<br />

Bloque <strong>de</strong> funciones <strong>de</strong> flujo <strong>de</strong><br />

gas, 535, 549<br />

G392, 573<br />

GM92, 561<br />

Bloque <strong>de</strong> funciones <strong>de</strong>l flujo <strong>de</strong> gas, 523<br />

lviii 31007526 12/2006


Bloque <strong>de</strong> inicialización <strong>de</strong> Motion<br />

Framework, 719<br />

Bloque <strong>de</strong> subrutinas <strong>de</strong> Motion<br />

Framework, 725<br />

Bloque SUB<br />

CANT, 99<br />

Bloquear interrupt, 623<br />

BMDI, 83<br />

Bobinas, 39, 153<br />

CANT, 99<br />

BROT, 87<br />

Buscar, 1037<br />

C<br />

Calculadora <strong>de</strong> ecuaciones<br />

formateadas, 865<br />

Cálculo <strong>de</strong> la tasa diferencial durante un<br />

periodo específico, 929<br />

PCFL-RATE, 929<br />

Cálculo <strong>de</strong>l promedio <strong>de</strong> entradas<br />

pon<strong>de</strong>radas, 849<br />

Cálculos avanzados, 826<br />

CALL, 91<br />

Cambio <strong>de</strong>l signo <strong>de</strong> un número con coma<br />

flotante<br />

EMTH-CHSIN, 289<br />

Cancelar<br />

ESI, 475<br />

CANT, 99<br />

Cargar el valor <strong>de</strong> coma flotante <strong>de</strong> Pi<br />

EMTH-PI, 409<br />

Cargar flash, 675<br />

CCPF, 107<br />

CCPV, 111<br />

CFGC, 115<br />

CFGF, 119<br />

CFGI, 123<br />

CFGR, 127<br />

CFGS, 131<br />

CHS, 135<br />

CKSM, 143<br />

CMPR, 149<br />

Código binario a binario, 71<br />

Cola <strong>de</strong> retardo, 861<br />

Colocar datos<br />

ESI, 475<br />

Coma flotante dividida por entero<br />

EMTH-DIVFI, 343<br />

COMM, 157<br />

COMP, 161<br />

Comparación <strong>de</strong> entrada, 615<br />

Comparación <strong>de</strong>l mo<strong>de</strong>lo <strong>de</strong> bits<br />

CMPR, 149<br />

Comparar entero y coma flotante<br />

EMTH-CMPIF, 301<br />

Comparar flotantes<br />

EMTH-CMPFP, 295<br />

Comparar registro, 149<br />

Complementar una matriz, 161<br />

Comunicación<br />

MSTR, 743<br />

Comunicación ASCII<br />

COMM, 157<br />

Conexiones, 1029<br />

Contactos, 39, 167<br />

CANT, 99<br />

Contador<br />

CTIF, 175<br />

Contador progresivo, 1127<br />

Contador regresivo<br />

DCTR, 183<br />

Contadores<br />

DCTR, 183<br />

Contadores/temporizadores<br />

temporizador T.01, 1099<br />

temporizador T0.1, 1103<br />

temporizador T1.0, 1107<br />

temporizador T1MS, 1111<br />

UCTR, 1127<br />

Control binario bloqueado<br />

DISA, 193<br />

Control <strong>de</strong> bits<br />

NBIT, 799<br />

Control <strong>de</strong> bucle cerrado, 19<br />

Control <strong>de</strong> regulación, 826<br />

Controlador <strong>de</strong> ratio para cuatro<br />

estaciones, 933<br />

PCFL-RATIO, 933<br />

CONV, 171<br />

In<strong>de</strong>x<br />

31007526 12/2006 lix


In<strong>de</strong>x<br />

Conversión<br />

<strong>de</strong> BCD a binario, 71<br />

<strong>de</strong> binario a BCD, 71<br />

Conversión <strong>de</strong> coma flotante a entero<br />

EMTH-CNVFI, 313<br />

Conversión <strong>de</strong> coma flotante <strong>de</strong> grados a<br />

radianes<br />

EMTH-CNVDR, 307<br />

Conversión <strong>de</strong> coma flotante <strong>de</strong> radianes a<br />

grados<br />

EMTH-CNVRD, <strong>32</strong>5<br />

Conversión <strong>de</strong> entero a coma flotante<br />

EMTH-CNVIF, 319<br />

Conversión <strong>de</strong> grados a radianes<br />

EMTH-CNVDR, 307<br />

Conversión <strong>de</strong> radianes a grados<br />

EMTH-CNVRD, <strong>32</strong>5<br />

Convertir datos<br />

CONV, 171<br />

Coor<strong>de</strong>nada establecida<br />

CFGC, 115<br />

Coseno <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

EMTH-COS, 331<br />

Coseno <strong>de</strong> un ángulo (en radianes)<br />

EMTH-COS, 331<br />

CTIF, 175<br />

D<br />

Datos<br />

ESI, 475<br />

Datos, convertir<br />

CONV, 171<br />

DCTR, 183<br />

De coma flotante a entero, 519<br />

De entero a coma flotante, 659<br />

De grados a radianes, conversión<br />

EMTH-CNVDR, 307<br />

De radianes a grados, conversión<br />

EMTH-CNVRD, <strong>32</strong>5<br />

De registro a tabla, 975<br />

De registro a tabla <strong>de</strong> entrada, 995<br />

De tabla a bloque, 1117<br />

De tabla a registro, 1083, 1087<br />

De tabla a tabla, 1093<br />

Derivada, proporcional integral<br />

PID2, 959<br />

DIOH, 187<br />

DISA, 193<br />

DIV, 197<br />

División<br />

DIV, 197<br />

División <strong>de</strong> 16 bits, 225<br />

División <strong>de</strong> coma flotante<br />

EMTH-DIVFP, 349<br />

División <strong>de</strong> doble precisión<br />

EMTH-DIVDP, 337<br />

DLOG, 203<br />

DMTH, 211<br />

DRUM, 219<br />

DV16, 225<br />

DX, función retardada<br />

CALL, 91<br />

E<br />

E/S inmediatas, 631<br />

E/S, estado<br />

DIOH, 187<br />

EARS, 233<br />

Ecuaciones formateadas, calculadora<br />

PCFL-EQN, 865<br />

Eje imaginario<br />

CFGI, 123<br />

Eje remoto<br />

CFGR, 127<br />

Eje SERCOS<br />

CFGS, 131<br />

Ejecutar errores <strong>de</strong> tiempo<br />

ESI, 475<br />

Ejemplo <strong>de</strong> control <strong>de</strong> nivel con PID2, 28<br />

Ejemplo <strong>de</strong> PID, 25<br />

Elevar un número con coma flotante a una<br />

potencia entera<br />

EMTH-POW, 415<br />

EMTH, 241<br />

EMTH-ADDDP, 247<br />

EMTH-ADDFP, 253<br />

EMTH-ADDIF, 259<br />

EMTH-ANLOG, 265<br />

EMTH-ARCOS, 271<br />

lx 31007526 12/2006


EMTH-ARSIN, 277<br />

EMTH-ARTAN, 283<br />

EMTH-CHSIN, 289<br />

EMTH-CMPFP, 295<br />

EMTH-CMPIF, 301<br />

EMTH-CNVDR, 307<br />

EMTH-CNVFI, 313<br />

EMTH-CNVIF, 319<br />

EMTH-CNVRD, <strong>32</strong>5<br />

EMTH-COS, 331<br />

EMTH-DIVDP, 337<br />

EMTH-DIVFI, 343<br />

EMTH-DIVFP, 349<br />

EMTH-DIVIF, 355<br />

EMTH-ERLOG, 361<br />

EMTH-EXP, 367<br />

EMTH-LNFP, 373<br />

EMTH-LOG, 379<br />

EMTH-LOGFP, 385<br />

EMTH-MULDP, 391<br />

EMTH-MULFP, 397<br />

EMTH-MULIF, 403<br />

EMTH-PI, 409<br />

EMTH-POW, 415<br />

EMTH-SINE, 421<br />

EMTH-SQRFP, 427<br />

EMTH-SQRT, 433<br />

EMTH-SQRTP, 439<br />

EMTH-SUBDP, 445<br />

EMTH-SUBFI, 451<br />

EMTH-SUBFP, 457<br />

EMTH-SUBIF, 463<br />

EMTH-TAN, 469<br />

Entero dividido por coma flotante<br />

EMTH-DIVIF, 355<br />

Entrada analógica<br />

PCFL-AIN, 833<br />

Entrada <strong>de</strong> valor real, limitador<br />

PCFL-LIMIT, 883<br />

Entrada <strong>de</strong> valor real, limitador <strong>de</strong> velocidad<br />

PCFL-LIMV, 887<br />

Errores <strong>de</strong> tiempo, ejecutar<br />

ESI, 475<br />

Escribir mensaje ASCII<br />

ESI, 475<br />

Escritura<br />

MSTR, 752<br />

VME, 1137<br />

Escritura <strong>de</strong> memoria extendida, 1191<br />

XMWT, 1191<br />

Escritura indirecta <strong>de</strong> bloque, 611<br />

Escritura/lectura, registro <strong>de</strong> datos<br />

DLOG, 203<br />

ESI, 475<br />

Establecer bit, 1013<br />

Establecer la entrada en modalidad<br />

automática o manual, 901<br />

Estadísticas <strong>de</strong> red Modbus Plus<br />

MSTR, 774<br />

Estadísticas Ethernet TCP/IP<br />

MSTR, 779<br />

Estado, 1043<br />

Estado <strong>de</strong> E/S distribuidas, 187<br />

DIOH, 187<br />

Etiqueta <strong>de</strong> una subrutina, 671<br />

EUCA, 495<br />

In<strong>de</strong>x<br />

F<br />

Filtro diferenciador o <strong>de</strong> retardo <strong>de</strong> primer<br />

or<strong>de</strong>n, 897<br />

PCFL-LLAG, 897<br />

FIN, 509<br />

flash, cargar, 675<br />

Flash, guardar<br />

SAVE, 1009<br />

Flujo dosificado, totalizador<br />

PCFL-TOTAL, 947<br />

formateo <strong>de</strong> mensajes, 31<br />

Fórmula preestablecida calculada, 855<br />

FOUT, 513<br />

FTOI, 519<br />

Función DX inmediata<br />

CALL, 91<br />

Función DX retardada<br />

CALL, 91<br />

Función exponencial <strong>de</strong> coma flotante<br />

EMTH-EXP, 367<br />

Funciones ASCII<br />

READ, 985<br />

WRIT, 1143<br />

31007526 12/2006 lxi


In<strong>de</strong>x<br />

funciones Modbus<br />

XMIT, 1151<br />

G<br />

G392, 573<br />

GD92, 523<br />

Gestión <strong>de</strong> interrupt, 45<br />

Gestión <strong>de</strong> subrutinas, 47<br />

GFNX, 535<br />

GG92, 549<br />

GM92, 561<br />

Grupos <strong>de</strong> instrucciones, 5<br />

Coils, Contacts e Interconnects, 18<br />

instrucciones <strong>de</strong> comunicación ASCII, 7<br />

instrucciones <strong>de</strong> Counters y Timers, 8<br />

instrucciones <strong>de</strong> Fast I/O, 9<br />

instrucciones <strong>de</strong> Math, 11<br />

instrucciones <strong>de</strong> Matrix, 13<br />

instrucciones <strong>de</strong> Move, 15<br />

instrucciones <strong>de</strong> Special, 17<br />

Loadable DX, 10<br />

miscellaneous, 14<br />

Skips/Specials, 16<br />

vista general, 6<br />

H<br />

Habilitar interrupt, 627<br />

HLTH, 585<br />

Hot Standby, 601<br />

CHS, 135<br />

HSBY, 601<br />

I<br />

IBKR, 607<br />

IBKW, 611<br />

ICMP, 615<br />

ID, 623<br />

IE, 627<br />

IMIO, 631<br />

IMOD, 639<br />

Incrementos <strong>de</strong> variables<br />

CCPV, 111<br />

INDX, 649<br />

registros, 652<br />

Instalación <strong>de</strong> DX loadables, 49<br />

Instrucción<br />

bobinas, contactos e interconexiones, 39<br />

Instrucción <strong>de</strong>l módulo <strong>de</strong> interrupt, 639<br />

Instrucción maestro, 743<br />

Instrucciones <strong>de</strong> fast I/O<br />

BMDI, 83<br />

Instrucciones Fast I/O<br />

ID, 623<br />

IE, 627<br />

IMIO, 631<br />

IMOD, 639<br />

ITMR, 653<br />

Instrumentos <strong>de</strong> variables<br />

CCPF, 107<br />

Integrar entrada en un intervalo<br />

especificado, 871<br />

Interconexiones, 39<br />

Interfases <strong>de</strong> control secuencial, 1017<br />

SCIF, 1017<br />

Interrupt<br />

CTIF, 175<br />

ITMR, 653<br />

ITOF, 659<br />

J<br />

JOGS, 663<br />

JSR, 667<br />

L<br />

LAB, 671<br />

Lectura<br />

MSTR, 754<br />

VME, 1131<br />

Lectura <strong>de</strong> memoria extendida, 1185<br />

XMRD, 1185<br />

Lectura indirecta <strong>de</strong> bloque, 607<br />

Lectura/escritura, registro <strong>de</strong> datos<br />

DLOG, 203<br />

Leer mensaje ASCII<br />

ESI, 475<br />

lxii 31007526 12/2006


Limitador <strong>de</strong> velocidad<br />

PCFL-LIMV, 887<br />

Limitador <strong>de</strong> velocidad para cambios en la<br />

entrada <strong>de</strong> valor real, 887<br />

Limitador para la entada <strong>de</strong> valor real, 883<br />

LL984<br />

PCFL-AOUT, 845<br />

LOAD, 675<br />

Loadable DX<br />

CHS, 135<br />

DRUM, 219<br />

ESI, 475<br />

EUCA, 495<br />

HLTH, 585<br />

ICMP, 615<br />

instalación, 49<br />

MAP3, 679<br />

MBUS, 701<br />

MRTM, 733<br />

NOL, 811<br />

PEER, 953<br />

Logaritmo<br />

EMTH-LNFP, 373<br />

Logaritmo común<br />

EMTH-LOGFP, 385<br />

Logaritmo común <strong>de</strong> coma flotante<br />

EMTH-LOGFP, 385<br />

Logaritmo <strong>de</strong> base 10<br />

EMTH-LOG, 379<br />

Logaritmo natural<br />

EMTH-LNFP, 373<br />

Logaritmo natural <strong>de</strong> coma flotante<br />

EMTH-LNFP, 373<br />

Lonworks<br />

NOL, 811<br />

M<br />

MAP3, 679<br />

Matemática <strong>de</strong> doble precisión<br />

DMTH, 211<br />

Matemática extendida<br />

EMTH, 241<br />

MATH, 687<br />

Math<br />

AD16, 57<br />

ADD, 61<br />

BCD, 71<br />

DIV, 197<br />

DV16, 225<br />

EMTH, 241<br />

FTOI, 519<br />

ITOF, 659<br />

MU16, 789<br />

MUL, 793<br />

SU16, 1071<br />

SUB, 1075<br />

TEST, 1123<br />

Matrices <strong>de</strong> historia y estado, 585<br />

Matrix<br />

BROT, 87<br />

CMPR, 149<br />

COMP, 161<br />

MBIT, 695<br />

NBIT, 799<br />

NCBT, 803<br />

NOBT, 807<br />

O, 819<br />

RBIT, 981<br />

SBIT, 1013<br />

SENS, 1023<br />

XOR, 1197<br />

Y, 65<br />

MBIT, 695<br />

MBUS, 701<br />

Memoria extendida, escritura<br />

XMWT, 1191<br />

Memoria extendida, lectura<br />

XMRD, 1185<br />

Mensaje ASCII<br />

ESI, 475<br />

Método bruto<br />

G392, 573<br />

Método <strong>de</strong>tallado<br />

GD92, 523<br />

GM92, 561<br />

Método en bruto<br />

GG92, 549<br />

MMFB, 711<br />

MMFE, 715<br />

In<strong>de</strong>x<br />

31007526 12/2006 lxiii


In<strong>de</strong>x<br />

MMFI, 719<br />

MMFS, 725<br />

Modalidad automática o manual<br />

PCFL-MODE, 901<br />

Modalidad automática, establecer la entrada<br />

PCFL-MODE, 901<br />

Modalidad manual, establecer la entrada<br />

PCFL-MODE, 901<br />

Modbus Plus<br />

MSTR, 743<br />

Modificar bit, 695<br />

Módulo <strong>de</strong> transferencia multirregistro, 733<br />

módulo <strong>de</strong> transferencia, multirregistro<br />

MRTM, 733<br />

Módulo opcional <strong>de</strong> red para Lonworks, 811<br />

MOVE, 729<br />

Move<br />

FIN, 509<br />

FOUT, 513<br />

IBKR, 607<br />

IBKW, 611<br />

INDX, 649<br />

JOGS, 663<br />

R --> T, 975<br />

SRCH, 1037<br />

T-->R, 1087<br />

T-->T, 1093<br />

TBLK, 1117<br />

Mover<br />

BLKM, 75<br />

BLKT, 79<br />

Mover bloque, 75<br />

Mover bloque con interrupts bloqueados, 83<br />

Movimiento absoluto, 729<br />

Movimiento incremental inmediato, 649<br />

Movimiento JOG, 663<br />

MRTM, 733<br />

MSPX, 739<br />

MSTR, 743<br />

Borrado <strong>de</strong> estadísticas locales, 758<br />

Borrar estadísticas remotas, 764<br />

códigos <strong>de</strong> error CTE para Ethernet SY/<br />

MAX y TCP/IP, 788<br />

Códigos <strong>de</strong> error específicos <strong>de</strong><br />

SY/MAX, 783<br />

Códigos <strong>de</strong> error Ethernet TCP/IP, 785<br />

Códigos <strong>de</strong> error Modbus Plus y Ethernet<br />

SY/MAX, 781<br />

Escritura <strong>de</strong> datos globales, 760<br />

Escritura en CTE (tabla <strong>de</strong> extensión <strong>de</strong><br />

configuración), 772<br />

Estadísticas <strong>de</strong> red Modbus Plus, 774<br />

Estadísticas Ethernet TCP/IP, 779<br />

Estado funcional <strong>de</strong> Peer Cop, 766<br />

Lectura <strong>de</strong> CTE (tabla <strong>de</strong> extensión <strong>de</strong><br />

configuración), 770<br />

Lectura <strong>de</strong> datos globales, 761<br />

Obtención <strong>de</strong> estadísticas locales, 756<br />

Obtención <strong>de</strong> estadísticas remotas, 762<br />

Reinicio módulo opcional, 769<br />

MU16, 789<br />

MUL, 793<br />

Multiplicación, 793<br />

EMTH-MULDP, 391<br />

Multiplicación con coma flotante<br />

EMTH-MULFP, 397<br />

Multiplicación <strong>de</strong> 16 bits, 789<br />

Multiplicación <strong>de</strong> doble precisión<br />

EMTH-MULDP, 391<br />

Multiplicación <strong>de</strong> entero x coma flotante<br />

EMTH-MULIF, 403<br />

N<br />

NBIT, 799<br />

NCBT, 803<br />

NOBT, 807<br />

NOL, 811<br />

Número con coma flotante a una potencia<br />

entera<br />

EMTH-POW, 415<br />

Número con coma flotante, cambio <strong>de</strong>l signo<br />

EMTH-CHSIN, 289<br />

NX19 ‘68<br />

GFNX, 535<br />

lxiv 31007526 12/2006


O<br />

O, 819<br />

O exclusiva, 1197<br />

O exclusiva booleana, 1197<br />

O lógica, 819<br />

Obtener datos<br />

ESI, 475<br />

Operaciones con enteros<br />

MATH, 687<br />

Operaciones READ/WRIT, 31<br />

P<br />

PCFL, 825<br />

PCFL-AIN, 833<br />

PCFL-ALARM, 839<br />

PCFL-AOUT, 845<br />

PCFL-AVER, 849<br />

PCFL-CALC, 855<br />

PCFL-DELAY, 861<br />

PCFL-EQN, 865<br />

PCFL-INTEG, 871<br />

PCFL-KPID, 875<br />

PCFL-LIMIT, 883<br />

PCFL-LIMV, 887<br />

PCFL-LKUP, 891<br />

PCFL-LLAG, 897<br />

PCFL-MODE, 901<br />

PCFL-ONOFF, 905<br />

PCFL-PI, 911<br />

PCFL-PID, 917<br />

PCFL-RAMP, 923<br />

PCFL-RATE, 929<br />

PCFL-RATIO, 933<br />

PCFL-RMPLN, 937<br />

PCFL-SEL, 941<br />

PCFL-TOTAL, 947<br />

PCMICA, registro <strong>de</strong> datos<br />

DLOG, 203<br />

PEER, 953<br />

Perfil <strong>de</strong> leva<br />

CCPF, 107<br />

CCPV, 111<br />

Permutación <strong>de</strong> bit VME, 1079<br />

In<strong>de</strong>x<br />

Pi<br />

EMTH-PI, 409<br />

PI no interactivo <strong>de</strong> ISA, 911<br />

PCFL-PI, 911<br />

PID no interactiva <strong>de</strong> ISA expandida, 875<br />

PID, no interactiva<br />

PCFL-KPID, 875<br />

PID2, 959<br />

Primera entrada, 509<br />

Primera salida, 513<br />

Proporcional integral <strong>de</strong>rivada, 959<br />

Prueba <strong>de</strong> dos valores, 1123<br />

R<br />

R --> T, 975<br />

Raíz cuadrada con coma flotante<br />

EMTH-SQRFP, 427<br />

EMTH-SQRT, 433<br />

Raíz cuadrada <strong>de</strong> proceso<br />

EMTH-SQRTP, 439<br />

Rampa logarítmica para el valor <strong>de</strong><br />

consigna, 937<br />

PCFL-RMPLN, 937<br />

Rampa para el valor <strong>de</strong> consigna con una<br />

tasa <strong>de</strong> crecimiento constante, 923<br />

Ratio, controlador para cuatro estaciones<br />

PCFL-RATIO, 933<br />

RBIT, 981<br />

READ, 985<br />

Re<strong>de</strong>s, saltar<br />

SKP, 1033<br />

Registro <strong>de</strong> datos<br />

DLOG, 203<br />

Registro <strong>de</strong> datos <strong>de</strong>l soporte <strong>de</strong> lectura/<br />

escritura PCMCIA, 203<br />

Registro <strong>de</strong> errores <strong>de</strong> coma flotante, 361<br />

EMTH-ERLOG, 361<br />

Registro <strong>de</strong> eventos/alarmas<br />

EARS, 233<br />

Registro, comparar<br />

CMPR, 149<br />

Resta, 1075<br />

Resta con coma flotante<br />

EMTH-SUBFP, 457<br />

Resta <strong>de</strong> 16 bits, 1071<br />

31007526 12/2006 lxv


In<strong>de</strong>x<br />

Resta <strong>de</strong> coma flotante menos entero<br />

EMTH-SUBFI, 451<br />

Resta <strong>de</strong> doble precisión<br />

EMTH-SUBDP, 445<br />

Resta <strong>de</strong> entero<br />

EMTH-SUBFI, 451<br />

Resta <strong>de</strong> entero menos coma flotante<br />

EMTH-SUBFI, 451<br />

EMTH-SUBIF, 463<br />

Restablecer bit, 981<br />

RET, 991<br />

retardo<br />

PCFL-DELAY, 861<br />

Retorno <strong>de</strong>s<strong>de</strong> una subrutina, 991<br />

Rotación <strong>de</strong> bits, 87<br />

RTTI, 995<br />

RTU, 1003<br />

S<br />

Salida analógica, 845<br />

Saltar a subrutina, 667<br />

Saltar re<strong>de</strong>s, 1033<br />

Saltos/especiales<br />

JSR, 667<br />

LAB, 671<br />

RET, 991<br />

SAVE, 1009<br />

SBIT, 1013<br />

SCIF, 1017<br />

Secuenciador <strong>de</strong>l programador cíclico, 219<br />

DRUM, 219<br />

Seguidor establecido<br />

CFGF, 119<br />

Seguimiento <strong>de</strong> auditoría API 21.1<br />

G392, 573<br />

Selección <strong>de</strong> entrada, 941<br />

PCFL-SEL, 941<br />

Seno <strong>de</strong> coma flotante <strong>de</strong> un ángulo<br />

(en radianes)<br />

EMTH-SINE, 421<br />

Seno <strong>de</strong> un ángulo (en radianes)<br />

EMTH-SINE, 421<br />

SENS, 1023<br />

Seriplex<br />

MSPX, 739<br />

Signo, número con coma flotante<br />

EMTH-CHSIN, 289<br />

Simulación <strong>de</strong> entrada<br />

1x3x, 53<br />

Sistema <strong>de</strong> registro <strong>de</strong> eventos/alarmas<br />

EARS, 233<br />

SKP, 1033<br />

Soporte <strong>de</strong>l módulo ESI, 475<br />

Special<br />

PCFL, 825<br />

PCFL-, 845<br />

PCFL-AIN, 833<br />

PCFL-ALARM, 839<br />

PCFL-AVER, 849<br />

PCFL-CALC, 855<br />

PCFL-DELAY, 861<br />

PCFL-EQN, 865<br />

PCFL-INTEG, 871<br />

PCFL-KPID, 875<br />

PCFL-LIMIT, 883<br />

PCFL-LIMV, 887<br />

PCFL-LKUP, 891<br />

PCFL-LLAG, 897<br />

PCFL-MODE, 901<br />

PCFL-ONOFF, 905<br />

PCFL-PI, 911<br />

PCFL-PID, 917<br />

PCFL-RAMP, 923<br />

PCFL-RATE, 929<br />

PCFL-RATIO, 933<br />

PCFL-RMPLN, 937<br />

PCFL-SEL, 941<br />

PCFL-TOTAL, 947<br />

PID2, 959<br />

STAT, 1043<br />

SRCH, 1037<br />

STAT, 1043<br />

SU16, 1071<br />

SUB, 1075<br />

Subfunción <strong>de</strong> PCFL<br />

PCFL-AOUT, 845<br />

Subfunciones <strong>de</strong> PCFL<br />

generalida<strong>de</strong>s, 21<br />

Subrutina <strong>de</strong> parámetros extendida <strong>de</strong><br />

Motion Framework, 715<br />

lxvi 31007526 12/2006


Subrutina, retorno<br />

RET, 991<br />

Suma, 61<br />

AD16, 57<br />

ADD, 61<br />

Suma <strong>de</strong> 16 bits, 57<br />

Suma <strong>de</strong> control<br />

CKSM, 143<br />

SWAP, 1079<br />

T<br />

T-->R, 1087<br />

T-->T, 1093<br />

Tabla <strong>de</strong> búsqueda, 891<br />

Tangente<br />

EMTH-TAN, 469<br />

Tangente con coma flotante <strong>de</strong> un ángulo<br />

(en radianes), 469<br />

Tasa diferencial<br />

PCFL-RATE, 929<br />

TBLK, 1117<br />

Temporizador<br />

CTIF, 175<br />

Temporizador <strong>de</strong> centésimas <strong>de</strong><br />

segundo, 1099<br />

Temporizador <strong>de</strong> décimas <strong>de</strong> segundo, 1103<br />

Temporizador <strong>de</strong> interrupt, 653<br />

Temporizador <strong>de</strong> milisegundos, 1111<br />

Temporizador <strong>de</strong> segundos, 1107<br />

Temporizador T.01, 1099<br />

Temporizador T0.1, 1103<br />

Temporizador T1.0, 1107<br />

Temporizador T1MS, 1111<br />

Temporizadores<br />

CANT, 99<br />

DCTR, 183<br />

T.01, 1099<br />

T0.1, 1103<br />

T1.0, 1107<br />

T1MS, 1111<br />

UCTR, 1127<br />

TEST, 1123<br />

Tipo <strong>de</strong> perfil <strong>de</strong> leva, 108<br />

Totalizador para flujo dosificado, 947<br />

Transacción MAP, 679<br />

Transmisión<br />

XMIT, 1149<br />

TTR, 1083<br />

U<br />

UCTR, 1127<br />

Unidad remota <strong>de</strong> terminal, 1003<br />

In<strong>de</strong>x<br />

V<br />

Valor <strong>de</strong> coma flotante <strong>de</strong> Pi<br />

EMTH-PI, 409<br />

Valores analógicos, 19<br />

Valores ON/OFF para banda muerta, 905<br />

Variable <strong>de</strong> proceso, 20<br />

Variable <strong>de</strong> valor <strong>de</strong> consigna, 20<br />

VMER, 1131<br />

VMEW, 1137<br />

W<br />

WRIT, 1143<br />

X<br />

XMIT, 1149<br />

XMRD, 1185<br />

XMWT, 1191<br />

XOR, 1197<br />

Y<br />

Y, 65<br />

Y lógico, 65<br />

31007526 12/2006 lxvii


In<strong>de</strong>x<br />

lxviii 31007526 12/2006

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!