Schneider Electric PL7 Micro/Junior/Pro Anexos Reference manual

Agregar a Mis manuales
256 Páginas

Anuncio

Schneider Electric PL7 Micro/Junior/Pro Anexos Reference manual | Manualzz

Manual de Referencia

PL7 Micro/Junior/Pro

Anexos

07/2008 spa www.schneider-electric.com

2

Estructura de la documentación

Estructura de la documentación

Presentación Este manual se compone de tres tomos: z z z

Tomo 1: Descripción del programa PL7 z z

Generalidades

Lenguaje de contactos z z z

Lenguaje de la lista de instrucciones

Lenguaje del literal estructurado

Lenguaje Grafcet

Bloques de función DFB z z Módulos Funcionales

Tomo 2: Descripción detallada de las instrucciones y de las funciones z z

Instrucciones de base

Instrucciones avanzadas z Objetos bit y palabras del sistema

Tomo 3: Anexos z z z z z z

Diferencias entre PL7-2/3 y PL7-Micro/Junior

Ayuda-memoria

Lista de las palabras reservadas

Normas CEI 1131-3

Servidor OLE Automation

Rendimiento

35013159.01 07/2008

3

Estructura de la documentación

4

35013159.01 07/2008

Tabla de materias

Acerca de este libro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Capítulo 1

Diferencias entre PL7-2/3 y PL7 Micro/Junior . . . . . . . . . . . . . 11

Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Valores inmediatos y etiquetas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

Bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Palabras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Bloques de función . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

Tablas de bits y de palabras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

Bloques de función opcionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Delimitadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

Capítulo 2

Ayuda-memoria. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Instrucciones booleanas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Instrucciones ST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

Bloques de función LD e IL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Bloques de función ST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

Estructuras de control ST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

Aritmética entera (longitud simple y doble) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

Aritmética en flotantes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Conversiones numéricas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

Tablas de bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

Instrucciones sobre tablas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

Instrucciones sobre tablas de flotantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

Instrucciones "Orphée" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

Intercambios explícitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Instrucciones de gestión del tiempo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

Instrucciones de temporización. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

Instrucciones de archivado de datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

Instrucciones de cadenas de caracteres. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

Multitarea y sucesos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

Comunicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

35013159.01 07/2008

5

6

Capítulo 3

Palabras reservadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

Palabras reservadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

Capítulo 4

Conformidad con la norma CEI 1131-3 . . . . . . . . . . . . . . . . . . 59

Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

Conformidad con la norma CEI 1131-3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Elementos comunes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Elementos de lenguaje IL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

Elementos de lenguaje ST. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

Elementos gráficos comunes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

Elementos de lenguaje LD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

Parámetros que dependen de la implementación . . . . . . . . . . . . . . . . . . . . . . . . 72

Situaciones de error. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

Capítulo 5

Servidor OLE Automation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

5.1

Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Presentación del servidor OLE Automation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

Modos de funcionamiento del servidor OLE Automation. . . . . . . . . . . . . . . . . . . 81

5.2

Puesta en marcha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

Instalación de OLE Automation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

Mecanismo de acceso al servidor PL7 OLE Automation. . . . . . . . . . . . . . . . . . . 84

Inicio del servidor en modo local (modo COM) . . . . . . . . . . . . . . . . . . . . . . . . . . 85

Inicio del servidor en modo remoto (DCOM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

Puesta en funcionamiento del servidor de forma remota . . . . . . . . . . . . . . . . . . 87

Modos de ejecución del servidor PL7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

Puntos de entrada: función OLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

5.3

Funciones OLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

OpenStx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

CloseStx. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

OpenStxWithMaj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

ExportScyFile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

ExportFeFile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

ExportFefFileWithConfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

DisconnectPLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

ConnectPLC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

SaveStx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

DownloadDataToPLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

DownloadToPLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

UploadFromPLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

UploadDataFromPLC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

UploadFromPLCWithSymbol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

GetSymbol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

35013159.01 07/2008

SetServerIHM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

SetDownloadFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

GetPL7State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

GetSTXAppIdentity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

GetPLCAppIdentity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

SendCommandToPLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

SetDriverAndAdresse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

OpenTool. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

SetPosPL7Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

ShowProgram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

CloseProgram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

ShowIOModule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

CloseIOModule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

ShowDFB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128

CloseDFB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

GetMessageError . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

GetServerVersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

ImportScyFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

DownloadStationWithSymbol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

CompareSymbolPCAndSymbolPLCAppli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

Capítulo 6

Rendimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

6.1

Información general. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

Principios de cálculo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

6.2

Rendimiento de las instrucciones en autómatas Micro . . . . . . . . . . . . . . . . . . . 140

Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

Rendimiento de las instrucciones booleanas . . . . . . . . . . . . . . . . . . . . . . . . . . 141

Rendimiento de los bloques de función . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

Aritmética entera y con coma flotante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

Instrucciones sobre el programa y estructuras de control. . . . . . . . . . . . . . . . . 151

Conversiones digitales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153

Instrucciones sobre cadena de bits. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

Instrucción sobre tablas de palabras, palabras dobles y flotantes . . . . . . . . . . 157

Instrucciones de gestión del tiempo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165

Instrucciones sobre cadenas de caracteres . . . . . . . . . . . . . . . . . . . . . . . . . . . 167

Funciones específicas y funciones Orphée. . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

Instrucciones de entradas/salidas explícitas . . . . . . . . . . . . . . . . . . . . . . . . . . . 172

6.3

Rendimiento de las instrucciones en autómatas Premium . . . . . . . . . . . . . . . . 173

Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173

Rendimiento de las instrucciones booleanas . . . . . . . . . . . . . . . . . . . . . . . . . . 174

Rendimiento de los bloques de función . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

Aritmética entera y con coma flotante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183

Instrucciones sobre el programa y estructuras de control. . . . . . . . . . . . . . . . . 188

Conversiones digitales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190

Instrucciones sobre cadena de bits. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

35013159.01 07/2008

7

8

Instrucción sobre tablas de palabras, palabras dobles y flotantes . . . . . . . . . . 194

Instrucciones de gestión del tiempo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203

Instrucciones sobre cadenas de caracteres . . . . . . . . . . . . . . . . . . . . . . . . . . . 205

Funciones específicas y funciones Orphée . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208

Instrucciones de entradas/salidas explícitas . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

Bloque de función DFB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214

6.4

Funciones avanzadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218

Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218

Descripción de las zonas de memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219

Tamaño de memoria de los objetos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220

Resumen del consumo de memoria de los módulos en Micro . . . . . . . . . . . . . 221

Resumen del consumo de memoria de los módulos en Premium. . . . . . . . . . . 224

Tamaño de la memoria de las funciones avanzadas. . . . . . . . . . . . . . . . . . . . . 231

Método de cálculo del número de instrucciones . . . . . . . . . . . . . . . . . . . . . . . . 245

Índice

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255

35013159.01 07/2008

Acerca de este libro

Presentación

Objeto Este manual ofrece la información complementaria a la programación de los autómatas Micro, Premium y Atrium.

Campo de aplicación

La actualización de esta publicación toma en cuenta las funcionalidades de

PL7 V4.5. Sin embargo, también permite poner en marcha las versiones anteriores de PL7.

Comentarios del usuario

Envíe sus comentarios a la dirección electrónica [email protected]

35013159.01 07/2008

9

Acerca de este libro

10

35013159.01 07/2008

Diferencias entre PL7-2/3 y

PL7 Micro/Junior

1

Presentación

Contenido

Contenido

Este capítulo describe las diferencias de los objetos e instrucciones entre los programas PL7-2/PL7-3 y PL7 Micro/PL7 Junior

Este capítulo contiene los siguiente apartados:

Apartado

Valores inmediatos y etiquetas

Bits

Palabras

Bloques de función

Tablas de bits y de palabras

Bloques de función opcionales

Instrucciones

Delimitadores

Página

12

13

15

17

20

22

23

29

35013159.01 07/2008

11

Diferencia PL7-2/3 y PL7 Micro/Junior

Valores inmediatos y etiquetas

Valores inmediatos

Objetos

Entero base 10

Entero base 2

Entero base 16

Flotante

Cadena de caracteres

Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

PL7-2/3

1234

L’10011110’

H’ABCD’

-1.32e12

(PL7-3)

M’aAbBcC’

PL7 Micro/Junior

1234

2#10011110

16#ABCD

-1.32e12

‘aAbBcC’

Etiquetas

Objetos

Etiqueta

Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

PL7-2/3

Li i = 0 a 999

PL7 Micro/Junior

%Li i = 0 a 999

12

35013159.01 07/2008

Diferencia PL7-2/3 y PL7 Micro/Junior

Bits

Bits de entrada en rack

Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

Objetos

Bit de entrada en rack

Bit de entrada en rack indexado

Bit de entrada remota

Bit de entrada remota indexado

PL7-2/3

Ixy,i

Ixy,i(Wj) (PL7-3)

RIx,y,i (PL7-3)

RIx,y,i(Wj) (PL7-3)

PL7 Micro/Junior

%Ixy.i

%Ixy.i[%MWj]

%I\ruta\mod.vía

-

Bits de salida en rack

Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

Objetos

Bit de salida en rack

Bit de salida en rack indexado

Bit de salida remota

Bit de salida remota indexado

PL7-2/3

Oxy,i

Oxy,i(Wj) (PL7-3)

ROx,y,i (PL7-3)

ROx,y,i(Wj) (PL7-3)

PL7 Micro/Junior

%Qxy.i

%Qxy.i[%MWj]

%Q\ruta\mod.vía

-

Bits de fallo de

E/S en rack

Objetos

Bit de fallo de módulo

Bit de vía

Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

PL7-2/3

Ixy,S / Oxy,S

-

PL7 Micro/Junior

%Ixy.MOD.ERR

%Ixy.i.ERR

Bits de fallo de

E/S remotas

Tabla de diferencias entre PL7-3 y PL7-Micro/Junior

Objetos

Bit de fallo de módulo

Bit de vía

Bit de disyunción de vía de salida

Bit de reactivación de vía de salida

PL7-3 (únicamente)

-

RDx,y,i/ERRORx,y,i

TRIPx,y,i

RSTx,y,i

PL7 Micro/Junior

%I\ruta\mod.MOD.ERR

%I\ruta\mod.vía.ERR

-

-

35013159.01 07/2008

13

Diferencia PL7-2/3 y PL7 Micro/Junior

Bits internos y bits de sistema

Objetos

Bit interno

Bit interno indexado

Bit de sistema

Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

PL7-2/3

Bi

Bi(Wj) (PL7-3)

SYi

PL7 Micro/Junior

%Mi

%Mi[%MWj]

%Si

Bits de etapas Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

Objetos

Bits de etapa

Bit de macroetapa

Bit de etapa i de macroetapa j

PL7-2/3

Xi

XMj (PL7-3)

Xj,i (PL7-3)

Bit de etapa de entrada de macroetapa j Xj,I (PL7-3)

Bit de etapa de salida de macroetapa j Xj,O (PL7-3)

PL7 Micro/Junior

%Xi

%XMj

%Xj.i

%Xj.IN

%Xj.OUT

Bits de palabras Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

Objetos

Bit j de la palabra interna i

Bit j de la palabra interna i indexada

Bit j de la palabra constante i

Bit j de la palabra constante i indexada

PL7-2/3

Wi,j

Wi(Wk),j

CWi,j

(PL7-3)

CWi(Wk),j (PL7-3)

Bit j del registro i

Bit j de la palabra de sistema i

IW/OWxy,i,j

Bit k da la palabra común j de la estación i COMi,j,k

COMXi,j,k (X = B, C, D)

SWi,j

PL7 Micro/Junior

%MWi:Xj

%MWi[%MWk]:Xj

%KWi:Xj

%KWi[%MWk]:Xj

%IW/%QWxy.i:Xj

%NWi.j:Xk

%NXWi.j:Xk

%SWi:Xj

14

35013159.01 07/2008

Diferencia PL7-2/3 y PL7 Micro/Junior

Palabras

Palabras internas

Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

Objetos

Palabra interna de longitud simple

Palabra interna de longitud simple indexada

Palabra interna de longitud doble

Palabra interna de longitud doble indexada

Palabra interna real

Palabra interna real indexada

-

-

PL7-2/3

Wi

Wi(Wj) (PL7-3)

DWi (PL7-3)

DWi(Wj) (PL7-3)

PL7 Micro/Junior

%MWi

%MWi[%MWj]

%MDi

%MDi[%MWj]

%MFi

%MFi[%MWj]

Palabras constantes

Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

Objetos PL7-2/3

Palabra constante de longitud simple CWi

Palabra constante de longitud simple indexada

Palabra constante de longitud doble

Palabra constante de longitud doble indexada

Palabra constante real

Palabra constante real indexada

CWi(Wj)

CDWi

-

-

(PL7-3)

CDWi(Wj) (PL7-3)

PL7 Micro/Junior

%KWi

%KWi[%MWj]

%KDi

%KDi[%MWj]

%KFi

%KFi[%MWj ]

35013159.01 07/2008

15

Diferencia PL7-2/3 y PL7 Micro/Junior

Palabras de registro

Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

Objetos

Palabra de registro de entrada de longitud simple

Palabra de registro de entrada de longitud doble

Palabra de registro de salida de longitud simple

Palabra de registro de salida de longitud doble

Palabra de registro de una entrada remota

Palabra de registro de una salida remota

PL7-2/3

IWxy,i

-

OWxy,i

-

RIWx,y,i (PL7-3)

ROWx,y,i (PL7-3)

PL7 Micro/Junior

%IWxy.i

%IDxy.i

%QWxy.i

%QDxy.i

%IW\ruta\mod.vía

%QW\ruta\mod.vía

Otras palabras Tabla de diferencias entre PL7-3 y PL7-Micro/Junior

Objetos PL7-3 (únicamente) PL7 Micro/Junior

Palabra de sistema

Palabra común j de la estación

SWi %SWi

COMi,j COMXi,j (con X=B,C,D) %NW{i}j %NW{[r.]i}j r=núm. de red

Palabra de estado de un módulo TON remoto

Palabra de estado de una vía de un módulo TON remoto

STATUSAx,y,i (PL7-3)

STATUSBx,y,i (PL7-3)

STSx,y,i (PL7-3) %IW\ruta\mod.vía.ERR

16

35013159.01 07/2008

Diferencia PL7-2/3 y PL7 Micro/Junior

Bloques de función

Temporizador Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

Objetos

Variable

Valor de preselección (palabra)

Valor actual (palabra)

Temporizador en curso (bit)

Temporizador transcurrido (bit)

PL7-2/3

Ti

TI,P

Ti,V

Ti,R

Ti,D

PL7 Micro/Junior

%Ti

%Ti.P

%Ti.V

%Ti.R

%Ti.D

Monoestable Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

Objetos

Variable

Valor de preselección (palabra)

Valor actual (palabra)

Monoestable en curso (bit)

PL7-2/3

Mi

Mi,P

Mi,V

Mi,R

PL7 Micro/Junior

%MNi

%MNi.P

%MNi.V

%MNi.R

Contador/

Descontador

Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

Objetos

Variable

Valor de preselección (palabra)

Valor actual (palabra)

Rebasamiento de contaje (bit)

Preselección alcanzada (bit)

Rebasamiento de descontaje (bit)

PL7-2/3

Ci

Ci,P

Ci,V

Ci,E

Ci,D

Ci,F

PL7 Micro/Junior

%Ci

%Ci.P

%Ci.V

%Ci.E

%Ci.D

%Ci.F

35013159.01 07/2008

17

Diferencia PL7-2/3 y PL7 Micro/Junior

Registro Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

Objetos

Variable

Palabra de entrada (palabra)

Palabra de salida (palabra)

Registro completo (bit)

Registro vacío (bit)

PL7-2/3

Ri

Ri,I

Ri,O

Ri,F

Ri,E

PL7 Micro/Junior

%Ri

%Ri.I

%Ri.O

%Ri.F

%Ri.E

Bloque de texto

Objetos

Variable

Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

PL7-2/3

TXTi

PL7 Micro/Junior

Sin bloques de texto

Programador cíclico

Tabla de diferencias entre PL7-2 y PL7-Micro/Junior

Objetos

Variable

Número del paso activo (palabra)

Tiempo de actividad del paso actual

(palabra)

16 bits de órdenes (palabra)

Último paso en curso (bit)

PL7-2

Di (PL7-2)

Di,S

Di,V

Di,Wj

Di,F

PL7 Micro/Junior

%DRi

%DRi.S

%DRi.V

%DRi.Wj

%DRi.F

Contador/

Temporizador rápido

Tabla de diferencias entre PL7-2 y PL7-Micro/Junior

Objetos

Variable

Valor de preselección (palabra)

Valor actual (palabra)

Puesta a 0 externa (bit)

Preselección alcanzada (bit)

Contaje en curso (bit)

PL7-2

FC (PL7-2)

FC,P

FC,V

FC,E

FC,D

FC,F

-

-

-

-

-

PL7 Micro/Junior

-

18

35013159.01 07/2008

Diferencia PL7-2/3 y PL7 Micro/Junior

Reloj-calendario Tabla de diferencias entre PL7-2 y PL7-Micro/Junior

Objetos

Variable

Tipo "WEEK" o "YEAR" selección de días LMMJVSD (palabra)

Consigna de inicio (palabra)

Consigna de final (palabra)

Valor actual < consigna (bit)

Valor actual = consigna (bit)

Valor actual > consigna (bit)

<

=

>

PL7-2

H (PL7-2)

VD

BGN

END

-

-

-

-

-

-

PL7 Micro/Junior

-

35013159.01 07/2008

19

Diferencia PL7-2/3 y PL7 Micro/Junior

Tablas de bits y de palabras

Cadenas de bits Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

Objetos

Cadena de bits internos

Cadena de bits de entrada

Cadena de bits de salida

Cadena de bits de etapa Grafcet

Cadena de bits de macroetapa

PL7-2/3

Bi[L]

Ixy,i[L] (PL7-3)

Oxy.i[L] (PL7-3)

Xi[L] (PL7-3)

XMi[L] (PL7-3)

PL7 Micro/Junior

%Mi:L

%Ixy.i:L

%Qxy.i:L

%Xi:L

-

Cadenas de caracteres

Objetos

Cadena

Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

PL7-2/3

-

PL7 Micro/Junior

%MBi:L (con i par)

20

35013159.01 07/2008

Diferencia PL7-2/3 y PL7 Micro/Junior

Tablas de palabras

Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

Objetos

Tabla de palabras internas

Tabla de palabras internas indexadas

Tabla de palabras dobles internas

Tabla de palabras dobles internas indexadas

Tabla de palabras constantes

Tabla de palabras constantes indexadas

Tabla de palabras dobles constantes

Tabla de palabras dobles constantes indexadas

Tabla de reales

Tabla de reales indexados

Tabla de reales constantes

Tabla de reales constantes indexados

Tabla de elementos de entrada remota

Tabla de elementos de salida remota

Tabla de elementos indexados de entrada remota

Tabla de elementos indexados de salida remota

PL7-2/3

Wi[L]

Wi(Wj)[L]

DWi[L] (PL7-3)

DWi(Wj)[L] (PL7-3)

CWi[L]

PL7 Micro/Junior

%MWi:L

%MWi[%MWj]:L

%MDi:L

%MDi[%MWj]:L

%KWi:L

CWi(Wj)[L] %KWi[%MWj]:L

-

-

CDWi[L] (PL7-3)

CDWi(Wj)[L] (PL7-3)

%KDi:L

%KDi[%MWj]:L

%MFi:L

%MFi[%MWj]:L

-

-

RIx,y,i[L]

ROx,y,i[L]

(PL7-3)

(PL7-3)

%KFi:L

%KFi[%MWj]:L

RIx,y,i(Wj)[L] (PL7-3) -

ROx,y,i(Wj)[L] (PL7-3) -

-

-

35013159.01 07/2008

21

Diferencia PL7-2/3 y PL7 Micro/Junior

Bloques de función opcionales

OFB Tabla de diferencias entre PL7-3 y PL7-Micro/Junior

Objetos

Variable

Elemento de OFB

Elemento de OFB indexado

PL7-3 (únicamente)

< OFB >i

< OFB >i

< OFB >i

, <elemento>

, <elemento> (Wj)

Tabla de elementos de OFB < OFB >i , <elemento> [L]

Tabla de elementos de OFB indexados < OFB >i , <elemento> (Wj)[L]

PL7 Micro/Junior

-

-

-

-

-

22

35013159.01 07/2008

Diferencia PL7-2/3 y PL7 Micro/Junior

Instrucciones

Instrucciones sobre bits

Objetos

Inversión lógica

ET

O

O exclusivo

Flanco ascendente

Flanco descendente

Puesta a 1

Puesta a 0

Tabla de diferencias entre PL7-2, PL7-3 y PL7-Micro/Junior

PL7-2

-

AND

OR

XOR

-

-

-

-

PL7-3

NOT

*

+

-

RE

FE

SET

RESET

PL7 Micro/Junior

NOT

AND

OR

XOR

RE

FE

SET

RESET

35013159.01 07/2008

23

Diferencia PL7-2/3 y PL7 Micro/Junior

Instrucciones de palabras y palabras dobles

Tabla de diferencias entre PL7-2, PL7-3 y PL7-Micro/Junior

Objetos

Suma

Resta

Multiplicación

División

Comparación

Resto de una división

Raíz cuadrada

Valor absoluto

Y lógico

O lógico

O lógico exclusivo

PL7-2

+

-

*

/

>,>=,<,<=,=,<>

MOD

-

-

AND

OR

XOR

Complemento lógico

Incremento

Decremento

CPL

-

-

Desplazamiento lógico a la izquierda -

Desplazamiento lógico a la derecha -

Desplazamiento circular a la izquierda SLC

Desplazamiento circular a la derecha SRC

AND

OR

XOR

CPL

INC

DEC

SHL

SHR

SLC

SRC

-

*

PL7-3

+

/

>,>=,<,<=,=,<>

REM

SQRT

ABS

AND

OR

XOR

CPL

INC

DEC

SHL

-

*

PL7 Micro/Junior

+

/

>,>=,<,<=,=,<>

REM

SQRT

SHR

ROL

ROR

24

35013159.01 07/2008

Diferencia PL7-2/3 y PL7 Micro/Junior

Instrucciones de tipo flotante

Tabla de diferencias entre PL7-3 y PL7-Micro/Junior

Objetos

Suma

Resta

Multiplicación

División

Raíz cuadrada

Valor absoluto

Prueba de igualdad

Prueba de superioridad estricta

Prueba de inferioridad estricta

Otras pruebas

PL7-3

ADDF

SUBF

MULF

DIVF

SQRTF

-

EQUF

SUPF

INFF

-

-

*

PL7 Micro/Junior

+

/

SQRT

ABS

=

>

<

>=, <=, <>

Instrucción de cadenas de bytes

Tabla de diferencias entre PL7-3 y PL7-Micro/Junior

Objetos

Desplazamiento circular

PL7-3

SLCWORD

PL7 Micro/Junior

-

35013159.01 07/2008

25

Diferencia PL7-2/3 y PL7 Micro/Junior

Instrucciones de conversión

Tabla de diferencias entre PL7-2, PL7-3 y PL7-Micro/Junior

Objetos

Conversión BCD binario

Conversión binario BCD

Conversión ASCII binario

PL7-2

BCD

BIN

ATB

PL7-3

DTB

BTD

ATB

Conversión binario ASCII

Conversión Gray binario

Conversión flotante entero

Conversión entero flotante

Conversión BCD Flotante

Conversión flotante BCD

Conversión flotante ASCII

Conversión ASCII flotante

BTA

-

-

-

-

-

-

-

BTA

GTB

FTB

FTF

DTF

FTD

ATF

FTA

PL7 Micro/Junior

BCD_TO_INT

INT_TO_BCD

STRING_TO_INT o

STRING_TO_DINT

INT_TO_STRING o

DINT_TO_STRING

GRAY_TO_INT

REAL_TO_INT o

REAL_TO_DINT

INT_TO_REAL o

DINT_TO_REAL

BCD_TO_REAL

REAL_TO_BCD

STRING_TO_REAL

REAL_TO_STRING

Instrucciones sobre tablas

Tabla de diferencias entre PL7-3 y PL7-Micro/Junior

Objetos PL7-3

Operaciones aritméticas

Operaciones lógicas

Suma de las palabras de una tabla

+,-,*,/,REM

AND, OR, XOR

+

Búsqueda de la 1ª palabra diferente EQUAL

Búsqueda de la 1ª palabra igual SEARCH

PL7 Micro/Junior

+,-,*,/,REM

AND, OR, XOR, NOT

SUM

EQUAL

FIND_EQU

26

35013159.01 07/2008

Diferencia PL7-2/3 y PL7 Micro/Junior

Instrucciones de programa

Tabla de diferencias entre PL7-3 y PL7-Micro/Junior

Objetos

Salto

Llamada de subprograma

Retorno de subprograma

Parada de la aplicación

Sentencia condicional

Sentencia iterativa

PL7-3

JUMP Li

-

RET

HALT

IF/THEN/ELSE

WHILE/DO

PL7 Micro/Junior

JUMP %Li

CALL SRi SRi

RETURN

HALT

IF/THEN/ELSE/END_IF

WHILE/DO/END_WHILE

Instrucciones de interrupciones

Tabla de diferencias entre PL7-3 y PL7-Micro/Junior

Objetos

Prueba

Enmascaramiento

Desenmascaramiento

PL7-3

READINT

MASKINT

DMASKINT

Confirmación ACKINT

Generación de una IT hacia el acoplador SETIT

PL7 Micro/Junior

-

MASKEVT

UNMASKEVT

-

-

Instrucciones de

E/S explícitas

Tabla de diferencias entre PL7-3 y PL7-Micro/Junior

Objetos

Lectura de las entradas TON

Escritura de las salidas TON

Lectura de los registros

Escritura de los registros

Lectura de palabras

Escritura de palabras

PL7-3

READBIT

WRITEBIT

READREG

WRITEREG

READEXT

WRITEEXT

-

-

-

PL7 Micro/Junior

-

-

-

35013159.01 07/2008

27

Diferencia PL7-2/3 y PL7 Micro/Junior

Instrucciones de bloques de función

Tabla de diferencias entre PL7-2, PL7-3 y PL7-Micro/Junior

Objetos

Preselección

Inicio

Activación de la tarea

Reset

PL7-3

PRESET Ti / Ci

START Ti / Mi

START CTRLi

PL7 Micro/Junior

PRESET %Ti / %Ci

START %Ti / %MNi

-

Desactivación de la tarea

Contaje

Descontaje

Almacenamiento en un registro

Vaciado de un registro

Recepción de un mensaje

RESET Ci / Ri / TXTi RESET %Ci / %Ri

RESET CTRLi

UP Ci

DOWN Ci

PUT Ri

GET Ri

Lectura de telegramas

INPUT TXTi

Emisión de un mensaje OUTPUT TXTi

Emisión/Recepción de un mensaje EXCHG TXTi

Ejecución de un OFB EXEC < OFBi >

READTLG

-

UP %Ci

DOWN %Ci

PUT %Ri

GET %Ri

-

-

-

-

-

28

35013159.01 07/2008

Diferencia PL7-2/3 y PL7 Micro/Junior

Delimitadores

Diferencias Tabla de diferencias entre PL7-2/3 y PL7-Micro/Junior

Objetos

Longitud de tabla

PL7-2/3

Asignación ->

Paréntesis izquierdo para la indexación (

Paréntesis derecho para la indexación )

[longitud]

[

]

PL7 Micro/Junior

:=

:longitud

35013159.01 07/2008

29

Diferencia PL7-2/3 y PL7 Micro/Junior

30

35013159.01 07/2008

Ayuda-memoria

2

Presentación

Contenido

Contenido

Este capítulo contiene una ayuda-memoria de las instrucciones del lenguaje PL7

Este capítulo contiene los siguiente apartados:

Apartado

Instrucciones booleanas

Instrucciones ST

Bloques de función LD e IL

Bloques de función ST

Estructuras de control ST

Aritmética entera (longitud simple y doble)

Aritmética en flotantes

Conversiones numéricas

Tablas de bits

Instrucciones sobre tablas

Instrucciones sobre tablas de flotantes

Instrucciones "Orphée"

Intercambios explícitos

Instrucciones de gestión del tiempo

Instrucciones de temporización

Instrucciones de archivado de datos

Instrucciones de cadenas de caracteres

Multitarea y sucesos

Comunicación

49

50

51

52

46

47

48

43

44

45

Página

32

35

36

40

41

42

37

38

39

35013159.01 07/2008

31

Ayuda-memoria

Instrucciones booleanas

32

35013159.01 07/2008

Ayuda-memoria

Memoria de ayuda

Memoria de ayuda rápida sobre las instrucciones booleanas

Instrucciones booleanas

Inicio de acumulador o red

LD IL

LD TRUE

Prueba (lectura) directa, inversa, flanco ascendente, flanco descendente

Y lógica

P N

LD, LDN

LDF, LDR

P

P

N

N

AND ANDN ANDR ANDF

AND( AND(N AND(R AND(F

Inversión -

O lógica exclusivo

(directo, inverso, flanco ascendente, flanco descendente)

-

Escritura (directa, inversa)

Puesta a 1

Puesta a 0

Bloque de operación

(contenido: véanse las páginas siguientes)

Bloque de comparación horizontal

(contenido: véanse las páginas siguientes)

S acción

OPERATE

COMPARE comparación

R

N

XOR XORN

XORR XORF

ST

STN

S

R

[acción]

LD [comparación]

AND [comparación]

AND( [comparación]

OR [comparación]

OR( [comparación]

XOR [comparación]

35013159.01 07/2008

33

Ayuda-memoria

Instrucciones booleanas

Bloque de comparación vertical

LD

MemoryPusH

MemoryReaD

MemoryPOP

COMPARE

EN

>

=

<

<>

IL

-

MPS

MRD

MPP

34

35013159.01 07/2008

Instrucciones ST

Ayuda-memoria Ayuda-memoria rápida de las instrucciones ST

Instrucciones ST

Asignación

O booleano

Y booleano

:=

OR

Puesta a 1, puesta a 0

AND

O exclusivo booleano

Inversión

XOR

NOT

Flanco ascendente, descendente RE, FE

SET, RESET

Ayuda-memoria

35013159.01 07/2008

35

Ayuda-memoria

Bloques de función LD e IL

Ayuda-memoria

Bloques de función

Temporizadores IEC

Ayuda-memoria rápida de los bloques de función LD e IL

LD

%TMi

IN Q

IL

IN

Estructura BLK..END_BLK

Temporizador PL-3 -

E

%Ti

C

D

R

Contador-descontador

R

%Ci

S

E

D

F CU

CD

R

S

CU

CD

Estructura BLK..END_BLK

Monoestable

S

%MNi

R

S

Estructura BLK..END_BLK

Registro

Programador cíclico

R

%Ri

I

O

F

E

R

%DRi

U

F

R

I

O

STN

Estructura BLK..END_BLK

R

U

Estructura BLK..END_BLK

36

35013159.01 07/2008

Bloques de función ST

Ayuda-memoria Ayuda-memoria rápida de los bloques de función ST

Bloques de función

Temporizador IEC

Temporizador PL-3

Contador-descontador

Monoestable

Registro

Programador cíclico

ST

START%TMi

DOWN%TMi

PRESET%Ti

START%Ti

STOP%Ti

RESET%Ci

PRESET%Ci

UP%Ci,DOWN%Ci

START%MNi

RESET%Ri

PUT%Ri

GET%Ri

RESET%DRi

UP%DRi

Ayuda-memoria

35013159.01 07/2008

37

Ayuda-memoria

Estructuras de control ST

Ayuda-memoria Ayuda-memoria rápida sobre las estructuras de control ST

Estructuras de control

Acción condicional

Acción iterativa condicional

Acción iterativa condicional

Acción repetitiva

Instrucción de salida de bucle

ST

IF...THEN...ELSIF...THEN..ELSE...END_IF;

WHILE...DO...END_WHILE;

REPEAT...UNTIL...END_REPEAT;

FOR...DO...END_FOR;

EXIT

38

35013159.01 07/2008

Aritmética entera (longitud simple y doble)

Ayuda-memoria Ayuda-memoria rápida de las instrucciones aritméticas enteras

Aritmética entera (longitud simple y doble)

Transferencia o inicialización

Comparaciones

Suma, resta, multiplicación, división, resto de la división

Y, O, O exclusivo, complemento

Valor absoluto, raíz cuadrada

Incremento

Decremento

Desplazamiento a la izquierda

Desplazamiento a la derecha

Desplazamiento circular a la izquierda

Desplazamiento circular a la derecha

LD/IL/ST

:=

= <> <= < > >=

+ - * / REM

AND OR XOR NOT

ABS, SQRT

INC

DEC

SHL

SHR

ROL

ROR

Ayuda-memoria

35013159.01 07/2008

39

Ayuda-memoria

Aritmética en flotantes

Ayuda-memoria Ayuda-memoria rápida de las instrucciones aritméticas en flotantes

Aritmética en flotantes

Transferencia o inicialización

Comparaciones

Suma, resta, multiplicación, división, parte entera

Valor absoluto, raíz cuadrada

Logaritmo, exponenciales

Seno, coseno, tangente

Arco seno, arco coseno, arco tangente

Conversión grados <--> radianes

LD/IL/ST

:=

= <> <= < > >=

+ - * / TRUNC

ABS, SQRT

LOG, LN, EXPT, EXP

SIN, COS, TAN

ASIN, ACOS, ATAN

DEG_TO_RAD, RAD_TO_DEG

40

35013159.01 07/2008

Ayuda-memoria

Conversiones numéricas

Ayuda-memoria Ayuda-memoria rápida de las instrucciones de conversiones numéricas

Conversiones numéricas

Conversión BCD en entero de longitud simple

Conversión GRAY en entero de longitud simple

Conversión de entero de longitud simple en BCD

Conversión de entero de longitud simple en flotante

Conversión de entero de longitud doble en flotante

Conversión de flotante en entero de longitud simple

Conversión de flotante en entero de longitud doble

Conversión BCD de 32 bits en entero de 32 bits

Conversión de entero de 32 bits en BCD de 32 bits

Conversión BCD de 32 bits en entero de 16 bits

Conversión de entero de 16 bits en BCD de 32 bits

Extracción de una palabra de peso menos significativo de una palabra doble

Extracción de una palabra de peso más significativo de una palabra doble

Concatenación de 2 palabras simples

LD/IL/ST

BCD_TO_INT

GRAY_TO_INT

INT_TO_BCD

INT_TO_REAL

DINT_TO_REAL

REAL_TO_INT

REAL_TO_DINT

DBCD_TO_DINT

DINT_TO_DBCD

DBCD_TO_INT

INT_TO_DBCD

LW

HW

CONCATW

35013159.01 07/2008

41

Ayuda-memoria

Tablas de bits

Ayuda-memoria Ayuda-memoria rápida de las instrucciones de tablas de bits

Tablas de bits

Transferencia o inicialización

Copia de una tabla de bits a una tabla de bits

Y entre dos tablas

O entre dos tablas

O exclusivo entre dos tablas

Negación en una tabla

Copia de una tabla de bits a una tabla de palabras

Copia de una tabla de bits a una tabla de palabras dobles

Copia de una tabla de palabras en una tabla de bits

Copia de una tabla de palabras dobles en una tabla de bits

Cálculo de la longitud de una tabla

LD/IL/ST

:=

COPY_BIT

AND_ARX

OR_ARX

XOR_ARX

NOT_ARX

BIT_W

BIT_D

W_BIT

D_BIT

LENGTH_ARX

42

35013159.01 07/2008

Ayuda-memoria

Instrucciones sobre tablas

Ayuda-memoria Ayuda-memoria rápida de las instrucciones sobre tablas

Instrucciones sobre tablas

Transferencia o inicialización

Operaciones aritméticas entre tablas

Operaciones lógicas entre tablas

Operaciones aritméticas entre una tabla y un entero

Operaciones lógicas entre una tabla y un entero

Complemento de los elementos de una tabla

Suma de todos los elementos de una tabla

Comparación de dos tablas

Búsqueda del 1er elemento de una tabla igual a un valor

Búsqueda del 1er elemento de una tabla igual a un valor desde un rango

Búsqueda del 1er elemento de una tabla superior a un valor

Búsqueda del 1er elemento de una tabla inferior a un valor

Búsqueda del valor más alto en una tabla

Búsqueda del valor más pequeño en una tabla

Número de ocurrencias de un valor en una tabla

Desplazamiento circular a la izquierda de una tabla

Desplazamiento circular a la derecha de una tabla

Clasificación de una tabla (ascendente o descendente)

Cálculo de la longitud de una tabla

LD/IL/ST

:=

+ - * / REM

AND OR XOR

+ - * / REM

AND OR XOR

NOT

SUM

EQUAL

FIND_EQW, FIND_EQD

FIND_EQWP, FIND_EQDP

FIND_GTW, FIND_GTD

FIND_LTW, FIND_LTD

MAX_ARW, MAX_ARD

MIN_ARW, MIN_ARD

OCCUR_ARW, OCCUR_ARD

ROL_ARW, ROL_ARD

ROR_ARW, ROL_ARW

SORT_ARW, SORT_ARD

LENGTH_ARW, LENGTH_ARD

35013159.01 07/2008

43

Ayuda-memoria

Instrucciones sobre tablas de flotantes

Ayuda-memoria Ayuda-memoria rápida de las instrucciones de tablas de flotantes

Instrucciones sobre tablas de flotantes

Transferencia e inicialización

Suma de todos los elementos de una tabla

Comparación de dos tablas

Búsqueda del 1er elemento de una tabla igual a un valor

Búsqueda del 1er elemento de una tabla superior a un valor

Búsqueda del 1er elemento de una tabla inferior a un valor

Búsqueda del valor más alto en una tabla

Búsqueda del valor más pequeño en una tabla

Número de ocurrencias de un valor en una tabla

Desplazamiento circular a la izquierda de una tabla

Desplazamiento circular a la derecha de una tabla

Clasificación de una tabla (ascendente o descendente)

Cálculo de la longitud de una tabla

LD/IL/ST

:=

SUM_ARR

EQUAL_ARR

FIND_EQR

FIND_GTR

FIND_LTR

MAX_ARR

MIN_ARR

OCCUR_ARR

ROL_ARR

ROR_ARR

SORT_ARR

LENGHT_ARR

44

35013159.01 07/2008

Ayuda-memoria

Instrucciones "Orphée"

Ayuda-memoria Ayuda-memoria rápida de las instrucciones "Orphée"

Instrucciones "Orphée"

Desplazamiento a la izquierda en una palabra con recuperación de los bits desplazados

Desplazamiento hacia la derecha en una palabra con extensión de signo y recuperación de los bits desplazados

Desplazamiento hacia la derecha en una palabra con relleno mediante 0 y recuperación de los bits desplazados

Contaje/descontaje con señalización de rebasamiento

Desplazamiento circular izquierdo

Desplazamiento circular derecho

LD/IL/ST

WSHL_RBIT, DSHL_RBIT

WSHR_RBIT, DSHR_RBIT

WSHRZ_C, DSHRZ_C

SCOUNT

ROLW, ROLD

RORW, RORD

35013159.01 07/2008

45

Ayuda-memoria

Intercambios explícitos

Ayuda-memoria Ayuda-memoria rápida de los intercambios explícitos

Intercambios explícitos

Lectura de los parámetros %M de una vía lógica

Lectura de los %M de estado de una vía lógica

Restitución de los parámetros %M de una vía lógica

Guardado de los parámetros %M de una vía lógica

Escritura de los %M de comando de una vía lógica

Escritura de los parámetros %M de una vía lógica

LD/IL/ST

READ_PARAM

READ_STS

RESTORE_PARAM

SAVE_PARAM

WRITE_CMD

WRITE_PARAM

46

35013159.01 07/2008

Ayuda-memoria

Instrucciones de gestión del tiempo

Ayuda-memoria Ayuda-memoria rápida de las instrucciones de gestión del tiempo

Instrucciones de gestión del tiempo

Reloj-calendario

Comparaciones

Transferencia

Lectura de la fecha y del código de la última parada del autómata

Lectura de la fecha del sistema

Actualización de la fecha del sistema

Suma de una duración a una fecha completa

Suma de una duración a una hora del día

Conversión de una fecha en cadena

Día de la semana

Diferencia entre dos fechas

Diferencia entre dos fechas completas

Diferencia entre dos horas del día

Conversión de una fecha completa en cadena

Resta de una duración a una fecha completa

Resta de una duración a una hora del día

Conversión de una duración en cadena

Conversión de una hora del día en cadena

Puesta de una duración en formato horas-mn-seg

LD/IL/ST

SCHEDULE

= <> <= < > >=

:=

PTC

RRTC

WRTC

ADD_DT

ADD_TOD

DATE_TO_STRING

DAY_OF_WEEK

DELTA_D

DELTA_DT

DELTA_TOD

DT_TO_STRING

SUB_DT

SUB_TOD

TIME_TO_STRING

TOD_TO_STRING

TRANS_TIME

35013159.01 07/2008

47

Ayuda-memoria

Instrucciones de temporización

Ayuda-memoria Ayuda-memoria rápida de las instrucciones de temporización

Instrucciones de temporización

Temporización en la desconexión

Temporización en la desconexión

Temporización de impulso

Generador de señales rectangulares

LD/IL/ST

FTON

FTOF

FTP

FPULSOR

48

35013159.01 07/2008

Ayuda-memoria

Instrucciones de archivado de datos

Ayuda-memoria Ayuda-memoria rápida de las instrucciones de archivado de datos

Instrucciones de archivado de datos

Inicialización de zona de archivado en tarjeta PCMCIA

Escritura de datos en tarjeta PCMCIA

Lectura de datos en tarjeta PCMCIA

Inicialización de zona de archivado en tarjeta DATA Archiving

Escritura de datos en tarjeta DATA Archiving

Lectura de datos en tarjeta DATA Archiving

LD/IL/ST

SET_PCMCIA

WRITE_PCMCIA

READ_PCMCIA

SET_PCM_EXT

WRITE_PCM_EXT

READ_PCM_EXT

35013159.01 07/2008

49

Ayuda-memoria

Instrucciones de cadenas de caracteres

Ayuda-memoria Ayuda-memoria rápida de las instrucciones de cadenas de caracteres

Instrucciones de cadenas de caracteres

Comparaciones

Transferencia

Conversión de un entero doble en cadena

Conversión de un entero simple en cadena

Conversión de una cadena en entero doble

Conversión de una cadena en entero simple

Conversión de una cadena en flotante

Conversión de un flotante en cadena

Concatenación de dos cadenas

Eliminación de una subcadena

Búsqueda del primer carácter diferente

Búsqueda de una subcadena

Inserción de una subcadena

Extracción de la parte izquierda de una cadena

Longitud de una cadena

Extracción de una subcadena

Sustitución de una subcadena

Extracción de la parte derecha de una cadena

LD/IL/ST

= <> <= < > >=

:=

DINT_TO_STRING

INT_TO_STRING

STRING_TO_DINT

STRING_TO_INT

STRING_TO_REAL

REAL_TO_STRING

CONCAT

DELETE

EQUAL_STR

FIND

INSERT

LEFT

LEN

MID

REPLACE

RIGHT

50

35013159.01 07/2008

Ayuda-memoria

Multitarea y sucesos

Ayuda-memoria Ayuda-memoria rápida de las instrucciones de multitarea y sucesos

Multitarea y sucesos

Activación / desactivación de una tarea

Ajustar el tiempo de ciclo de una tarea

Enmascaramiento global de sucesos

Desenmascaramiento global de sucesos

LD/IL/ST posicionamiento %Si posicionamiento %SWi

MASKEVT

UNMASKEVT

35013159.01 07/2008

51

Ayuda-memoria

Comunicación

Ayuda-memoria Ayuda-memoria rápida de las instrucciones de comunicación

Comunicación

Petición de parada de una función en curso

Emisión o recepción de datos

Petición de lectura de una cadena de caracteres

Emisión y/o petición de recepción de una cadena de caracteres

Emisión de una cadena de caracteres

Recepción de un telegrama

Lectura de objetos de lenguaje de base

Emisión/recepción de peticiones UNI-TE

Emisión de un telegrama

Escritura de objetos de lenguaje de base

Desplazamiento de un byte a la derecha en una tabla

Permuta de bytes en una tabla de palabras

Lectura de datos comunes Modbus+

Escritura de datos comunes Modbus+

Gestión de la conexión de la tarjeta de módem

Servidor inmediato

Escritura 1 K mensajería

Lectura 1 K mensajería

LD/IL/ST

CANCEL

DATA_EXCH

INPUT_CHAR

OUT_IN_CHAR

PRINT_CHAR

RCV_TLG

READ_VAR

SEND_REQ

SEND_TLG

WRITE_VAR

ROR1_ARB

SWAP

READ_GDATA

WRITE_GDATA

CALL_MODEM

SERVER

WRITE_ASYN

READ_ASYN

52

35013159.01 07/2008

Palabras reservadas

3

Palabras reservadas

Lista de palabras reservadas

Las palabras reservadas que se indican a continuación no deben utilizarse como símbolos.

Palabras de la

A a la C

A

ABS

ACCEPT

ACOS

ACTION

ACTIVATE_PULSE

ACTIVE_TIME

ADD

ADDRESS

ADD_DT

ADD_TOD

ADR

AND

ANDF

ANDN

ANDR

AND_ARX

ANY

ANY_BIT

ANY_DATE

ANY_INT

Lista de palabras reservadas

ANY_REAL

ARRAY

AR_D

AR_DINT

AR_F

AR_INT

AR_R

AR_W

AR_X

ASIN

ASK

ASK_MSG

ASK_VALUE

ASSIGN_KEYS

AT

ATAN

AUX

B

BCD_TO_INT

BIT_D

BIT_W

BLOCK

BODY

BOOL

BOTTOM

BTI

BTR

BY

BYTE

C

CAL

CALC

CALCN

CALL

CALL_COIL

CANCEL

CASE

CD

CHART

CH_M

CLK

CLOSE

COIL

COMMAND

COMMENTS

COMP4

COMPCH

CONCAT

CONCATW

CONF

CONFIGURATION

CONSTANT

CONTROL_LEDS

COPY_BIT

COS

CTD

CTU

CTUD

CU

CLOSED_CONTACT

BLK

ANY_NUM

53

35013159.01 07/2008

Palabras reservadas

Palabras de la

D a la E

D

DATE

DATE_AND_TIME

DAT_FMT

DAY_OF_WEEK

DA_TYPE

DEACTIVATE_PULSE

DEC

DELETE

DELTA_D

DELTA_DT

DELTA_TOD

DINT

DINT_TO_REAL

DINT_TO_STRING

DISPLAY_ALRM

DISPLAY_GRP

DISPLAY_MSG

DIV

DMOVE

Lista de palabras reservadas

DO

DOWN

DR

DRUM

DS

DSHL_RBIT

DSHRZ_C

DSHR_RBIT

DSORT_ARD

DSORT_ARW

DT

DTS

DWORD

D_BIT

E

EBOOL

ELSE

ELSIF

EMPTY

EMPTY_LINE

END

ENDC

ENDCN

END_ACTION

END_BLK

END_BLOCK

END_CASE

END_COMMENTS

END_CONFIGURATION

END_FOR

END_FUNCTION

END_FUNCTION_BLOCK

END_IF

END_MACRO_STEP

END_PAGE

END_PHRASE

END_PROG

END_PROGRAM

END_REPEAT

END_RESOURCE

END_RUNG

END_STEP

END_STRUCT

END_TRANSITION

END_TYPE

END_VAR

END_WHILE

EQ

EQUAL

EQUAL_ARR

ERR

EVT

EXCHG

EXCH_DATA

EXIT

EXP

EXPT

54

35013159.01 07/2008

Palabras de la

F a la J

F

FALSE

FAST

FBD

FE

FIFO

FIND

FIND_EQ

FIND_EQD

FIND_EQDP

FIND_EQR

FIND_EQW

FIND_EQWP

FIND_GTD

FIND_GTR

FIND_GTW

FIND_LTD

FIND_LTR

FIND_LTW

Lista de palabras reservadas

FOR

FPULSOR

FROM

FTOF

FTON

FTP

FUNC

FUNCTION

FUNCTION_BLOCK

F_B

F_EDGE

F_TRIG

G

GE

GET

GET_MSG

GET_VALUE

GLOBAL_COMMENT

GR7

GRAY_TO_INT

GT

GTI

H

HALT

HALT_COIL

HASH_COIL

I

IF

IL

HW

H_COMPARE

H_LINK

IN

INC

INCJUMP

INDEX_CH

INFO

INITIAL_STEP

Palabras de

L a la M

L

LAD

LANGAGE

LANGUAGE

LD

LDF

LDN

LDR

LE

LEFT

LEN

LENGTH_ARD

LENGTH_ARR

LENGTH_ARW

LENGTH_ARX

Lista de palabras reservadas

LIFO

LIMIT

LINT

LIST

LIT

LN

LOCATION

LOG

LREAL

LT

LW

LWORD

M

MACRO_STEP

MAIN

MASKEVT

MAST

MAX

MAX_ARD

MAX_ARR

MAX_ARW

MAX_PAGES

MAX_STEP

MCR

MCR_COIL

MCS

MCS_COIL

MID

MIN

MIN_ARD

MIN_ARR

MIN_ARW

MN

MOD

MONO

MOVE

MPP

MPS

MRD

MS

MUL

MUX

M_CH

M_MACRO_STEP

Palabras reservadas

INIT_BUTTONS

INPUT

INPUT_CHAR

INSERT

INT

INTERVAL

INT_TO_BCD

INT_TO_REAL

INT_TO_STRING

ITB

ITS

J

JMP

JMPC

JMPCN

JUMP

JUMP_COIL

35013159.01 07/2008

55

Palabras reservadas

Palabras de la

N a la P

Lista de palabras reservadas

N

N1

NAME

NB_ACTIVE_STEPS

NB_ACTIVE_TIME

NB_BLOCKS

NB_COMMON_WORDS

NB_CONSTANT_WORDS

NB_CPT

NB_DRUM

NB_INTERNAL_BITS

NB_INTERNAL_WORDS

NB_MACRO_STEPS

NB_MONO

NB_PAGES

NB_REG

NB_TIMER

NB_TM

NB_TRANSITIONS

NE

NIL

NO

NON_STORED

NOP

NOT

NOT_ARX

NOT_COIL

NOT_READABLE

NO_GR7

NO_PERIOD

N_CONTACT

O

OCCUR

OCCUR_ARD

OCCUR_ARR

OCCUR_ARW

OF

ON

OPEN

OPEN_CONTACT

OPERATE

OR

ORF

ORN

ORR

OR_ARX

OTHERS

OUT

OUTIN_CHAR

OUTPUT

OUT_BLK

P

P0

P1

PAGE

PAGE_COMMENT

PANEL_CMD

PERIOD

PHRASE

PHRASE_COMMENT

PID

PID_MMI

PLC

POST

PRESET

PRINT

PRINT_CHAR

PRIO0

PRIO1

PRIORITY

PRL

PROG

PROGRAM

PROG_LANGAGE

PROG_LANGUAGE

PT

PTC

PUT

PV

PWM

P_CONTACT

Palabras de la

Q a la R

Q

QUERY

R

R1

RCV_TLG

RE

READ

READ_EVT_UTW

READ_ONLY

READ_PARAM

READ_STS

READ_VAR

READ_WRITE

REAL

REAL_TO_DINT

Lista de palabras reservadas

REAL_TO_INT

REAL_TO_STRING

REG

REM

REPEAT

REPLACE

REQ

RESET

RESET_COIL

RESOURCE

RESTORE_PARAM

RET

RETAIN

RETC

RETCN

RETURN

RET_COIL

RIGHT

ROL

ROLD

ROLW

ROL_ARD

ROL_ARR

ROL_ARW

ROL_DWORD

ROL_WORD

ROR

RORD

RORW

ROR_ARD

ROR_ARR

ROR_ARW

ROR_DWORD

ROR_WORD

RRTC

RS

RTB

RTC

RTS

RUNG

R_EDGE

R_TRIG

56

35013159.01 07/2008

Palabras reservadas

Palabras con S

S

S1

SAVE

SAVE_PARAM

SCHEDULE

SD

SEARCH

SECTION

SEL

SEMA

SEND

SENDER

SEND_ALARM

SEND_MBX_ALARM

SEND_MBX_MSG

SEND_MSG

Lista de palabras reservadas

SEND_REQ

SEND_TLG

SERVO

SET

SET_COIL

SFC

SHIFT

SHL

SHOW_ALARM

SHOW_MSG

SHOW_PAGE

SHR

SHRZ

SIN

SINGLE

SINT

SL

SLCWORD

SMOVE

SOFT_CONFIGURATION

SORT

SORT_ARD

SORT_ARR

SORT_ARW

SQRT

SR

ST

STANDARD

START

STD

STEP

STI

STN

STOP

STR

STRING

STRING_TO_DINT

STRING_TO_INT

STRING_TO_REAL

STRUCT

SUB

SUB_DT

SUB_TOD

SUM

SU_TYPE

SWAP

S_T_AND_LINK

S_T_OR_LINK

Palabras de la

T a la W

T

TAN

TASK

TASKS

THEN

TIME

TIMER

TIME_OF_DAY

TM

TMAX

TMOVE

TO

TOD

TOF

TOFF

TON

Lista de palabras reservadas

TOP

TP

TRANSITION

TRANS_TIME

TRUE

TRUNC

TYPE

TYPES

T_S_AND_LINK

T_S_OR_LINK

U

UDINT

UINT

ULINT

UNMASKEVT

UNTIL

UP

USINT

USORT_ARD

USORT_ARW

UTIN_CHAR

V

VAR

VAR_ACCESS

VAR_EXTERNAL

VAR_GLOBAL

VAR_INPUT

VAR_IN_OUT

VAR_OUTPUT

VAR_PUBLIC

VERSION

V_COMPARE

V_LINK

W

WHILE

WITH

WORD

WRITE

WRITE_CMD

WRITE_PARAM

WRITE_VAR

WRTC

WSHL_RBIT

WSHRZ_C

WSHR_RBIT

W_BIT

35013159.01 07/2008

57

Palabras reservadas

Palabras con

X, Y y otras

Lista de palabras reservadas

X

XM

XM_MONO

XM_MULTI

XOR

XORF

XORN

XORR

XOR_ARX

Y

YES

*_TO_* * = Letra

SRi

AUXi

EVTi

XMi

i = entero

58

35013159.01 07/2008

Conformidad con la norma

CEI 1131-3

4

Presentación

Contenido

Contenido

En este capítulo se describe la conformidad con la norma CEI 1131-3: "Autómatas

Programables"

Este capítulo contiene los siguiente apartados:

Apartado

Conformidad con la norma CEI 1131-3

Elementos comunes

Elementos de lenguaje IL

Elementos de lenguaje ST

Elementos gráficos comunes

Elementos de lenguaje LD

Parámetros que dependen de la implementación

Situaciones de error

Página

60

61

67

68

70

71

72

76

59

35013159.01 07/2008

Conformidad con CEI 1131-3

Conformidad con la norma CEI 1131-3

Presentación de la norma

CEI 1131-3

La norma CEI 1131-3 «Autómatas programables - Parte 3: lenguajes de programación» especifica la sintaxis y la semántica de los elementos de programa establecidos para programar autómatas.

Esta norma describe 2 lenguajes textuales, IL (Instruction List) y ST (Structured

Text), 2 lenguajes gráficos, LD (Ladder Diagram) y FBD (Function Block Diagram), y un formalismo gráfico, SFC (Sequential Function Chart), que permite estructurar la organización interna de una secuencia programada.

La aplicación de programación PL7 permite programar un autómata programable conforme a la norma CEI: PL7 implementa un subconjunto de elementos de lenguaje definidos en la norma y determina las extensiones permitidas en el marco de esta norma.

La norma CEI 1131-3 no define las reglas de interactividad del programa suministrado por un fabricante que se define conforme a la norma, lo que permite una gran flexibilidad para la presentación e introducción de los elementos de programación con el fin de hacer la tarea más cómoda para el usuario.

Los elementos de la norma aplicados en PL7 , la información específica de implementación y los casos de detección de errores se sintetizan en tablas de conformidad.

60

35013159.01 07/2008

Conformidad con CEI 1131-3

Elementos comunes

Generalidades Descripción de las características comunes a los lenguajes conformes a la

CEI 1131-3

En la siguiente tabla se enumeran, respecto a las tablas de características descritas en la norma IEC 1131-3, las implementaciones realizadas en los lenguajes PL7.

Todo ello respecto a las características comunes a todos los lenguajes PL7.

35013159.01 07/2008

61

Conformidad con CEI 1131-3

Tabla de características

Características comunes a todos los lenguajes:

10

10

10

10

10

6

7

10

10

6

6

6

6

6

6

4

5

4

4

4

4

4

4

2

3

1

2

1

1

1

1

Tabla nº Característica nº

1 1

2

3a

4a

5a

6a

1

2

1

1

2

3

4

6

7

12

13

14

15

16

8

1a

1

10

6

7

4

5

2

3

8

1

Descripción de las características

Juego de caracteres necesario (véase el apartado 2.1.1 de 1131-3)

Caracteres en minúsculas

Signo del número (#)

Signo del dólar ($)

Barra vertical (|)

Delimitadores de índices: Corchetes izquierdo y derecho "[ ]"

Mayúsculas y números

Mayúsculas, minúsculas, números, caracteres de guión bajo integrados

Comentarios

Literales enteros (nota 1)

Literales reales (nota 1)

Literales reales con exponentes

Literales en base 2 (nota 1)

Literales en base 16 (nota 1)

Booleanos cero y uno

Booleanos TRUE y FALSE

Características de los literales de cadenas de caracteres

$$ Signo del dólar

$’ Apóstrofe

$L o $l Cambio de línea

$N o $n Línea nueva

$P o $p Cambio de página

$R o $r Retorno de cursor

$T o $t Tabulación

Literales de duración con prefijo corto t# (nota 2)

BOOL -1 bit-

REAL -32 bits-

TIME -32 bits- (nota 3)

DATE -32 bits- (nota 3)

TIME_OF_DAY -32 bits- (nota 3)

DATE_AND_TIME -64 bits- (nota 3)

STRING

62

35013159.01 07/2008

Conformidad con CEI 1131-3

18

18

18

21

21

22

22

23

23

17

17

15

15

15

15

15

15

15

15

16

Tabla nº Característica nº

10

10

10

17

18

19

17

1

2

3

4

5

6

7

8

VAR

VAR_INPUT

VAR_OUTPUT

VAR_IN_OUT

VAR_EXTERNAL

VAR_GLOBAL

CONSTANT

AT

2

Descripción de las características

BYTE -8 bits-

WORD -16 bits-

DWORD -32 bits-

Prefijo I para Input

Prefijo Q para Output

Prefijo M para Memory

Prefijo X, tamaño de un bit

Ningún prefijo, tamaño de un bit

Prefijo B, tamaño de un byte (8 bits)

Prefijo W, tamaño de una palabra (16 bits)

Prefijo D, tamaño de una palabra doble (32 bits)

Palabras clave (nota 4)

3

5

2

3

5

1

4

1

2

3

2

Declaración de variables no volátiles directamente representadas (variables) (nota

4)

Declaración de emplazamientos de variables simbólicas (símbolos o variables)

(nota 4)

Asignación automática en la memoria de variables simbólicas (variables de bloques de función) (nota 4)

Inicialización de variables no volátiles directamente representadas (variables)

(nota 4)

Asignación de emplazamientos y valores iniciales de variables simbólicas

(símbolos en variables) (nota 4)

Inicialización de variables simbólicas (variables de bloques de función) (nota 4)

A continuación se indican las funciones sobrecargadas de PL7:

ABS, EQUAL, ROL, ROR, SHL, SHR, SQRT, SUM

Por lo general, las funciones de PL7 pertenecen a esta categoría.

Función de conversión BCD_TO_INT (nota 6)

Función de conversión INT_TO_BCD (nota 6)

Función ABS: valor absoluto

Función SQRT: raíz cuadrada

35013159.01 07/2008

63

Conformidad con CEI 1131-3

33

33

37

37

37

38

29

29

29

29

29

29

29

32

25

29

29

25

25

25

23

23

23

23

23

23

Tabla nº Característica nº

23

23

23

3

4

5

6

7

8

9

10

11

33

6

7

8

3

4

5

4

1

2

1

2

3

9

Inputread

Inputwrite

Outputread

Outputwrite

1

2

4a

1

2a

3a esquemas temporales

Descripción de las características

Función LN: logaritmo neperiano

Función LOG: logaritmo en base 10

Función EXP: exponencial natural

Función SIN: seno en radianes

Función COS: coseno en radianes

Función TAN: tangente en radianes

Función ASIN: arco seno

Función ACOS: arco coseno

Función ATAN: arco tangente

Función SHL: desplazamiento a la izquierda

Función SHR: desplazamiento a la derecha

Función ROR: rotación a la derecha

Función ROL: rotación a la izquierda

Función LEN: longitud de cadena

Función LEFT: n caracteres situados más a la izquierda

Función RIGHT: n caracteres situados más a la derecha

Función MID: n caracteres a partir de una posición determinada

Función CONCAT: concatenación de cadenas (nota 7)

Función INSERT: insertar una cadena en otra

Función DELETE: eliminar caracteres

Función REPLACE: sustituir otros caracteres

Función FIND: buscar una cadena en otra

(nota 8)

Calificativo RETAIN para las variables internas de los bloques de función.) (nota

9) (nota 4)

Calificativo RETAIN para las salidas de los bloques de función (nota 9) (nota 4)

Declaración de entradas/salidas de bloques de función (literal). (nota 4)

Temporizador de impulso: TP (nota 10)

Temporizador en la conexión: TON (nota 10)

Temporizador en la desconexión: TOF (nota 10)

TP, TON, TOF

64

35013159.01 07/2008

Conformidad con CEI 1131-3

49

49

49

49

50

46

46

46

46

46

48

3

4

5c

6c

7

6a

7

5b

43

44

45

46

40

41

42

3

5a

45

45

45

46

46

40

41

41

42

43

Tabla nº Característica nº

39

40

19

1

1

2

2

11

2

2l

2

1

12

1

2c

Descripción de las características

Utilización de variables representadas directamente (variables)

Etapa, forma gráfica

Nota: un número de etapa sustituye a un identificador de etapa.

Etapa, forma textual utilizada en la forma fuente del Grafcet únicamente.

Condición de transición en lenguaje ST

Condición de transición en lenguaje LD

Declaración de las acciones en lenguaje LD

Bloque de acción

Bloques de acción concatenados

Calificativo de acción N (sin almacenar)

Calificativo de acción P1 (Pulse rising edge)

Calificativo de acción P0 (Pulse falling edge)

Secuencia simple, alternancia etapa/transición

Divergencia de "o": el usuario debe asegurarse de que todas las condiciones de las transiciones se excluyen mutuamente

Convergencia de "o":

Divergencia de "y", convergencia de "y"

Salto de secuencia en una divergencia de "o"

Bucle de secuencia: retorno a una etapa anterior

Flechas de dirección

Nota: las flechas de dirección son ascendentes y descendentes

El lenguaje Grafcet reúne las condiciones para contar con el nivel mínimo de conformidad con SFC 1131-3

Representación gráfica

Construcción RESOURCE...ON...END_RESOURCE

Construcción TASK periódica en RESOURCE

Declaración PROGRAM con asociación PROGRAM-to-TASK

Declaración de variables directamente representadas en VAR_GLOBAL

Orden preventivo en el modelo multitarea

35013159.01 07/2008

65

Conformidad con CEI 1131-3

66 z z z z

Nota: z Nota 1: Los guiones bajos (_) insertados entre las cifras de un literal numérico z no se admiten.

Nota 2: Estos literales sólo son visibles en la aplicación fuente, para expresar z el tiempo de las tareas configuradas.

Nota 3: Este tipo de datos aún no está implantado de forma visible para el usuario. La tabla indica no obstante la ocupación de memoria de su representación interna.

z z

Nota 4: Estas palabras clave sólo se utilizan en las fuentes generadas por PL7 y por las herramientas de conversión de aplicaciones PL7-2 y PL7-3.

Nota 5: Efectos de conversión con los límites:

DINT_TO_STRING: si la cadena que recibe el resultado es inferior a 13 caracteres, se trunca y se coloca %S15.

INT_TO_STRING: si la cadena que recibe el resultado es inferior a 7 caracteres, se trunca y se coloca %S15.

STRING_TO_DINT y STRING_TO_INT: si la cadena no se puede convertir en entero, el resultado es indeterminado y se coloca %S18.

DATE_TO_STRING: si la cadena que recibe el resultado es inferior a 11 caracteres, se trunca y se coloca %S15.

DT_TO_STRING: si la cadena que recibe el resultado es inferior a 20 z caracteres, se trunca y se coloca %S15.

TIME_TO_STRING: si la cadena que recibe el resultado es inferior a 15 caracteres, se trunca y se coloca %S15.

TOD_TO_STRING: si la cadena que recibe el resultado es inferior a 9 caracteres, se trunca y se coloca %S15.

REAL_TO_STRING: si la cadena que recibe el resultado es inferior a 15 caracteres, se trunca y se coloca %S15.

STRING_TO_REAL: si la cadena no se puede convertir en real, el resultado es

«1.#NAN» (16#FFC0_0000) y se coloca %S18.

REAL_TO_INT: si el real no se puede convertir en los límites [-32768, +32767], el resultado es -32768 y se colocan %S18 y %SW17:X0.

REAL_TO_DINT: si el real no se puede convertir en los límites [-2147483648,

+2147483647], el resultado es -2147483648 y se colocan %S18 y %SW17:X0.

INT_TO_REAL: la conversión siempre es posible.

DINT_TO_REAL: la conversión siempre es posible.

Nota 6: Al no estar formalmente implementado el tipo INT (aunque se utiliza), estas funciones permiten cambiar el formato de codificación de WORD.

Nota 7: Limitación de la función CONCAT a la concatenación de 2 cadenas.

Nota 8: Este párrafo se aplica a los bloques de función predefinidos PL7.

Nota 9: El calificativo RETAIN es implícito.

Nota 10: Los temporizadores TP, TON y TOF respetan los diagramas temporales de la tabla 38, pero presentan una interfaz de E/S diferente de

1131-3.

35013159.01 07/2008

Conformidad con CEI 1131-3

Elementos de lenguaje IL

Generalidades Descripción de las características de los elementos de lenguaje IL conformes a la norma CEI 1131-3

En la siguiente tabla se enumeran, respecto a las tablas de características descritas en la norma IEC 1131-3, las implementaciones realizadas en los lenguajes PL7.

Tabla de características

Tabla nº

51

54

54

54

52

52

52

52

52

52

52

53

11

12

13

Características de los elementos de lenguaje IL:

2

3

4

5

6

18

20

21

3

Característica nº

Campos de instrucción

1

Descripción de las características

Etiqueta, operador, operando, comentario

LD

ST

S y R

AND

OR

XOR

JMP

RET

)

Utilización de operadores de entrada para lanzar bloques de función en lenguaje IL

IN (véase la nota)

IN (véase la nota)

IN (véase la nota)

Nota: El operador PT no está implementado.

35013159.01 07/2008

67

Conformidad con CEI 1131-3

Elementos de lenguaje ST

Generalidades Descripción de las características de los elementos de lenguaje ST conformes a la norma CEI 1131-3

En la siguiente tabla se enumeran, respecto a las tablas de características descritas en la norma IEC 1131-3, las implementaciones realizadas en los lenguajes PL7.

Este lenguaje se utiliza íntegramente en los módulos ST. También se utiliza un subconjunto ST en los bloques OPERATION y COMPARAISON de los lenguajes IL y LD.

68

35013159.01 07/2008

Conformidad con CEI 1131-3

55

55

55

56

56

55

55

55

55

56

56

56

56

56

Tabla de características

55

55

55

Tabla nº

55

55

55

Características de los elementos de lenguaje ST:

1

3

16

17

11

12

13

15

7

8

4

6

9

4

5

6

7

9

10

2

3

Característica nº

1

Descripción de las características

Escritura entre paréntesis

Evaluación de función

- Negación

NOT Complemento

JMP

* Multiplicación

/ División

+ Suma

- Resta

<, >, <=, >= Comparación

= Igualdad

<> Desigualdad

AND para el "y" booleano

XOR para el "o exclusivo" booleano

OR para el "o" booleano

:= Asignación

Estructura RETURN

Estructura IF «if... then... elsif... then... else... end_if»

Estructura FOR «for... to... do... end_for» (véase la nota)

Estructura WHILE «while... do... end_while»

Estructura REPEAT «repeat ... until... end_repeat»

Estructura EXIT

Nota: Implementación del bucle FOR con un paso implícito de 1 (por 1).

35013159.01 07/2008

69

Conformidad con CEI 1131-3

Elementos gráficos comunes

Generalidades Descripción de las características de los elementos gráficos comunes conformes a la norma CEI 1131-3

En la siguiente tabla se enumeran, respecto a las tablas de características descritas en la norma IEC 1131-3, las implementaciones realizadas en los lenguajes PL7.

Tabla de características

58

58

58

57

57

58

Tabla nº

57

57

57

57

Características de los elementos gráficos comunes:

4

5

8

10

12

2

4

6

8

Característica nº

2

Descripción de las características

Líneas horizontales gráficas

Líneas verticales gráficas

Unión línea horizontal / línea vertical gráfica

Intersección gráfica de líneas sin conexión

Esquinas gráficas conectadas y sin conectar

Bloques con líneas conectadas gráficas

Salto incondicional en lenguaje LD

Salto condicional en lenguaje LD incondicional

Retorno condicional en lenguaje LD

Retorno incondicional en lenguaje LD

70

35013159.01 07/2008

Conformidad con CEI 1131-3

Elementos de lenguaje LD

Generalidades Descripción de las características de los elementos de lenguaje LD conformes a la norma CEI 1131-3

En la siguiente tabla se enumeran, respecto a las tablas de características descritas en la norma IEC 1131-3, las implementaciones realizadas en los lenguajes PL7.

Tabla de características

61

62

62

61

61

61

62

62

Tabla nº

59

59

60

60

Características de los elementos de lenguaje LD:

7

1

2

3

4

1

3

5

2

1

2

Característica nº

1

Descripción de las características

Barra de alimentación izquierda

Barra de alimentación derecha

Enlace horizontal

Enlace vertical

Contacto abierto

Contacto cerrado

Contacto de detección de transición positiva

Contacto de detección de transición negativa

Bobina

Bobina negativa

Bobina SET

Bobina RESET

35013159.01 07/2008

71

Conformidad con CEI 1131-3

Parámetros que dependen de la implementación

Generalidades Descripción de los parámetros de PL7 que dependen de la implementación efectuada

En la siguiente tabla se enumeran, respecto a las tablas de características descritas en la norma IEC 1131-3, las implementaciones realizadas en los lenguajes PL7.

72

35013159.01 07/2008

Conformidad con CEI 1131-3

Tabla de características

Características de los elementos de lenguaje IL:

Parámetros

Procedimiento de tratamiento de errores

Caracteres nacionales utilizados

Longitud máxima de los identificadores

Longitud máxima de los comentarios

Margen de los valores de duración

Margen de los valores de tipo TIME

Limitación y comportamiento de PL7

Numerosos errores se indican en la ejecución mediante posicionamiento de bits y palabras de sistema

ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÑÒÓÔ

ÕÖØÙÚÛÜàáâãäåæçèéêëìí îïñòóôõöøùúûüßÿ

#, $, |

32

222

Nota 1

Nota 1

Precisión de la representación de los segundos en los tipos TIME_OF_DAY y DATE_AND_TIME

Número máximo de índices de tabla

Nota 2

1 (Nota 3)

Tamaño máximo de las tablas

Longitud máxima por defecto de las variables STRING en función de la zona indexada (nota 3) no se aplica

Longitud máxima permitida para las variables STRING 255

Número máximo de niveles jerárquicos

Configuración lógica o física

Intervalo máximo de los valores de índices

Inicialización de las entradas del sistema

Efectos de la conversión de tipos sobre la precisión

Número máximo de tipos e instancias de bloques de función

Límite del tamaño de los programas

3

Configuración lógica en función de la zona indexada (nota 3) z z

El sistema inicializa las variables: al valor inicial especificado por el usuario, en su caso de lo contrario, a cero véase la tabla 22, característica 1

Sin número máximo (los límites están relacionados con el volumen de la aplicación)

Volumen máximo del código de un programa = 64

Kbytes

Precisión sobre el tiempo transcurrido asociado a una etapa

Número máximo de etapas por gráfico

100ms

96 en autómatas 3710

128 en autómatas 3720

1024 en autómatas 57xx V3.0

Número máximo de transiciones por gráfico y por etapa) 1024 transiciones por gráfico

11 transiciones por etapa 1

35013159.01 07/2008

73

Conformidad con CEI 1131-3

Parámetros

Mecanismo de comando de acciones

Número máximo de bloques de acción por etapa

Limitación y comportamiento de PL7

Calificativos P0, P1 y N1

Existen 3 acciones posibles: en la activación (P1), continua (N1) y en la desactivación (P0)

Etapa activa en vídeo inverso

El tiempo de alcance es variable y nunca nulo

Indicación gráfica del estado de una etapa

Tiempo de alcance de una transición (desactivación de las etapas ascendentes y activación de las etapas descendentes)

Profundidad de las construcciones divergentes y convergentes

Límite proporcionado por la rejilla de introducción

Lista de los autómatas programables por PL7

Número máximo de tareas

TSX MICRO, TSX PREMIUM

1 tarea periódica o cíclica

1 tarea periódica

8 tareas de sucesos para autómatas 37 10

16 tareas de sucesos para autómatas 37 20

32 tareas de sucesos para autómatas 57 10

64 tareas de sucesos para autómatas 57 20/30 de 1 ms a 255 ms

Orden preventivo Márgenes de los intervalos de las tareas

Orden preventivo o no preventivo

Longitud máxima de una expresión

Evaluación parcial de las expresiones booleanas variable no

Longitud máxima de las estructuras de comandos en ST variable

Valor de la variable de comando después de la ejecución completa de un bucle FOR

El valor de la variable de comando tiene el valor límite

+ 1 (ya que el paso es de 1)

Representación gráfica/semigráfica

Restricción sobre la topología de las redes

Representaciones gráficas

Una red LD puede extenderse en 16 columnas y 7 líneas como máximo

74

35013159.01 07/2008

Conformidad con CEI 1131-3

Nota: z Nota 1: Este tipo de datos aún no está implantado de forma visible para el usuario. La tabla indica no obstante sus márgenes de valores en el formato

IEC 1131-3.

TIME: de T#0 a T#429496729.5s

TIME_OF_DAY: de TOD#0:0:0 a TOD#23:59:59

DATE_AND_TIME: de DT#1990-01-01:0:0:0 a DT#2099-12-31:23:59:59

DATE: de D#1990-01-01 a D#2099-12-31DT#2099-12-3 z z

Nota 2: Los redondeos se efectúan como sigue: de x.0 s a x.4 s, se redondea a x s y de x.5 s a x.9 s se redondea a x+1 s.

Nota 3: Es posible indexar positiva y negativamente cualquier tipo de variable directamente representada en el límite del número máximo respectivo definido en la configuración.

35013159.01 07/2008

75

Conformidad con CEI 1131-3

Situaciones de error

Generalidades Descripción de los parámetros de PL7 que dependen de la implementación efectuada.

En la siguiente tabla se enumeran las implementaciones realizadas en los lenguajes

PL7, respecto a las tablas de características descritas en la norma IEC 1131-3.

Tabla de características

Situaciones de error:

Situaciones de error

Errores de conversión de tipo.

El resultado numérico supera el margen para el tipo de datos.

Posición de caracteres especificada no válida.

Limitación y comportamiento de PL7.

Indicado en la ejecución posicionando un bit de sistema: véase la tabla Elementos comunes: tabla 22, característica 1.

Indicado en la ejecución posicionando el bit de sistema

%S18.

Indicado en la ejecución posicionando el bit de sistema

%S18.

El resultado supera la longitud máxima de la cadena.

Indicado en la ejecución posicionando el bit de sistema

%S15.

Efectos de borde durante la evaluación de una transición. Detectado durante la programación.

Tiempo de ejecución no respetado.

Indicado en la ejecución posicionando el bit de sistema

%S19.

Otros conflictos de orden de tareas.

División por cero.

Tipo de datos no válido para una operación.

Error de iteración FOR o WHILE para terminar.

Detectado durante la configuración.

Detectado, si es posible, durante la programación; de lo contrario, se indica en la ejecución posicionando el bit de sistema %S18.

El autómata pasa al fallo de rebasamiento de watchdog y se indica la unidad de programación correspondiente.

76

35013159.01 07/2008

Servidor OLE Automation

5

Presentación

Contenido

Contenido:

Este capítulo describe el funcionamiento del servidor OLE Automation.

Este capítulo contiene las siguientes secciones:

Sección

5.1

5.2

5.3

Apartado

Presentación

Puesta en marcha

Funciones OLE

Página

78

82

93

35013159.01 07/2008

77

Servidor OLE Automation

5.1

Presentación

Presentación

Objeto de este apartado

Contenido

Este apartado describe las generalidades del servidor OLE Automation.

Esta sección contiene los siguientes apartados:

Apartado

Presentación del servidor OLE Automation

Modos de funcionamiento del servidor OLE Automation

Página

79

81

78

35013159.01 07/2008

Servidor OLE Automation

Presentación del servidor OLE Automation

Introducción La funcionalidad PL7 del servidor OLE Automation ofrece la posibilidad de

«controlar» la ejecución de un PL7 de forma programada, no interactiva (sin intervención del operador) para las aplicaciones ajenas a PL7. Se utiliza la terminología de aplicaciones clientes de la funcionalidad PL7 del servidor OLE

Automation.

Autómata

Servidor

Cliente

Aplicaciones cliente

PL7

*.stx

Según el estándar definido por Microsoft en su oferta OLE para responder a esta necesidad, la funcionalidad PL7 dispone de una interface estándar, pública, expandida, propia e independiente del lenguaje de programación de la aplicación cliente.

Sus características principales son las siguientes: z z z z

La automatización de tareas repetitivas delegación de tratamientos en PL7 que éste sabe ejecutar por sí solo, acceso a información sobre las aplicaciones incluidas en los archivos *.stx y de modo más general, el desarrollo de funciones de nivel superior a PL7, de tipo integrador, conservando al mismo tiempo los detalles de implementación específicos de PL7.

35013159.01 07/2008

79

Servidor OLE Automation

Contexto de ejecución

La funcionalidad PL7 del servidor OLE Automation está integrada en PL7 Pro. Se instala y ejecuta con las mismas condiciones de instalación y ejecución que para

PL7. La funcionalidad PL7 del servidor OLE Automation se basa en el tiempo de ejecución de OLE Automation Microsoft suministrado con Windows XP Professional y Windows VISTA Professional Edition 32.

z z z

Nota: para realizar una aplicación cliente del servidor OLE es preciso conocer uno de los siguientes lenguajes para la programación OLE Automation:

Microsoft Visual Basic, versión 5.0 o superior

Microsoft Visual C++, versión 4.2 o superior

Microsoft VBA en Excel, versión 5.0 o superior

80

35013159.01 07/2008

Servidor OLE Automation

Modos de funcionamiento del servidor OLE Automation

Generalidades

Descripción

Al modo de funcionamiento de PL7 que existía hasta ahora y que se denomina

"interactivo", en el que PL7 responde únicamente a las acciones del operador, se añade el modo de funcionamiento del servidor OLE automation, en el que PL7 responde además a comandos emitidos por una aplicación cliente OLE.

La elección del modo de funcionamiento depende del procedimiento de inicio de

PL7: z z

El modo interactivo se inicializa al lanzar PL7 a través de Windows (menú

Inicio/Programas/Modicon Telemecanique/PL7 Pro.).

El modo servidor se selecciona al acceder al servidor PL7 OLE Automation en la programación de una aplicación cliente OLE. Una instancia no puede cambiar de modo en curso.

Cada vez que una aplicación cliente accede al servidor OLE Automation con PL7, se lanza una instancia específica de PL7, independientemente de otras eventuales instancias ya iniciadas. En el mismo puesto puede ejecutarse al mismo tiempo un número cualquiera de instancias de PL7 tanto en modo servidor como en modo interactivo. Existe una independencia perfecta entre las instancias, que pueden ejecutarse cada una en su propio contexto.

Para todas estas instancias se aplican las mismas reglas de exclusión de acceso concurrente a una aplicación STX o a un autómata, a saber: una aplicación STX o un autómata sólo pueden manipularse por una instancia al mismo tiempo.

Esta regla se ha establecido para el servidor OLE Automation con PL7, que puede abrir una aplicación STX ya abierta pero cuyo registro no puede efectuar. De igual forma, puede efectuar mediante solicitud explícita una transferencia autómata —>

PC desde un autómata reservado en otro lugar.

Una aplicación cliente puede iniciar instancias en varios "servidores OLE

Automation con PL7" concurrentes.

35013159.01 07/2008

81

Servidor OLE Automation

5.2

Puesta en marcha

Presentación

Objeto de este apartado

Contenido

Este apartado describe la puesta en marcha del servidor OLE Automation.

Esta sección contiene los siguientes apartados:

Apartado

Instalación de OLE Automation

Mecanismo de acceso al servidor PL7 OLE Automation

Inicio del servidor en modo local (modo COM)

Inicio del servidor en modo remoto (DCOM)

Puesta en funcionamiento del servidor de forma remota

Modos de ejecución del servidor PL7

Puntos de entrada: función OLE

Página

83

84

85

86

87

90

91

82

35013159.01 07/2008

Servidor OLE Automation

Instalación de OLE Automation

Descripción La instalación del servidor OLE Automation con PL7 es transparente para el usuario y se realiza de forma implícita al instalar PL7.

La instalación incluye: z z z

Cuatro ejemplos de cliente OLE Automation completos con su código fuente y un archivo README suministrados con el programa.

Dichos ejemplos corresponden a: z z un cliente Visual C++ 4.2 "mínimo": los conocimientos mínimos para escribir un cliente OLE.

un cliente Visual C++ 4.2 "completo" que utiliza todos los puntos de entrada disponibles.

z un cliente Visual Basic ++ 5.0 que utiliza todos los puntos de entrada disponibles.

z un cliente Excel.

Un archivo *.h que define los valores de los códigos de error procedentes del servidor.

Un archivo TLB de interfaz para un cliente Visual C++.

35013159.01 07/2008

83

Servidor OLE Automation

Mecanismo de acceso al servidor PL7 OLE Automation

El servidor PL7 OLE Automation permite dos modos de acceso a los servicios que ofrece.

Acceso en modo local

La aplicación cliente y el servidor PL7 OLE Automation están en el mismo puesto.

Acceso remoto a través de DCOM

La aplicación cliente y el servidor PL7 Automation están en puestos distintos, conectados a través de la red TCP/IP:

Estación del cliente Estación del servidor

DCOM

84

35013159.01 07/2008

Servidor OLE Automation

Inicio del servidor en modo local (modo COM)

Introducción

Inicio del servidor en modo local

(modo COM)

El modo COM (Component Object Model) define una interface de comunicación entre aplicaciones que proporciona independencia respecto a las herramientas de desarrollo.

Para iniciar el servidor en modo local, siga el procedimiento que se describe a continuación:

1

2

3

4

Declare un objeto «A» en la aplicación cliente para comunicarse con la aplicación del servidor.

Ejecute la función Createdispatch en el objeto "A" de la aplicación cliente para iniciar una instancia en la aplicación del servidor.

Registre PL7Pro en la base de registro como servidor OLE para un funcionamiento correcto en modo servidor (el enlace entre la aplicación cliente y la aplicación servidor se crea si éste se ha referenciado en la base de registro).

La aplicación cliente puede ahora interrogar a la aplicación servidor a través de la interface accesible del objeto «A».

Ejemplo: OpenStx("C:\appli.stx).

35013159.01 07/2008

85

Servidor OLE Automation

Inicio del servidor en modo remoto (DCOM)

Introducción El servidor Pl7 se ejecuta en función de la información presente en la base de registro. Puede encontrarse en el equipo cliente o en un equipo remoto.

El modo DCOM es una extensión del modo COM (Component Object Model). Este modo permite establecer el diálogo entre una aplicación cliente y una aplicación servidor en un mismo equipo.

El modo DCOM permite dialogar entre dos equipos remotos. Sustituye los protocolos de comunicación entre procesos por los protocolos de red.

En la siguiente figura, se muestra el funcionamiento de OLE Automation en modo servidor remoto:

Elección del driver

Servidor PL7

Cliente

PC a

Cliente

Cliente

PC b

COM tiempo de ejecución

Seguridad proveedor

DCE RPC

Pila de protocolos

Elección del driver

Servidor PL7

PC c

COM tiempo de ejecución

Seguridad proveedor

DCE RPC

Pila de protocolos

Componente red DCOM protocolo

86

35013159.01 07/2008

Servidor OLE Automation

Puesta en funcionamiento del servidor de forma remota

Introducción

Configuración del Cliente

DCOM es una configuración específica necesaria en un PC cliente para soportar el acceso remoto al PC en el que está instalado el servidor (PL7 Pro Server). En un

PC que soporte Windows XP Professionnal o

Windows VISTA Professional Edition 32, DCOM debe estar configurado utilizando la herramienta DCOMCnfg.exe.

El siguiente procedimiento explica cómo configurar el DCOM y se aplica a los sistemas de explotación Windows XP Professional o

Windows VISTA Professional Edition 32:

Etapa

1

2

3

Acción z z

Inicie DCOMCnfg.exe

situado en la agenda:

C:\Windows\System32

Y en el icono Raíz de la consola

Servicio de componentes

Ordenadores

Puesto de trabajo , muestre las propiedades haciendo clic con el botón derecho del ratón, o

Haga clic en Panel de configuración

Herramientas de administración

Servicios de componentes .

En la ventana que aparece, haga glic en Servicios de componentes

Ordenadores .

En el icono Puesto de trabajo , muestre las propiedades haciendo clic con el botón derecho del ratón.

En la pestaña Propiedades por defecto , verifique que: z La opción Activar Distributed COM (DCOM) en este ordenador se encuentra seleccionada.

z El campo

Conectar .

Nivel de autenticación por defecto se encuentra definido en z El campo Nivel de copia de identidad por defecto se encuentra definido en Identificar .

En la pestaña Seguridad COM :

Modifique la lista Autorizaciones de acceso con el fin de asegurarse de que los usuarios SISTEMA , INTERACTIVO , RED y Todo el mundo aparezcan.

Este último parámetro sólo se necesita para autorizar al servidor para que reenvíe notificaciones al cliente.

35013159.01 07/2008

87

Servidor OLE Automation

Configuración del Servidor

Estos parámetros de configuración deben ser definidos en el curso de conexión con el equipo cuando disponga de una cuenta con las autorizaciones necesarias de acceso y de inicio del servidor

Etapa

1

2

3

Acción z z

Inicie DCOMCnfg.exe

situado en la agenda:

C:\Windows\System32

Y en el icono Raíz de la consola

Servicio de componentes

Ordenadores

Puesto de trabajo , muestre las propiedades haciendo clic con el botón derecho del ratón, o

Haga clic en Panel de configuración

Herramientas de administración

Servicios de componentes .

En la ventana que aparece, haga glic en Servicios de componentes

Ordenadores .

En el icono Puesto de trabajo , muestre las propiedades haciendo clic con el botón derecho del ratón.

En la pestaña Propiedades por defecto , verifique que: z La opción Activar Distributed COM (DCOM) en este ordenador se encuentra z z seleccionada.

El campo Nivel de autenticación por defecto se encuentra definido en Conectar .

El campo Nivel de copia de identidad por defecto

Identificar .

se encuentra definido en

En la agenda Configuración DCOM

OLE Automation muestre las propiedades haciendo clic con el botón derecho del ratón. La ventana de diálogo Propiedades de

OLE Automation Server aparece.

z Haga clic en la pestaña Identidad . La opción El usuario interactivo debe ser seleccionada. La opción Este usuario con la contraseña adecuada debe ser seleccionada si ningún usuario se conecta al servidor o si la sesión es modificada o interrumpida sin motivo.

z Haga clic en la pestaña defecto .

General , el nivel de autentificación debe ser definido en Por z z

Haga clic en la pestaña Ubicación , la opción Ejecutar la aplicación en este equipo debe ser seleccionada.

En la pestaña Seguridad

Autorizaciones de ejecución y de activación , seleccione Personalizar .

z Haga clic en Modificar , la ventana de diálogo Autorización de ejecución z z aparece.

Haga clic en Agregar , agregar usuarios, y autorizar el acceso (los usuarios

SISTEMA , INTERACTIVO y RED deben aparecer en esta lista, otros como Todo el mundo pueden ser agregados), z Haga clic en OK y cierre las ventanas de diálogo.

En la pestaña Seguridad

Autorizaciones de acceso , seleccione Personalizar .

z Haga clic en Modificar , la ventana de diálogo Autorización de acceso aparece.

z Haga clic en Agregar , agregar usuarios, y autorizar el inicio del servidor (los z usuarios SISTEMA , INTERACTIVO y RED deben aparecer en esta lista, otros como Todo el mundo pueden ser agregados).

Haga clic en OK y cierre las ventanas de diálogo.

88

35013159.01 07/2008

Servidor OLE Automation

Nota: si el cliente y el servidor no pertenecen al mismo dominio XP o VISTA, o si no existe ningún dominio XP o vista, no olvide que unos usuarios idénticos que dispongan de una contraseña idéntica deben crearse en los dos equipos (tenga cuidado en respetar la casilla).

35013159.01 07/2008

89

Servidor OLE Automation

Modos de ejecución del servidor PL7

Introducción

Modos de ejecución

El servidor OLE Automation con PL7 posee dos modos de ejecución que se pueden elegir de forma dinámica durante la ejecución (véase SetIHMServer ).

z z

Modo de ejecución sin IHM. PL7 se inicia como "tarea de fondo" sin ninguna visualización ni posibilidad de entrada del operador. Es el modo típico que debe emplearse, por ejemplo, para automatizar las tareas repetitivas o acceder a información en una aplicación contenida en un archivo stx.

Modo de ejecución con IHM. PL7 se inicia como un PL7 "interactivo" con visualización y posibilidad de entrada del operador, y sigue recibiendo los comandos emitidos por su aplicación cliente. Este modo se ha desarrollado para visualizar elementos de programa o de configuración de una aplicación contenida en un archivo stx desde herramientas externas, por ejemplo, DIAG

Viewer.

Nota: los servicios relativos a la visualización de programas, herramientas o módulos sólo se ejecutan en el modo con IHM.

El servidor OLE Automation con PL7, en el modo con IHM, está sujeto a los controles de derechos de usuarios. Está situado en el perfil del derecho de usuario

"Read Only", que corresponde a su función de visualizador de códigos y módulos de E/S PL7.

El servidor OLE Automation con PL7, en el modo sin IHM, no está sujeto a los controles de derechos de usuarios, pero los servicios ofrecidos no permiten modificar la aplicación.

90

35013159.01 07/2008

Servidor OLE Automation

Puntos de entrada: función OLE

Introducción

Contexto de ejecución

Los puntos de entrada se clasifican en cuatro tipos: z z z z

Contexto de ejecución

Control API

Lectura de la información

Visualización de elementos de la aplicación

Puntos de entrada

Nombre

OpenStx

SaveStx

CloseStx

Set DriverAndAddress

SetServerIHM

GetPL7IHM

GetMessageError

Descripción

Apertura de una aplicación

Registro de la aplicación activa

Cierre de la aplicación activa

Modificación de la dirección y el driver del autómata al que se accede

Cambio del modo interactivo del servidor PL7 OLE

Automation

Proporciona el estado: aplicación abierta o cerrada, modo local - conectado, estado API

Lee el mensaje de error asociado al código de error

Control API Puntos de entrada

Nombre

ConnectPLC

DisconnectPLC

SenCommandToPLC

DownloadToPLC

UploadFromPLCM

DownloadStationWithSym bol

Descripción

Entra en el modo conectado

Sale del modo conectado

Envía un comando al autómata (RUN, STOP INIT)

Carga de la aplicación activa en un autómata

Copia de una aplicación del autómata en la aplicación activa

Carga de una aplicación y su base comprimida de símbolos en el autómata

35013159.01 07/2008

91

Servidor OLE Automation

Lectura de la información

Puntos de entrada

Nombre

ExportScyFile

ExportFefFile

GetSymbol

GetSTXAppIdentity

GetPLCAppIdentity

GetServerVersion

CompareSymbolPCAndSymb olPLCAppli

Descripción

Exportación de los símbolos a la aplicación activa en forma de archivo scy

Exportación de la aplicación activa en forma de archivo tipo fef

Lee el símbolo y el comentario asociado a una variable

Lee la información general de una aplicación incluida en un archivo STX

Lee la información general de una aplicación incluida en un autómata

Lee la versión del servidor

Muestra la información general de una aplicación incluida en un autómata

Visualización de elementos de la aplicación

Puntos de entrada

Nombre

SetPosPL7Window

ShowProgram

CloseProgram

ShowIOModule

CloseIOModule

ShowDFB

CloseDFB

OpenTool

Descripción

Modifica las características de visualización del PL7

(posición y forma)

Apertura de un editor en un módulo de programa determinado

Cierre de un editor de programa

Apertura de un editor en un módulo de E/S determinado

Cierre de un editor en un módulo de E/S determinado

Apertura de un editor en el código de un DFB determinado

Cierre de un editor en el código de un DFB

Apertura de una herramienta MDI cualquiera sin contexto

Nota: los puntos de entrada relativos a la visualización de elementos de la aplicación no funcionan si el servidor está en modo sin IHM.

92

35013159.01 07/2008

Servidor OLE Automation

5.3

Funciones OLE

Presentación

Objeto de este apartado

Contenido

Este apartado describe las funciones OLE del servidor OLE Automation.

Esta sección contiene los siguientes apartados:

Apartado

OpenStx

CloseStx

OpenStxWithMaj

ExportScyFile

ExportFeFile

ExportFefFileWithConfiguration

DisconnectPLC

ConnectPLC

SaveStx

DownloadDataToPLC

DownloadToPLC

UploadFromPLC

UploadDataFromPLC

UploadFromPLCWithSymbol

GetSymbol

SetServerIHM

SetDownloadFunction

GetPL7State

GetSTXAppIdentity

GetPLCAppIdentity

SendCommandToPLC

SetDriverAndAdresse

OpenTool

SetPosPL7Windows

ShowProgram

CloseProgram

117

119

120

121

113

114

115

116

123

124

125

107

108

110

112

102

103

104

106

Página

95

96

97

98

99

100

101

35013159.01 07/2008

93

Servidor OLE Automation

Apartado

ShowIOModule

CloseIOModule

ShowDFB

CloseDFB

GetMessageError

GetServerVersion

ImportScyFile

DownloadStationWithSymbol

CompareSymbolPCAndSymbolPLCAppli

Página

126

127

128

129

130

131

132

133

135

94

35013159.01 07/2008

Servidor OLE Automation

OpenStx

Generalidades

Descripción

Esta función permite abrir un archivo de tipo aplicación stx.

Sintaxis: integer OpenStx (String lpAppPathName) z z z z

Entrada:

Introduzca la cadena de caracteres que contiene el nombre del archivo que desee abrir.

Función llamada:

OpenStation : función de la gestión de estación ( gesta.dll

).

Contexto nominal :

El servidor PL7 está activo.

Casos de error:

SRV_ERR_GEN_FILENOTFOUND No se ha encontrado el archivo.

SRV_ERR_OPEN_BADZIP

SRV_ERR_OPEN_BADFILE

Problema de descompresión de archivo.

Problema de lectura del archivo stx.

SRV_ERR_OPEN_NOK_COMPATIBLE El procesador no funciona con PL7 abierto.

SRV_ERR_OPEN_OPEN

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_DRIVE FULL

Ya hay otra aplicación abierta.

El nombre de la ruta está vacío.

Error al abrir la aplicación.

No hay suficiente espacio libre en el disco para abrir la aplicación.

z Salida:

Código de retorno de tipo short . Será 0 cuando se haya abierto de forma correcta; de lo contrario, será un código de error.

35013159.01 07/2008

95

Servidor OLE Automation

CloseStx

Generalidades

Descripción

Esta función permite cerrar la aplicación en curso.

Sintaxis: integer CloseStx ( integer p_bWithoutSave) z z z z

Entrada:

Si se ha modificado la aplicación, es posible cerrarla sin avisar al usuario

( p_bWithoutSave a TRUE )

Función llamada:

CloseStation : función de la gestión de estación ( gesta.dll

).

Contexto nominal :

El servidor PL7 está activo, una aplicación se encuentra abierta.

Caso de error:

SRV_ERR_GEN_NOTOPEN

SRV_ERR_CLOSE_NOTSAVE

No hay ninguna aplicación abierta.

Se ha modificado la aplicación, es preciso guardarla para salir.

z Salida:

Código de retorno de tipo short . Bien 0 en caso de conseguir cerrarla, bien un código de error.

96

35013159.01 07/2008

Servidor OLE Automation

OpenStxWithMaj

Generalidades

Descripción

Esta función permite exportar la aplicación activa con su configuración en un archivo de tipo fef.

Sintaxis: entero OpenStxWithMaj (string NameFile, integer WithNewCat) z z z z

Entrada: z Introducir 1 cadena de caracteres que contenga el nombre y la ruta del archivo stx que se desea abrir.

z Un entero que indica si es necesario actualizar los archivos del catálogo o no

(valor 0 para no actualización o 1 para una actualización).

Función denominada:

OpenStation: Función de la gestión estación ( gesta.dll

).

Contexto nominal: z El servidor PL7 está activo, z PL7 está en modo local.

Caso de error:

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_DRIVEFULL

SRV_ERR_OPEN_OPEN

SRV_ERR_GEN_FILENOTFOUND

SRV_ERR_OPEN_BADZIP

Error producido durante la ejecución de la función.

El nombre del archivo dat no es correcto o está vacío.

Más espacio libre en el disco para la apertura de la aplicación.

Ya está abierta una aplicación.

No se ha encontrado el archivo.

Problema de extracción del archivo zip.

z z

Salida:

Código de retorno de tipo short. 0 en el caso de una apertura de estación con

éxito, si un código de error.

Limitaciones:

El servidor de PL7, sin IHM, una vez que la importación haya tenido éxito, no puede funcionar en modo con IHM sin un guardado previo de la aplicación abierta.

35013159.01 07/2008

97

Servidor OLE Automation

ExportScyFile

Generalidades

Descripción

Esta función permite exportar los símbolos contenidos en la aplicación activa en forma de archivo de tipo scy.

Sintaxis: integer ExportScyFile (String p_psScyFile) z z z z

Entrada:

Introduzca la cadena de caracteres que contiene el nombre del archivo scy.

Función llamada:

ExportScyFile : función de la gestión de estación ( gesta.dll

).

Contexto nominal : el servidor PL7 está activo. Se encuentra abierta una aplicación.

Caso de error:

SRV_ERR_GEN_ACTION Error al crear el archivo de origen.

SRV_ERR_GEN_NOTOPEN No hay ninguna aplicación abierta.

SRV_ERR_GEN_PARAM_EMPTY p_ psScyFile está vacío

SRV_EXPORT_ERRFILE Error al escribir en el archivo de origen.

z Salida:

Código de retorno de tipo short . Bien 0 si la exportación se realiza correctamente, bien un código de error.

98

35013159.01 07/2008

Servidor OLE Automation

ExportFeFile

Generalidades

Descripción

Esta función permite exportar la aplicación activa en forma de archivo de tipo fef.

Sintaxis: integer ExportFefFile (String p_psNamefile) z z z z

Entrada:

Introduzca la cadena de caracteres que contiene el nombre del archivo fef.

Función llamada:

ExportFefFile : función de la gestión de estación ( gesta.dll

).

Contexto nominal : el servidor PL7 está activo. Se encuentra abierta una aplicación.

Caso de error:

SRV_ERR_GEN_ACTION Error al crear el archivo fuente de la aplicación.

SRV_ERR_GEN_PARAM_EMPTY No hay ninguna aplicación abierta.

SRV_ERR_GEN_PARAM_EMPTY p_ psNamefile está vacío.

SRV_EXPORT_ERRFILE Error al escribir en el archivo de origen.

z Salida:

Código de retorno de tipo short . Bien 0 si la exportación se realiza correctamente, bien un código de error.

35013159.01 07/2008

99

Servidor OLE Automation

ExportFefFileWithConfiguration

Generalidades

Descripción

Esta función permite exportar la aplicación activa con su configuración en un archivo de tipo fef.

Sintaxis: entero ExportFefFileWithConfiguration (string FefFile) z z z z

Entrada:

Introducir 1 cadena de caracteres que contenga el nombre y la ruta del archivo scy que se va a exportar.

Función denominada:

ExportFefFileWithConf: Función de la gestión estación ( gesta.dll

).

Contexto nominal: z El servidor PL7 está activo, z PL7 está en modo local, estación abierta.

Caso de error:

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_NOTOPEN

SRV_EXPORT_ERRFILE

Error producido durante la ejecución de la función.

El nombre del archivo dat no es correcto o está vacío.

No hay aplicación STX abierta.

Imposible crear el archivo a exportar.

z Salida:

Código de retorno de tipo short. 0 en el caso de una exportación con éxito, si un código de error.

100

35013159.01 07/2008

Servidor OLE Automation

DisconnectPLC

Generalidades

Descripción

Esta función permite desconectar el autómata del PL7.

Sintaxis: integer ExportFefFile (String p_psNamefile) z z

Función llamada:

DisconnectStation : función de la gestión de estación ( gesta.dll

).

Contexto nominal : el servidor PL7 está activo.

z Salida:

Código de retorno de tipo short. Bien 0 en caso de realizar la desconexión correctamente, bien un código de error (SRV_ERR_GEN_ACTION).

35013159.01 07/2008

101

Servidor OLE Automation

ConnectPLC

Generalidades

Descripción

Esta función permite conectarse a un autómata.

Sintaxis: integer ConnectPLC (String p_lpDriver, String p_lpAddress) z z z z

Entrada:

Introduzca dos cadenas de caracteres que contengan el controlador y la dirección del autómata.

Función llamada:

ConnectStation : función de la gestión de estación ( gesta.dll

).

Contexto nominal: el servidor PL7 está activo. En caso de que los parámetros sean cadenas vacías, el servidor ejecuta la función con el controlador o la dirección actuales.

Caso de error:

SRV_ERR_GEN_CONNECT

SRV_ERR_GEN_COMMUNICATION

SRV_ERR_GEN_RESERVED

SRV_ERR_PLC_BLANK

SRV_ERR_PC_BLANK

SRV_ERR_DIFFERENCE_PLC_STX

SRV_ERR_GEN_ADDRESS

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_DRIVER

SRV_ERR_GEN_NOTOPEN

SRV_ERR_GEN_PROTECTEDAPPLI

SRV_COMPATIBLE_PLC

No ha podido efectuarse la conexión.

Problema de comunicación entre PL7pro y el autómata.

El autómata está reservado, por lo no es posible conectarse.

El autómata no contiene ninguna aplicación, por lo que no es posible conectarse.

No hay ninguna aplicación abierta, por lo que no es posible conectarse.

La aplicación abierta y la aplicación contenida en al autómata son diferentes, por lo que no es posible conectarse.

El parámetro de la dirección es incorrecto.

Error al ejecutar la función.

El parámetro del controlador es incorrecto.

No hay ninguna aplicación abierta.

Aplicación protegida.

Problema de compatibilidad con el autómata.

z Salida:

Código de retorno de tipo short . Bien 0 en caso de efectuar la conexión correctamente, bien un código de error.

102

35013159.01 07/2008

Servidor OLE Automation

SaveStx

Generalidades

Descripción

Esta función permite guardar la aplicación abierta.

Sintaxis: integer SaveStx (String p_lpStxFile) z z z z

Entrada:

Introduzca una cadena de caracteres que contenga la ruta y el nombre del archivo para guardar.

Función llamada:

SaveStx : función de la gestión de estación ( gesta.dll

).

Contexto nominal: el servidor PL7 está activo. Una aplicación está abierta, PL7 está en modo local.

Caso de error:

SRV_ERR_SAVEDENIED

SRV_ERR_SAVEERRZIP

SRV_ERR_SAVEERRREN

SRV_ERR_GEN_NOTOPEN

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_ACTION

SRV_ERR_PLC_CONNECT

Acceso al archivo denegado.

Error al comprimir la aplicación.

Cambio de nombre denegado.

No hay ninguna aplicación abierta.

p_ lpStxFile está vacío.

Error al guardar la aplicación.

Sólo es posible guardar el archivo en modo local.

z Salida:

Código de retorno de tipo short. Bien 0 en caso de conseguir guardar el archivo, bien un código de error.

35013159.01 07/2008

103

Servidor OLE Automation

DownloadDataToPLC

Generalidades

Descripción

104

Esta función permite cargar un archivo que contenga palabras en el autómata.

Sintaxis: entero DownLoadDataToPLC (string Driver, string Address, string NameFile) z z z z

Entrada:

Introducir las 3 cadenas de caracteres que contiene el controlador, la dirección del autómata y el nombre completo del archivo de formato dat.

Función denominada:

DownloadData: Función de la gestión estación ( gesta.dll

).

Contexto nominal: z z

El servidor PL7 está activo,

PL7 está en modo local, z Si los parámetros (controlador y dirección) son cadenas vacías, el servidor ejecuta la función con el controlador o con la dirección actual.

Casi de error:

SRV_ERR_DOWNLOAD_CART

SRV_ERR_COMPATIBLE_PLC

SRV_ERR_PC_BLANK

SRV_ERR_GEN_ADDRESS

SRV_ERR_GEN_DRIVER

SRV_ERR_GEN_RESERVED

SRV_ERR_GEN_COMMUNICATION

SRV_ERR_PLC_CONNECT

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_PROTECTEAPPLI

SRV_ERR_TRFDATA_READDS

Problema de compatibilidad del cartucho entre la aplicación abierta y el autómata.

Problema de compatibilidad entre la aplicación abierta y el autómata.

No hay ninguna aplicación abierta.

El parámetro p_IpAddress no es correcto.

El parámetro p_IpDriver no es correcto.

El autómata está reservado, por lo que es imposible realizar la conexión.

Problema de comunicación entre PL7pro y el autómata.

Es necesario estar en modo local para efectuar la descarga.

Error producido durante la ejecución de la función.

El nombre del archivo dat no es correcto o está vacío.

La aplicación está protegida en modo lectura, por lo que no es posible conectarse con el autómata.

Error de comunicación.

35013159.01 07/2008

35013159.01 07/2008

Servidor OLE Automation

SRV_ERR_TRFDATA_NODATA

SRV_ERR_TRFDATA_READWRITE

SRV_ERR_TRFDATA_INFOFILE

Variables numéricas no configuradas o leídas de forma incorrecta. No se ha creado el archivo.

Problema en el archivo dat.

Problema en el archivo dat.

SRV_ERR_TRFDATA_RUNREFUSED El autómata rechazó la petición de paso a RUN

(Entrada Run/Stop posicionada a STOP).

SRV_ERR_TRFDATA_READOBJ Error de lectura o de escritura de las variables numéricas.

SRV_ERR_TRFDATA_WRITEOBJ Error de lectura o de escritura de las variables numéricas.

SRV_TRFDATA_OVERFLOW Atención, el margen de valores era demasiado grande, por lo que ha habido un rebasamiento.

SRV_TRFDATA_BORNENOCORRECT Los valores mínimo y máximo son incorrectos.

z Salida:

Código de retorno de tipo short. 0 en el caso de una carga con éxito, si un código de error.

105

Servidor OLE Automation

DownloadToPLC

Generalidades

Descripción

Esta función permite telecargar una aplicación en la memoria del autómata.

Sintaxis: integer DownloadToPLC (String p_lpDriver, String p_lpAdresse) z z z z

Entrada:

Introduzca dos cadenas de caracteres que contengan el controlador y la dirección del autómata.

Función llamada:

DownloadStation : función de la gestión de estación ( gesta.dll

).

Contexto nominal: el servidor PL7 está activo. Una aplicación está abierta, PL7 está en modo local.

En caso de que los parámetros sean cadenas vacías, el servidor ejecuta la función con el controlador o la dirección actuales.

Caso de error:

SRV_ERR_DOWNLOAD_CART

SRV_ERR_COMPATIBLE_PLC

SRV_ERR_GEN_ADDRESS

SRV_ERR_GEN_DRIVER

SRV_ERR_GEN_NOTOPEN

SRV_ERR_GEN_RESERVED

SRV_ERR_GEN_COMMUNICATION

SRV_ERR_PLC_CONNECT

SRV_ERR_PLC_ACTION

Problema de compatibilidad del cartucho de memoria entre la aplicación abierta y el autómata.

Problema de compatibilidad entre la aplicación abierta y el autómata.

El parámetro p_lpAdresse es incorrecto.

El parámetro p_lpDriver es incorrecto.

No hay ninguna aplicación abierta.

El autómata está reservado.

Problema de comunicación.

El autómata ya está conectado.

Error al realizar la descarga.

z Salida:

Código de retorno de tipo short . Bien 0 si la carga se realiza correctamente, bien un código de error.

106

35013159.01 07/2008

Servidor OLE Automation

UploadFromPLC

Generalidades

Descripción

Esta función permite copiar en la memoria una aplicación contenida en un autómata.

Sintaxis: integer UploadFromPLC (String p_lpDriver, String p_lpAdresse, integer p_iReservedMode) z z z z

Entrada:

Introduzca dos cadenas de caracteres que contengan el controlador y la dirección del autómata. Un entero ( p_iReservedMode ) permite llevar a cabo la carga en un autómata reservado.

Función llamada:

UploadStation : función de la gestión de estación ( gesta.dll

).

Contexto nominal: el servidor PL7 está activo. No hay ninguna aplicación abierta y PL7 está en modo local. En caso de que los parámetros sean cadenas vacías, el servidor ejecuta la función con el controlador o la dirección actuales.

Caso de error:

SRV_ERR_UPLOAD_TRANSFER

SRV_ERR_UPLOAD_ABORT

SRV_ERR_UPLOAD_RESERVED

SRV_ERR_UPLOAD_NOAPPLI

SRV_ERR_GEN_ADDRESS

SRV_ERR_GEN_ACTION

SRV_ERR_PLC_CONNECT

SRV_ERR_GEN_DRIVER

SRV_ERR_GEN_COMMUNICATION

SRV_ERR_PLC_CONNECT

SRV_OPEN_NOT_COMPATIBLE

Problema al transferir la aplicación contenida en el autómata.

Cancelación de la transferencia.

Aplicación reservada.

Autómata virgen.

Dirección incorrecta.

Error de ejecución de la función.

Error de conexión.

Controlador incorrecto.

Error de comunicación.

El autómata está en modo conectado.

Problema de compatibilidad.

z Salida:

Código de retorno de tipo short . Bien 0 si la carga se realiza correctamente, bien un código de error.

35013159.01 07/2008

107

Servidor OLE Automation

UploadDataFromPLC

Generalidades

Descripción

Esta función permite descargar un archivo que contenga palabras en el autómata.

Sintaxis: entero UpLoadDataFromPLC (string Driver, string Address, entero ValMin, entero ValMax, string NameFile) z z z z

Entrada: z Introducir las 3 cadenas de caracteres que contiene el controlador, la dirección del autómata y el nombre completo del archivo de formato dat, z Introducir los 2 enteros que son los valores mínimo y máximo que se desean recuperar.

Función denominada:

UploadData: Función de la gestión estación ( gesta.dll

).

Contexto nominal: z El servidor PL7 está activo, z z

PL7 está en modo local,

Si los parámetros (controlador y dirección) son cadenas vacías, el servidor ejecuta la función con el controlador o con la dirección actual.

Casi de error:

SRV_ERR_COMPATIBLE_PLC

SRV_ERR_GEN_ADDRESS

SRV_ERR_GEN_DRIVER

SRV_ERR_GEN_RESERVED

SRV_ERR_GEN_COMMUNICATION

SRV_ERR_PLC_CONNECT

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_PROTECTEAPPLI

Problema de compatibilidad entre la aplicación abierta y el autómata.

El parámetro p_IpAddress no es correcto.

El parámetro p_IpDriver no es correcto.

El autómata está reservado, por lo que es imposible realizar la conexión.

Problema de comunicación entre PL7pro y el autómata.

Es necesario estar en modo local para efectuar la descarga.

Error producido durante la ejecución de la función.

El nombre del archivo dat no es correcto o está vacío.

La aplicación está protegida en modo lectura, por lo que no es posible conectarse con el autómata.

108

35013159.01 07/2008

35013159.01 07/2008

Servidor OLE Automation

SRV_ERR_TRFDATA_READDS

SRV_ERR_TRFDATA_NODATA

SRV_ERR_TRFDATA_READWRITE

SRV_ERR_TRFDATA_INFOFILE

SRV_ERR_TRFDATA_RUNREFUSED

SRV_ERR_TRFDATA_READOBJ

SRV_ERR_TRFDATA_WRITEOBJ

SRV_TRFDATA_OVERFLOW

SRV_TRFDATA_BORNENOCORRECT

Error de comunicación.

Variables numéricas no configuradas o leídas de forma incorrecta. No se ha creado el archivo.

Problema en el archivo dat.

Problema en el archivo dat.

El autómata rechazó la petición de paso a

RUN (Entrada Run/Stop posicionada a

STOP).

Error de lectura o de escritura de las variables numéricas.

Error de lectura o de escritura de las variables numéricas.

Atención, el margen de valores era demasiado grande, por lo que ha habido un rebasamiento.

Los valores mínimo y máximo son incorrectos.

z Salida:

Código de retorno de tipo short. 0 en el caso de una descarga con éxito, si un código de error.

109

Servidor OLE Automation

UploadFromPLCWithSymbol

Generalidades

Descripción

Esta función permite descargar una aplicación con los símbolos asociados que contiene el autómata.

Sintaxis: integer UpLoadFromPLCWithSymbol (string Driver, string Address, integer ReserveMode) z z z z

Entrada:

Introduzca las dos cadenas de caracteres que contiene el controlador, la dirección del autómata. Un entero ( p_IReserveMode ) que permite transferir

PLC a un PC en un autómata reservado.

Función llamada:

UploadStationWithSymbol: función de la gestión de estación ( gesta.dll

).

Contexto nominal: z z

El servidor PL7 está activo.

PL7 está en modo local.

z Si los parámetros (controlador y dirección) son cadenas vacías, el servidor ejecuta la función con el controlador o con la dirección actual.

Casos de error:

SRV_ERR_COMPATIBLE_PLC

SRV_ERR_GEN_ADDRESS

SRV_ERR_GEN_DRIVER

SRV_ERR_GEN_RESERVED

SRV_ERR_GEN_COMMUNICATION

SRV_ERR_PLC_CONNECT

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_PARAM_EMPTY

Problema de compatibilidad entre la aplicación abierta y el autómata.

El parámetro p_IpAddress no es correcto.

El parámetro p_IpDriver no es correcto.

El autómata está reservado, por lo que es imposible realizar la conexión.

Problema de comunicación entre

PL7Pro y el autómata.

Es necesario estar en modo local para efectuar la descarga.

Error producido durante la ejecución de la función.

El nombre del archivo dat no es correcto o está vacío.

110

35013159.01 07/2008

35013159.01 07/2008

Servidor OLE Automation

SRV_ERR_GEN_PROTECTEAPPLI

SRV_OPEN_NOK_COMPATIBLES

SRV_ERR_UPLOAD_NOAPPLI

SRV_ERR_UPLOAD_READINFOSYMB

SRV_ERR_UPLOAD_WRITEINFOSYMBOL

SRV_ERR_UPLOAD_INVALIDSYMB

SRV_ERR_UPLOAD_INVALIDVERSION

SRV_ERR_UPLOAD_SYMBERR

SRV_ERR_UPLOAD_NBSYMBERR_NOCORRECT

SRV_ERR_UPLOAD_SYMBFILE

SRV_ERR_UPLOAD_READSYMBFILE

SRV_ERR_UPLOAD_PBMEM

SRV_ERR_UPLOAD_ABORTSYMB

SRV_ERR_UPLOAD_CHECKSYMB

SRV_ERR_UPLOAD_DIFFSYMB

La aplicación está protegida en modo lectura, por lo que no es posible conectarse con el autómata.

El servidor no soporta el nivel de la aplicación STX que desea abrir.

Se ha producido un error durante la transferencia de la aplicación.

Error de comunicación durante la lectura de la información integrada de la base.

Error de escritura. Si el disco de almacenamiento está saturado en el archivo dat.

Base de símbolos integrada en el autómata inválida.

Esta versión de PL7 no soporta la versión de la base de símbolos integrada.

Error interno en la base de símbolos integrada.

Incoherencia en los objetos almacenados en la base comprimida.

Problema de lectura de la base que contiene el autómata.

Error de lectura de la base que contiene el autómata.

La memoria está saturada, la operación no puede realizarse normalmente.

Abandono de la lectura del archivo de la base de símbolos integrada.

Se ha detectado una diferencia entre la suma de control integrada y la suma de control recalculada.

Se ha detectado una diferencia entre la información transferida y la información recalculada.

z Salida:

Código de retorno de tipo short. Será 0 cuando la carga se haya realizado correctamente; de lo contrario, será un código de error.

111

Servidor OLE Automation

GetSymbol

Generalidades

Descripción

Esta función permite dar el símbolo y el comentario asociados a una variable.

Síntesis: integer GetSymbol (String p_lpRepere, String* p_bsSymbole, String* p_bsComment) z z z z

Entrada:

Introduzca la cadena de caracteres que contiene la variable que se va a modificar o respecto a la que se van a introducir los datos.

Función llamada:

GetSymbol : función de la gestión de estación ( gesta.dll

).

Contexto nominal: el servidor PL7 está activo. Una aplicación está abierta en modo local.

Caso de error:

SRV_ERR_ADDRESSSYNTAX

SRV_ERR_GEN_NOTOPEN

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_ADDRESS

SRV_ERR_GEN_ACTION

La cadena de caracteres pasada a parámetros no corresponde a ninguna variable.

No hay ninguna aplicación abierta.

p_lpRepere está vacío.

Error al ejecutar la función.

Dirección incorrecta.

Error de ejecución de la función.

z Salida:

Código de retorno de tipo short . Bien 0 si la carga se realiza correctamente, bien un código de error.

Dos cadenas de caracteres: z El símbolo asociado ( p_bsSymbole ).

z El comentario asociado ( p_bsComment ).

112

35013159.01 07/2008

Servidor OLE Automation

SetServerIHM

Generalidades

Descripción

Esta función permite visualizar o no el servidor PL7. Permite pasar de un modo de funcionamiento a otro. Es decir, de un servidor PL7Pro sin IHM a un servidor PL7

Pro con IHM y a la inversa.

Sintaxis: integer SetServerIHM (integer p_bIHM) z z z z

Entrada:

Un booleano (visualización IHM o sin visualización).

Función llamada:

SetIHMServer : función de la aplicación Windows (sawinapp.cpp).

Contexto nominal: el servidor PL7 está activo.

Caso de error:

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_MODIFAPPLI

Error al ejecutar la función.

Aplicación en curso de modificación.

z Salida:

Código de retorno de tipo short . Bien 0 si la carga se realiza correctamente, bien un código de error.

35013159.01 07/2008

113

Servidor OLE Automation

SetDownloadFunction

Generalidades

Descripción

Esta función permite autorizar o no autorizar la transferencia de una aplicación mediante el servidor en un autómata.

Sintaxis: booleano SetDownloadFunction (integrar Download) z z z z

Entrada:

Introducir 1 entero (valor 0 ó 1) que permita activas o no activar la transferencia de la aplicación en el autómata,

Contexto nominal: z El servidor PL7 está activo, z PL7 está en modo local.

Salida:

TRUE.

Limitaciones:

Esta función sólo prohibe la transferencia para una utilización en modo servidor.

114

35013159.01 07/2008

Servidor OLE Automation

GetPL7State

Generalidades

Descripción

Esta función permite obtener el estado del servidor.

Sintaxis: integer GetPL7State (String* p_lpStation, String * p_lpConnection) z z z

Función llamada:

GetEtatPL7 : función de la gestión de estación ( gesta.dll

).

Contexto nominal: el servidor PL7 está activo.

Caso de error:

SRV_ERR_GEN_ACTION Error al ejecutar la función.

z Salida:

Código de retorno de tipo short . Bien 0 si la carga se realiza correctamente, bien un código de error.

Dos cadenas de caracteres informan al usuario sobre: z el estado de la estación (abierta o cerrada); z el estado del modo (local o conectado). En modo conectado, se indica si el estado del autómata es run o stop.

35013159.01 07/2008

115

Servidor OLE Automation

GetSTXAppIdentity

Generalidades

Descripción

Esta función permite conocer la información general sobre una aplicación.

Sintaxis: integer GetSTXAppIdentity (String p_lpNameStx, VARIANT FAR* p_pVarInfo) z z z z

Entrada:

Introduzca la cadena de caracteres ( p_lpNameStx ) que contiene el nombre de la aplicación.

Función llamada:

FicheIdentAppli : función de la gestión de estación ( gesta.dll

).

Contexto nominal:

El servidor PL7 está activo.

Casos de error:

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_ACTION

SRV_ERR_APPLIINFO_NOK p_ lpNameStx está vacío.

Error al ejecutar la función.

Información incorrecta.

8

9

6

7

10

11

4

5

2

3

0

1 z Salida:

Código de retorno de tipo short . Será 0 cuando la carga se haya realizado correctamente; de lo contrario, será un código de error.

Información visualizada:

Nombre de la estación

Número de versión de la aplicación

Fecha y hora de modificación

Firma de la estación

Firma relativa a la configuración de las entradas/salidas locales

Firma relativa a la configuración de las entradas/salidas remotas

Firma relativa al código PL7

Firma relativa al grafcet

Firma relativa a las constantes

Firma relativa a los símbolos

Firma relativa a la reserva

Comentario asociado a la aplicación

116

35013159.01 07/2008

Servidor OLE Automation

GetPLCAppIdentity

Generalidades

Descripción

Esta función permite conocer la información general sobre la aplicación contenida en un autómata.

Sintaxis: integer GetPLCAppIdentity (String p_lpDriver, String p_lpAdresse, VARIANTFAR* p_pvInfoAppli) z z z z

Entrada:

Introduzca las dos cadenas de caracteres que contienen el controlador y la dirección del autómata.

Función llamada:

FicheIdentAppliOnAutomate : función de la gestión de estación ( gesta.dll

).

Contexto nominal: el servidor PL7 está activo y en modo local.

Caso de error:

SRV_ERR_APPLIINFO_NOK

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_ADDRESS

SRV_ERR_COMPATIBLE_PLC

SRV_ERR_PLC_BLANK

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_DRIVER

SRV_ERR_GEN_COMMUNICATION

Información incorrecta.

Error al ejecutar la función.

Dirección incorrecta.

Problema de compatibilidad entre API y el programa PL7.

El autómata no contiene ninguna aplicación.

Problema al guardar la información relativa a la aplicación.

El parámetro p_lpDriver es incorrecto.

Error de comunicación.

35013159.01 07/2008

117

Servidor OLE Automation

6

7

4

5

2

3

0

1

8

9

10

11 z Salida:

Código de retorno de tipo short. Bien 0 si la carga se realiza correctamente, bien un código de error.

Información visualizada: nombre de la estación, número de la versión de la aplicación, fecha y hora de modificación, firma de la estación, firma relativa a la configuración de las entradas/salidas locales, firma relativa a la configuración de las entradas/salidas remotas, firma relativa al código PL7, firma relativa al grafcet, firma relativa a las constantes, firma relativa a los símbolos, firma relativa a la reserva, comentario asociado a la aplicación.

118

35013159.01 07/2008

Servidor OLE Automation

SendCommandToPLC

Generalidades

Descripción

Esta función permite enviar un comando al autómata.

Sintaxis: integer SendCommandToPLC (integer p_iCommand) z z z z

Entrada: tipo de comando que el usuario desee ejecutar.

Hay 3 tipos posibles: z SRV_COMMAND_INIT: comando de inicialización del autómata.

z z

SRV_COMMAND_STOP: comando Stop.

SRV_COMMAND_RUN: comando Run

Función llamada:

StationCommand : función de la gestión de estación ( gesta.dll

).

Contexto nominal: el servidor PL7 está activo. Una aplicación está abierta, PL7 está en modo conectado, en STOP.

Caso de error:

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_NOTOPEN

SRV_ERR_COMMAND_NOTINLOCAL

SRV_COMMAND_ERRINIT

Comando incorrecto.

No hay ninguna aplicación abierta.

El servidor está en modo local.

No es posible llevar a cabo la función INIT, el autómata está en RUN.

z Salida:

Código de retorno de tipo short . Bien 0 si la carga se realiza correctamente, bien un código de error.

35013159.01 07/2008

119

Servidor OLE Automation

SetDriverAndAdresse

Generalidades

Descripción

Esta función permite guardar el controlador y la dirección de la estación actual.

Sintaxis: integer SetDriverAndAdresse (String p_lpDriver, String p_lpAdresse) z z z z

Entrada:

Introduzca las dos cadenas de caracteres que contienen el controlador y la dirección del autómata.

Función llamada:

DriverAndAdresse : función de la gestión de estación ( gesta.dll

).

Contexto nominal:

El servidor PL7 está activo. Una aplicación está abierta en modo local. Si no se introducen los parámetros o éstos son incorrectos, los valores actuales son invariables.

Casos de error:

SRV_ERR_GEN_ADDRESS

SRV_ERR_GEN_DRIVER

SRV_ERR_PLC_CONNECT

SRV_ERR_PLC_ACTION

SRV_ERR_PARAM_EMPTY

La dirección pasada a parámetro es incorrecta.

El controlador pasado a parámetro es incorrecto.

El servidor está en modo conectado.

Error al ejecutar la función.

Los parámetros están vacíos.

z Salida:

Código de retorno de tipo short . Será 0 cuando la carga se haya realizado correctamente; de lo contrario, será un código de error.

120

35013159.01 07/2008

Servidor OLE Automation

OpenTool

Generalidades

Descripción

Esta función permite abrir las herramientas presentes en la cadena de caracteres pasada a parámetro.

Sintaxis: integer OpenTool (String p_lpListTool) z z z z

Entrada:

Cadena de caracteres que contiene la lista de las herramientas que debe abrir el servidor.

Ejemplo de formato: tools1;tools2;tools3.

Función llamada:

OpenTool : función de la gestión de estación ( gesta.dll

).

Contexto nominal:

El servidor PL7 con IHM está activo. Hay una aplicación abierta.

Casos de error:

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_NOTOPEN

SRV_ERR_GEN_WITHIHM

SRV_ERR_GEN_OPENEDTVDATA

No es posible abrir la herramienta.

Parámetro vacío

No hay ninguna aplicación abierta.

Función disponible con el servidor PL7 en modo IHM.

No se puede abrir la herramienta "Tabla de animación".

35013159.01 07/2008

121

Servidor OLE Automation z Salida:

Código de retorno de tipo short .

Lista de los números de herramientas aplicables a PL7

188

189

207

210

212

214

215

13

14

15

8

10

12

Número

5

6

7

Designación

Abre el editor LD.

Abre el editor Grafcet.

Abre el editor IL.

Abre el editor ST.

Abre el editor de configuración.

Abre el editor de variables.

Abre el navegador de referencias cruzadas.

Crea una tabla de animación.

Abre el editor de documentación.

Abre la herramienta de importación de la aplicación.

Abre el editor de texto.

Abre la pantalla de funcionamiento.

Abre el editor de tipo DFB.

Abre el navegador de la aplicación.

Abre el navegador de depuración Grafcet.

Abre el editor de código DFB en ST.

122

35013159.01 07/2008

Servidor OLE Automation

SetPosPL7Windows

Generalidades

Descripción

Esta función permite dimensionar la ventana PL7.

Sintaxis: integer PosPL7Windows (integer CoordX, integer CoordY, integer CoordCX,integer

CoordCY) z z z z

Entrada: coordenadas x, y de la ventana.

Función llamada:

MoveWindow : Función mfc.

Contexto nominal: el servidor PL7 con IHM está activo.

Caso de error:

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_WITHIHM

Error del comando.

Parámetro vacío.

Función disponible con el servidor PL7 en modo

IHM.

z Salida:

Código de retorno de tipo short .

35013159.01 07/2008

123

Servidor OLE Automation

ShowProgram

Generalidades

Descripción

Esta función permite abrir los programas presentes en la cadena de caracteres pasada a parámetro.

Sintaxis: integer ShowProgram (String p_lpListProgram) z z z z

Entrada:

Introduzca las cadenas de caracteres que contienen la lista de programas que el servidor debe abrir.

Ejemplo de formato: mast\lad1;mast\lit2;evt\evt0;sr1;mast\prl

Función llamada:

ShowProgram : función de la gestión de estación ( gesta.dll

).

Contexto nominal:

El servidor PL7 con IHM está activo.

Hay una aplicación abierta.

Casos de error:

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_NOTOPEN

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_WITHIHM

Error del comando

No hay ninguna aplicación abierta.

Parámetro vacío

Función disponible con el servidor PL7 en modo

IHM

No es posible abrir el módulo.

SRV_ERR_GEN_SHOWPROGRAM z z

Salida:

Código de retorno de tipo short . Será 0 cuando la carga se haya realizado correctamente; de lo contrario, será un código de error.

Limitaciones:

Esta función no puede abrir un DFB en el que no se hayan iniciado instancias.

Para visualizar el código de un DFB en el que no se hayan iniciado instancias, es necesario utilizar la función ShowDFB .

124

35013159.01 07/2008

Servidor OLE Automation

CloseProgram

Generalidades

Descripción

Esta función permite cerrar los programas presentes en la cadena de caracteres pasada a parámetro.

Sintaxis: integer CloseProgram (String p_lpListProgram) z z z z

Entrada:

Cadena de caracteres que contiene la lista de programas que el servidor debe cerrar.

Ejemplo de formato: mast\lad1;mast\lit2;evt\evt0;sr1;mast\prl.

Función llamada:

CloseProgram : función de la gestión de estación ( gesta.dll

).

Contexto nominal:

El servidor PL7 con IHM está activo.

Hay una aplicación abierta.

Casos de error:

SRV_ERR_GEN_NOTOPEN

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_WITHIHM

No hay ninguna aplicación abierta.

Error al cerrar

Parámetro vacío

Función disponible con el servidor PL7 en modo

IHM.

No se puede cerrar el módulo.

SRV_ERR_GEN_CLOSEPROGRAMM z z

Salida:

Código de retorno de tipo short . Será 0 cuando la carga se haya realizado correctamente; de lo contrario, será un código de error.

Limitaciones:

Esta función no puede cerrar un DFB abierto.

35013159.01 07/2008

125

Servidor OLE Automation

ShowIOModule

Generalidades

Descripción

Esta función permite abrir los módulos de entradas/salidas presentes en la cadena de caracteres pasada a parámetro.

z z z z

Entrada:

Cadena de caracteres que contiene la lista de módulos que el servidor debe abrir.

El formato de la cadena de caracteres es rack,módulo; rack,módulo.

Ejemplo de formato: 0,0;0,1;1,2.

Función llamada:

ShowIOModule : función de la gestión de estación ( gesta.dll

).

Contexto nominal:

El servidor PL7 con IHM está activo.

Hay una aplicación abierta.

Casos de error:

SRV_ERR_GEN_NOTOPEN

SRV_ACTION_NOK

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_WITHIHM

No hay ninguna aplicación abierta.

Problema de activación de los derechos de usuario

Parámetro vacío

Función disponible con el servidor PL7 en modo

IHM z z

Salida:

Código de retorno de tipo short . Será 0 cuando la carga se haya realizado correctamente; de lo contrario, será un código de error.

Limitaciones:

La apertura de un módulo de E/S se realiza en el modo local; la pantalla de configuración del módulo está abierta. Si el usuario pasa del modo local al modo conectado, el servidor no cambia de la pantalla de configuración a la pantalla de depuración. El usuario puede actuar directamente en el pl7pro o bien abrir o cerrar el módulo a través del cliente.

126

35013159.01 07/2008

Servidor OLE Automation

CloseIOModule

Generalidades

Descripción

Esta función permite cerrar los módulos de entrada/salida presentes en la cadena de caracteres pasada a parámetro.

Sintaxis integer CloseIOModule (String p_lpListIOModule).

z z z z

Entrada:

Cadena de caracteres que contiene la lista de módulos que el servidor debe abrir.

Ejemplo de formato: 0,0;0,1;1,2.

Función llamada:

CloseIOModule : función de la gestión de estación ( gesta.dll

).

Contexto nominal:

El servidor PL7 con IHM está activo.

Hay una aplicación abierta.

Casos de error:

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_NOTOPEN

SRV_ERR_GEN_WITHIHM

Error del comando de cierre

Parámetro vacío

No hay ninguna aplicación abierta.

Función disponible con el servidor PL7 en modo

IHM z z

Salida:

Código de retorno de tipo short . Será 0 cuando la carga se haya realizado correctamente; de lo contrario, será un código de error.

Limitaciones:

Esta función no cierra el editor de configuración abierto a través de la función

ShowIOModule .

35013159.01 07/2008

127

Servidor OLE Automation

ShowDFB

Generalidades

Descripción

Esta función permite visualizar el código de uno o varios DFB presentes en la cadena de caracteres pasada a parámetro. Para la apertura de un DFB a través de esta función, no es necesario iniciar una instancia.

Sintaxis integer ShowDFB (String p_lpListeDFB) z z z z

Entrada:

Cadena de caracteres que contiene la lista de DFB que el servidor debe abrir.

Función llamada:

ShowDFB : función de la gestión de estación ( gesta.dll

).

Contexto nominal:

El servidor PL7 con IHM está activo.

Hay una aplicación abierta.

Casos de error:

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_NOTOPEN

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_WITHIHM

Parámetro vacío.

No hay ninguna aplicación abierta.

Problema al abrir un DFB.

Función disponible con el servidor PL7 en modo

IHM.

z Salida:

Código de retorno de tipo short . Será 0 cuando la carga se haya realizado correctamente; de lo contrario, será un código de error.

128

35013159.01 07/2008

Servidor OLE Automation

CloseDFB

Generalidades

Descripción

Esta función permite cerrar uno o varios DFB presentes en la cadena de caracteres pasada a parámetro.

Sintaxis integer CloseDFB (String p_lpListeDFB) z z z z

Entrada:

Cadena de caracteres que contiene la lista de DFB que el servidor debe cerrar.

Función llamada:

CloseDFB : función de la gestión de estación ( gesta.dll

).

Contexto nominal:

El servidor PL7 con IHM está activo.

Hay una aplicación abierta.

Casos de error:

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_NOTOPEN

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_WITHIHM

Parámetro vacío.

No hay ninguna aplicación abierta.

Problema al abrir un DFB

Función disponible con el servidor PL7 en modo

IHM.

z Salida:

Código de retorno de tipo short . Será 0 cuando la carga se haya realizado correctamente; de lo contrario, será un código de error.

35013159.01 07/2008

129

Servidor OLE Automation

GetMessageError

Generalidades

Descripción

Esta función permite asociar un mensaje de error en función del código pasado a parámetro.

Sintaxis

String GetMessageError (integer p_iCodeError) z z

Entrada:

El código de error de uno de los servicios que debe obtenerse.

Contexto nominal: el servidor PL7 está activo.

z Salida:

Una cadena de caracteres que corresponde al mnemónico del error.

130

35013159.01 07/2008

Servidor OLE Automation

GetServerVersion

Generalidades

Descripción

Esta función permite conocer el número de la versión del servidor PL7pro.

Sintaxis

String GetServerVersion () z Contexto nominal: el servidor PL7 está activo.

z Salida:

Una cadena de caracteres que corresponde al mnemónico de la versión del servidor PL7pro.

35013159.01 07/2008

131

Servidor OLE Automation

ImportScyFile

Generalidades

Descripción

Esta función permite importar a partir de un archivo scy de los símbolos en la aplicación activa.

Sintaxis: entero ImportScyFile (string ScyFile) z z z z

Entrada:

Introducir 1 cadena de caracteres que contenga el nombre y la ruta del archivo scy que se va a importar.

Función denominada:

ImportScyFile: Función de la gestión estación ( gesta.dll

).

Contexto nominal: z El servidor PL7 está activo, z PL7 está en modo local, estación abierta.

Caso de error:

SRV_ERR_GEN_ACTION

SRV_ERR_GEN_PARAM_EMPTY

SRV_ERR_GEN_NOTOPEN

SRV_ERR_SRC_FILE

Error producido durante la ejecución de la función.

El nombre del archivo dat no es correcto o está vacío.

No hay aplicación STX abierta.

Problema en el archivo original.

z z

Salida:

Código de retorno de tipo short. 0 en el caso de una importación con éxito.

Limitaciones:

El servidor de PL7, sin IHM, una vez que la importación haya tenido éxito, no puede funcionar en modo con IHM sin un guardado previo de la aplicación abierta.

132

35013159.01 07/2008

Servidor OLE Automation

DownloadStationWithSymbol

Generalidades

Descripción

Esta función permite cargar una aplicación y su base comprimida de símbolos en el autómata.

Sintaxis: entero DownloadStationWithSymbol (String p_IpDriver, String p_IpAdresse) z z z z

Entrada: z 2 cadenas de caracteres que contiene el driver y la dirección del autómata.

Función denominada:

DownloadStationWithSymbol: Función de la gestión de la estación ( gesta.dll

).

Contexto nominal: z z

El servidor PL7 está activo.

Una aplicación está abierta, contiene símbolos y/o dfb. La aplicación se ha z configurado con un cartucho de memoria que admite la base de símbolos,

PL7 está en local,

Si los parámetros son cadenas vacías, el servidor ejecuta la función con el driver o con la dirección actual.

Caso de error:

SRV_ERR_DOWNLOAD_CART

SRV_ERR_COMPATIBLE_PLC

SRV_ERR_PC_BLANK

SRV_ERR_GEN_NOTOPEN

SRV_ERR_GEN_ADDRESS

SRV_ERR_GEN_DRIVER

SRV_ERR_GEN_RESERVED

Problema de compatibilidad del cartucho entre la aplicación abierta y el autómata.

Problema de compatibilidad entre la aplicación abierta y el autómata.

No hay ninguna aplicación abierta.

No hay ninguna aplicación abierta.

El parámetro p_lpAddresse no es correcto.

El parámetro p_lpDriver no es correcto.

El autómata está reservado, por lo que es imposible realizar la conexión.

SRV_ERR_GEN_COMMUNICATION Problema de comunicación entre el PL7pro y el autómata.

SRV_ERR_PLC_CONNECT Es necesario estar en modo local para efectuar la descarga.

SRV_ERR_GEN_ACTION Error producido durante la ejecución de la función.

SRV_ERR_GEN_PROTECTEDAPPLI La aplicación incluida en el autómata está protegida.

35013159.01 07/2008

133

Servidor OLE Automation z Salida:

Código de retorno de tipo short. Ya sea 0 en el caso de una carga con éxito o un código de error.

134

35013159.01 07/2008

Servidor OLE Automation

CompareSymbolPCAndSymbolPLCAppli

Generalidades

Descripción

Esta función permite conocer la información general de una aplicación incluida en un autómata.

Sintaxis:

Entero CompareSymbolPCAndSymbolPLCAppli (VARIANT FAR* p_pVarInfo i) z z z

Función denominada:

FicheCompareSymbolPCAndSymbolPLCAppli: Función de la gestión de la estación ( gesta.dll

).

Contexto nominal: z El servidor PL7 está activo, y además se encuentra en modo local. Una z aplicación está abierta, contiene símbolos y/o dfbs.

La aplicación se ha configurado con un cartucho de memoria que admite la base de símbolos.

Caso de error:

SRV_ERR_GEN_ADDRESS

SRV_ERR_COMPATIBLE_PLC

SRV_ERR_PLC_BLANK

SRV_ERR_GEN_ACTION

SRV_ERR_APPLIINFO_NOK

SRV_ERR_GEN_DRIVER

SRV_ERR_GEN_COMMUNICATION

SRV_ERR_GEN_NOTOPEN

SRV_ERR_GEN_CONNECT

SRV_ERR_GEN_COMPARESYMB

Dirección incorrecta.

Problema de compatibilidad del TSX con el software PL7.

El autómata no contiene aplicación.

Problema durante el almacenamiento de información de la aplicación.

Información incorrecta.

El parámetro p_lpDriver no es correcto.

Error de comunicación.

No hay ninguna aplicación abierta.

No se ha podido realizar la conexión.

Se ha producido un error durante la comparación.

35013159.01 07/2008

135

Servidor OLE Automation z Salida:

Código de retorno de tipo short. Ya sea 0 en el caso de una carga con éxito o un código de error.

z 1: Número total de símbolos contenidos en la aplicación local.

z z z

2: Suma de control de la base de símbolos contenidos en la aplicación local.

3: Tamaño de los símbolos contenidos en una aplicación local.

4: Tamaño de los símbolos de la base comprimida contenida en la aplicación local.

z z z z z

5: Fecha de la última modificación de la base comprimida contenida en la aplicación local.

6: Número total de dfb contenidos en la aplicación local.

7: Fecha de la última modificación de los dfb de la base comprimida contenida en la aplicación local.

8: Número total de símbolos contenidos en la aplicación integrada.

9: Suma de control de la base de símbolos contenidos en la aplicación integrada.

z z z z z z

10: Tamaño de los símbolos contenidos en la aplicación integrada.

11: Tamaño de los símbolos de la base comprimida contenida en la aplicación integrada.

12: Fecha de la última modificación de la base comprimida contenida en la aplicación integrada.

13: Número total de dfb contenidos en la aplicación integrada.

14: Fecha de la última modificación de dfb de la base comprimida contenida en la aplicación integrada.

15: Resultado de la comparación.

136

35013159.01 07/2008

Rendimiento

6

Presentación

Objeto

Contenido

En este capítulo se describe el rendimiento de las instrucciones del lenguaje PL7.

De este modo, se puede calcular el tiempo de ejecución de una aplicación y el tamaño de memoria ocupada.

Este capítulo contiene las siguientes secciones:

Sección

6.1

6.2

6.3

6.4

Apartado

Información general

Rendimiento de las instrucciones en autómatas Micro

Rendimiento de las instrucciones en autómatas Premium

Funciones avanzadas

Página

138

140

173

218

137

35013159.01 07/2008

Rendimiento

6.1

Información general

Principios de cálculo

Duración de la ejecución del programa de aplicación

El cálculo del tiempo de ejecución del programa se efectúa con la ayuda de las tablas de las páginas siguientes, realizando la suma de los tiempos para cada instrucción del programa.

Nota: el tiempo obtenido corresponde a un tiempo máximo. En efecto, sólo se tratará un bloque de operación o un subprograma si la condición de ejecución

(ecuación lógica que condiciona la ejecución del bloque o del subprograma) es verdadera. Por lo tanto, es posible que el tiempo efectivo sea muy inferior al tiempo máximo calculado.

El cálculo del tiempo de ciclo completo hace que intervengan los parámetros específicos del autómata (tiempo de overhead, duración del intercambio de entradas/salidas...). Para el procedimiento de cálculo completo, remítase al manual de puesta en marcha del autómata al que se hace referencia (capítulo de rendimiento).

138

35013159.01 07/2008

Tamaño de la memoria de aplicación

Rendimiento

El tamaño de la aplicación es la suma de los elementos siguientes:

Elemento

Programa

Método de cálculo

Efectúe la suma de cada una de las instrucciones del programa y multiplique por el coeficiente correspondiente al lenguaje utilizado (véase la página siguiente).

Funciones avanzadas Véase Tamaño de la memoria de las funciones avanzadas,

p. 231

.

Objetos PL7 configurados Véase

Tamaño de memoria de los objetos, p. 220

.

Módulo de entradas/ salidas configuradas

Comentarios

Véase Resumen del consumo de memoria de los módulos en

Micro, p. 221

y Resumen del consumo de memoria de los

módulos en Premium, p. 224

Los comentarios del programa ocupan un byte por carácter.

En las tablas que figuran en las páginas siguientes, la información sobre los tamaños se refiere al volumen de códigos de las instrucciones.

Para saber el tamaño total de una instrucción o de un programa, ha de aplicarse un coeficiente multiplicador que tenga en cuenta la información típica por lenguaje.

Lenguaje

Lenguaje de contactos

Volumen total = 1,7 x Volumen de código

Literal estructurado Volumen total = 1,6 x Volumen de código

Lista de instrucciones

Tamaño

Para autómata Micro: Volumen total = 1,4 x Volumen de código

Para autómata Premium: Volumen total = 1,6 x Volumen de código

Grafcet Volumen gráfico (en palabras) = 214 + 17 * n.º de etapas del gráfico

+ 2 * n.º total de etapas configuradas + 4 * n.º de acciones programadas

Nota: Las cifras indicadas en las tablas siguientes son estimaciones de los promedios obtenidos tras una aplicación tipo. No es posible ofrecer información exacta ya que PL7 optimiza el empleo de la memoria en función del contenido y de la estructura de la aplicación.

En el capítulo

Descripción de las zonas de memoria, p. 219 se recuerdan las

diferentes zonas de memoria ocupadas por la aplicación.

35013159.01 07/2008

139

Rendimiento

6.2

Rendimiento de las instrucciones en autómatas

Micro

Presentación

Objeto

Contenido

Esta sección describe el rendimiento de las instrucciones ejecutadas en autómata

Micro.

Esta sección contiene los siguientes apartados:

Apartado

Rendimiento de las instrucciones booleanas

Rendimiento de los bloques de función

Aritmética entera y con coma flotante

Instrucciones sobre el programa y estructuras de control

Conversiones digitales

Instrucciones sobre cadena de bits

Instrucción sobre tablas de palabras, palabras dobles y flotantes

Instrucciones de gestión del tiempo

Instrucciones sobre cadenas de caracteres

Funciones específicas y funciones Orphée

Instrucciones de entradas/salidas explícitas

Página

141

144

147

151

153

154

157

165

167

169

172

140

35013159.01 07/2008

Rendimiento de las instrucciones booleanas

Rendimiento

35013159.01 07/2008

141

Rendimiento

Rendimiento

LD IL

La tabla siguiente describe el rendimiento de las instrucciones booleanas.

ST Objetos Tiempo de ejecución (

μ s)

37 05/08/10 37 20

RAM

37 20 cart.

0,25 0,13 0,19 1

Tamaño

En palabras

P

N

LD

LDN

LDR,

LDF

%M1 (1)

%M1[%MW2]

%MW0:X0 (2)

%IWi.j:Xk (3)

%MW0[%MW8]:X0

%KW0[%MW8]:X0

%M1

%M1[%MW2]

0,25

13,10

6,06

77,04

16,29

87,27

0,50

13,01

0,13

12,85

5,75

69,25

15,55

79,05

0,25

12,75

0,19

12,85

5,75

69,25

15,55

79,05

0,38

12,75

2

7

8

12

4

8

1

7

AND,

ANDN , AND (, AND (N , idem OR idem LD,LDN

ANDR, ANDF, AND (R, AND (F, idem OR idem LDR,LDF

P

N

XOR

XORN

XORR,

XORF

%M1

%M1[%MW2]

%MW0:X0

%IWi.j:Xk

%MW0[%MW8]:X0

%KW0[%MW8]:X0

%M1

%M1[%MW2]

1,25

26,94

12,86

83,84

33,33

104,31

2,25

27,28

0,63

26,08

11,88

75,38

31,48

94,98

1,13

26,13

0,94

26,26

12,06

75,56

31,66

95,16

1,69

26,44

14

18

9

19

5

13

10

14

142

35013159.01 07/2008

Rendimiento

LD IL ST Objetos

ST

STN

S

R

%M1 (1)

%M1[%MW2]

S

%MW0:X0

%NW{i}.j:Xk (3)

R

%MW0[%MW8]:X0 bobinas múltiples en ladder, «coste» de la segunda bobina y de las siguientes bloque de operación

[ acción] bloque de comparación horizontal bloque de operación vertical

Convergencia

Divergencia no seguida de una convergencia

[ LD

[comparación

]]

[ )]

[ ]

[ )] bloque ejecutado no ejecutado

Tiempo no comprendido en la comparación entre 2 %MWi bloque ejecutado

Ladder, 1 divergencia

[MPS, MPP,

MRD]

Lista MPS+MPP

Lista MRD

Tiempo de ejecución (

μ s)

37 05/08/10 37 20

RAM

37 20 cart.

0,50

13,10

5,88

76,86

16,41

0,25

0,25

12,85

5,60

69,10

15,65

0,13

0,38

12,85

5,60

69,10

15,65

0,19

0,74

5,55

0,00

12,38

0,25

0,25

0,75

0,25

0,75

5,40

0,00

11,85

0,13

0,13

0,38

0,13

0,75

5,40

0,00

11,85

0,19

0,19

0,56

0,19

4

1

1

3

1

1

1

0

4

8

2

7

8

1

Tamaño

En palabras

Leyenda

1.

Se refiere a todos los objetos bit que se pueden forzar: %I, %Q, %X, %M, %S,

2.

otros objetos del mismo tipo: bits de salida del bloque de función %TMi.Q..., bits extraídos de palabras del sistema %SWi:Xj

3.

otros objetos del mismo tipo: bits extraídos de palabras comunes %NW{i}j:Xk, bits extraídos de palabras de E/S %IWi.j.Xk, %QWi.j.Xk, bits extraídos de %KW, bits de fallo %Ii.j.ERR.

35013159.01 07/2008

143

Rendimiento

Rendimiento de los bloques de función

Temporizador

IEC

La tabla siguiente describe el rendimiento del bloque de función del temporizador

IEC.

LD IL ST Condiciones Tiempo de ejecución

(

μ s)

3705/08/10 3720

Tamaño

(palabras)

41,11 3 Flanco ascendente en IN

IN %TM1

(flanco ascendente)

START

%TM1

Inicio del temporizador

Flanco descendente en IN

IN %TM1

(flanco descendente)

DOWN

%TM1

Parada del temporizador

IN =1 IN %TM1

(=1)

Temporizador activo

43,39

17,47

18,74

17,01

17,99

IN =0 IN %TM1

(=0)

Temporizador inactivo

17,40 16,67

Temporizador

PL7-3

La tabla siguiente describe el rendimiento del bloque de función del temporizador

PL7-3.

LD IL ST Condiciones Tiempo de ejecución

(

μ s)

3705/08/10 3720

Activar

Tamaño

(palabras)

3

E =0

START

%T1

STOP

%T1

RESET

%T1

Inmovilizar 12,63

Poner a cero 12,94

12,15

12,15

Temporizador activo

17,55

Temporizador inactivo

17,00

144

35013159.01 07/2008

Contador progresivo/ regresivo

Monoestable

Rendimiento

La tabla siguiente describe el rendimiento del bloque de función del contador progresivo/regresivo.

LD IL ST Condiciones Tiempo de ejecución

(

μ s)

3705/08/10 3720

17,92 Puesta a cero, R=1

Preconfigur ación, S=1

R %C8 (=1) RESET

%C8

S %C9 (=1) PRESET

%C9

Puesta a cero 18,69

Preconfigura ción

UP %C8 Up

20,42

19,92 Flanco ascendente en CU

CU %C8

(flanco)

19,73

19,10

Flanco ascendente en CD

CD %C9

(flanco)

Entradas inactivas

R/S/CU/CD bit inactivo

DOWN

%C9

Down

Ninguna acción

19,92

13,27

19,10

12,81

Tamaño

(palabras)

3

La tabla siguiente describe el rendimiento del bloque de función monoestable.

LD IL ST

Flanco ascendente en S

S %MN0, flanco ascendente

S=1 S %MN0,

S =1/0

START

%MN0

Condiciones Tiempo de ejecución

(

μ s)

Inicio

3705/08/10

35,08

3720

33,16

Tamaño

(palabras)

3

Monoestable activo

11,64 11,17

35013159.01 07/2008

145

Rendimiento

Registro

Programador cíclico

La tabla siguiente describe el rendimiento del bloque de función del registro.

LD IL

Flanco en I I %R2

(flanco)

Flanco en O O %R2

(flanco)

R=1

Entradas inactivas

R %R1

(=1)

I/O/R, bit inactivo

ST

PUT %R2

Condiciones Tiempo de ejecución

(

μ s)

Almacenamie nto

21,90 21,27

21,27 GET %R2 Retirada del almacenamie nto

RESET

%R2

21,90

Puesta a cero 16,90

No hay ninguna acción

12,61

16,02

12,19

Tamaño

(palabras)

3

La tabla siguiente describe el rendimiento del programador cíclico.

LD

Flanco en U

R=1

Entradas inactivas

IL

U %DR0

R %DR1

R/U, bit inactivo

ST

UP %DR1

RESET

%DR2

Condiciones

Up, fijo

Puesta a cero, fijo

Tiempo de ejecución (

μ s)

181,37 169,13

Por bit de orden 19,30

174,15

Por bit de orden 19,30

No hay ninguna acción, fijo

175,92

19,30

162,03

19,30

164,00

Por bit de orden 19,30 19,30

Tamaño

(palabras)

3

146

35013159.01 07/2008

Rendimiento

Aritmética entera y con coma flotante

Correcciones en función del tipo de objetos

El tiempo y volúmenes de las páginas siguientes vienen dados para los objetos de tipo %MW0, %MD0 o %MF0.

La tabla siguiente describe las correcciones que han de añadirse a los valores dados en la tabla de rendimiento de las instrucciones aritméticas si se emplean otros tipos de objetos.

Tipo de objeto

Valor inmediato de longitud simple

Valor inmediato de longitud doble

Palabras, palabras dobles o flotantes indexadas

Posición del objeto

-

-

Tipo de corrección

Tiempo de ejecución (

μ s)

3705/08/10 3720

1,20 1,10 Valor que ha de eliminarse del mencionado para %MW

Valor que ha de eliminarse del mencionado para %MD o

%MF

0,75 1

0

0

10,05 4 Tras el signo:=

Primera operación, el primer operando no se ha indexado, o asignación

Valor que ha de añadirse

10,52

Valor que ha de añadirse

11,20 10,60

Tamaño en palabras

5

Segundo operando, si el primero se ha indexado de la misma manera

Valor que ha de añadirse

Valor que ha de añadirse

13,37

70,98

12,60 5

63,50 2 %KWi,

%KWi[%MWj]

%KDi, %KFi

Palabras comunes, palabras de entrada/salida

35013159.01 07/2008

147

Rendimiento

Corrección en función del contexto de la operación

La tabla siguiente describe las correcciones que han de añadirse a los valores dados en la tabla de rendimiento de las instrucciones aritméticas en función del contexto de la operación.

Contexto de la operación

La operación se encuentra, como mínimo, en segunda posición dentro de la frase.

Ejemplo: %MW2 en:=%MW0*%MW1*

%MW2

Operación con resultado de una operación entre paréntesis o de mayor prioridad

Ejemplo:

%MW0+%MW2+(...)

Tipo de objeto Tipo de

%MW

%MD o %MF

%MW

%MD o %MF corrección

Tiempo de ejecución

(

μ s)

3705/08/10 3720

0,55 Valor que ha de añadirse al mencionado para %MW

0,69

Valor que ha de añadirse al mencionado para %MD o

%MF

0,99

Valor que ha de añadirse al mencionado para %MW

2,86

Valor que ha de añadirse al mencionado para %MD o

%MF

3,60

0,75

2,55

3,15

Tamaño

37xx

0

0

1

1

148

35013159.01 07/2008

Rendimiento

Tabla de rendimiento de las instrucciones

La tabla siguiente describe el rendimiento de las instrucciones aritméticas.

ST Objetos

/ objeto tras:=

:=

%MW0

%MD0, %MF0

%MW0

%MD0 y %MF0

=, <>, <=, <, >, >= %MW0

%MD0

%MF0

AND, OR, XOR %MW0

%MD0

+, %MW0

*

/, REM

ABS, -objeto

NOT

SQRT

INC, DEC

%MD0

%MF0

%MW0

%MD0

%MF0

%MW0

%MD0

%MF0

%MW0

%MD0

%MF0

%MW0

%MD0

%MW0

%MD0

%MF0

%MW0

%MD0

Condiciones

205,21

62,47

7,20

9,97

13,01

6,69

7,80

17,02

85,73

165,04

4,86

5,20

9,21

62,83

9,75

39,63

58,26

10,69

8,94

10,71

29,06

7,29

9,21

7,29

Tiempo de ejecución (

μ s)

3705/08/10 3720

4,81

6,45

4,50

5,70

4,46

5,15

4,30

4,85

2

2

2

2

Tamaño

(palabras)

37xx

201,38 3

60,25 3

6,95 3

9,53 3

12,50 3

6,45 3

7,40 3

16,70 3

85,25 3

158,40 3

4,40 2

4,75 2

8,50 4

10,26 4

28,39 4

6,90

8,55

6,90

3

3

3

8,55 3

61,20 3

9,10 3

36,50 3

56,90 3

10,08 3

35013159.01 07/2008

149

Rendimiento

ST Objetos

SHL, SHR, ROL,

ROR

%MW0

%MD0

LN

LOG

EXP

EXPT

TRUNC

COS

SIN

TAN

ACOS

ASIN

ATAN %MF0

DEG_TO_RAD

RAD_TO_DEG

%MF0

%MF0

%MF0

%MF0

%MF0

%MF0

%MF0

%MF0

%MF0

%MF0

%MF0

%MF0

Condiciones

Para un bit

Para un bit

Por bit suplementario

Tiempo de ejecución (

μ s)

3705/08/10 3720

17,74

20,58

0,063

17,05

19,15

5

5

Tamaño

(palabras)

37xx

1371,60

1458,00

1155,60

2988,00

204,00

2829,60

2840,40

2937,60

4082,40

4082,40

2786,40

852,00

720,00

2620,0

0

2630,0

0

2720,0

0

3780,0

0

3780,0

0

2580,0

0

1270,0

0

1350,0

0

1070,0

0

3

3

3

2490,0

0

3

170,00 3

3

3

3

3

3

3

710,00 3

600,00 3

150

35013159.01 07/2008

Rendimiento

Instrucciones sobre el programa y estructuras de control

Rendimiento de las instrucciones en el programa

La tabla siguiente describe el rendimiento de las instrucciones sobre el programa.

ST

Jump %Li

Maskevt

Tiempo de ejecución (

μ s)

3705/08/10

41,93

12,21

3720

38,20

10,80

3

1

Tamaño (palabras)

37xx

Unmaskevt

SRi

Return

40,27

48,68

42,18

37,10

42,88

38,33

1

3

3

35013159.01 07/2008

151

Rendimiento

Rendimiento de las estructuras de control

La tabla siguiente describe el rendimiento de las instrucciones de tipo de estructuras de control.

ST Tiempo de ejecución (

3705/08/10 3720

μ s) Tamaño

(palabras)

37xx

<cond> evaluación de la condición bit que se puede forzar véase la instrucción booleana LD %M1 comparación véase comparaciones =,<,> ...

if <cond > then

<action> end_if; condición verdadera condición falsa

(salto) los tiempos y volúmenes indicados anteriormente se han de añadir a los de la acción que contiene la estructura

3,60

5,55

If <cond> then <action1> else <action2> end_if; condición verdadera

9,15

3,30

5,40

8,70

2

4

5,40 condición falsa while <cond> do.<action> end_while

5,55 paso al anillo con nuevo cierre

9,15 salida del anillo 5,55 repeat <action> until <cond> end_repeat

5,55 paso al anillo con nuevo cierre

último paso 3,60

8,70

5,40

5,40

3,30

2

2 for <mot1:=mot2>to <mot3> do <action> end_for entrada en el

ámbito, ejecutada una sola vez

8,58

29,38 paso al anillo con nuevo cierre salida del anillo 20,42

8,25

27,35

19,40

15

152

35013159.01 07/2008

Rendimiento

Conversiones digitales

Rendimiento La tabla siguiente describe el rendimiento de las instrucciones de conversiones digitales.

ST Tiempo de ejecución (

μ s)

BCD_TO_INT

INT_TO_BCD

GRAY_TO_INT

INT_TO_REAL

DINT_TO_REAL

REAL_TO_INT

REAL_TO_DINT

DBCD_TO_DINT

DBCD_TO_INT

DINT_TO_DBCD

INT_TO_DBCD

3705/08/10

25,03

21,66

36,98

40,90

33,32

58,75

44,59

1 324,85

1 265,54

1 124,85

564,85

3720 RAM

24,55

21,15

36,55

40,75

32,55

58,55

44,05

1 065,15

925,70

825,15

445,15

3720 cart

24,55

21,15

36,55

40,75

32,55

58,55

44,05

1 134,70

986,15

879,10

474,40

5

5

3

3

5

5

3

3

3

3

Volumen

(palabras)

37xx

3

35013159.01 07/2008

153

Rendimiento

Instrucciones sobre cadena de bits

Inicio de una tabla de bits

La tabla siguiente describe el rendimiento de las instrucciones de inicio de una tabla de bits.

ST

%M30:8:= 0

%M30:16:= 1

%M30:24:= 2

%M30:32:= 2

Tamaño (bit)

8

16

24

32

Tiempo de ejecución (

μ s)

3705/08/10 3720

RAM

3720 cart

Tamaño

(palabras)

37xx

19,38

20,38

24,25

25,25

18,88

19,88

23,35

24,35

18,88

19,88

23,35

24,35

6

6

6

6

Copia de una tabla de bits en una tabla de bits

La tabla siguiente describe el rendimiento de las instrucciones de copia de una tabla de bits en otra tabla de bits.

ST Tamaño (bit) Tiempo de ejecución (

μ s)

3705/08/10 3720

RAM

3720 cart

%M30:8:= %M20:8 8

%M30:16:= %M20:16 16

25,54

26,16

24,79

25,41

24,79

25,41

%M30:24:= %M20:24 24

%M30:32:= %M20:32 32

%M30:16:=

COPY_BIT(%M20:16)

16

32

128

33,41

35,91

281,63

440,82

1261,22

32,26

34,76

230,00

360,00

32,26

34,76

244,95

383,40

1030,00 1096,95

9

9

9

6

6

6

6

Tamaño

(palabras)

37xx

154

35013159.01 07/2008

Instrucciones lógicas sobre tabla de bits

Rendimiento

La tabla siguiente describe el rendimiento de las instrucciones lógicas sobre tabla de bits.

ST Tamaño

(bits)

Tiempo de ejecución (

μ s)

3705/08/10 3720

RAM

3720 cart

AND_ARX, OR_ARX, XOR_ARX

%M0:16:=

AND_ARX(%M30:16,%M50:16)

%M0:32:=

AND_ARX(%M30:32,%M50:32)

%M0:128:=

AND_ARX(%M30:128,%M50:12

8)

NOT_ARX

16 397,42

32

128

%M0:16:= NOT_ARX(%M30:16) 16

620,97

1 887,74

281,63

32

128

440,82

1261,22

320,00

500,00

1 520,00

230,00

360,00

340,80

532,50

1 618,80 12

244,95

Tamaño

(palabras)

37xx

12

12

9

383,40 9

1030,00 1096,95 9

Copia de una tabla de bits en una tabla de palabras

La tabla siguiente describe el rendimiento de las instrucciones de copia de tablas de bits en una tabla de palabras.

ST

%MW1:= %M30:8

%MW1:= %M30:16

%MD2:= %M30:24

%MD2:= %M30:32

24

32

%MW1:4:=

BIT_W(%M40:80,0,17,2)

17

%MD1:4:= BIT_D(%M30:80,0,33,0) 33

Tamaño

(bits)

Tiempo de ejecución (

μ s)

3705/08/10 3720

RAM

3720 cart

8

16

14,84

16,34

14,36

15,86

14,36

15,86

14,54

16,04

501,43

379,53

14,23 14,23

15,73 15,73

5

5

390,00 415,35 16

530,00 564,45

Tamaño

(palabras)

37xx

5

5

16

35013159.01 07/2008

155

Rendimiento

Copia de una tabla de palabras en una tabla de bits

La tabla siguiente describe el rendimiento de las instrucciones de copia de tablas de palabras en una tabla de bits.

ST

%M30:8:= %MW1

%M30:16:= %MW2

%M30:24:= %MD1

%M30:32:= %MD3

%M30:32:=

W_BIT(%MW200:2,0,2,0)

32

%M30:32:= D_BIT(%MD0:1,0,2,0) 32

8

16

24

32

Tamaño

(bits)

Tiempo de ejecución (

μ s) Tamaño

3705/08/10 3720

RAM

3720 cart

(palabras)

37xx

19,28

20,28

21,20

22,20

488,68

18,68

19,68

20,37

21,37

18,68

19,68

20,37

21,37

5

5

5

5

370,00 394,05 16

567,33 460,00 489,90 16

156

35013159.01 07/2008

Rendimiento

Instrucción sobre tablas de palabras, palabras dobles y flotantes

Inicio de una tabla de palabras por una palabra

La tabla siguiente describe el rendimiento de las instrucciones de inicio de una tabla de palabras por una palabra.

ST Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

3705/08/10 3720

RAM

3720 cart

%MW0:10:= %MW100 10 palabras por palabra

%MD0:10:= %MD100 10 palabras dobles por palabra doble

47,46

0,34

81,27

42,15

0,20

74,45

2,87

42,15

0,20

74,45

2,65

Tamaño

(palabras)

37xx

7

7

2,65

Copia de una tabla de palabras en una tabla de palabras

La tabla siguiente describe el rendimiento de las instrucciones de copia de una tabla de palabras en otra tabla de palabras.

ST Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s) Tamaño

3705/08/10 3720 3720

(palabras)

RAM cart

37xx

%MW0:10:=%MW20:10; 10 palabras por palabra

%MD0:10:=%MD20:10; 10 palabras dobles por palabra doble

95,80

0,77

111,13

1,54

85,35 85,35 9

0,50 0,50

97,65 97,65 9

1,00 1,00

35013159.01 07/2008

157

Rendimiento

Instrucciones aritméticas y lógicas entre 2 tablas de palabras

La tabla siguiente describe el rendimiento de las instrucciones aritméticas y lógicas entre 2 tablas de palabras.

ST Tamaño

(de la tabla de palabras)

Tiempo de ejecución (

μ s)

3705/08/10 3720

RAM

3720 cart

Tamaño

(palabras)

37xx

+, -

%MW0:10:=

%MW10:10 + %MW20:10;

%MD0:10:=

%MD10:10+%MD20:10;

10 palabras 168,04 por palabra 7,13

10 palabras dobles

239,17 por palabra doble

13,84

*

%MW0:10:=

%MW10:10 * %MW20:10;

%MD0:10:=

%MD10:10 * %MD20:10;

10 palabras 189,32 por palabra 9,27

10 palabras dobles

710,35 por palabra doble

61,64

/, REM

%MW0:10:=

%MW10:10 / %MW20:10;

%MD0:10:=

%MD10:10 / %MD20:10;

10 palabras 224,76 por palabra 13,14

10 palabras dobles

2 192,38 por palabra doble

209,16

AND, OR, XOR

%MW0:10:=%MW10:10

AND %MW20:10;

10 palabras 163,69 por palabra 6,66

%MD0:10:=%MD10:10 AND

%MD20:10;

10 palabras dobles

240,14 por palabra doble

13,94

151,95 151,95 14

6,35 6,35

214,40 214,40 14

12,25

175,40 175,40 14

8,70 8,70

603,80 603,80 14

51,20

12,40

12,25

51,20

181,40 181,40 14

9,30 9,30

2 157,35 2 157,35 14

206,55 206,55

147,40 147,40 14

5,85 5,85

215,90 215,90 14

12,40

158

35013159.01 07/2008

Rendimiento

Instrucciones aritméticas y lógicas entre 1 tabla de palabras y 1 palabra

La tabla siguiente describe el rendimiento de las instrucciones aritméticas y lógicas entre 1 tabla de palabras y 1 palabra.

ST Tamaño

(de la tabla de palabras)

Tiempo de ejecución (

μ s)

3705/08/10 3720 RAM 3720 cart

Tamaño

(palabras)

37xx

+, -

%MW0:10:=%MW10:10 +

%MW20; o %MW0:10:= %MW20 +

%MW10:10

%MD0:10:=%MD10:10 +

%MD20;

10 palabras por palabra

10 palabras dobles por palabra doble

119,12

2,87

159,68

6,57

108,55

2,65

147,45

6,25

108,55

2,65

147,45

6,25

12

12

*

%MW0:10:=

%MW20*%MW10:10;

166,86 132,45 132,45 12

%MD0:10:=

%MD20*%MD10:10;

10 palabras por palabra

10 palabras dobles por palabra doble

7,94

587,01

49,18

5,05

522,95

43,80

5,05

522,95

43,80

12

/, REM

%MW0:10:=%MW10:10 /

%MW30;

196,69 155,85 155,85 15

%MD0:10:=

MD10:10 / %MD30

10 palabras por palabra

10 palabras dobles por palabra doble

10,86

2 230,17

213,66

7,30

2 173,95 2 173,95 12

208,90

7,30

208,90

AND, OR, XOR

35013159.01 07/2008

159

Rendimiento

ST

%MW0:10:=%MW10:10

AND %MW20;

Tamaño

(de la tabla de palabras)

10 palabras por palabra

%MD0:10:=%MD20 AND

%MD10:10;

10 palabras dobles por palabra doble

NOT

%MW0:10:=NOT(%MW10:

10);

10 palabras por palabra

%MD0:10:=NOT(%MD10:

10)

10 palabras dobles por palabra doble

Tiempo de ejecución (

μ s)

3705/08/10 3720 RAM 3720 cart

117,20

2,64

587,01

6,47

110,28

2,96

126,39

4,50

106,45

2,40

522,95

6,15

100,25

2,75

114,00

4,05

106,45

2,40

522,95

6,15

100,25

2,75

114,00

4,05

Tamaño

(palabras)

37xx

12

12

9

9

160

35013159.01 07/2008

Rendimiento

Función de suma sobre la tabla

La tabla siguiente describe el rendimiento de las instrucciones de suma sobre la tabla.

ST

%MW20:=SUM(%MW0:10);

Tamaño (de la tabla de palabras)

10 palabras

Tiempo de ejecución (

μ s) Tamaño

3705/08/10 3720 3720

(palabras)

RAM cart

37xx

74,30 69,00 69,00 10

2,44

83,58

2,35 2,35

76,90 76,90 10 %MD20:=SUM(%MD0:10); por palabra

10 palabras dobles por palabra doble

%MF20:=SUM_ARR(%MF0:10); 10 palabras dobles por palabra doble

3,17

1634

2,95

1257

2,95

1257 10

Función de comparación de tablas

La tabla siguiente describe el rendimiento de las instrucciones de comparación de tablas.

ST

%MW20:=

EQUAL(%MW0:10;%MW10:10);

Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

3705/08/10 3720

RAM

3720 cart

10 palabras por palabra

103,78

1,13

Tamaño

(palabras)

37xx

93,50 93,50 11

0,90 0,90

%MD20:=

EQUAL(%MD0:10;%MD10:10);

%MF20:=

EQUAL_ARR(%MF0:10;%MF10

:10);

10 palabras dobles por palabra doble

10 palabras dobles por palabra doble

116,17

2,23

741

103,40 103,40 11

1,75

570

1,75

607 11

35013159.01 07/2008

161

Rendimiento

Función de búsqueda

La tabla siguiente describe el rendimiento de las instrucciones de búsqueda en una tabla.

ST

%MW20:=

FIND_EQW(%MW0:10,%KW0)

Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

3705/08/10 3720

RAM

3720 cart

250,00 266,25 15 10 palabras, caso máximo

340,00

Tamaño

(palabras)

37xx

%MD20:=

FIND_EQD(%MD0:10, %KD0)

10 palabras dobles, caso máximo

350,00

833 %MF20:= FIND_EQR(%MF0:10,

%KF0)

10 palabras dobles

%MF20:=

FIND_EQRP(%MF0:10, %KF0)

10 palabras dobles

845

260,00 276,90 16

648

650

690,12 15

692,25 15

%MD20:=

FIND_GTR(%MF0:10, %KF0)

10 palabras dobles

%MD20:= FIND_LTR(%MF0:10,

%KF0)

10 palabras dobles

836

836

643

643

684,79 15

684,79 15

162

35013159.01 07/2008

Rendimiento

Búsqueda de valores máximos y mínimos

La tabla siguiente describe el rendimiento de las instrucciones de búsqueda de valores máximos y mínimos de una tabla.

ST Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

3705/08/10 3720 RAM 3720 cart

260,00 276,90 %MW20:=

MAX_ARW(%MW0:10)

%MD20:=

MAX_ARD(%MD0:10)

%MF20:=

MAX_ARR(%MF0:10)

%MF20:=

MIN_ARR(%MF0:10)

10 palabras 350,00

10 palabras dobles

10 palabras dobles

10 palabras dobles

410,00

1366

1270

300,00

1051

977

319,50

1119,31

1040,50

9

9

9

Tamaño

(palabras)

37xx

9

Cálculo del número de casos

La tabla siguiente describe el rendimiento de las instrucciones del número de casos de un valor de una tabla de palabras.

ST Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

3705/08/10 3720

RAM

10 palabras 350,00

3720 cart

250,00 266,25 15

Tamaño

(palabras)

37xx

%MW20:=

OCCUR_ARW(%MW0:10,

%KW0)

%MD20:=

OCCUR_ARD(%MD0:10,

%KD0)

10 palabras dobles

%MF20:=

OCCUR_ARR(%MF0:10, %KF0)

10 palabras dobles

370,00

1265

270,00 287,55

973

1036,24

16

16

35013159.01 07/2008

163

Rendimiento

Desplazamiento circular

La tabla siguiente describe el rendimiento de las instrucciones de desplazamiento circular.

ST Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

3705/08/10 3720

RAM

3720 cart

10 palabras 550,00 400,00 426,00 9

Tamaño

(palabras)

37xx

ROL_ARW(palabra o valor,%MWj:10)

ROL_ARD(%MDi,%MDj:10) 430,00 457,95 9

ROL_ARR(%MFi,%MFj:10)

10 palabras dobles

590,00

10 palabras dobles

585 450

479,25

9

Instrucción de orden

La tabla siguiente describe el rendimiento de las instrucciones de orden de los elementos de una tabla.

ST Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

3705/08/10 3720

RAM

3720 cart

700,00 745,50 9 SORT_ARW(%MWi,%MWj:10) 10 palabras, caso máximo

970,00

SORT_ARD(%MDi,%MDj:10) 5 palabras dobles, caso máximo

610,00

SORT_ARR(%MFi,%MFj:10) 10 palabras dobles

1863

450,00 479,25

1433

Tamaño

(palabras)

37xx

9

1526,14 9

164

35013159.01 07/2008

Rendimiento

Instrucciones de gestión del tiempo

Instrucciones de gestión de datos, horas y duración

La tabla siguiente describe el rendimiento de las instrucciones de gestión de datos, horas y duración.

ST

%MW2:4:= ADD_DT(%MW2:4,%MD8) 4 400,00

%MD2:= ADD_TOD(%MD2,%MD8)

%MB2:11:=

DATE_TO_STRING(%MD40)

Tiempo de ejecución (

μ s) Volumen

(palabras)

3705/08/10 3720 RAM 3720 cart 37xx

2 100,00

1 370,00

%MW5:= DAY_OF_WEEK()

%MD10:= DELTA_D(%MD2, %MD4)

220,00

1 520,00

%MD10:=

DELTA_DT(%MD2:4,%MW6:4)

3 170,00

%MD10:= DELTA_TOD(%MD2,%MD4) 2 330,00

3 300,00 3 514,50 13

1 550,00 1 650,75 9

900,00 958,50 9

280,00

1 130,00

2 300,00

1 700,00

298,20

1 203,45

2 449,50

1 810,50

5

9

13

9

1 450,00 1 544,25 11 %MB2:20:=

DT_TO_STRING(%MW50:4)

2 050,00

%MW2:4:= SUB_DT(%MW2:4,%MD8) 4 750,00

%MD2:= SUB_TOD(%MD2,%MD8) 2 330,00

%MB2:15:=

TIME_TO_STRING(%MD40)

1 560,00

3 500,00

1 700,00

1 200,00

3 727,50

1 810,50

1 278,00

13

9

9

%MB2:9:= TOD_TO_STRING(%MD40) 1 270,00

%MD100:= TRANS_TIME(%MD2) 500,00

800,00

500,00

852,00

532,50

9

7

35013159.01 07/2008

165

Rendimiento

Acceso al relojcalendario

La tabla siguiente describe el rendimiento de las instrucciones del reloj-calendario.

ST

RRTC(%MW0:4)

WRTC(%MW0:4)

PTC(%MW0:5)

SCHEDULE(%MW0,%MW1,%MW2,

%MD10,%MD12,%M0)ÿ

Tiempo de ejecución (

3705/08/10

93,60

μ s) Volumen

(palabras)

3720 RAM 3720 cart 37xx

84,80 84,80 5

248,61

97,98

1430

230,85

88,60

1100

230,85

88,60

1171,5

5

5

5

166

35013159.01 07/2008

Rendimiento

Instrucciones sobre cadenas de caracteres

Asignación, nueva copia de cadenas de caracteres

La tabla siguiente describe el rendimiento de las instrucciones de asignación y nueva copia de las cadenas de caracteres.

ST Tamaño

(caracteres)

Tiempo de ejecución (

μ s)

3705/08/10 3720 RAM 3720 cart

105,16 93,80 93,80

Tamaño

(palabras)

37xx

9 %MB0:8:=%MB10:8 Ocho caracteres

Por carácter

%MB0:8:=’abcdefg’ Ocho caracteres

Por carácter

1,65

120,72

4,15

1,30

110,20

3,85

1,30

110,20

3,85

11

0,5

Conversiones palabra <-> cadenas de caracteres

La tabla siguiente describe el rendimiento de las instrucciones de conversión de palabras y de cadenas de caracteres.

ST Tiempo de ejecución (

μ s)

3705/08/10 3720 RAM 3720 cart

97,69 91,95 91,95

Tamaño

(palabras)

37xx

7 %MW1:=

STRING_TO_INT(%MB0:7)

%MB0:7:=

INT_TO_STRING(%MW0)

104,36 96,70 96,70 7

Conversiones palabra doble <-> cadenas de caracteres

La tabla siguiente describe el rendimiento de las instrucciones de conversión de palabras dobles y de cadenas de caracteres.

ST Tiempo de ejecución (

μ s)

3705/08/10 3720 RAM 3720 cart

1070,53 965,62 965,62

Tamaño

(palabras)

37xx

7 %MD1:=

STRING_TO_DINT(%MB0:13)

%MB0:13:=

DINT_TO_STRING(%MD0)

322,29 295,35 295,35 7

35013159.01 07/2008

167

Rendimiento

Conversiones flotante <-> cadenas de caracteres

La tabla siguiente describe el rendimiento de las instrucciones de conversión de flotante a cadenas de caracteres.

ST Tiempo de ejecución (

μ s)

3705/08/10 3720 RAM 3720 cart

1783,70 1634,53 1634,53

Tamaño

(palabras)

37xx

7 %MF1:=

STRING_TO_REAL(%MB0:15)

%MB0:15:=

REAL_TO_STRING(%MF0)

741,75 681,20 681,20 7

Instrucciones de manipulación de cadenas de caracteres

La tabla siguiente describe el rendimiento de las instrucciones de manipulación de las cadenas de caracteres.

ST Tiempo de ejecución (

μ s)

3705/08/10 3720

RAM

3720 cart

1170,00

Tamaño

(palabras)

37xx

770,00 820,05 15 %MB10:20:=

CONCAT(%MB30:10,%MB50:10)

%MB10:20:= DELETE(%MB10:22,2,3); 950,00 600,00 639,00 15

860,00 520,00 553,80 13 %MW0:=

EQUAL_STR(%MB10:20,%MB30:20); (el quinto carácter difiere)

%MW0:= FIND(%MB10:20,%MB30:10);

%MB10:20:=

INSERT(%MB30:10,%MB50:10,4);

%MB10:20:= LEFT(%MB30:30,20);

%MW0:= LEN(%MB10:20);

%MB10:20:= MID(%MB30:30,20,10);

%MB10:20:=

REPLACE(%MB30:20,%MB50:10,10,10);

%MB10:20:= RIGHT(%MB30:30,20);

1610,00

1270,00

920,00

770,00

1080,00

1450,00

1480,00

1000,00 1065,00 13

800,00 852,00 17

570,00 607,05 13

340,00 362,10 9

700,00 745,50 15

870,00 926,55 19

950,00 1011,75 13

168

35013159.01 07/2008

Rendimiento

Funciones específicas y funciones Orphée

Funciones de comunicación

La tabla siguiente describe el rendimiento de las funciones de comunicación.

ST Tiempo de ejecución (

μ s)

3705/08/10 3720 RAM 3720 cart

1818 1936

Tamaño

(palabras)

37••

21 SEND_REQ(%KW0:6,15,%MW0:1,%M

W10:10,%MW30:4)

2182

SEND_TLG(%KW0:6,1,%MW0:5,%M

W30:2)

1636 1364 1452 15

Función de diálogo operador

La tabla siguiente describe el rendimiento de las instrucciones de diálogo operador.

ST

SEND_MSG(ADR#1.0,%MW0:2,%MW10:2)

SEND_ALARM(ADR#1.0,%MW0:2,%MW10:2)

GET_MSG(ADR#1.0,%MW0:2,%MW10:2)

GET_VALUE(ADR#1.0,%MW0,%MW10:2)

ASK_MSG(ADR#1.0,%MW0:2,%MW10:2,%MW2

0:2)

Tiempo de ejecución (

μ s) Tamaño

3705/08/10 3720 3720

(palabras)

RAM cart

37••

2240

2240

2000

2000

2208

2208

19

19

2240

1120

2240

2000

1000

2000

2208

1104

2208

19

17

23

ASK_VALUE(ADR#1.0,%MW0,%MW10:2,%MW2

0:2)

DISPLAY_ALRM(ADR#1.0,%MW0,%MW10:2)

DISPLAY_GRP(ADR#1.0,%MW0,%MW10:2)

2240

1120

1120

DISPLAY_MSG(ADR#1.0,%MW0,%MW10:2) 1120

CONTROL_LEDS(ADR#1.0,%MW0:2,%MW10:2) 2240

ASSIGN_KEYS(ADR#1.0,%MW0:2,%MW10:2)

PANEL_CMD(ADR#1.0,%MW0:2,%MW10:2)

2240

2240

2000 2208 21

1000 1104 17

1000 1104 17

1000 1104 17

2000 2208 19

2000 2208 19

2000 2208 19

35013159.01 07/2008

169

Rendimiento

Función de regulación

Guardado de datos

La tabla siguiente describe el rendimiento de las funciones de regulación.

ST

PID("PIDS1",’Unité’,%IW3.5,%MW

12,%M16,%MW284:43)

Condición Tiempo de ejecución (

μ s) Tamaño

3705/08/10 3720 3720

(palabras)

RAM cart

37•• deval_mmi

=0

1320 1100 1172 24

1080 900 958,5 deval_mmi

=1

PWM(%MW11,%Q2.1,%MW385:5)

SERVO(%MW12,%IW3.6,%Q2.2,

%Q2.3,%MW284:43,%MW390:10)

PID_MMI(ADR#0.0.4,%M1,%M2:5,

%MW410:62)

EN=1

600

960

1140

500

800

950

532,5 11

852 19

1012 20

La tabla siguiente describe el rendimiento de las funciones de almacenamiento de datos.

ST

SET_PCMCIA (para 1.600 palabras)

WRITE_PCMCIA (para 1.600 palabras)

READ_PCMCIA (para 1.600 palabras)

Tiempo de ejecución (

3705/08/10 3720

RAM

1000

2000

2000

μ s)

3720 cart

Tamaño

(palabras)

37••

24

24

24

170

35013159.01 07/2008

Rendimiento

Función Orphée La tabla siguiente describe el rendimiento de las funciones de regulación.

ST Condición Tiempo de ejecución

(

μ s)

3705/08/10 3720

RAM

Tamaño

(palabras)

3720 cart

37••

660 480 511 13 DSHR_RBIT(%MD102,16,%MD2

04,%MD206)

Escritura de 10 palabras

DSHRZ_C(%MD102,16,%MD204

,%MD206)

Petición espejo de 10 palabras

410 310 330 13

WSHL_RBIT(%MW102,8,%MW2

04,%MW206)

WSHR_RBIT(%MW102,8,%MW2

04,%MW206)

WSHRZ_C(%MW102,8,%MW20

4,%MW206)

SCOUNT(%M100,%MW100,%M

101,%M102,%MW101,

%MW102,%M200,%M201,%MW

200,%MW201)

Intercambio de

10 palabras

20 bytes

20 bytes

20 bytes

300

390

300

510

220 234 13

280

220

410

298

234

437

13

13

25

35013159.01 07/2008

171

Rendimiento

Instrucciones de entradas/salidas explícitas

Rendimiento La tabla siguiente describe el rendimiento de las instrucciones de entradas/salidas explícitas.

ST Tiempo de ejecución (

μ s)

3705/08/10 3720 RAM 3720 cart

Tamaño

(palabras)

37xx

Read_Sts %CHi.MOD

Cualquier función específica, exceptuando la vía de comunicación del procesador

Read_Sts %CHi

Entrada analógica

Salida analógica

Módulo de contaje CTZ

Write_Param %CHi

Entrada analógica

Módulo de contaje CTZ

Read_Param %CHi

Entrada analógica

Módulo de contaje CTZ

Save_Param %CHi

Entrada analógica

Módulo de contaje CTZ

Restore_Param %CHi

Entrada analógica

Módulo de contaje CTZ

Write_Cmd %CHi

Salida TON

30

180

90

110

790

1127

260

338

1234

1370

550

1160

50

30

180

70

95

570

1080

290

295

1220

1220

510

1080

47

32

216

74

104

790

1083

316

300

1240

1240

535

1097

52

2

6

6

6

6

6

6

172

35013159.01 07/2008

6.3

Rendimiento

Rendimiento de las instrucciones en autómatas

Premium

Presentación

Objeto

Contenido

Este apartado describe el rendimiento de las instrucciones ejecutadas en autómatas Premium (excepto en las referencias TSX P57•A).

Esta sección contiene los siguientes apartados:

Apartado

Rendimiento de las instrucciones booleanas

Rendimiento de los bloques de función

Aritmética entera y con coma flotante

Instrucciones sobre el programa y estructuras de control

Conversiones digitales

Instrucciones sobre cadena de bits

Instrucción sobre tablas de palabras, palabras dobles y flotantes

Instrucciones de gestión del tiempo

Instrucciones sobre cadenas de caracteres

Funciones específicas y funciones Orphée

Instrucciones de entradas/salidas explícitas

Bloque de función DFB

Página

174

180

183

188

190

191

194

203

205

208

211

214

35013159.01 07/2008

173

Rendimiento

Rendimiento de las instrucciones booleanas

174

35013159.01 07/2008

Rendimiento

Rendimiento de los procesadores

P57 1•/2•

LD IL

La tabla siguiente describe el rendimiento de las instrucciones booleanas de los procesadores P57 1•/2•.

ST Objetos Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 1•

RAM

> 4 K

57 1• cart >

4 K

57 2•

RAM

0,37 0,50

57 2• cart

0,06 0,21

57 2•

RAM

> 4 K

57 2• cart >

4 K

Tamaño

(palabras)

1

P

N

LD

LDN

LDR

,

LDF

%M1 (1) 0,50 0,62 0,62 0,87 0,19 0,21 0,25 0,42 1

%M1[%MW2] 1,50 2,25 1,50 2,25 0,62 1,25 0,62 1,25 6

%MW0:X0 (2) 1,12 1,62 1,12 1,62 0,37 0,83 0,37 0,83 4

%IWi.j:Xk (3) 1,75 2,50 1,75 2,50 0,62 1,25 0,62 1,25 6

%MW0[%MW8

]:X0

2,25 3,37 2,25 3,37 0,94 1,87 0,94 1,87 9

%KW0[%MW8]

:X0

2,25 3,37 2,25 3,37 0,94 1,87 0,94 1,87 9

%M1 0,87 1,12 1,00 1,37 0,25 0,42 0,31 0,62 2

%M1[%MW2] 1,87 2,75 1,87 2,75 0,69 1,46 0,69 1,46 7

AND,

ANDN , AND (, AND (N , idem OR idem LD,LDN

P

N

ANDR, ANDF, AND (R, AND

(F, idem OR idem LDR,LDF

35013159.01 07/2008

175

Rendimiento

LD IL ST Objetos Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 1•

RAM

> 4 K

57 1• cart >

4 K

57 2•

RAM

57 2• cart

57 2•

RAM

> 4 K

57 2• cart >

4 K

Tamaño

(palabras)

XOR

XOR

N

%IWi.j:Xk

%MW0[%MW8

]:X0

4,00

4,50

5,50

6,37

4,00

4,50

5,50

6,37

1,00

1,31

2,50

3,12

1,00

1,31

2,50

3,12

12

15

%KW0[%MW8]

:X0

%M1

4,50 6,37 4,50 6,37 1,31 3,12 1,31 3,12 15

3,62 4,75 3,87 5,25 0,81 1,87 0,94 2,29 9 XOR

R,

XOR

F

ST

STN

S

R

%M1[%MW2]

%M1 (1)

%M1[%MW2]

5,62

1,00

1,62

8,00

1,25

2,37

5,62

1,12

1,62

8,00

1,50

2,37

1,69

0,37

0,75

3,96

0,46

1,29

1,69

0,44

0,75

3,96

0,62

1,29

19

2

6

S

R

%MW0:X0

%NW{i}.j:Xk (3) 1,87

%MW0[%MW8

]:X0 bobinas múltiples en ladder, «coste» de la segunda bobina y de las siguientes

1,25 1,75 1,25 1,75 0,50 0,83 0,50 0,83 4

2,37

0,62

2,62

3,50

0,75

1,87

2,37

0,75

2,62

3,50

1,00

0,75

0,75

0,31

1,25

1,92

0,25

0,75

0,75

0,37

1,25

1,92

0,42

6

9

1 bloque de operación

[ acci

ón]

%M1 2,12 2,75 2,37 3,25 0,56 1,04 0,69 1,46 5

%M1[%MW2] 3,37 4,75 3,37 4,75 0,94 2,29 0,94 2,29 12

%MW0:X0 3,37 4,62 3,37 4,62 0,75 2,08 0,75 2,08 10 bloque ejecutado

0,25 0,50 0,25 0,50 0,12 0,42 0,12 0,42 2 no ejecutado 0,50 0,75 0,50 0,75 0,12 0,42 0,12 0,42 2 entre 2 %MWi 1,62 11,85 1,62 2,25 0,56 1,04 0,56 1,04 5 bloque de operación vertical

Converge ncia

[ )]

Divergenci a no seguida de una convergen cia

[ ]

[ )] bloque ejecutado

Ladder, 1 divergencia

0,37

0,37

0,13

0,50

0,37

0,37

0,50

0,50

0,06

0,06

0,21

0,21

0,06

0,06

0,21

0,21

1

1

176

35013159.01 07/2008

LD

[MP

S,

MPP

,

MR

D]

IL ST Objetos

Lista

MPS+MPP

Lista MRD

Rendimiento

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 1•

RAM

> 4 K

57 1• cart >

4 K

57 2•

RAM

57 2• cart

57 2•

RAM

> 4 K

57 2• cart >

4 K

Tamaño

(palabras)

1,12 1,50 1,12 1,50 0,19 0,62 0,19 0,62 3

0,37 0,50 0,37 0,50 0,06 0,21 0,06 0,21 1

Leyenda

1.

Se refiere a todos los objetos bit que se pueden forzar: %I, %Q, %X, %M, %S,

2.

otros objetos del mismo tipo: bits de salida del bloque de función %TMi.Q..., bits extraídos de palabras del sistema %SWi:Xj

3.

otros objetos del mismo tipo: bits extraídos de palabras comunes %NW{i}j:Xk, bits extraídos de palabras de E/S %IWi.j.Xk, %QWi.j.Xk, bits extraídos de %KW, bits de fallo %Ii.j.ERR.

35013159.01 07/2008

177

Rendimiento

Rendimiento de los procesadores

P57 3•/4•

LD IL

La tabla siguiente describe el rendimiento de las instrucciones booleanas de los procesadores P57 3•/4•.

ST Objetos Tiempo de ejecución (

μ s)

57 3•

RAM

57 3• cart

57 3•

RAM

> 4 K

57 3• cart >

4 K

57 4•

RAM

0,04 0,17 0,02

57 4•

> 4K

Tamaño en palabras

1

LD

LDN

P

N

LDR,

LDF

%M1 (1)

%M1[%MW2]

%MW0:X0 (2)

%IWi.j:Xk (3)

0,12 0,17

0,42 1,00

0,25 0,67

0,42 1,00

%MW0[%MW8]:X0 0,62 1,50

%KW0[%MW8]:X0 0,62 1,50

%M1

%M1[%MW2]

0,17

0,46

0,33

1,17

0,17 0,33

0,42 1,00

0,25 0,67

0,42 1,00

0,62 1,50

0,62 1,50

0,21 0,50

0,46 1,17

0,06

0,21

0,12

0,21

0,31

0,31

0,08

0,23

0,08 1

0,21 6

0,12 4

0,21 6

0,31 9

0,31 9

0,10 2

0,23 7

AND,

ANDN , AND (, AND (N , idem OR idem LD,LDN

178

P

N

ANDR, ANDF, AND (R, AND (F, idem OR idem LD,LDN

XOR

XORN

XORR,

XORF

%M1

%M1[%MW2]

%MW0:X0

%IWi.j:Xk

0,37 0,83

0,62 1,83

0,50 1,67

0,67 2,00

%MW0[%MW8]:X0 0,87 2,50

%KW0[%MW8]:X0 0,87 2,50

%M1

%M1[%MW2]

0,54

1,12

1,50

3,17

0,46 1,17

0,62 1,83

0,50 1,67

0,67 2,00

0,87 2,50

0,87 2,50

0,62 1,83

1,12 3,17

0,19

0,31

0,25

0,33

0,44

0,44

0,27

0,56

0,23 5

0,31 12

0,25 10

0,33 12

0,44 15

0,44 15

0,31 9

0,56 19

35013159.01 07/2008

Rendimiento

LD IL ST Objetos Tiempo de ejecución (

μ s)

57 3•

RAM

57 3• cart

57 3•

RAM

> 4 K

57 3• cart >

4 K

57 4•

RAM

S

R

%NW{i}.j:Xk (3) 0,50 1,00

%MW0[%MW8]:X0 0,62 0,75

0,21 0,17 bobinas múltiples en ladder, «coste» de la segunda bobina y de las siguientes bloque de operación

[ acción] bloque ejecutado no ejecutado bloque de operación vertical

Convergencia

Divergencia no seguida de una convergencia

ST

STN

S

R

[ )]

[ ]

[ )]

%M1 (1)

%M1[%MW2]

%MW0:X0 entre 2 %MWi bloque ejecutado

Ladder, 1 divergencia

0,25

0,50

0,33

0,25

0,50

0,33

1,00

0,67

0,50

0,75

1,62 11,85 0,37 0,83

0,37 0,13

0,37 0,50

0,29

0,50

0,33

0,25

0,50

1,00

0,67

0,50 1,00

0,50 1,50

033

0,08 0,33

0,08 0,33

0,04 0,17

0,04 0,17

[MPS,

MPP,

MRD]

Lista MPS+MPP

Lista MRD

1,12

0,37

1,50

0,50

0,12 0,50

0,04 0,17

0,12

0,25

0,17

0,04

0,04

0,19

0,02

0,02

57 4•

> 4K

0,15

0,25

0,17

0,04

0,04

0,19

0,02

0,02

Tamaño en palabras

2

6

4

0,25 0,25 6

0,25 0,25 9

0,10 0,12 1

2

2

5

1

1

0,06 0,06 3

0,02 0,02 1

Leyenda

1.

Se refiere a todos los objetos bit que se pueden forzar: %I, %Q, %X, %M, %S,

2.

otros objetos del mismo tipo: bits de salida del bloque de función %TMi.Q..., bits extraídos de palabras del sistema %SWi:Xj

3.

otros objetos del mismo tipo: bits extraídos de palabras comunes %NW{i}j:Xk, bits extraídos de palabras de E/S %IWi.j.Xk, %QWi.j.Xk, bits extraídos de %KW, bits de fallo %Ii.j.ERR.

35013159.01 07/2008

179

Rendimiento

Rendimiento de los bloques de función

Temporizador

CEI

LD flanco ascendente en IN flanco descendente en IN

IN =1

IN =0

IL

La tabla siguiente describe el rendimiento del bloque de función de temporizador

CEI

ST Condiciones Tiempo de ejecución (

μ s)

571• 572• 573• 574•

Tamaño

(palabras)

START

%TM1 inicio del temporizador

29 8,0 5,4 3,7 3 IN %TM1

(flanco ascendente)

IN %TM1

(flanco descendente)

IN %TM1 (=1)

IN %TM1 (=0)

DOWN

%TM1 parada del temporizador temporizador activo temporizador inactivo

9

12

10

2,6

3,5

3,3

1,7

2,3

2,2

1,2

1,6

1,5

Temporizador

PL7-3

LD IL

E =0

La tabla siguiente describe el rendimiento del bloque de función de temporizador

PL7-3

ST Condicione s

Tiempo de ejecución (

μ s)

571• 572• 573• 574•

Tamaño

(palabras)

START

%T1

STOP

%T1

RESET

%T1 activar inmovilizar 7 2,8

3,1

2,0

2,2

1,4

1,6

3 puesta a cero temporizado r activo temporizado r inactivo

7

11 3,4 2,3 1,7

180

35013159.01 07/2008

Rendimiento

Contador/ descontador

LD IL

La tabla siguiente describe el rendimiento del bloque de función de contador/ descontador

ST Condicio nes

Tiempo de ejecución (

μ s)

571•

11

572•

3,4

573•

2,3

574•

1,7

Tamaño

(palabras)

3 puesta a cero, R=1 preselecció n, S=1

S %C9 (=1) PRESET

%C9 preselecci

ón

UP %C8 up flanco ascendente en CU

CU %C8

(flanco flanco ascendente en CD entradas inactivas

R %C8 (=1) RESET

%C8

CD %C9

(flanco

R/S/CU/CD bit inactivo

DOWN

%C9 puesta a cero down ninguna acción

12

12

12

7

3,6

3,7

3,7

2,5

2,4

2,5

2,5

1,7

1,7

1,8

1,8

1,2

Monoestable

LD IL flanco ascendente en S

S %MN0, flanco ascendente

S=1 S %MN0,

S =1/0

La tabla siguiente describe el rendimiento del bloque de función monoestable

ST

START

%MN0

Condicione s inicio

Tiempo de ejecución (

μ s)

571• 572• 573•

24 7,2 4,9

574•

3,4

Tamaño

(palabras)

3 monoestabl e activo

6 2,2 1,5 1,1

Registro

LD

R=1 entradas inactivas

IL flanco en I I %R2

(flanco) flanco en O O %R2

(flanco)

R %R1

(=1)

I/O/R, bit inactivo

La tabla siguiente describe el rendimiento del bloque de función registro

ST

PUT %R2

RESET

%R2

Condiciones Tiempo de ejecución (

μ s) almacenamie nto

GET %R2 retirada del almacenamie nto

571•

13

13 puesta a cero 9

572•

3,9

3,9

3,3

573•

2,6

2,6

2,3

574•

1,8

1,8

1,6

Tamaño

(palabras)

3 no hay acción 6 2,6 1,8 1,3

35013159.01 07/2008

181

Rendimiento

Programador cíclico

LD IL

La tabla siguiente describe el rendimiento del programador cíclico flanco en U U %DR0 UP %DR1

R=1 entradas inactivas

R %DR1

R/U, bit inactivo

ST

RESET

%DR2

Condiciones Tiempo de ejecución (

μ s) up, fijo

571•

124 por bit de orden 25

572•

35

25

573•

24

25

33 23 puesta a cero, fijo

118 por bit de orden 25 no hay acción, fijo

120 por bit de orden 25

25

34

25

25

23

25

574•

16

25

15

25

16

25

Tamaño

(palabras)

3

182

35013159.01 07/2008

Aritmética entera y con coma flotante

Rendimiento

35013159.01 07/2008

183

Rendimiento

Correcciones en función del tipo de objetos

Los tiempos y volúmenes de las páginas siguientes vienen dados para los objetos de tipo %MW0, %MD0 o %MF0.

La tabla siguiente describe las correcciones que se han de añadir a los valores dados en la tabla de rendimiento de las instrucciones aritméticas si se emplean otros tipos de objetos.

Tipo de objeto Posición del

Valor inmediato de longitud simple

Valor inmediato de longitud doble

Palabras, palabras dobles o flotantes indexadas objeto

-

Tipo de corrección

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

57 3•

RAM

57 3• cart

57 4•

Valor que se ha de eliminar del mencionado para %MW o añadir al mismo

-0,12 -0,12 -0,12 0,00 -0,08 0,00 -0,04 0

Tamaño

(palabras)

-

Tras el signo:=

Primera operación, el primer operando no se ha indexado, o asignación

Valor que se ha de eliminar del mencionado para %MD o

%MF, o añadir al mismo

-0,12 0,00 -0,19 0,21 -0,12 0,17 -0,06 1

Valor que se ha de añadir

Valor que se ha de añadir

Segundo operando si el primero se ha indexado de la misma manera

Valor que se ha de añadir

1,12 1,75 0,56 1,04 0,37 0,83 0,19 5

1,12

1,12

1,75

1,75

0,56

0,56

1,04

1,04

0,37

0,37

0,83

0,83

0,19

0,19

5

5

184

35013159.01 07/2008

Rendimiento

Tipo de objeto Posición del objeto

%KWi,

%KWi[%MWj]

%KDi, %KFi palabras comunes, palabras de entradas/ salidas

-

Tipo de corrección

Valor que se ha de añadir

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

57 3•

RAM

57 3• cart

57 4•

0,62 0,87 0,25 0,42 0,17 0,33 0,08 2

Tamaño

(palabras)

Corrección en función del contexto de la operación

La tabla siguiente describe las correcciones que se han de añadir a los valores dados en el tabla de rendimiento de las instrucciones aritméticas en función del contexto de la operación.

Contexto de la operación

La operación se encuentra como mínimo en segunda posición dentro de la frase

Ejemplo: %MW2 en:=%MW0*%MW

1*%MW2

Operación con resultado de una operación entre paréntesis o de mayor prioridad

Ejemplo:

%MW0+%MW2+(.

..)

Tipo de objeto

%MW

%MD o

%MF

%MW

%MD o

%MF

Tipo de corrección

Valor que se ha de añadir al mencionado para

%MW

0,50 0,62 0,19 0,33 0,12 0,25 0,06 1

Valor que se ha de eliminar del mencionado para

%MD o %MF

0,62 0,75 0,31 0,46 0,21 0,33 0,10 1

Valor que se ha de añadir al mencionado para

%MW

0,37 0,37 0,12 0,12 0,08 0,08 0,04 1

Valor que se ha de eliminar del mencionado para

%MD o %MF

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

57 3•

RAM

57 3• cart

57 4•

Tamaño

(palabras)

0,50 0,50 0,25 0,25 0,17 0,17 0,08 1

35013159.01 07/2008

185

Rendimiento

Tabla de rendimiento de las instrucciones

La tabla siguiente describe el rendimiento de las instrucciones aritméticas.

ST Objetos Condiciones

/ objeto tras:=

:=

%MW0 -

%MD0

%MW0+(...o

%MW0 delante de *,/ o REM)

-

%MW0+(...o

%MW0 delante de *,/ o REM)

%MF0

%MW0

%MD0 y %MF0

=, <>, <=, <, >,

>=

%MW0

%MD0

%MF0

AND, OR, XOR %MW0

%MD0

+, %MW0

*

/, REM

ABS, objeto

NOT

%MD0

%MF0

%MW0

%MD0

%MF0

%MW0

%MD0

%MF0

%MW0

%MD0

%MF0

%MW0

%MD0

0,7

1,0

1,0

0,6

0,7

0,7

48

6,3

29

44

6,9

1,0

1,5

24

0,6

0,7

0,6

148

46

0,6

0,7

9

0,6

0,7

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

0,6

0,7

0,9

1,0

0,2

0,4

0,4

0,4

57 3•

RAM

0,2

0,2

1,0

1,2

1,2

0,9

1,0

1,4

1,5

24

0,9

1,0

0,9

1,0

48

6,5

29

44

7,2

149

47

0,9

1,0

10

0,9

1,0

0,4

0,6

0,6

0,2

0,4

0,3

0,4

2,6

0,2

0,4

0,2

0,4

2,5

2,0

9,3

2,5

2,1

34

3,3

0,2

0,4

2,1

0,2

0,4

0,4

0,5

0,5

0,4

0,4

0,2

0,4

0,4

0,2

0,2

0,4

2,5

2,2

9,3

2,5

2,3

0,6

0,6

2,6

0,4

0,4

0,4

34

3,4

0,4

0,4

2,1

0,4

0,4

0,2

1,9

1,5

6,3

1,9

1,5

0,2

0,3

1,9

0,2

0,2

0,2

21

2,5

0,2

0,2

1,6

0,2

0,2

0,3

0,3

0,3

0,3

0,3

0,3

2,0

1,6

6,4

2,0

1,6

0,5

0,5

2,0

0,3

0,3

0,3

21

2,6

0,3

0,3

1,7

0,3

0,3

57 3• cart

0,3

0,3

57 4•

0,08 2

0,12 2

Tamaño

(palabras)

0,12 2

0,21 2

0,21 2

0,08 2

0,12 2

0,10 3

0,15 3

1,4 4

0,08 2

0,12 2

0,08 2

0,12 2

1,4 3

1,2 3

4,7

1,4

1,2

3

3

3

15

1,8

0,08 2

3

3

0,12 2

1,2 3

0,1 2

0,1 2

186

35013159.01 07/2008

Rendimiento

ST Objetos Condiciones

SQRT

INC, DEC

SHL, SHR,

ROL, ROR

LN

LOG

EXP

EXPT

TRUNC

COS

SIN

TAN

ACOS

ASIN

%MF0

%MF0

%MF0

%MF0

%MF0

%MF0

%MF0

%MF0

%MF0

ATAN %MF0

DEG_TO_RAD %MF0

RAD_TO_DEG %MF0

%MW0

%MD0

%MF0

%MW0

%MD0

%MW0 para 1 bit

%MD0 para 1 bit por bit suplementario

%MF0

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

19

62

117

0,7

1,0

2,0

2,1

0,042

19

62

117

1,0

1,2

2,9

3,0

3,5

10,2 10,3

2,8

0,4

0,6

0,8

0,9

3,7

2,8

0,4

0,5

1,5

1,5

2,1

0,2

0,4

0,5

0,6

57 3•

RAM

2,1

5,7

2,1

0,3

0,3

1,2

1,2

57 3• cart

2,2

5,8

57 4•

847 847 2,2 2,2 1,6 1,6 1,5

900 900 2,2 2,2 1,6 1,6 1,5

713 713 6,4 6,4 4,7 4,7 4,0

1 747 1 747 2,2 2,2 1,6 1,6 1,5

1 753 1 753 2,2 2,2 1,6 1,6 1,5

1 813 1 813 2,2 2,2 1,6 1,6 1,5

2 520 2 520 2,7 2,7 2,0 2,0 1,8

2 520 2 520 3,4 3,4 2,5 2,5 2,2

1 720 1 720 2,1 2,1 1,6 1,6 1,4

1 640 1 640 61 68 43 49 32

103 142 32 36 23 26 17

392 537 86 96 61 69 45

380 522 86 96 61 69 46

1,5

4,4

1,5

0,12

0,21

0,27

0,31

2

7

7

3

2

3

3

Tamaño

(palabras)

35013159.01 07/2008

187

Rendimiento

Instrucciones sobre el programa y estructuras de control

Rendimiento de las instrucciones en el programa

ST

La tabla siguiente describe el rendimiento de las instrucciones sobre el programa.

Tiempo de ejecución (

μ s)

57 4•

Tamaño

(palabras)

57• •

Jump %Li

Maskevt

Unmaskevt

SRi

Return

57 1•

RAM

1,2

15,5

15,7

1,9

0,6

57 1• cart

1,6

15,5

15,7

2,2

0,9

57 2•

RAM

0,8

5,8

6,0

1,4

0,2

57 2• cart

0,6

5,8

6,0

1,2

0,4

57 3•

RAM

0,5

4,0

4,2

1,0

0,2

57 3• cart

0,5

4,0

4,2

0,8

0,3

0,3

2,8

3,0

0,5

0,1

1

2

3

1

2

188

35013159.01 07/2008

Rendimiento

Rendimiento de las estructuras de control

La tabla siguiente describe el rendimiento de las instrucciones de tipo de estructuras de control.

ST Tiempo de ejecución (

μ s) Volumen

(palabras)

57 4• 57• •

<cond> bit que se puede forzar comparación

57 1•

RAM evaluación de la condición

57 1• cart

57 2•

RAM véase la instrucción booleana LD %M1

57 2• cart

57 3•

RAM

57 3• cart if <cond > then

<action> end_if; condición verdadera véase comparaciones =,<,> ...

los tiempos y volúmenes indicados anteriormente se han de añadir a los de la acción contenida en la estructura

0,2 0,5 condición falsa

(salto)

0,5

If <cond> then <action1> else <action2> end_if;

0,7

0,1

0,1

0,4

0,4

0,1

0,1

0,3

0,3

0,04

0,04

2

0,2 0,8 0,2 0,7 0,08 4 condición verdadera condición falsa while <cond> do.<action> end_while paso al anillo con nuevo cierre

0,7

0,5

0,7

1,2

0,7

1,2 salida del anillo 0,5 repeat <action> until <cond> end_repeat paso al anillo con nuevo cierre

0,5

último paso 0,2 for <mot1:=mot2>to <mot3> do <action> end_for

0,5 entrada en el

ámbito, ejecutada una sola vez

1,2 1,7 paso al anillo con nuevo cierre salida del anillo

3,5

1,7

0,7

0,7

5,0

2,5

0,1

0,2

0,1

0,1

0,1

0,5

1,2

0,6

0,4

0,8

0,4

0,4

0,4

0,8

2,5

1,2

0,1

0,2

0,1

0,1

0,1

0,3

0,8

0,4

0,3

0,7

0,3

0,3

0,3

0,7

2,0

1,0

0,04

0,08

0,04

0,04

0,04

0,17

0,42

0,21

2

2

15

35013159.01 07/2008

189

Rendimiento

Conversiones digitales

Rendimiento

ST

BCD_TO_INT(%MW0)

La tabla siguiente describe el rendimiento de las instrucciones de conversiones digitales.

Tiempo de ejecución (

μ s)

57 4•

Volumen

(palabras)

57• • 57 1• RAM 57 1• cart

17 17

57 2•

RAM

3,3

57 2• cart

3,4

57 3•

RAM

1,9

57 3• cart

2,1 1,5 3,0

INT_TO_BCD(%MW0)

GRAY_TO_INT(%MW0)

INT_TO_REAL(%MW0)

DINT_TO_REAL(%MD0) 24

REAL_TO_INT(%MF0) 41

REAL_TO_DINT(%MF0) 33

14

27

28

DBCD_TO_DINT(%MD0) 612

DBCD_TO_INT(%MD0) 537

DINT_TO_DBCD(%MD0) 512

INT_TO_DBCD(%MW0) 274

840

737

702

376

24

42

33

14

28

28

231

203

193

104

2,8

4,7

1,5

1,7

1,6

1,7

233

204

195

104

3,0

4,9

1,7

1,8

1,7

1,8

178

156

149

80

1,7

2,7

1,4

1,6

1,5

1,6

179

157

150

80

1,9

2,8

1,6

1,7

1,6

1,7

138

121

115

62

1,3

1,9

1,0

1,2

1,1

1,2

5

5

5

5

3,0

3,0

3,0

3,0

3,0

3,0

190

35013159.01 07/2008

Rendimiento

Instrucciones sobre cadena de bits

Inicio de una tabla de bits

ST

%M30:8:= 0

%M30:16:= 1

%M30:24:= 2

%M30:32:= 2

8

16

24

32

La tabla siguiente describe el rendimiento de las instrucciones de inicio de una tabla de bits.

Tamaño

(bit)

Tiempo de ejecución (

μ s) Tamaño

(palabras)

57 4• 57• • 57 1•

RAM

3,6

5,6

12

14

57 1• cart

4,5

6,5

14

16

57 2•

RAM

2,4

4,4

5,6

7,6

57 2• cart

3,2

5,2

6,8

8,8

57 3•

RAM

1,6

3,0

3,7

5,1

57 3• cart

2,3

3,7

4,8

6,1

0,8

1,5

2,4

3,1

7

7

12

12

Copia de una tabla de bits en una tabla de bits

La tabla siguiente describe el rendimiento de las instrucciones de copia de una tabla de bits en otra tabla de bits.

ST

%M30:8:= %M20:8

%M30:16:= %M20:16

Tamaño

(bit)

Tiempo de ejecución (

μ s)

8

16

57 1•

RAM

6,9

8,1

57 1• cart

7,9

9,1

57 2•

RAM

5,4

6,6

57 2• cart

6,0

7,3

57 3•

RAM

3,6

4,4

57 3• cart

4,2

5,1

Tamaño

(palabras)

57 4• 57• •

1,8

2,2

8

8

%M30:24:= %M20:24 24

%M30:32:= %M20:32 32

%M30:16:=

COPY_BIT(%M20:16)

16

32

128

22

27

173

263

818

23

28

237

360

1 122

14

19

65

99

309

16

21

66

100

312

10

13

50

76

238

11

14

50

77

239

5,4

7,0

39

59

184

13

13

17

17

17

35013159.01 07/2008

191

Rendimiento

Instrucciones lógicas sobre tabla de bits

La tabla siguiente describe el rendimiento de las instrucciones lógicas sobre tabla de bits.

ST Tamaño

(bits)

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

57 3•

RAM

Tamaño

(palabras)

57 3• cart

57 4• 57• •

AND_ARX, OR_ARX, XOR_ARX

%M0:16:=

AND_ARX(%M30:16,%M50:16)

%M0:32:=

AND_ARX(%M30:32,%M50:32)

%M0:128:=

AND_ARX(%M30:128,%M50:128)

NOT_ARX

%M0:16:= NOT_ARX(%M30:16)

16 233

32

128

368

1 178

319

504

1 616

16

32

128

173

263

818

237

360

1 122

88

139

445

65

99

89

140

449

66

100

68

107

343

50

76

68

107

344

50

77

52

83

265

39

59

309 312 238 239 184

24

24

24

17

17

17

192

35013159.01 07/2008

Rendimiento

Copia de una tabla de bits en una tabla de palabras

ST

La tabla siguiente describe el rendimiento de las instrucciones de copia de tablas de bits en una tabla de palabras.

%MW1:= %M30:8

%MW1:= %M30:16

%MD2:= %M30:24

%MD2:= %M30:32

%MW1:4:=

BIT_W(%M40:80,0,17,2)

%MD1:4:=

BIT_D(%M30:80,0,33,0)

Tamaño

(bits)

Tiempo de ejecución (

μ s)

8

16

24

32

17

57 1•

RAM

4,5

7,5

11

14

231

57 1• cart

5,2

8,2

11

14

317

10

13

87

57 2•

RAM

3,4

6,4

10

13

88

57 2• cart

3,9

6,9

Tamaño

(palabras)

57 4• 57• • 57 3•

RAM

2,2

4,2

6,8

8,8

67

57 3• cart

2,7

4,7

7,2

9,2

68

1,1

2,1

3,8

4,8

52

6

6

6

6

23

33 325 446 123 124 95 95 73 23

Copia de una tabla de palabras en una tabla de bits

ST

La tabla siguiente describe el rendimiento de las instrucciones de copia de tablas de palabras en una tabla de bits.

%M30:8:= %MW1

%M30:16:= %MW2

%M30:24:= %MD1

%M30:32:= %MD3

%M30:32:=

W_BIT(%MW200:2,0,2,0)

%M30:32:=

D_BIT(%MD0:1,0,2,0)

8

16

24

32

32

Tamaño

(bits)

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

3,6

5,6

12

14

231

4,4

6,4

13

15

317

2,5

4,5

6,1

8,1

87

3,0

5,0

6,9

8,9

88

57 3•

RAM

1,7

3,0

4,3

5,7

67

57 3• cart

2,2

3,5

5,1

6,4

68

Tamaño

(palabras)

57 4• 57• •

0,8

1,5

3,1

3,7

52

6

6

11

11

23

32 275 377 104 105 80 80 62 23

35013159.01 07/2008

193

Rendimiento

Instrucción sobre tablas de palabras, palabras dobles y flotantes

Inicio de una tabla de palabras por una palabra

La tabla siguiente describe el rendimiento de las instrucciones de inicio de una tabla de palabras por una palabra.

ST Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

%MW0:10:= %MW100 10 palabras 34 por palabra 0,16

%MD0:10:= %MD100 10 palabras dobles por palabra doble

53

1,98

35

0,16

54

1,98

14

0,15

19

0,57

15

0,15

20

0,57

57 3•

RAM

10

0,12

13

0,37

57 3• cart

11

0,12

14

0,37

Tamaño

(palabras)

57 4• 57• •

6,7

0,08

8,8

0,26

10

10

Copia de una tabla de palabras en una tabla de palabras

La tabla siguiente describe el rendimiento de las instrucciones de copia de una tabla de palabras en otra tabla de palabras.

ST Tamaño (de la tabla de palabras)

Tiempo de ejecución (

%MW0:10:=%MW20:10; 10 palabras 63 por palabra 0,28

%MD0:10:=%MD20:10; 10 palabras dobles por palabra doble

57 1•

RAM

69

0,79

57 1• cart

65

0,28

71

0,79

57 2•

RAM

25

0,31

29

μ

0,71 s)

57 2• cart

26

0,31

30

0,71

57 3•

RAM

17

0,24

20

0,53

57 3• cart

19

0,24

22

0,53

Tamaño

(palabras)

57 4• 57• •

12

0,15

14

0,36

15

15

194

35013159.01 07/2008

Rendimiento

Instrucciones aritméticas y lógicas entre 2 tablas de palabras

ST

La tabla siguiente describe el rendimiento de las instrucciones aritméticas y lógicas entre 2 tablas de palabras.

Tamaño

(de la tabla de palabras)

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

57 3•

RAM

57 3• cart

Tamaño

(palabras)

57 4• 57• •

+, -

%MW0:10:=

%MW10:10 + %MW20:10;

%MD0:10:=

%MD10:10+%MD20:10;

10 palabras por palabra

10 palabras dobles por palabra doble

110

4,7

154

8,9

112

4,7

156

8,9

41

1,8

60

3,6

*

%MW0:10:=

%MW10:10 * %MW20:10;

%MD0:10:=

%MD10:10 * %MD20:10;

43

1,8

62

3,6

28

1,3

41

2,5

30

1,3

43

2,5

19

0,9

28

1,7

10 palabras por palabra

10 palabras dobles por palabra doble

127

6,4

441

37,6

129

6,4

444

37,6

47

2,4

153

12,9

50

2,4

155

33

1,7

104

12,9 8,7

35

1,7

106

8,7

23

1,2

73

6,2

/, REM

%MW0:10:=

%MW10:10 / %MW20:10;

10 palabras por palabra

133

7,0

135

7,0

49

2,6

52

2,6

34

1,8

36

1,8

24

1,4

23

23

23

23

23

35013159.01 07/2008

195

Rendimiento

ST Tamaño

(de la tabla de palabras)

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

1 639 1 642 395 %MD0:10:=

%MD10:10 / %MD20:10;

10 palabras dobles por palabra doble

AND, OR, XOR

%MW0:10:=%MW10:10 AND

%MW20:10;

10 palabras por palabra

%MD0:10:=%MD10:10 AND

%MD20:10;

10 palabras dobles por palabra doble

157

108

4,5

155

9

157

111

4,5

158

9

37

40

1,7

61

4

57 2• cart

397

37

43

1,7

63

4

57 3•

RAM

248

23

28

1,2

42

3

23

30

1,2

44

3

57 3• cart

250

Tamaño

(palabras)

57 4• 57• •

172 23

16

19

0,8

29

2

23

23

196

35013159.01 07/2008

Rendimiento

Instrucciones aritméticas y lógicas entre 1 tabla de palabras y 1 palabra

La tabla siguiente describe el rendimiento de las instrucciones aritméticas y lógicas entre 1 tabla de palabras y 1 palabra.

ST Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

+, -

%MW0:10:=%MW10:10 +

%MW20; o %MW0:10:= %MW20 +

%MW10:10

%MD0:10:=%MD10:10 +

%MD20;

10 palabras 86 por palabra 2,8

10 palabras dobles por palabra doble

112

5,2

*

%MW0:10:=

%MW20*%MW10:10;

10 palabras por palabra

113

5,6

88

2,8

114

5,2

115

5,6

30

0,8

41

1,9

38

1,6

32

0,8

43

1,9

40

1,6

57 3•

RAM

21

0,5

28

1,3

26

1,1

57 3• cart

22

0,5

30

1,3

27

1,1

Tamaño

(palabras)

57 4• 57• •

14

0,4

19

0,9

18

0,7

18

18

18

134 90 92 64 18 %MD0:10:=

%MD20*%MD10:10;

10 palabras dobles por palabra doble

381

32

/, REM

%MW0:10:=%MW10:10 /

%MW30;

10 palabras 140 por palabra 8,4

383

32

142

8,4

132

11

46

2,4

%MD0:10:=

MD10:10 / %MD30

10 palabras dobles por palabra doble

1 585 1 587 375

152 152 35

AND, OR, XOR

%MW0:10:=%MW10:10

AND %MW20;

10 palabras 86 por palabra 2,8

88

2,8

30

0,8

11

48

2,4

377

35

32

0,8

7,4

31

1,6

235

22

21

0,5

7,4

33

1,6

236

22

22

0,5

5,3

21

1,1

163

15

14

0,4

18

18

18

35013159.01 07/2008

197

Rendimiento

ST Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

383 132 134 %MD0:10:=%MD20 AND

%MD10:10;

10 palabras dobles por palabra doble

381

4,2

NOT

%MW0:10:=NOT(%MW10:

10);

10 palabras 74

%MD0:10:=NOT(%MD10:

10) por palabra 1,9

10 palabras dobles

84 por palabra doble

2,9

4,2

75

1,9

86

2,9

1,5

26

0,5

31

1,0

1,5

28

0,5

33

1,0

1,0

18

0,4

22

0,7

57 3•

RAM

90

57 3• cart

92

Tamaño

(palabras)

57 4• 57• •

64 18

1,0

19

0,4

23

0,7

0,7

12

0,2

15

0,5

15

15

Función de suma sobre la tabla

ST

La tabla siguiente describe el rendimiento de las instrucciones de suma sobre la tabla.

Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

57 3•

RAM

57 3• cart

Tamaño

(palabras)

57 4• 57• •

%MW20:=SUM(%MW0:10); 10 palabras 51 por palabra 1,6

58 %MD20:=SUM(%MD0:10); 10 palabras dobles por palabra doble

2,1

53

1,6

59

2,1

17

0,4

19

0,6

18

0,4

20

0,6

12

0,3

13

0,4

12

0,3

14

0,4

8

0,2

9

0,3

16

16

198

35013159.01 07/2008

Rendimiento

Función de comparación de tablas

La tabla siguiente describe el rendimiento de las instrucciones de comparación de tablas.

ST Tamaño

(de la tabla de palabras)

Tiempo de ejecución (

μ s)

57 1•

RAM

67

57 1• cart

69

57 2•

RAM

26 %MW20:=

EQUAL(%MW0:10;%MW10:10);

10 palabras

%MD20:=

EQUAL(%MD0:10;%MD10:10); por palabra

10 palabras dobles por palabra doble

0,6

74

1,2

0,6

76

1,2

0,4

31

0,9

57 2• cart

28

0,4

33

0,9

57 3•

RAM

18

0,3

22

0,7

57 3• cart

20

0,3

23

0,7

Tamaño

(palabras)

57 4• 57• •

13

0,2

15

0,5

27

27

Función de búsqueda

La tabla siguiente describe el rendimiento de las instrucciones de búsqueda en una tabla.

ST Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

150 206 57 57 %MW20:=

FIND_EQW(%MW0:10,%KW0

)

10 palabras, caso máximo

223 61 62 %MD20:=

FIND_EQD(%MD0:10, %KD0)

10 palabras dobles, caso máximo

163

57 3•

RAM

44

47

57 3• cart

44

Tamaño

(palabras)

57 4• 57• •

34 14

48 37 15

35013159.01 07/2008

199

Rendimiento

Búsqueda de valores máximos y mínimos

ST

La tabla siguiente describe el rendimiento de las instrucciones de búsqueda de valores máximos y mínimos de una tabla.

Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

10 palabras 163 223 61 62

57 3•

RAM

47

57 3• cart

48

Tamaño

(palabras)

57 4• 57• •

37 12 %MW20:=

MAX_ARW(%MW0:10)

%MD20:=

MAX_ARD(%MD0:10)

10 palabras dobles

194 266 73 74 56 57 44 12

Cálculo del número de casos

ST

La tabla siguiente describe el rendimiento de las instrucciones del número de casos de un valor de una tabla de palabras.

Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

10 palabras 163 223 61 62

57 3•

RAM

57 3• cart

47 48

Tamaño

(palabras)

57 4• 57• •

37 14 %MW20:=

OCCUR_ARW(%MW0:10, %KW0)

%MD20:=

OCCUR_ARD(%MD0:10, %KD0)

10 palabras dobles

175 240 66 67 51 51 39 15

Desplazamiento circular

La tabla siguiente describe el rendimiento de las instrucciones de desplazamiento circular.

ST Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

343 94 95 ROL_ARW(palabra o valor,%MWj:10)

10 palabras

ROL_ARD(%MDi,%MDj:10) 10 palabras dobles

250

269 369 102 102

57 3•

RAM

73

78

57 3• cart

73

79

Tamaño

(palabras)

57 4• 57• •

56

61

12

12

200

35013159.01 07/2008

Rendimiento

Instrucción de orden

ST

La tabla siguiente describe el rendimiento de las instrucciones de orden de los elementos de una tabla.

Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

57 3•

RAM

Tamaño

(palabras)

57 3• cart

57 4• 57• •

SORT_ARW(%MWi,%MWj:10) 10 palabras, caso máximo

450

SORT_ARD(%MDi,%MDj:10) 5 palabras dobles, caso máximo

275

618

377

170

104

172

105

131

80

132

80

101

62

12

12

Cálculo de longitud

ST

LENGTH_ARW(tab_mot)

LENGTH_ARD(tab_dmot)

LENGTH_ARW(tab_reel)

LENGTH_ARW(tab_bit)

La tabla siguiente describe el rendimiento de las instrucciones de cálculo de longitud de una tabla.

Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

31

31

43

43

12

12

12

12

31

31

43

43

12

12

12

12

9

9

9

9

57 3•

RAM

9

9

9

9

57 3• cart

7

7

7

7

Tamaño

(palabras)

57 4• 57• •

6

6

6

6

35013159.01 07/2008

201

Rendimiento

Tablas de flotantes

ST

SUM_ARR

FIND_EQR

FIND_EQRP

FIND_GTR

FIND_LTR

MAX_ARR

MIN_ARR

OCCUR_ARR

ROL_ARR

ROR_ARR

SORT_ARR

EQUAL_ARR

La tabla siguiente describe el rendimiento de las instrucciones sobre tabla de flotantes.

Tamaño (de la tabla de palabras)

Tiempo de ejecución (

μ s) Tamaño

(palabras)

57 4• 57• • 57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

57 3•

RAM

57 3• cart

794 942 186 207 132 149 98

390 535 83 93 59 67 44

10 reales

10 reales, caso mediano

10 reales, caso mediano

10 reales, caso mediano

10 reales, caso mediano

10 reales

10 reales

10 reales

10 reales

10 reales

10 reales

10 reales

391

390

390

536 83 93 59 67 44

535 83 93 59 67 44

535 83 93 59 67 44

648

601

889 160 179 114 128 85

825 148 164 105 118 78

598 821 147 164 104 118 78

273 374 67 75 48 54 35

264 363 65 72 46 52 34

896 1 229 220 245 156 176 116

344 472 84 94 60 68 45

202

35013159.01 07/2008

Rendimiento

Instrucciones de gestión del tiempo

Instrucciones de gestión de datos, horas y duración

ST

La tabla siguiente describe el rendimiento de las instrucciones de gestión de datos, horas y duración.

Tiempo de ejecución (

μ s) Tamaño

(palabras)

57 4• 57• • 57 1•

RAM

57 1• cart

57 2•

RAM

%MW2:4:= ADD_DT(%MW2:4,%MD8) 1 951 2 677 737

%MD2:= ADD_TOD(%MD2,%MD8)

%MB2:11:=

DATE_TO_STRING(%MD40)

%MW5:= DAY_OF_WEEK() 88

%MD10:= DELTA_D(%MD2, %MD4) 731

%MD10:=

DELTA_DT(%MD2:4,%MW6:4)

%MD10:=

DELTA_TOD(%MD2,%MD4)

1 025

606

1 407

832

121

1 004

387

229

33

276

1 506 2 067 569

1 113 1 527 421

%MB2:20:=

DT_TO_STRING(%MW50:4)

707 970 267

%MW2:4:= SUB_DT(%MW2:4,%MD8) 2 344 3 216 886

1 113 1 527 421

794 1 089 300

%MD2:= SUB_TOD(%MD2,%MD8)

%MB2:15:=

TIME_TO_STRING(%MD40)

%MB2:9:=

TOD_TO_STRING(%MD40)

%MD100:= TRANS_TIME(%MD2)

519

331

712

455

196

125

57 2• cart

744

391

231

34

279

574

424

269

893

424

303

198

126

57 3•

RAM

568

298

176

57 3• cart

571

300

177

26

213

438

324

206

682

324

231

151

96

26

214

441

325

207

685

325

232

152

97

440

231

137

20

165

339

251

159

528

251

179

117

75

19

9

12

19

9

12

5

9

19

9

17

12

7

35013159.01 07/2008

203

Rendimiento

Acceso al relojcalendario

ST

La tabla siguiente describe el rendimiento de las instrucciones del reloj-calendario.

Tiempo de ejecución (

μ s)

RRTC(%MW0:4)

WRTC(%MW0:4)

PTC(%MW0:5)

SCHEDULE(%MW0,%MW1,%MW2,

%MD10,%MD12,%M0)ÿ

57 1•

RAM

88

69

74

88

57 1• cart

89

70

75

89

57 2•

RAM

30

25

26

30

57 2• cart

30

25

27

30

57 3•

RAM

21

17

18

21

57 3• cart

21

17

19

21

14

11

12

14

Tamaño

(palabras)

57 4• 57• •

8

8

8

8

Funciones del temporizador

ST

FTON

FTOF

FTP

FPULSOR

La tabla siguiente describe el rendimiento de las instrucciones del temporizador.

Tiempo de ejecución (

μ s)

57 1•

RAM

53

53

53

181

57 1• cart

53

53

53

249

57 2•

RAM

28

28

28

69

57 2• cart

32

32

32

69

57 3•

RAM

21

21

21

53

57 3• cart

24

24

24

53

Tamaño

(palabras)

57 4• 57• •

12

12

12

41

204

35013159.01 07/2008

Rendimiento

Instrucciones sobre cadenas de caracteres

Asignación, nueva copia de cadenas de caracteres

ST

La tabla siguiente describe el rendimiento de las instrucciones de asignación y la nueva copia de cadenas de caracteres.

%MB0:8:=%MB10:8

%MB0:8:=’abcdefg’

Tamaño

(caracteres)

Tiempo de ejecución (

57 1•

RAM

66

57 1• cart

67

μ s)

57 2•

RAM

27

57 2• cart

27

57 3•

RAM

18

57 3• cart

19

Tamaño

(palabras)

57 4• 57• •

14 15 Ocho caracteres

Por carácter

Ocho caracteres

Por carácter

0,39

85

2,37

0,39

85

2,37

0,30

29

0,68

0,30

29

0,68

0,23

20

0,47

0,23

20

0,47

0,16

14

0,36

14

0,5

Conversiones palabra <-> cadenas de caracteres

ST

La tabla siguiente describe el rendimiento de las instrucciones de conversión de palabras y de cadenas de caracteres.

%MW1:=

STRING_TO_INT(%MB0:7)

%MB0:7:=

INT_TO_STRING(%MW0)

Tiempo de ejecución (

57 1•

RAM

69

57 1• cart

71

μ s)

57 2•

RAM

23

57 2• cart

23

57 3•

RAM

16

57 3• cart

16

Tamaño

(palabras)

57 4• 57• •

12 10

74 75 23 23 15 16 12 10

35013159.01 07/2008

205

Rendimiento

Conversiones palabra doble <-> cadenas de caracteres

ST

La tabla siguiente describe el rendimiento de las instrucciones de conversión de palabras dobles y de cadenas de caracteres.

Tiempo de ejecución (

57 1•

RAM

706

57 1• cart

707

μ s)

57 2•

RAM

237

57 2• cart

237

57 3•

RAM

160

Tamaño

(palabras)

57 4• 57• • 57 3• cart

160 115 10 %MD1:=

STRING_TO_DINT(%MB0:13)

%MB0:13:=

DINT_TO_STRING(%MD0)

215 216 66 67 44 45 33 10

Conversiones flotante <-> cadenas de caracteres

ST

La tabla siguiente describe el rendimiento de las instrucciones de conversión de flotante a cadenas de caracteres.

%MF1:=

STRING_TO_REAL(%MB0:15)

%MB0:15:=

REAL_TO_STRING(%MF0)

Tiempo de ejecución (

57 1•

RAM

57 1• cart

1 912 1 913

μ s)

57 2•

RAM

344

57 2• cart

344

57 3•

RAM

237

57 3• cart

237

Tamaño

(palabras)

57 4• 57• •

155 10

500 501 140 140 96 96 63 10

206

35013159.01 07/2008

Rendimiento

Instrucciones de manipulación de cadenas de caracteres

ST

La tabla siguiente describe el rendimiento de las instrucciones de manipulación de cadenas de caracteres.

%MB10:20:= LEFT(%MB30:30,20);

%MW0:= LEN(%MB10:20);

%MB10:20:= MID(%MB30:30,20,10);

%MB10:20:=

REPLACE(%MB30:20,%MB50:10,10,1

0);

%MB10:20:= RIGHT(%MB30:30,20);

Tiempo de ejecución (

%MW0:=

EQUAL_STR(%MB10:20,%MB30:20);

(el quinto carácter difiere)

57 1•

RAM

%MB10:20:=

CONCAT(%MB30:10,%MB50:10)

494

%MB10:20:= DELETE(%MB10:22,2,3); 400

338

%MW0:=

FIND(%MB10:20,%MB30:10);

%MB10:20:=

INSERT(%MB30:10,%MB50:10,4);

650

519

369

219

444

556

606

57 1• cart

678

549

463

892

712

506

300

609

763

832

57 2•

RAM

187

151

128

246

196

139

83

168

210

229

μ s)

57 2• cart

188

57 3•

RAM

144

57 3• cart

144

152

129

248

198

141

83

169

212

231

116

98

189

151

107

64

129

162

176

117

99

190

152

108

64

130

163

177

Tamaño

(palabras)

57 4• 57• •

111

90

76

146

117

83

49

100

125

137

24

21

19

19

26

19

12

21

28

19

Extracción de palabras

ST

LW

HW

CONCATW

La tabla siguiente describe el rendimiento de las instrucciones de extracción de palabras.

Tiempo de ejecución (

μ s) Tamaño

(palabras)

57 4• 57• • 57 1•

RAM

32

57 1• cart

44

57 2•

RAM

12

57 2• cart

12

57 3•

RAM

9

57 3• cart

9 7

32

32

44

44

12

12

12

12

9

9

9

9

7

7

35013159.01 07/2008

207

Rendimiento

Funciones específicas y funciones Orphée

Funciones de comunicación

La tabla siguiente describe el rendimiento de las funciones de comunicación.

ST Tiempo de ejecución (

μ s) Tamaño

(palabras)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

57 3•

RAM

57 3• cart

57 4• 57• •

SEND_REQ: tiempo de ejecución de la instrucción, tiempo que se debe añadir al sistema de comunicación

SEND_REQ(%KW0:6,15,%MW0:1,%

MW10:10,%MW30:4)

1 250 1 715 472 476 364 366 282 33

SEND_TLG: el tratamiento es síncrono a la instrucción, no hay tiempo que se debe añadir al sistema de comunicación

SEND_TLG(%KW0:6,,%MW0:5,

%MW30:2)

938 1 287 354 357 273 274 211 24

SERVER para 120 bytes

WRITE_ASYN para 500 palabras

READ_ASYN para 500 palabras

3 825

2 975

2 975

4 244

3 301

3 301

2 225

1 731

1 731

2 229

1 734

1 734

1 677

1 305

1 305

1 679

1 306

1 306

1 427

1 110

1 110

16

16

16

208

35013159.01 07/2008

Rendimiento

Función de diálogo operador

La tabla siguiente describe el rendimiento de las instrucciones de diálogo operador.

ST Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

57 3•

RAM

57 3• cart

Tamaño

(palabras)

57 4• 57• •

1250 1715 472 476 364 366 282 25

1250 1715 472 476 364 366 282 25

SEND_MSG(ADR#1.0,%MW0:2,%MW10:2)

SEND_ALARM(ADR#1.0,%MW0:2,%MW10:2)

GET_MSG(ADR#1.0,%MW0:2,%MW10:2)

GET_VALUE(ADR#1.0,%MW0,%MW10:2)

1250 1715 472 476 364 366 282 25

625 858 236 238 182 183 141 20

ASK_MSG(ADR#1.0,%MW0:2,%MW10:2,%MW20:2) 1250 1715 472 476 364 366 282 32

ASK_VALUE(ADR#1.0,%MW0,%MW10:2,%MW20:2) 1250 1715 472 476 364 366 282 27

DISPLAY_ALRM(ADR#1.0,%MW0,%MW10:2)

DISPLAY_GRP(ADR#1.0,%MW0,%MW10:2)

DISPLAY_MSG(ADR#1.0,%MW0,%MW10:2)

CONTROL_LEDS(ADR#1.0,%MW0:2,%MW10:2)

ASSIGN_KEYS(ADR#1.0,%MW0:2,%MW10:2)

PANEL_CMD(ADR#1.0,%MW0:2,%MW10:2)

625

625

625

858

858

858

236

236

236

1250 1715 472

1250 1715 472

1250 1715 472

238

238

238

476

476

476

182

182

182

364

364

364

183

183

183

366

366

366

141

141

141

282

282

282

20

20

20

25

25

25

Función de regulación

La tabla siguiente describe el rendimiento de las funciones de regulación.

ST

PID("PIDS1",’Unité’,%IW3.5,%MW1

2, %M16,%MW284:43)

PWM(%MW11,%Q2.1,%MW385:5)

SERVO(%MW12,%IW3.6,%Q2.2,%

Q2.3, %MW284:43,%MW390:10)

PID_MMI(ADR#0.0.4,%M1,%M2:5,

%MW410:62)

Condición Tiempo de ejecución (

μ s) Tamaño

(palabras)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

57 3•

RAM

57 3• cart

57 4• 57• • deval_mmi

=0

688 943 260 262 200 201 155 32 deval_mmi

=1

563 772 213 214 164 165 127

313 429 118 119 91 91 70 17

500 686 189 191 145 146 113 31

EN=1 625 858 236 238 182 183 141 30

35013159.01 07/2008

209

Rendimiento

Guardado de datos

ST

SET_PCMCIA

WRITE_PCMCIA

READ_PCMCIA

La tabla siguiente describe el rendimiento de las funciones de guardado de datos.

Condición fijo por palabra fijo por palabra fijo por palabra

Tiempo de ejecución (

μ s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

57 3•

RAM

57 3• cart

Tamaño

(palabras)

57 4• 57• •

350

0,4

350

0,8

350

0,7

70

0,3

70

0,3

70

0,4

40

0,2

40

0,3

40

0,3

30

0,2

30

0,2

30

0,4

Función Orphée La tabla siguiente describe el rendimiento de las funciones de regulación.

ST

DSHL_RBIT(%MD102,16,%MD204,%MD206)

DSHR_RBIT(%MD102,16,%MD204,%MD206)

Tiempo de ejecución (

200

319

274

437

76

120

DSHRZ_C(%MD102,16,%MD204,%MD206) 194 266 73

WSHL_RBIT(%MW102,8,%MW204,%MW206) 138 189 52

WSHR_RBIT(%MW102,8,%MW204,%MW206)

WSHRZ_C(%MW102,8,%MW204,%MW206)

181

138

249

189

SCOUNT(%M100,%MW100,%M101,%M102,

%MW101,%MW102,%M200,%M201,%MW200,

%MW201)

263 360

69

52

99

μ

76

74

52

69

52 s)

57 1•

RAM

57 1• cart

57 2•

RAM

57 2• cart

122

100

57 3•

RAM

57 3• cart

Tamaño

(palabras)

57 4• 57• •

58

93

58

93

45

72

17

17

56

40

53

40

76

57

40

53

40

77

44

31

41

31

59

17

17

17

17

38

210

35013159.01 07/2008

Instrucciones de entradas/salidas explícitas

Rendimiento

35013159.01 07/2008

211

Rendimiento

Rendimiento

ST

La tabla siguiente describe el rendimiento de las instrucciones de entradas/salidas explícitas.

Tiempo de ejecución (

μ s)

57 1• cart

57 2•

RAM

57 2• cart

57 3•

RAM

57 3• cart

Tamaño

(palabras)

57 4• 57• • 57 1•

RAM

Read_Sts %CHi.MOD

Cualquier función específica, exceptuando la vía de comunicación del procesador

Read_Sts %CHi

EntradaTON

Salida TON

Entrada analógica

Salida analógica

Módulo de contaje CTY 2A/4A

Módulo de contaje CTY 2C

Módulo paso por paso CFY 11/22

Módulo de comando de eje CAY 21/41

Write_Param %CHi

Entrada analógica

Salida analógica

Módulo de contaje CTY 2A/4A

Módulo de contaje CTY 2C

Módulo paso por paso CFY 11/22

Módulo de comando de eje CAY 21/41

Read_Param %CHi

Entrada analógica

Salida analógica

Módulo de contaje CTY 2A/4A

Módulo de contaje CTY 2C

Módulo paso por paso CFY 11/22

Módulo de comando de eje CAY 21/41

Save_Param %CHi

552

327

311

448

334

296

386

334

327

499

474

603

400

577

461

115

115

334

349

393

386

651

118

118

363

381

435

426

574

540

731

444

691

522

354

335

505

363

317

426

363

354

291

75

75

201

209

230

227

274

265

302

233

297

260

197

189

254

201

180

227

201

197

292

75

75

201

209

230

227

275

265

303

234

298

260

197

189

255

201

181

227

201

197

220

56

56

151

157

173

171

207

200

229

176

225

196

148

142

192

151

136

171

151

148

220

56

56

151

157

173

171

207

200

230

176

226

196

148

142

192

151

136

171

151

148

49

49

129

134

148

145

174

169

190

150

187

166

127

122

163

129

117

145

129

127

2

6

6

6

212

35013159.01 07/2008

Rendimiento

ST Tiempo de ejecución (

μ s)

Entrada analógica

Salida analógica

Módulo de contaje CTY 2A/4A

Módulo de contaje CTY 2C

Módulo paso por paso CFY 11/22

Módulo de comando de eje CAY 21/41

57 1•

RAM

635

640

752

379

421

421

57 1• cart

787

795

57 2•

RAM

306

306

1 049 271

417

470

470

223

243

243

Restore_Param %CHi

Entrada analógica

Salida analógica

Módulo de contaje CTY 2A/4A

Módulo de contaje CTY 2C

Módulo paso por paso CFY 11/22

467

467

608

349

588

480

531

531

739

381

707

548 Módulo de comando de eje CAY 21/41

Write_Cmd %CHi

Salida TON 288 308 176

Entradas analógicas

Forzado de entrada

Resincronización de entrada

134

691

138

895

86

303

Salidas analógicas

Forzado 143 147 92

Smove %CH1.0(%MW1,%MW2,%MW3,%MD4,%MD5,%MW6)

Módulo paso por paso CFY 11/22

Módulo de comando de eje CAY 21/41

617

608

755

739

304

303

262

262

303

209

299

267

263

263

304

209

300

268

57 2• cart

307

307

274

223

243

243

176

86

304

92

305

304

198

198

230

157

227

202

133

65

231

69

231

230

57 3•

RAM

232

233

209

168

183

183

57 3• cart

233

233

211

168

183

183

Tamaño

(palabras)

57 4• 57• •

191

191

160

143

155

155

6

198

198

230

157

227

202

133

65

232

69

231

230

167

167

190

134

188

170

114

0

56

186

0

60

190

190

6

6

19

35013159.01 07/2008

213

Rendimiento

Bloque de función DFB

Tamaño ocupado por el tipo DFB

Mediante la fórmula siguiente se calcula el tamaño ocupado por el tipo DFB:

Tamaño del tipo DFB = Tamaño de las variables y los parámetros DFB + Tamaño del código DFB

Tamaño de las variables y los parámetros DFB

El cálculo del tamaño de las variables y de los parámetros DFB se realiza de la siguiente manera:

Tamaño de las variables y los parámetros DFB = 110 + Suma de los descriptores de las variables y los parámetros + Suma de los tamaños ocupados por cada variable o parámetro con:

Descriptor de'una variable o de'un parámetro = 5,5 + (Número de caracteres del nombre de la variable o del parámetro)/2 y

Tamaño ocupado por cada variable o parámetro:

Tipo

EBOOL

BOOL

WORD

DWORD

REAL

AR_X

AR_W

AR_D

AR_R

STRING

3

3

3

3

3

2

2

IN

0,5

0,5

1

3

3

3

3

3

2

2

2

2

IN/OUT

2

OUT

0,5

0,5

1

2

2

0,5*N

N

2*N

2*N

0,5*N

PUBLICA

0,5

0,5

1

2

2

0,5*N

N

2*N

2*N

0,5*N

PRIVADA

0,5

0,5

1

2

2

0,5*N

N

2*N

2*N

0,5*N

N = número de'elementos de la tabla o longitud de la cadena de caracteres

(STRING)

214

35013159.01 07/2008

Tamaño del código DFB

Rendimiento

El cálculo del tamaño de las variables y de los parámetros DFB se realiza de la siguiente manera:

Tamaño del código DFB = 11 + Suma de los tamaños de cada una de las instrucciones (1)

(1) Al tamaño de las instrucciones se le vuelve a añadir los volúmenes siguientes en función de la variable o del parámetro contenido en la'instrucción:

Naturaleza

IN

IN/OUT

OUT, PUBLC

PRIVADA

Tipo

EBOOL

BOOL, WORD, DWORD, REAL

AR_X,AR_W,AR_D,AR_R,STRING

EBOOL

BOOL, WORD, DWORD, REAL

AR_X,AR_W,AR_D,AR_R,STRING

EBOOL

BOOL, WORD, DWORD, REAL

AR_X,AR_W,AR_D,AR_R,STRING

0

0

3

3

0,5

0

3

3

Volumen

0,5

Objeto indexado:

Naturaleza

IN

IN/OUT

OUT,

PUBLICA,

PRIVADA

Tipo

AR_X,AR_W,AR_D,AR_R

AR_X,AR_W,AR_D,AR_R

AR_X,AR_W,AR_D,AR_R

Volumen

7

7

6

35013159.01 07/2008

215

Rendimiento

Tamaño ocupado por el'empleo del

DFB

Llamada de'una instancia de DFB sin ningún parámetro = 6 palabras

Cálculo para un parámetro

Naturaleza Tipo

IN EBOOL, BOOL, WORD, DWORD, REAL

AR_X,AR_W,AR_D,AR_R, STRING

IN/OUT

OUT,

EBOOL, WORD, DWORD, REAL

BOOL, AR_X,AR_W,AR_D,AR_R

Todo tipo

Volumen

ídem asignación:=

14

10

14

ídem asignación:=

Empleo de'una variable de'una instancia: volver a añadir 1 palabra en relación con

216

35013159.01 07/2008

Rendimiento

Tiempo de ejecución

El tiempo total de ejecución del DFB viene dado por la fórmula siguiente:

Tiempo total de'ejecución del DFB = Talón de código DFB + Suma de los tiempos de'acceso a las variables y parámetros DFB + Llamada DFB (sin parámetro) +

Suma de los tiempos de'acceso de cada parámetro

La tabla siguiente ofrece los tiempos de ejecución en

μ s.

574• Elemento Tipo 571•

RAM

13,0

571• cart

16,3 Talón para código DFB

Acceso a una variable o a un parámetro DFB (1)

Objetos indexados

IN EBOOL

IN/OUT

OUT,

PUBLICA,

PRIVADA

BOOL,WORD,DWORD,REAL

AR_X,AR_W,AR_D,AR_R,STRING

EBOOL

BOOL,WORD,DWORD,REAL

AR_X,AR_W,AR_D,AR_R,STRING

0,2

0

1,4

1,4

0,2

0

0

0,3

0

0

Objetos no indexados

IN, IN/

OUT

AR_X,AR_W,AR_D,AR_R,

OUT,

PUBLICA,

PRIVADA

AR_X,AR_W,AR_D,AR_R,

2,8

2,1

3,5

2,6

Llamada DFB (sin parámetro)

Cálculo por parámetro (1)

IN

IN/OUT

OUT

EBOOL

BOOL,WORD,DWORD,REAL

AR_X,AR_W,AR_D,AR_R,STRING

EBOOL,WORD,DWORD,REAL

3,8

ídem:=

ídem:=

3,5

2,8

4,8

4,4

3,5

BOOL,AR_X,AR_W,AR_D,AR_R,STRING 3,5

Todo tipo ídem:=

4,4

0,3

0

1,7

1,7

572•

RAM

4,8

0,09

0

0,5

0,5

0,09

0

0

1,0

0,8

1,5

1,5

1,0

1,5

572• cart

4,8

0,12

0

0,8

0,8

0,12

0

0

0,9

1,1

1,8

1,9

1,4

1,9

573•

RAM

3,4

0,06

0

0,4

0,4

0,06

0

0

0,7

0,5

1,0

1,0

0,7

1,0

573• cart

3,8

0,10

0

0,6

0,6

0,10

0

0

0,7

0,9

1,4

1,6

1,1

1,6

1,1

0,2

0,2

0,3

0,3

0,2

0,3

0,02

0

0,1

0,1

0,02

0

0

(1) valor que se debe añadir en relación con las operaciones que se aplican a objetos de tipo %M.

35013159.01 07/2008

217

Rendimiento

6.4

Funciones avanzadas

Presentación

Objeto

Contenido

Esta sección describe los tamaños de la memoria ocupados por las funciones avanzadas y el método de cálculo del número de instrucciones.

Esta sección contiene los siguientes apartados:

Apartado

Descripción de las zonas de memoria

Tamaño de memoria de los objetos

Resumen del consumo de memoria de los módulos en Micro

Resumen del consumo de memoria de los módulos en Premium

Tamaño de la memoria de las funciones avanzadas

Método de cálculo del número de instrucciones

Página

219

220

221

224

231

245

218

35013159.01 07/2008

Rendimiento

Descripción de las zonas de memoria

Nota z z

La aplicación se reparte en varias zonas de la memoria: z zona de memoria bit: z z esta zona es específica para los autómatas TSX 37 y se limita a 1280 bits esta zona forma parte de la zona de memoria dada para los autómatas

TSX 57, zona de memoria de datos (palabras), zona de memoria de aplicación, que comprende: z la configuración, z z el programa, las constantes.

Las zonas de memoria de bits y datos se almacenan siempre en la RAM interna, la zona de memoria de aplicación se puede almacenar en la RAM interna o en la tarjeta de memoria.

35013159.01 07/2008

219

Rendimiento

Tamaño de memoria de los objetos

Descripción La tabla siguiente describe el tamaño de memoria ocupada por cada tipo de objeto del lenguaje PL7.

Tipo de objeto

Etapas Grafcet (%Xi, %Xi.T)

%Mi

Digitales (%MWi)

Constantes (%KWi)

%NWi

%Ti

%TMi

%MNi

%Ci

%Ri (longitud lg)

%DRi

Memoria bit (en palabras)

Datos (en palabras)

0,5 1

0,5

1

1

4

5

4

3

6+lg

6

Aplicación (en palabras)

1,25

2

1

2

2

2

49

Datos del intérprete Grafcet = 355 + 2 x Nº etapas activas configuradas + (Nº de transiciones válidas configuradas) / 2

220

35013159.01 07/2008

Rendimiento

Resumen del consumo de memoria de los módulos en Micro

Generalidades

Procesadores

Nota: Esta información aparece en una versión específica de procesadores, por lo que puede sufrir «ligeras» variaciones en función de la evolución del producto.

Para cada tipo de módulo, las tablas siguientes ofrecen tanto el tamaño ocupado en cada una de las zonas, como un tamaño fijo que ha de añadirse al resumen del consumo la primera vez que se utilice una función específica.

La tabla siguiente ofrece el consumo de memoria de los módulos de procesadores

TSX 37.

Procesadores

TSX 37-05/08/10

TSX 37-21

TSX 37 -22

Empleo de la tarea FAST (TSX 37)

Empleo del primer suceso(TSX 37)

Memoria de bits

(palabras)

70

70

70

Datos

(palabras)

1560

1570

2110

260

520

Zona de aplicación

(palabras)

920

930

1280

Módulos Todo o nada

La tabla siguiente ofrece el consumo de memoria de los módulos Todo o nada.

Familia Todo o nada

Ocho entradas TON

16 entradas TON

Cuatro salidas TON

Ocho salidas TON

8E / 8S TON

16E / 12S TON

32E / 32S TON

4

16

32

8

2

4

Memoria de bits

(palabras)

4

Datos

(palabras)

12

12

12

12

12

20

20

50

40

40

Zona de aplicación

(palabras)

40

40

100

142

35013159.01 07/2008

221

Rendimiento

Módulos analógicos

Módulos de contaje

La tabla siguiente ofrece el consumo de memoria de los módulos analógicos.

Familia analógica

Módulo de cuatro entradas analógicas

AEZ414 0

Coste adicional del primer módulo de la familia de cuatro entradas analógicas

Memoria de bits

(palabras)

Módulo de ocho entradas analógicas

AEZ801/AEZ802 0

Coste adicional del primer módulo de la familia de ocho entradas analógicas

Módulo de salidas analógicas

ASZ200 0

ASZ401

Coste adicional del primer módulo de la familia de salidas analógicas

0

Datos

(palabras)

156

212

52

100

Zona de aplicación

(palabras)

56

120

72

120

40

59

120

La tabla siguiente ofrece el consumo de memoria de los módulos de contaje.

Familia de contaje

CTY1A

CTY2A

Coste adicional de la primera vía en contaje

Coste adicional de la primera vía en descontaje

Coste adicional de la primera vía en

CPT/DCPT

Memoria de bits

(palabras)

16

32

Datos

(palabras)

108

212

Zona de aplicación

(palabras)

64

106

144

144

144

222

35013159.01 07/2008

Módulos de comunicación

Rendimiento

La tabla siguiente ofrece el consumo de memoria de los módulos de comunicación.

Familia de comunicación

STZ010

SCP111/SCP112/SCP114

(en UC UTW)

FPP 20 en UC (vía 0 UTW)

MDM 10

0

0

Memoria de bits

(palabras)

0

0

Datos

(palabras)

36

40

40

2528

Zona de aplicación

(palabras)

168

763

755

12880

35013159.01 07/2008

223

Rendimiento

Resumen del consumo de memoria de los módulos en Premium

Generalidades

Procesadores

Nota: Esta información aparece en una versión específica de procesadores, por lo que puede sufrir «ligeras» variaciones en función de la evolución del producto.

Para cada tipo de módulo, las tablas siguientes ofrecen tanto el tamaño ocupado en cada una de las zonas, como un tamaño fijo que ha de añadirse al resumen del consumo la primera vez que se utilice una función específica.

La tabla siguiente ofrece el consumo de memoria de los módulos de procesadores

TSX 57.

Procesadores Memoria de bits (palabras)

Datos

(palabras)

P 57-1•

P 57-2•/3•/4•

Empleo de la tarea FAST (TSX 57)

Coste adicional del primer módulo en la configuración

70

70

P 57-1•: por anillo de regulación

Coste adicional del primer anillo

P 57-2•/3•/4•: por anillo de regulación

Coste adicional del primer anillo

4714

4714

520

600

500

500

Zona de aplicación

(palabras)

1720

1784

25000

5000

224

35013159.01 07/2008

Módulos TON

Rendimiento

La tabla siguiente ofrece el consumo de memoria de los módulos Todo o nada.

Familia TON Memoria de bits (palabras)

Datos

(palabras)

Zona de aplicación

(palabras)

Familia de entradas TON sencillas

Ocho entradas TON

16 entradas TON

32 entradas TON

64 entradas TON

4

8

16

32

Coste adicional del primer módulo de la familia de entradas

Familia de salidas TON sencillas

Ocho salidas TON

16 salidas TON

32 salidas TON

64 salidas TON

Coste adicional del primer módulo de la familia de salidas

4

8

16

32

Familia de entradas TON de suceso

16 entradas TON (DEY 16FK)

Coste adicional del primer módulo de la familia de entradas

8

Familia de entradas/salidas TON de seguridad

12E/4S o 12E/2S(PAY) 16

Coste adicional del primer módulo de la familia de entradas TON de suceso

Familia de entradas/salidas TON mixta

16 entradas/12 salidas (DMY 28FK)

Coste adicional del primer módulo de familia

TON mixta

16 E/12 S de sucesos (DMY 28RFK)

Coste adicional del primer módulo de la familia TON mixta refleja

16

32

100

130

230

430

110

160

280

550

220

128

304

976

100

110

120

190

610

100

110

120

190

570

130

680

200

1320

152

1432

656

5596

35013159.01 07/2008

225

Rendimiento

Módulos analógicos

La tabla siguiente ofrece el consumo de memoria de los módulos analógicos.

Familia analógica

Familias de entradas analógicas

AEY414

AEY800

AEY1600

Coste adicional del primer módulo de la familia de entradas analógicas (AEY

414/800/1600)

4

8

16

Memoria de bits

(palabras)

AEY810

AEY1614

Coste adicional del primer módulo de la familia de entradas analógicas (AEY

810/1614)

AEY420 4

8

16

Coste adicional del primer módulo de la familia de entradas analógicas (AEY

810/1614)

Familia de salidas analógicas

ASY410

Coste adicional del primer módulo de salidas analógicas ASY410

4

ASY800

Coste adicional del primer módulo de salidas analógicas ASY800

8

Datos

(palabras)

430

840

1670

888

1768

476

430

744

Zona de aplicación

(palabras)

160

240

430

2990

248

432

3056

168

2080

160

1700

248

1760

226

35013159.01 07/2008

Módulos de contaje

Rendimiento

La tabla siguiente ofrece el consumo de memoria de los módulos de contaje.

Familia de contaje

Módulo CTY2A

Módulo CTY4A

Coste adicional de la primera vía de contaje configurada

Módulo CTY2C

Coste adicional de la primera vía de contaje configurada

Memoria de bits (palabras)

32

64

48

Datos

(palabras)

410

800

672

Zona de aplicación

(palabras)

170

250

1740

184

1992

Módulos servo motor

La tabla siguiente ofrece el consumo de memoria de los módulos servo motor.

Familia servo motor (palabras)

CAY•1

CAY•2

CAY33 vía 3

Coste adicional de la primera vía configurada CAY•1

Coste adicional de la primera vía configurada CAY•2/33

Coste adicional de la primera vía 3 configurada CAY33

Memoria de bits

(palabras)

78

78

78

(palabras)

520

376

264

140

232

170

2130

3600

3600

Módulos paso a paso

La tabla siguiente ofrece el consumo de memoria de los módulos de paso a paso.

Familia de paso a paso

CFY11

CFY21

Coste adicional de la primera vía de paso a paso configurada

Memoria de bits

(palabras)

29

58

Datos

(palabras)

323

646

Zona de aplicación

(palabras)

104

152

2368

35013159.01 07/2008

227

Rendimiento

Módulos de comunicación

La tabla siguiente ofrece el consumo de memoria de los módulos de comunicación.

Familia de módulos de comunicación

SCY21600 (vía 0 UTW)

En SCY21600 (vía 1 UTW)

Coste adicional de la primera vía configurada en UTW

ETY 110

Coste adicional de la primera vía configurada ETY•110

ETY 120

Coste adicional de la primera vía configurada ETY•120

ETY 210

Coste adicional de la primera vía configurada ETY•210

IBY 100

1

1

Memoria de bits

(palabras)

Datos

(palabras)

1

1

1

1

230

450

431

48

434

450

Zona de aplicación

(palabras)

80

40

1280

256

1984

136

1368

400

3424

40

Submódulos de comunicación

La tabla siguiente ofrece el consumo de memoria de los submódulos de comunicación.

Submódulo de comunicación Memoria de bits

(palabras)

Datos

(palabras)

60

Zona de aplicación

(palabras)

580 SCP111/ SCP112/ SCP114 (UTW) 1 en UC (vía 0 UTW)

FPP 20 en UC (vía 0 UTW)

FPP 10 en UC (vía 0 UTW)

1

1

60

40

580

870

Acoplador AS-i La tabla siguiente ofrece el consumo de memoria de los acopladores AS-i.

Familia AS-i

SAY

Coste adicional de la primera vía AS-i

Memoria de bits

(palabras)

3

Datos

(palabras)

373

Zona de aplicación

(palabras)

176

2272

228

35013159.01 07/2008

Módulos de pesaje

Rendimiento

La tabla siguiente ofrece el consumo de memoria de los módulos de pesaje.

Familia de pesaje

AWY001

Coste adicional de la primera vía de pesaje configurada

Memoria de bits (palabras)

Datos

(palabras)

1 170

Zona de aplicación

(palabras)

120

3920

Módulos de entradas/salidas remotas TBX

La tabla siguiente ofrece el consumo de memoria de los módulos de entradas/ salidas remotas TBX.

Familia de entradas/salidas remotas Memoria de bits (palabras)

Datos

(palabras)

8 152

Zona de aplicación

(palabras)

88

1400

Entradas TON

Coste adicional de la primera platina principal configurada

Salidas TON

Coste adicional de la primera platina principal configurada

Programable

Coste adicional de la primera platina principal configurada

Almacenamiento del estado

Coste adicional de la primera platina principal configurada

AES 400

ASS 200

AMS 620

Coste adicional de la primera platina principal configurada

8

8

8

2

2

4

176

160

160

270

270

508

88

1320

88

2304

88

1400

104

104

112

3968

35013159.01 07/2008

229

Rendimiento

Módulos

Momentum

La tabla siguiente ofrece el consumo de memoria de los módulos Momentum.

Familia Momentum Memoria de bits (palabras)

Datos

(palabras)

Entradas

Coste adicional de la primera platina principal configurada

16

Salida 16

Coste adicional de la primera platina principal configurada

Mixta

Coste adicional de la primera platina principal configurada

16

96

112

104

Zona de aplicación

(palabras)

72

1384

72

1256

72

1424

Módulos de traslado del bus X

La tabla siguiente ofrece el consumo de memoria del módulo de traslado del bus X.

Traslado del bus X

Módulo TSX REY 200

Memoria de bits (palabras)

Datos

(palabras)

0 0

Zona de aplicación

(palabras)

56

230

35013159.01 07/2008

Rendimiento

Tamaño de la memoria de las funciones avanzadas

Descripción

Ejemplo

Las tablas siguientes indican el tamaño del código integrado en la aplicación (zona de aplicación) tras la llamada de una función avanzada para cada función avanzada

(OF).

Las funciones de una misma familia comparten el código (código común). Este código común se integra en el autómata tras la primera llamada de una función de esta familia. El código específico de una función se integra tras la primera llamada de esta función.

z z

Primera llamada de una función de la familia de conversiones digitales. Caso de

DBCD_TO_DINT, código integrado en la zona de aplicación: z Código común = 154 palabras.

z Código OF DBCD_TO_INT = 149 palabras.

Llamada de otra función de la familia de conversiones digitales. Caso de

DINT_TO_DBCD, código integrado en la zona de aplicación: z Código OF DINT_TO_DBCD = 203 palabras.

z Llamada de una función de la familia de conversiones digitales que ya ha sido llamada (DBCD_TO_DINT o DINT_TO_DBCD): ningún código integrado.

35013159.01 07/2008

231

Rendimiento

Conversiones digitales

La tabla siguiente ofrece el consumo de memoria de las funciones avanzadas de conversión.

Conversiones digitales OF Tamaño del código (en palabras)

Conversión de un número BCD de 32 bits en un entero de 32 bits

Conversión de un número BCD de 32 bits en un entero de 16 bits

DBCD_TO_DINT 203

DBCD_TO_INT 149

Conversión de un entero de 32 bits en número BCD de

32 bits

DINT_TO_DBCD 203

Conversión de un entero de 16 bits en un número BCD de 32 bits

Extracción de la palabra menos significativa de una palabra doble

INT_TO_DBCD 75

LW 33

Extracción de la palabra más significativa de una palabra doble

HW

Formación de una palabra doble con 2 palabras CONCATW

Código común

33

33

154

232

35013159.01 07/2008

Instrucciones sobre cadenas de bits

Rendimiento

La tabla siguiente ofrece el consumo de memoria de las funciones avanzadas de cadenas de bits.

Cadenas de bits OF

Y lógica entre dos tablas AND_ARX

Copia de una tabla de bits a una tabla de palabras dobles BIT_D

Copia de una tabla de bits en una tabla de palabras

Copia de una tabla de bits a una tabla de bits

BIT_W

COPY_BIT

Copia de una tabla de palabras dobles a una tabla de bits D_BIT

Complemento de uno de una tabla

O lógica entre dos tablas

Copia de una tabla de palabras a una tabla de bits

O exclusiva entre dos tablas

Longitud en número de elementos

NOT_ARX

OR_ARX

W_BIT

XOR_ARX

LENGTH_ARX

Código común

205

146

196

157

209

195

Tamaño del código

209

248

209

20

427

35013159.01 07/2008

233

Rendimiento

Instrucciones sobre la tabla de palabras

La tabla siguiente ofrece el consumo de memoria de las funciones avanzadas de tablas de palabras.

Instrucciones sobre tablas de palabras OF Tamaño del código (en palabras)

75 Búsqueda del primer elemento de una tabla igual a un valor

Búsqueda del primer elemento de una tabla superior a un valor

FIND_EQW

FIND_GTW

Búsqueda del primer elemento de una tabla inferior a un valor

FIND_LTW

Búsqueda del mayor valor dentro de una tabla MAX_ARW

75

78

Búsqueda del menor valor de una tabla MIN_ARW

Número de repeticiones de un valor dentro de una tabla OCCUR_ARW

Desplazamiento circular de una tabla hacia la izquierda ROL_ARW

Desplazamiento circular de una tabla hacia la derecha

Ordenación de una tabla (creciente o decreciente)

Longitud en número de elementos

ROR_ARW

SORT_ARW

Búsqueda parcial del primer elemento de una tabla igual a un valor

FIND_EQWP

LENGTH_ARW

Código común

144

164

77

20

162

78

74

145

150

234

35013159.01 07/2008

Rendimiento

Instrucciones sobre tablas de palabras dobles

La tabla siguiente ofrece el consumo de memoria de las funciones avanzadas de las tablas de palabras dobles.

Instrucciones sobre tablas de palabras dobles OF Tamaño del código (en palabras)

79 Búsqueda del primer elemento de una tabla igual a un valor

Búsqueda del primer elemento de una tabla superior a un valor

FIND_EQD

FIND_GTD

Búsqueda del primer elemento de una tabla inferior a un valor

Búsqueda del mayor valor dentro de una tabla

FIND_LTD

MAX_ARD

80

95

Búsqueda del menor valor de una tabla MIN_ARD

Número de repeticiones de un valor dentro de una tabla OCCUR_ARD

Desplazamiento circular de una tabla hacia la izquierda ROL_ARD

Desplazamiento circular de una tabla hacia la derecha

Ordenación de una tabla (creciente o decreciente)

ROR_ARD

SORT_ARD

178

Búsqueda parcial del primer elemento de una tabla igual a un valor

Longitud en número de elementos

FIND_EQWP

LENGTH_ARW

Código común

77

20

162

95

78

163

170

35013159.01 07/2008

235

Rendimiento

Instrucciones sobre tablas de flotantes

La tabla siguiente ofrece el consumo de memoria de las funciones avanzadas de tablas de flotantes.

Instrucciones sobre tablas de flotantes OF Tamaño del código (en palabras)

152

134

Suma de los elementos de una tabla de reales

Búsqueda del primer elemento de una tabla igual a un valor

SUM_ARR

FIND_EQR

Búsqueda del primer elemento de una tabla igual a un valor a partir de una posición

FIND_EQRP

Búsqueda del primer elemento de una tabla superior a un valor

FIND_GTR

Búsqueda del primer elemento de una tabla inferior a un valor

FIND_LTR

Búsqueda del mayor valor dentro de una tabla

Búsqueda del menor valor de una tabla

MAX_ARR

MIN_ARR

Número de repeticiones de un valor dentro de una tabla OCCUR_ARR

Desplazamiento circular de una tabla hacia la izquierda ROL_ARR

Desplazamiento circular de una tabla hacia la derecha

Ordenación de una tabla (creciente o decreciente)

ROR_ARR

SORT_ARR

Comparación de dos tablas de reales

Ordenación de una tabla (creciente o decreciente)

EQUAL_ARR

LENGTH_ARR

Código común

135

134

134

173

271

173

20

124

161

162

132

167

236

35013159.01 07/2008

Rendimiento

Instrucciones de gestión del tiempo

La tabla siguiente ofrece el consumo de memoria de las funciones avanzadas de gestión del tiempo.

Fechas, horas y duración

Añadido de una duración a una fecha completa

Añadido de una duración a una hora del día

Conversión de una fecha en cadena

Día de la semana

Desviación entre dos fechas

Desviación entre dos fechas completas

Desviación entre dos horas del día

Conversión de una fecha completa en cadena

Supresión de la duración de una fecha completa

Supresión de una duración a una hora del día

Conversión de una duración en cadena

OF

ADD_DT

ADD_TOD 188

DATE_TO_STRING 150

DAY_OF_WEEK 99

DELTA_D

DELTA_DT

DELTA_TOD

DT_TO_STRING

SUB_DT

SUB_TOD

Tamaño del código

519

374

547

110

266

548

186

TIME_TO_STRING 413

Conversión de una hora del día en cadena TOD_TO_STRING 156

Conversión en forma de horas-min-seg de una duración TRANS_TIME 211

Función reloj–calendario SCHEDULE 700

Código común 1703

35013159.01 07/2008

237

Rendimiento

Instrucciones sobre cadenas de caracteres

La tabla siguiente ofrece el consumo de memoria de las funciones avanzadas de cadenas de caracteres.

Fechas, horas y duración OF

Instrucciones sobre cadenas de caracteres

Tamaño del código

Tamaño del código

Concatenación de dos cadenas

Supresión de una subcadena

Búsqueda del primer carácter diferente

Búsqueda de una subcadena

Inserción de una subcadena

Extracción de la parte izquierda de una cadena

Longitud de una cadena

Extracción de una subcadena

Sustitución de una subcadena

Extracción de la parte derecha de una cadena

CONCAT

DELETE

EQUAL_STR

FIND

INSERT

LEFT

LEN

MID

REPLACE

RIGHT

Código común

38

70

44

365

279

212

225

287

55

418

238

35013159.01 07/2008

Funciones

Orphée

Rendimiento

La tabla siguiente ofrece el consumo de memoria de las funciones Orphée.

Funciones Orphée OF Tamaño del código

152 Desplazamiento en 32 hacia la izquierda con recuperación de bits desplazados

DSHL_RBIT

Desplazamiento en 32 hacia la derecha con extensión de signo, recuperación de bits desplazados

DSHR_RBIT

Desplazamiento en 32 hacia la derecha con relleno de cero, recuperación de bits desplazados

DSHRZ_C

Desplazamiento en 16 hacia la izquierda con recuperación de bits desplazados

WSHL_RBIT

Desplazamiento en 16 hacia la derecha con extensión de signo, recuperación de bits desplazados

WSHR_RBIT

Desplazamiento en 16 hacia la derecha con relleno de cero, recuperación de bits desplazados

WSHRZ_C

Código común

152

133

91

103

90

173

Contaje/descontaje con señalización de alcance

Rotación de una palabra hacia la izquierda

Rotación de una palabra hacia la derecha

Rotación de una palabra doble hacia la izquierda

Rotación de una palabra doble hacia la izquierda

SCOUNT

ROLW

RORW

ROLD

RORD

617

41

49

49

Funciones de temporización

La tabla siguiente ofrece el consumo de memoria de las funciones de temporización.

Funciones de temporización OF

Salida de posicionamiento

Temporización de desconexión

Temporización de conexión

Temporización de impulsión

FPULSOR

FTOF

FTON

FTP

Tamaño del código (en palabras)

215

272

217

245

35013159.01 07/2008

239

Rendimiento

Funciones logarítmicas, exponenciales y trigonométricas

La tabla siguiente ofrece el consumo de memoria de las funciones logarítmicas, exponenciales y trigonométricas.

Funciones logarítmicas, exponenciales y trigonométricas

Logaritmo neperiano

Logaritmo decimal

Exponencial

Potenciación de un real elevado a un entero

Parte entera

Coseno de un ángulo en radianes

Seno de un ángulo en radianes

Tangente de un ángulo en radianes

Arcocoseno (resultado entre cero y pi)

Arcoseno (resultado entre -pi/2 y pi/2)

Arcotangente (resultado entre -pi/2 y pi/2)

Conversión de grados a radianes

Conversión de radianes a grados

OF

LN

LOG

EXP

EXPT

TRUNC

COS

SIN

TAN

ACOS

ASIN

ATAN

DEG_TO_RAD

RAD_TO_DEG

Código común

0

257

247

392

0

0

0

128

0

0

Tamaño del código (en palabras)

0

0

0

523

Funciones de regulación

La tabla siguiente ofrece el consumo de memoria de las funciones de regulación.

Funciones de regulación OF Tamaño del código (en palabras)

1800

600

Regulador PID mixto

Modulación en ancho de impulsión de una magnitud digital

PID

PWM

Escalón de salida de PID para comandos de válvula

TON

SERVO

Gestión del diálogo de operador destinado en CCX17 de

PID

PID_MMI

Código común

1200

4400

573

240

35013159.01 07/2008

Funciones de diálogos de operador

Rendimiento

La tabla siguiente ofrece el consumo de memoria de las funciones de diálogos de operador.

Funciones de diálogos de operador

Introducción que bloquea una variable en CCX17

OF

Ask_msg,

Tamaño del código (en palabras)

46,5

Introducción que bloquea una variable en msg contenida en CCX17

Ask_value,

Asignación dinámica de las teclas

Comando de control de los LED de indicaciones

Assign_keyS,

Control_leds,

46,5

46,5

46,5

Visualización de una alarma contenida en CCX17

Visualización de un grupo de mensajes contenidos en

CCX17

Visualización de un mensaje contenido en CCX17

Introducción múltiple de una variable en CCX17

Display_alarm, 46,5

Display_GRP, 46,5

Display_MSG,

GET_MSG,

46,5

46,5

Introducción múltiple de una variable en msg contenida en CCX17

GET_VALUE, 46,5

Envío de un comando a CCX17

Visualización de un msg de alarma contenido en la memoria del autómata

PANEL_CMD, 46,5

SEND_alarm, 46,5

Visualización de un mensaje contenido en la memoria del autómata

Send_msg 46,5

Código común 573

35013159.01 07/2008

241

Rendimiento

Funciones de comunicación

La tabla siguiente ofrece el consumo de memoria de las funciones de comunicación.

Funciones de comunicación

Lectura de objetos de lenguaje de base

Escritura de objetos de lenguaje de base

Emisión o recepción de peticiones UNI-TE

Emisión o recepción de datos

Emisión de una cadena de caracteres

OF

READ_VAR

WRITE_VAR

SEND_REQ

DATA_EXCH

438

375

PRINT_CHAR 476

Tamaño del código (en palabras)

617

500

Solicitud de lectura de una cadena de caracteres

Emisión o recepción de una cadena de caracteres

Emisión de un telegrama

Recepción de un telegrama

Demanda de parada de una función de comunicación en curso

RCV_TLG

CANCEL

172

Desplazamiento de un byte de una tabla de bytes hacia la derecha

Código común 506

ROR1_ARB 235

Servidor inmediato

INPUT_CHAR 625

OUT_IN_CHAR 531

SEND_TLG 219

Escritura de 1 K de mensajería

Lectura de 1 K de mensajería

SERVER 32

Código común 648

32

Código común 936

READ_ASYN 32

Código común 920

Funciones de comandos de movimiento

La tabla siguiente ofrece el consumo de memoria de las funciones de comandos de movimiento.

Funciones de comandos de movimiento OF

Comando de movimiento automático de un solo eje

Comando de movimiento automático multieje

SMOVE

XMOVE

Tamaño del código

(palabras)

24

32

242

35013159.01 07/2008

Almacenamiento de datos

Rendimiento

La tabla siguiente ofrece el consumo de memoria de las funciones de almacenamiento de datos.

Almacenamiento de datos OF Tamaño del código (palabras)

24 Inicio de la zona de almacenamiento en la tarjeta

PCMCIA

Escritura de datos en la tarjeta PCMCIA

Lectura de datos en la tarjeta PCMCIA

SET_PCMCIA

WRITE_PCMCIA 24

READ_PCMCIA 24

Código común 288

Función de intercambio explícito

La tabla siguiente ofrece el consumo de memoria de las funciones de comandos de intercambio explícito.

Intercambios explícitos

Lectura de parámetros de estado

Lectura de parámetros de ajuste

Actualización de parámetros de ajuste

Almacenamiento de parámetros de ajuste

OF

READ_STS

READ_PARAM

WRITE_PARAM

SAVE_PARAM

Tamaño del código (palabras)

0

0

0

0

Restauración de parámetros de ajuste

Actualización de parámetros de comando

RESTORE_PARAM 0

WRITE_CMD 0

(1) OF específico, el código se tiene en cuenta en el volumen del módulo de E/S.

35013159.01 07/2008

243

Rendimiento

DFB de diagnóstico

En la primera programación de uno de los DFB de diagnóstico, se reservan 200 palabras en la zona de programa de la aplicación.

La tabla siguiente indica el tamaño del código integrado en la aplicación (en la zona del programa) y el tamaño ocupado por instancia en la zona dada y en la zona del programa para cada tipo de DFB de diagnóstico.

DFB de diagnóstico (tamaños en palabras)

IO_DIA

ALRM_DIA

NEPO_DIA

TEPO_DIA

EV_DIA

MV_DIA

ASI_DIA

Tamaño de tipo

DFB

Tamaño del código de tipo

DFB

800

608

64

40

15184

10896

1144

2616

7912

128

128

48

80

304

136

136

56

88

312

Tamaño de datos por instancia

72

48

244

35013159.01 07/2008

Rendimiento

Método de cálculo del número de instrucciones

Generalidades Mediante este método se calcula el número de instrucciones de base (nivel alzador) booleanas o digitales.

Cálculo del número de instrucciones booleanas z z

Dentro de este cálculo se tiene en cuenta el siguiente número de elementos: operaciones unitarias booleanas: carga (LD), AND, OR, XOR,ST...

paréntesis de cierre (o las convergencias ladder: enlaces verticales de convergencia) z bloques de comparación (AND[...], OR[...]...) y operación ([...])

No se deben considerar como instrucción booleana los operadores NOT, RE y FE.

Ejemplo:

LD %M0

AND (%M1

OR %M2

)

ST %M3

= 5 instrucciones booleanas

Cálculo del número de instrucciones

Digitales z z z z z z

Dentro de este cálculo se tiene en cuenta el siguiente número de elementos: asignaciones (:=) carga del primer valor después de:= instrucciones aritméticas (+, -, *, /, <, =...), operaciones en palabras o tablas de palabras, palabras dobles, flotantes) instrucciones lógicas en palabras funciones (OF, EQUAL...) sea cual sea el número de parámetros bloques de función (o instrucción de bloque de función)

Ejemplo:

%MW0:=(%MW1+%MW2)*%MW3; instrucciones contabilizadas:

:=

%MW1 (corresponde a la instrucción de carga en el acumulador)

+

* si son 4 instrucciones.

35013159.01 07/2008

245

Rendimiento

Ejemplo Ejemplo de programa que contiene 65% de booleano y 35% de digital:

%M0

%M1

%M2

%M3 %M4

%M10 %M11 %M12

%M14 %M15 %M16

%M13

%M20 %M21

%M22 %M23

%M5

%M6

%M17

%M10 %M11 %M12

%M18

%M30 %M31 %M32 %M33

%M13 %M14 %M15

%M16

%M34

%M0

%M7

%M1

%M8

%M2

%M10 %M11 %M12

%M15 %M16

%M3

%M13

%M4 %M5 %M6

%M17 %M18 %M19

%M20

%M35

%M30

246

35013159.01 07/2008

Rendimiento

%M0 %M1

Ejemplo (continuación)

%M5 %M6 %M7 %M8

%M11 %M12 %M13 %M14

%M9

%M15 %M16

%M0 %M1

%M2

%M3 %M4 %M5 %M6

%M7

%M8

%M0 %M1 %M2

%M20 %M21 %M22

%M24

%M26

%M3

%M23

%M25

%M27

%M4 %M5 %M6

%M28

%M29

%M7 %M8 %M9 %M10

%M40

%M41

%M42

%M9

%M10

R

%M11

R

%M3

%M4

%M10

%M17

35013159.01 07/2008

247

Rendimiento

Ejemplo (continuación)

%M0

%M2

%M4

%M6

%M8

%M9

%M10 %M11

%M12

%M1

%M3

%M6

%M2

%M4

%M7

%M8

%M9

%M5

%M1

%M3

%M5

%M7

%M13

%M10

%M11

248

35013159.01 07/2008

Ejemplo (continuación)

%M1

%M3

%M6

%M2

%M4

%M13

%M12

%M7

%M8

%M9

%M5 %M14

%M15

%M0

%M3

%M1

P

%M2

N

%M4

P

%M5

%M10 %M11 %M12

P

%M13 %M14

%M6

%M7

%M8 %M9 %M20

%M21

S

%M22

Rendimiento

%M10

%M11

35013159.01 07/2008

249

Rendimiento

Ejemplo (continuación)

COMPARE

%MW3:=%MW5+1

COMPARE

%MW3< =1000

COMPARE

%MW3:=%MW5+1

COMPARE

%MW3<>%MW4

OPERATE

%MW2:=%MW3+%MW5+%KW0/2

OPERATE

%MW100:=%MW18-%KW10

OPERATE

INC%MW10

OPERATE

%MW2[%MW100]:=%MW3+%MW50*1

OPERATE

%MW100:=%MW78+SHL[%MW3,4]

OPERATE

%MW2:=%MW3*%MW5-%KW0

OPERATE

%MW2[%MW100]:=%MW3+%MW50*1

OPERATE

%MW100:=%MW78+ABS[%MW3]

250

35013159.01 07/2008

35013159.01 07/2008

Ejemplo (continuación)

Rendimiento

OPERATE

%MW0:=16#FFFF

OPERATE

%MW2:=2

OPERATE

%TM0.P:%MW88+%MW89-1

OPERATE

%MW4:=%KW0+4

OPERATE

%MW5:=%KW0+5

OPERATE

%MW6:=%MW10/1024

OPERATE

%MW10[%MW0]:=%KW10[%MW0]+1

OPERATE

%MW11:=%MW10+1

OPERATE

%MW12:=%MW0*3+4

OPERATE

%MW13:=%KW13+%MW2+%MW3-1

OPERATE

%MW15:=15

OPERATE

%MW16:=1+%MW70+%MW71+%MW72

251

Rendimiento

Ejemplo (continuación)

OPERATE

%MW20:=%SW10-1

OPERATE

%MW21:=ROL[%MW0.7]

OPERATE

%MW22:=%MW0+3*%MW1-1

OPERATE

%MW23:=0

OPERATE

%MW24:=1

OPERATE

%MW25:=%MW87/1024+22

OPERATE

%MW26:=%MW0+%MW25+1

%M0

OPERATE

%MW0:=%MW1+%MW2+%MW3+%MW>> (1)

R

%C0

C E

%MN0

S M

MODO: TON

R

TB: 1mn

MN.P: 9999

MODIF: Y

S

C.P.: 9999

CU

MODIF: Y

CD

D

F

%TM0

IN TM

MODO: TON

Q

TB: 1mn

TM.P: 9999

MODIF: Y

(1):%MW0:=%MW1+%MW2+%MW3+%MW4+%MW5+%MW6+%MW7+%MW8+

%MW9+%MW10+1

252

35013159.01 07/2008

Rendimiento

Resumen

Booleano sin flanco

Booleano con flanco

Bloque de operación

Bloque de función

Aritmética sencilla (+,-,:=,AND...)

Aritmética indexada

*, /

Valores inmediatos

Total

31

3

111

4

Número de instrucciones

187

4

6

24

346

%

54,05%

1,16%

8,96%

0,87%

32,08%

1,16%

1,73%

64,16%

35,84%

100,00%

35013159.01 07/2008

253

Rendimiento

254

35013159.01 07/2008

Índice

C

CEI1131-3, 60

CloseDFB, 129

CloseIOModule, 127

CloseProgram, 125

CloseStx, 96

CompareSymbolPCAndSymbolPLCAppli,

135

ConnectPLC, 102

D

DisconnectPLC, 101

DownloadDataToPLC, 104

DownloadStationWithSymbol, 133

DownloadToPLC, 106

E

ExportFefFileWithConfiguration, 100

ExportFeFile, 99

ExportScyFile, 98

F

Funciones OLE, 93

G

GetMessageError, 130

GetPL7State, 115

35013159.01 07/2008

GetPLCAppIdentity, 117

GetServerVersion, 131

GetSTXAppIdentity, 116

GetSymbol, 112

I

ImportScyFile, 132

O

OLE, 83

OpenStx, 95

OpenStxWithMaj, 97

OpenTool, 121

S

SaveStx, 103

SendCommandToPLC, 119

SetDownloadFunction, 114

SetDriverAndAdresse, 120

SetPosPL7Windows, 123

SetServerIHM, 113

ShowDFB, 128

ShowIOModule, 126

ShowProgram, 124

U

UploadDataFromPLC, 108

UploadFromPLC, 107

A C

255

Index

UploadFromPLCWithSymbol, 110

256

35013159.01 07/2008

Anuncio

Manuales relacionados