COMUNICACIONES INDUSTRIALES Redes industriales Bus...

31
Departament d’Educació Electricitat/Electrònica BUS AS-I Utilización de la interfaz de comandos Realizado por: Vicenç Guerrero Fecha: 25/11/2005 Versión: 1.0 Página: 0/30 Fichero:04_ASi_Comandos_ASi3422.DOC IES PALAU AUSIT COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-i 04. Interfaz de comandos con la función FC7 “ASi_3422”

Transcript of COMUNICACIONES INDUSTRIALES Redes industriales Bus...

Page 1: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 0/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

COMUNICACIONES INDUSTRIALES

Redes industriales

Bus AS-i

04. Interfaz de comandos con la función

FC7 “ASi_3422”

Page 2: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 1/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

PRÓLOGO Esta documentación forma parte de una serie de manuales que un grupo de profesores de tres institutos de educación secundaria de Catalunya, como son:

IES-SEP Comte de Rius de Tarragona IES Palau Ausit de Ripollet (Barcelona) IES-SEP La Garrotxa de Olot (Girona)

han estado experimentando con diferentes materiales incluidos dentro de la temática de la automatización, el control y las comunicaciones industriales. Este equipo de profesores, formaron un grupo de trabajo, llamado EDCAI (Experimentación y Documentación en Control y Automatización Industrial), reconocido tanto por el Departament d’Educació de la Generalitat de Catalunya como por la empresa Siemens, con unos objetivos tan sencillos como claros y que se basaban en la realización de documentación realizada por profesores/as para profesores/as, y que además, pudiese servir como manual para los alumnos, esto quiere decir que se ha intentado realizar una documentación que sea fácil de seguir con unas explicaciones paso a paso de los diferentes procesos a realizar, para de esta manera poder alcanzar el objetivo propuesto en cada ejercicio. Este grupo de trabajo continúa trabajando en cada uno de los temas para poder ir actualizando día a día esta documentación, es por ello, que nos podéis enviar vuestras sugerencias a través de la información que encontrareis en la web dedicada a este grupo de trabajo y que desde aquí os invitamos a participar.

www.iespalauausit.xtec.net:8081/edcaiweb/ Esperamos que el esfuerzo y dedicación que hemos realizado pueda ayudar a mejorar vuestra labor educativa.

Los profesores del grupo de trabajo EDCAI

Page 3: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 2/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

INDICE.

1. La función FC “ASI_3422”. 31.1. Introducción. 31.2. Programa para completar los parámetros. 51.3. Orden de proceso de los parámetros en el programa. 61.4. Codificación de los errores. 7 2. Codificación de los errores. 9

3. Búfer de emisión y recepción. 113.1. Estructura del búfer de emisión. 113.2. Estructura del búfer de recepción. 113.3. Estructura general de la dirección de esclavo AS-i. 11 4. Configuración de los comandos. 134.1. Comando Poner_Modo (Set_Operation_Mode). 13

4.1.1. Significado del comando. 134.1.2. Preparación del proyecto. 144.1.3. Programa de ejemplo. 14

4.2. Cambiar_dirección_esclavo_AS–i (Change_AS–i–Slave_Address). 174.2.1. Significado del comando. 174.2.2. Preparación del proyecto. 184.2.3. Programa de ejemplo. 18

4.3. Almacenar_Configuración_Actual (Store_Actual_Configuration). 204.3.1. Significado del comando. 204.3.2. Preparación del proyecto. 204.3.3. Programa de ejemplo. 21

5. Otros comandos. 265.1. Seleccionar autoprogramación 26

5.1.1. Significado del comando. 26

6. Indicaciones de errores/remedio en caso de fallos. 28 7. Ejercicio de aplicación. 30

Page 4: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 3/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

1. LA FUNCIÓN FC “ASI_3422”.

1.1. Introducción.

En SIMATIC S7 se ofrece con el módulo FC ASI_3422 que es un bloque FC para realizar de una forma cómoda la lectura y escritura de los esclavos AS-i, a través de las llamadas a los bloques SFC 58 de ”Escribir_bloque_datos” y también el SFC 59 de “Leer_bloque_datos”. La estructura del bloque FC, así como el tipo de variables para cada parámetro es:

Hay que tener en cuenta lo siguiente:

• Tiene que utilizar las siguientes versiones de FC ASI_3422: 2.0 o superior. • El FC ASI_3422 no tiene capacidad reentrante. Por esta razón no se deben programar llamadas

de FC en niveles de programación que se interrumpan entre sí (p. ej. por llamada en OB 1 de ejecución cíclica y en OB 35 de ejecución cada cierto tiempo).

• Si el CP 343–2 se utiliza en ET 200M, en la S7–CPU sólo puede estar activo simultáneamente un número limitado de peticiones Leer_bloque_datos y Escribir _bloque_datos. El número máximo permitido depende de la S7–CPU.

• Si se impulsan más peticiones, éstas son finalizadas con el error 80C3h (falta transitoria de medios de operación). En tal caso se tiene que repetir la petición rechazada.

A continuación se describe con detalle cada uno de los parámetros utilizados por la función FC:

Nombre Clase Tipo Área de memoria

Observación

ACT E BOOL E,A,M,D,L, constante

Mientras ACT =1, se inicia un procesamiento de comando si no se está procesando ya una llamada

BOOL

BOOL

BOOL

BOOL

WORD

DWORD

ANY

ANY

Page 5: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 4/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

STARTUP E BOOL E,A,M,D,L, constante

Un arranque de CPU es comunicado al FC mediante STARTUP = 1. El usuario tiene que anular STARTUP después del primer ciclo de la función.

LADDR E WORD E,A,M,D,L, constante

Dirección inicial del CP 343–2 en el espacio de direcciones S7. La dirección inicial del módulo es fijada en la configuración de STEP 7.

SEND E ANY E,A,M,D,L Búfer de emisión. El parámetro hace referencia a un área de memoria en la que el usuario tiene que especificar el comando. p. ej.: P#DB20.DBX 20.0 Byte 10

RECV E ANY E,A,M,D,L Búfer de recepción. Este búfer sólo es relevante en el caso de comandos que proporcionen datos de respuesta. El parámetro hace referencia a un área de memoria en la que se almacena un comando. El dato de longitud en el ANY–Pointer aquí parametrizado es irrelevante. La longitud de los datos de respuesta es determinada por el propio FC. p. ej.: P#DB30.DBX 20.0 Byte 1

DONE S BOOL A,M,D,L Con DONE = 1 se señaliza ‘Petición terminada sin errores’.

ERROR S BOOL A,M,D,L Con ERROR = 1 se señaliza ‘Petición terminada con error’.

STATUS E/A DWORD M,D 1ª palabra: estado de la petición / código de error (ver tabla 3-2); En caso de ‘Petición terminada con error’ se genera un código de error para describir con mayor detalle el error. 2ª palabra: la necesita el FC para fines internos y no se debe modificar. Nota: Para llamadas de FC a diferentes CP 343–2 se tienen que asignar palabras dobles diferentes para el parámetro STATUS.

Page 6: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 5/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

1.2. Programa para completar los parámetros. Un programa que realiza únicamente la llamada al FC 7 completando todos los parámetros es:

• AWL o Lista de instrucciones: CALL FC 7 // Llamada al FC ASI_3432 ACT:= TRUE // Que procese la ejecución siempre que haya finalizado la

// anterior STARTUP:= FALSE // La CPU pone a 1 este parámetro del FC7, el usuario lo

// tiene que anular LADDR:= W#16#120 // Dirección en hexadecimal del CP (slot 6, 288 DECIMAL) SEND:= P#DB13.DBX4.0 BYTE 2 // Buffer de emisión, área de memoria que el usuario declara

// el lugar en donde almacenará los datos para enviar al CP, // el número de bytes dependerá del comando utilizado.

RECV:= P#DB13.DBX228.0 BYTE 1 // Buffer de recepción, área de memoria que el usuario // declara el lugar en donde recogerá los datos devueltos por // el CP, el número de bytes dependerá del comando // utilizado.

DONE:= M20.0 // Al finalizar la petición, si DONE=1 indica que no hay // errores.

ERROR:= M20.1 // Al finalizar la petición, si ERROR=1 indica que hay errores. STATUS:= MW22 // En la 1ª palabra se indica el código del error producido

// (según lista). En la 2ª palabra es para uso interno del // sistema y no debe ser modificada

• KOP o diagrama de contactos:

Page 7: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 6/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

1.3. Orden de proceso de los parámetros en el programa. 1. En la rama de reinicio del programa de usuario S7, llamar una vez el FC ASI_3422 con el valor de parámetro EN = TRUE, haciendo cumplir la ecuación lógica programada en esta entrada. 2. En el programa de usuario especificar el lugar en donde se tiene guardado el comando con el que se quiere trabajar, este lugar se le conoce como búfer de emisión. El PLC transfiere este búfer de emisión con el parámetro de llamada SEND. 3. Dependiendo del tipo de comando se necesita un búfer de respuesta, por tanto debemos especificar el lugar en donde queremos guardar la respuesta recibida, este lugar se le conoce como búfer de recepción. El PLC transfiere este búfer de repuesta con el parámetro de llamada RECV. Para informaciones de estado no se necesita el búfer de respuesta en el caso de esta interfaz de FC. 4. Activar la petición a través del parámetro ACT, este parámetro se deberá poner a “1” para ejecutar el comando previsto. 5. A continuación, consultar los parámetros DONE, ERROR y STATUS, que nos dará información de cual ha sido el resultado de la ejecución: DONE: Se pondrá a estado “1” si la ejecución de ha producido sin errores. ERROR: Se pondrá a estado “1” si la ejecución de ha producido con errores. STATUS: Nos indica de forma codificada en un valor en hexadecimal el tipo de error producido. Estos parámetros permanecen invariables hasta el siguiente procesamiento de petición Los códigos de error durante la petición son los siguientes: Una llamada de comando se inicia con ACT = 1. Durante un procesamiento de petición, la primera palabra de STATUS contiene el valor 8181H. Con esto se comunica que se está procesando una petición. Al término de la petición se notifica al usuario el resultado en los parámetros DONE o ERROR. Si no se ha presentado ningún error, se pone DONE=1. En el caso de peticiones con datos de respuesta del CP 343–2, éstos se ponen a disposición en el búfer de recepción indicado en RECV. En la primera palabra de STATUS se registra en este caso 0000H. Si se ha presentado un error, se pone ERROR=1. Entonces, en el caso de peticiones con datos de respuesta el CP 343–2 no pone a disposición ningún dato de recepción. Para una descripción más detallada del error producido se inscribe un código de error en la primera palabra de STATUS.

Page 8: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 7/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

1.4. Codificación de los errores. DONE ERROR STATUS Significado

1 0 0000H Petición terminada sin error

0 1 8090H Dirección no válida en LADDR..

0 1 8092H En ANY–Referencia se ha indicado un tipo distinto de BYTE.

0 1 8093H Este SFC no está permitido para el módulo seleccionado a través de LADDR y IOID.(Se permiten módulos S7–300 para S7–300, módulos S7–400 para S7–400, módulos S7–DP para S7–300 y S7–400.)

0 1 80A0H Acuse negativo al leer de maestro AS–i

0 1 80A1H Acuse negativo al escribir a maestro AS–i

0 1 80A2H Error de protocolo DP en Layer2

0 1 80A3H Error de protocolo DP en User–Interface/User

0 1 80A4H Comunicación perturbada en el bus K

0 1 80B0H Maestro AS–i no conoce el bloque de datos

0 1 80B1H Indicada una longitud de bloque de datos incorrecta

0 0 80B2H El slot configurado no está ocupado

0 1 80B3H Tipo de módulo real distinto del tipo de módulo teórico en SDB1

0 1 80C0H El bloque de datos no se puede leer

0 1 80C1H El bloque de datos indicado se está procesando

0 1 80C2H Atasco de peticiones

0 1 80C3H Medios de operación (memoria) ocupados

0 1 80C4H Error de comunicación

0 1 80C5H Periferia descentralizada no disponible

0 1 80C6H La transmisión del bloque de datos se ha cancelado debido a una cancelación de prioridad (reinicio o segundo plano) de la periferia descentralizada.

0 1 8181H Petición en marcha (ningún error)

0 1 8182H Identificación tras ciclo del elemento con STARTUP=TRUE (ningún error)

0 0 8184H Tipo de datos del operando formal RECV no permitido

0 1 8381H Dirección de esclavo AS–i incorrecta

0 1 8382H Esclavo AS–i no activado (no en LAS).

0 1 8383H Error en AS–Interface

0 1 8384H Comando no permitido en el estado actual del maestro AS–i.

0 1 8385H Existe un esclavo AS–i con la dirección 0.

0 1 8386H El esclavo AS–i tiene datos de configuración no permitidos (E/S o códigos ID).

Page 9: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 8/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

DONE ERROR STATUS Significado

0 1 83A1H El esclavo AS–i aludido no se ha encontrado en AS–Interface.

0 1 83A2H Existe un esclavo AS–i con la dirección 0.

0 1 83A3H Ya existe en AS–Interface un esclavo AS–i con la nueva dirección.

0 1 83A4H La dirección de esclavo AS–i no se puede borrar.

0 1 83A5H La dirección de esclavo AS–i no se puede poner.

0 1 83A6H La dirección de esclavo AS–i no se puede guardar con carácter permanente.

0 1 83A7H Error al leer el Extended ID1–Code.

0 1 83A8H Dirección de destino no plausible (p. ej. se utiliza una dirección de esclavo B para esclavo estándar).

0 1 83B1H Se ha producido un error de longitud en la transferencia de string según perfil 7.4.

0 1 83B2H Se ha producido un error de protocolo en la transferencia de string según perfil 7.4.

0 1 83F8H Número de petición o parámetro de petición desconocido.

0 1 83F9H El maestro AS–i ha detectado un error de EEPROM.

0 1 8F22H 8F23H

Error de longitud de área al leer un parámetro. Error de longitud de área al escribir un parámetro Este código de error indica que un parámetro está total o parcialmente fuera del área del operando o que la longitud de un campo de bits de un parámetro ANY no es divisible por 8.

0 1 8F24H 8F25H

Error de área al leer un parámetro Error de área al escribir un parámetro Este código de error indica que un parámetro se encuentra en un área no permitida para una función del sistema.

0 1 8F28H 8F29H

Error de alineación al leer un parámetro Error de alineación al escribir un parámetro Este código de error indica que la referencia a un parámetro es un operando cuya dirección de bit es distinta de 0.

0 1 8F30H 8F31H

Parámetro en DB Global protegido de escritura Parámetro en DB Instancia protegido de escritura Este código de error indica que un parámetro se encuentra en un elemento de datos protegido de escritura.

0 1 8F32H El parámetro contiene número de DB demasiado grande

0 1 8F42H 8F43H

Se ha producido un error de acceso mientras el sistema quería leer un parámetro de la zona de periferia de las entradas. Se ha producido un error de acceso mientras el sistema quería escribir un parámetro en la zona de periferia de las salidas.

0 1 8F44H 8F45H

Este código de error indica que el acceso de lectura a un parámetro ha sido denegado

0 1 8F7FH Error interno

Page 10: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 9/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

2. DESCRIPCIÓN DE LOS COMANDOS. A continuación se describen las llamadas de comandos que pueden ser emitidas por el programa de usuario al CP 343–2. El CP 343–2 proporciona con estas llamadas de comandos toda la funcionalidad del perfil de maestro M1e de la especificación de maestro AS–i. Nombre Parámetros Retorno Codificación

Configurar_parámetro_permanente (Set_Permanent_Parameter)

Dirección del esclavo, parámetro

00H

Leer_parámetro_permanente (Get_Permanent_Parameter)

Dirección del esclavo Parámetros 01H

Escribir_parámetro (Write_Parameter)

Dirección del esclavo, parámetro

Eco parámetro (opcional)

02H

Leer_parámetro (Read_Parameter)

Dirección del esclavo Parámetro 03H

Almacenar_parámetros_actuales (Store_Actual_Parameters)

04H

Almacenar_datos_configuración_extendidos

Dirección del esclavo 25H

Almacenar_datos_configuración_extendidos_actuales

Dirección de esclavo configuración

Datos de configuración proyectados

26H

Almacenar_configuración_actual (Store_Actual_Configuration)

07H

Leer_datos_configuración_reales Dirección - esclavo Datos configuración - reales

28H

Configurar_LPS_extendida LPS 29H

Poner_modo_Offline Modo 0AH

Seleccionar autoprogramación Modo 0BH

Poner_modo Modo 0CH

Cambiar_dirección_esclavo_AS-I (Change_AS-i_Slave_Address)

Dirección 1, Dirección 2

0DH

Leer_estado_esclavo_AS-i Dirección de esclavo Registro de errores del esclavo AS-i

0FH

Leer_listas_y_flags Ninguno LDS, LAS, LPS, Flags

30H

Page 11: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 10/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

Nombre Parámetros Retorno Codificación Leer_configuración_global_extendida

Datos de configuración-reales, parámetros actuales, LAS, Flags

39H

Almacenar_configuración_global_extendida

Configuración-global 3AH

Escribir_lista_parámetros_extendida Lista de parámetros 3CH

Leer_lista_eco_parámetros_extendida

Lista_eco parámetros

33H

Leer_identificador_versión String_versión 14H

Leer_ID-esclavo_AS-i Dirección del esclavo Código_ID 17H

Leer_ID1_extendida_esclavo_AS-i Dirección de esclavo Extended ID1_Code 37H

Escribir_ID1_extendida_esclavo_AS-i

Extended ID-Code 3FH

Leer_ID2_extendida_esclavo_AS-i Dirección de esclavo Extended ID2_Code 38H

Leer_ES_esclavo_AS-i Dirección de esclavo Configuración_E/S 18H

Leer_lista_errores_periferia LPF 3EH

Escribir_string_parámetros_esclavo_AS–i

Dirección de esclavo String de parámetros

40H

Leer_string_parámetros_esclavo_AS–i

Dirección de esclavo String de parámetros

41H

Leer_string_ID_esclavo_AS–i Dirección de esclavo String ID 42H

Leer_string_diagnóstico_esclavo_AS–i

Dirección de esclavo String diagnóstico 43H

Page 12: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 11/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

3. BÚFER DE EMISIÓN Y DE RECEPCIÓN.

A continuación se expone las diferentes estructuras del búfer, tanto de emisión como de recepción, así como se codifica las direcciones de los esclavos para diferenciar el tipo estándar o A del tipo B.

3.1. Estructura del búfer de emisión.

La estructura básica del búfer de emisión para comandos se indica como sigue. Aparecen con fondo gris los bytes relevantes sólo para determinados comandos.

La dirección inicial del búfer de emisión en el maestro DP queda indicada en el parámetro SEND de la llamada al FC AS_3432.

3.2. Estructura del búfer de recepción. La estructura básica del búfer de respuesta se indica como sigue. Aparecen con fondo gris los bytes relevantes sólo para determinados comandos.

La dirección inicial del búfer de recepción en el maestro DP queda indicado en el parámetro RECV de la llamada al FC AS_3432.

3.3. Estructura general de la dirección de esclavo AS-i. Si se tiene que direccionar un esclavo AS–i en un comando o en una respuesta, este direccionamiento tiene lugar según el esquema siguiente:

Page 13: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 12/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

donde el S–Bit (Select-Bit) es para la selección del tipo de esclavo, y se tiene que indicar del siguiente modo: S–Bit = 0 : Esclavo AS–i estándar o esclavo AS–i con modo de direccionamiento extendido en el área de direcciones A S–Bit = 1 : Esclavo AS–i con modo de direccionamiento extendido en el área de direcciones B Ejemplos: a) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Dirección del esclavo

0

0

0

0

1

0

1

1

11 estándar o A

b) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Dirección del esclavo

0

0

1

0

1

0

1

1

11 B

Completa los siguientes ejemplos: Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Dirección del esclavo

0

0

0

1

0

1

0

1

0

0

1

0

0

0

1

1

0

0

1

1

1

1

1

1

0

0

25 estándar o A

0

0

18 B

Page 14: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 13/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

4. CONFIGURACIÓN DE LOS COMANDOS.

Seguidamente se presenta una exposición sobre la utilización de alguno de los comandos acompañados de ejemplos.

4.1. Comando Poner_Modo (Set_Operation_Mode). 4.1.1. SIGNIFCADO DEL COMANDO. Con esta llamada se puede elegir entre el modo de configuración y el modo protegido. En el modo protegido se activan sólo esclavos AS–i que estén inscritos en la LPS y cuyas configuraciones actual (real) y teórica coincidan, es decir, si la configuración de E/S y los códigos ID de los esclavos AS–i identificados son idénticos a los valores configurados. En el modo de configuración se activan todos los esclavos AS–i identificados (excepto el esclavo AS–i ”0”). Esto es válido también para esclavos AS–i en los que existan diferencias entre la configuración actual y la teórica. El bit “MODO” se almacena en forma no volátil, lo que significa que se conserva también en el caso de arranque/rearranque. Al cambiar del modo de configuración al modo protegido tiene lugar un reinicio del maestro AS–i (paso a la fase Offline y a continuación conmutación al modo Online).

• Estructura de los datos de petición en el búfer de emisión.

BYTE 0: Este byte es para colocar el comando de la operación a realizar, en este caso “0CH” BYTE 1: En el bit 0 se deberá colocar un “1” para MODO Configuración o un “0” para elegir MODO Protegido. El resto de bits están reservados para el sistema.

• Estructura de datos del búfer de recepción: Este comando no da ninguna respuesta, pero la función FC7 nos obliga a poner como mínimo un byte en el parámetro correspondiente que es RECV.

Page 15: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 14/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

4.1.2. PREPARACIÓN DEL PROYECTO. Antes de iniciar el proceso de aplicar diferentes comandos dentro de un programa de PLC, realizamos una preparación previa del proyecto de STEP 7 con el que vamos a trabajar. Crearemos un proyecto en el que incluiremos lo siguiente: MÓDULO APLICACIÓN OB 1 Bloque de organización cíclico FC7 Función protegida ASi_3422 FC8 Función de usuario para la llamada al FC7 DB12 Bloque de datos para el búfer de emisión y recepción Se ha de decir que la función FC7 “ASi_3422” es un bloque protegido propiedad de Siemens. Creamos el bloque de datos DB12 con la estructura necesaria para el búfer de emisión y de recepción:

Para este caso el búfer de emisión necesita de 2 bytes que son el byte 0 y el 1, para el búfer de recepción reservamos el byte 2, aunque como se explicó anteriormente no recibirá ninguna respuesta. Como se puede observar en el valor inicial de cada byte declarado, se deja preparado para cuando se realice la llamada a la función FC 7: BYTE 0 tendrá como valor C hex = 0C hex, que corresponde a elegir el comando de cambio de modo de funcionamiento del CP. BYTE 1 tendrá como valor 1, que corresponde a elegir el modo Configuración del CP de AS-i. 4.1.3. PROGRAMA DE EJEMPLO. Queremos modificar el modo de funcionamiento del CP AS-i, haciendo que: 1. Al activar la entrada E125.0 el estado del modo pasará a ser de CONFIGURACIÓN Led CM del CP AS-i activado. En primer lugar preparamos el programa para cambiar a modo Configuración. U E 125.0 // Al activar la entrada E125.0 SPB mcon // Salta a “mcon” para cambiar a Modo Configuración del CP Master AS-i BEA

Page 16: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 15/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

mcon: CALL FC 7 // Hago la llamada al bloque protegido FC7 ACT:=TRUE // El usuario ha de poner a "TRUE" este parámetro STARTUP:=FALSE // Siempre en "FALSE" LADDR:=W#16#100 // Dirección lógica del CP, según instalación en bastidor Dirección=288 D SEND:=P#DB12.DBX0.0 BYTE 2 // Enviar dos bytes, DB12.DBB0 y DB12.DBB1 RECV :=DB12.DBB2 // Búfer de recepción, en este caso no tiene significado DONE :=M20.0 // Bit de comando realizado correctamente si se pone a "1" ERROR :=M20.1 // Bit de comando realizado con error si se pone a "1" STATUS :=MD22 // Doble palabra en donde se registra código error en el caso ERROR = 1 BEA 2. Al desactivar la entrada E125.3 el estado del modo pasará a ser PROTEGIDO Led CM del CP AS-i desactivado. Añadimos en la declaración del DB los bytes necesarios:

Al igual que en el caso anterior el búfer de emisión necesita de 2 bytes que son el byte 3 y el 4, para el búfer de recepción reservamos el byte 5, aunque como se explicó anteriormente no recibirá ninguna respuesta. Como se puede observar en el valor inicial de cada byte declarado, se deja preparado para cuando se realice la llamada a la función FC 7: BYTE 3 tendrá como valor C hex = 0C hex, que corresponde a elegir el comando de cambio de modo de funcionamiento del CP. BYTE 4 tendrá como valor 0, que corresponde a elegir el modo Protegido del CP de AS-i. Ahora añadimos otra parte de programa (en negrita) para cambiar a modo Protegido, quedando el programa: U E 125.0 // Al activar la entrada E125.0 SPB mcon // Salta a “mcon” para cambiar a Modo Configuración del CP Master AS-i U E 125.1 // Al activar la entrada E125.1 SPB mpro // Salta a “mpro” para cambiar a Modo Protegido del CP Master AS-i BEA

Añadidas

Page 17: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 16/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

mcon: CALL FC 7 // Hago la llamada al bloque protegido FC7 ACT:=TRUE // El usuario ha de poner a "TRUE" este parámetro STARTUP:=FALSE // Siempre en "FALSE" LADDR:=W#16#100 // Dirección lógica del CP, según instalación en bastidor Dirección=288 D SEND:=P#DB12.DBX0.0 BYTE 2 // Enviar dos bytes, DB12.DBB0 y DB12.DBB1 RECV :=DB12.DBB2 // Búfer de recepción, en este caso no tiene significado DONE :=M20.0 // Bit de comando realizado correctamente si se pone a "1" ERROR :=M20.1 // Bit de comando realizado con error si se pone a "1" STATUS :=MD22 // Doble palabra en donde se registra código error en el caso ERROR = 1 BEA mpro: CALL FC 7 // Hago la llamada al bloque protegido FC7 ACT :=TRUE // El usuario ha de poner a "TRUE" este parámetro STARTUP:=FALSE // Siempre en "FALSE" LADDR :=W#16#100 // Dirección lógica del CP, según instalación en bastidor Dirección = 288 D SEND :=P#DB12.DBX3.0 BYTE 2 // Enviar dos bytes, DB123.DBB3 y DB12.DBB4 RECV :=DB12.DBB5 // Búfer de recepción, en este caso no tiene significado DONE :=M20.6 // Bit de comando realizado correctamente si se pone a "1" ERROR :=M20.7 // Bit de comando realizado con error si se pone a "1" STATUS :=MD22 // Doble palabra en donde se registra código error en el caso que ERROR = 1 BEA Antes de proceder a la comprobación del funcionamiento, construimos una tabla de variables para poder visualizar si se producen errores durante la ejecución de la función FC7.

Page 18: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 17/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

Ahora y tras cargar el programa a la CPU del PLC, se observa el siguiente funcionamiento: a) Activamos la entrada E125.0, los indicadores del CP Master AS-i ilumina el led CM (Configuration Mode), desactivamos la entrada E 125.0. b) Activamos la entrada E125.1, los indicadores del CP Master AS-i ilumina el led CER (Configuration Error) durante un par de segundos y desactiva el led CM, desactivamos la entrada E 125.1, quedando todo como antes del primer paso. Se puede observar en la tabla de variables el funcionamiento de los bits de error y del código.

4.2. Cambiar_dirección_esclavo_AS–i (Change_AS–i–Slave_Address).

4.2.1. SIGNIFCADO DEL COMANDO. Con esta llamada se puede modificar la dirección de un esclavo AS–i. Esta llamada se utiliza predominantemente para agregar un nuevo esclavo AS–i con la dirección por omisión “0” al AS–Interface. En este caso tiene lugar un cambio de la dirección, de “Dirección de esclavo AS–i vieja”=0 a “Dirección de esclavo AS–i nueva”. El cambio sólo se produce si se cumplen las siguientes condiciones: 1. Existe un esclavo AS–i con “Dirección de esclavo AS–i vieja”. 2. Si la dirección vieja del esclavo AS–i es distinta de 0, no debe estar conectado al mismo tiempo un esclavo AS–i con la dirección ”0”. 3. La “dirección de esclavo AS–i nueva” ha de tener un valor válido. 4. No debe existir un esclavo AS–i con “Dirección de esclavo AS–i nueva”. Observación: Al modificar la dirección de esclavo AS-i, éste no se repone, lo que significa que los datos de salida del esclavo AS-i se conservan hasta que llegan nuevos datos a la nueva dirección. Estructura de los datos de petición en el búfer de emisión.

Page 19: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 18/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

4.2.2. PREPARACIÓN DEL PROYECTO. Ampliamos la declaración del bloque de datos DB12 con la estructura necesaria para el búfer de emisión y de recepción:

Para este caso el búfer de emisión necesita de 3 bytes que son los bytes 6, 7 y 8, para el búfer de recepción reservamos el byte 9, que tampoco será utilizado en este caso. Como se puede observar en el valor inicial de cada byte declarado, se deja preparado para cuando se realice la llamada a la función FC 7: BYTE 6 tendrá como valor D hex = 0D hex, que corresponde a elegir el comando de cambio de dirección para un esclavo. BYTE 7 deberemos cargar, previo a la ejecución de la función FC7, la dirección actual del esclavo AS-i al cual le queremos cambiar la dirección. BYTE 8 deberemos cargar, previo a la ejecución de la función FC7, la dirección nueva que se le quiere dar al esclavo AS-i elegido.

4.2.3. PROGRAMA DE EJEMPLO. El ejemplo que presentamos a continuación no podrá comprobarse el funcionamiento hasta el siguiente apartado, para poder completar el proceso necesario para el cambio de la dirección de un esclavo, proceso que es el siguiente:

1. Poner el CP en modo Configuración. 2. Cambiar el número de la dirección de un esclavo AS-i. 3. Actualizar las listas de esclavos activados y configurados. 4. Poner el CP en modo Protección.

Añadidas

Page 20: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 19/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

De todas forma señalamos en negrita la parte de programa que se ha de añadir a la del anterior apartado, necesaria para ir completando el ejercicio completo. U E 125.0 // Al activar la entrada E125.0 SPB mcon // Salta a “mcon” para cambiar a Modo Configuración del CP Master AS-i U E 125.1 // Al activar la entrada E125.1 SPB cand // Cambio de la Dirección de un Esclavo AS-i U E 125.3 // Al activar la entrada E125.3 SPB mpro // Salta a “mpro” para cambiar a Modo Protegido del CP Master AS-i BEA mcon: CALL FC 7 // Hago la llamada al bloque protegido FC7 ACT:=TRUE // El usuario ha de poner a "TRUE" este parámetro STARTUP:=FALSE // Siempre en "FALSE" LADDR:=W#16#100 // Dirección lógica del CP, según instalación en bastidor Dirección=288 D SEND:=P#DB12.DBX0.0 BYTE 2 // Enviar dos bytes, DB12.DBB0 y DB12.DBB1 RECV :=DB12.DBB2 // Búfer de recepción, en este caso no tiene significado DONE :=M20.0 // Bit de comando realizado correctamente si se pone a "1" ERROR :=M20.1 // Bit de comando realizado con error si se pone a "1" STATUS :=MD22 // Doble palabra en donde se registra código error en el caso ERROR = 1 BEA cand: CALL FC 7 // Hago la llamada al bloque protegido FC7 ACT :=TRUE // El usuario ha de poner a "TRUE" este parámetro STARTUP:=FALSE // Siempre en "FALSE" LADDR :=W#16#100 // Dirección lógica del CP, según instalación en bastidor Dirección=288 D SEND :=P#DB12.DBX6.0 BYTE 3 // Enviar tres bytes, DB12.DBB6, DB12.DBB7 y DB12.DBB8 RECV :=DB12.DBB6 // Búfer de recepción, en este caso no tiene significado DONE :=M20.2 // Bit de comando realizado correctamente si se pone a "1" ERROR :=M20.3 // Bit de comando realizado con error si se pone a "1" STATUS :=MD22 // Doble palabra en donde se registra código error en el caso que ERROR=1 BEA mpro: CALL FC 7 // Hago la llamada al bloque protegido FC7 ACT :=TRUE // El usuario ha de poner a "TRUE" este parámetro STARTUP:=FALSE // Siempre en "FALSE" LADDR :=W#16#100 // Dirección lógica del CP, según instalación en bastidor Dirección = 288 D SEND :=P#DB12.DBX3.0 BYTE 2 // Enviar dos bytes, DB12.DBB3 y DB12.DBB4 RECV :=DB12.DBB5 // Búfer de recepción, en este caso no tiene significado DONE :=M20.6 // Bit de comando realizado correctamente si se pone a "1" ERROR :=M20.7 // Bit de comando realizado con error si se pone a "1" STATUS :=MD22 // Doble palabra en donde se registra código error en el caso que ERROR = 1 BEA También podemos modificar la tabla de variables construida anteriormente para poder visualizar si se producen errores durante la ejecución de la función FC7.

Page 21: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 20/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

Ahora y tras cargar el programa a la CPU del PLC, se observa el siguiente funcionamiento: a) Activamos la entrada E125.0, los indicadores del CP Master AS-i ilumina el led CM (Configuration Mode), desactivamos la entrada E 125.0. b) Activamos la entrada E125.1, los indicadores del CP Master AS-i ilumina el led CER (Configuration Error) durante un par de segundos y desactiva el led CM, desactivamos la entrada E 125.1, quedando todo como antes del primer paso. Se puede observar en la tabla de variables el funcionamiento de los bits de error y del código.

Page 22: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 21/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

4.3. Almacenar_Configuración_Actual (Store_Actual_Configuration).

4.3.1. SIGNIFCADO DEL COMANDO. Con esta llamada, los datos de configuración (actuales) determinados en el AS–Interface (configuración de E/S, ID–Code, Extended ID1–Code y Extended ID2–Code) para todos los esclavos AS–i son almacenados en forma no volátil en EEPROM como datos de configuración (TEORICOS). La lista de esclavos AS–i activados (LAS) se transfiere a la lista de esclavos AS–i configurados (LPS). Al ejecutar este comando, el maestro AS–i cambia a la fase Off line y a continuación vuelve al modo normal (reinicio del maestro AS–i). En el modo protegido no se ejecuta esta llamada.

• Estructura de los datos de petición en el búfer de emisión:

BYTE 0: Este byte es para colocar el comando de la operación a realizar, en este caso “07H”.

• Estructura de datos del búfer de recepción: Este comando no da ninguna respuesta, pero la función FC7 nos obliga a poner como mínimo un byte en el parámetro correspondiente que es RECV. Este comando nos puede servir para actualizar la configuración de esclavos, por ejemplo, tras un cambio de dirección de algún esclavo.

4.3.2. PREPARACIÓN DEL PROYECTO. Modificamos el bloque de datos DB12 con la estructura necesaria para el búfer de emisión y de recepción:

Añadidas

Page 23: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 22/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

Para este caso el búfer de emisión necesita de 1 byte que es el byte 10, para el búfer de recepción reservamos el byte 11, aunque como se explicó anteriormente no recibirá ninguna respuesta. Como se puede observar en el valor inicial de cada byte declarado, se deja preparado para cuando se realice la llamada a la función FC 7: BYTE 10 tendrá como valor 7 hex = 07 hex, que corresponde a elegir el comando de almacenar configuración actual.

4.3.3. PROGRAMA DE EJEMPLO. Ahora añadimos otra parte de programa (en negrita) para cambiar a modo Protegido, quedando el programa: U E 125.0 // Al activar la entrada E125.0 SPB mcon // Salta a “mcon” para cambiar a Modo Configuración del CP Master AS-i U E 125.1 // Al activar la entrada E125.1 SPB cand // Cambio de la Dirección de un Esclavo AS-i U E 125.2 U( // Ya que la operación de actualizar la lista necesita mas tiempo L MW 22 // Realiza la comparación de la palabra de codificación de errores L W#16#0 // si es diferente de cero quiere decir que no ha finalizado la petición <>I // por tanto continua realizando la llamada para almacenar la configuración ) SPB actl // Almacenar configuración actual en el CP Master AS-i U E 125.3 // Al activar la entrada E125.3 SPB mpro // Salta a “mpro” para cambiar a Modo Protegido del CP Master AS-i BEA mcon: CALL FC 7 // Hago la llamada al bloque protegido FC7 ACT:=TRUE // El usuario ha de poner a "TRUE" este parámetro STARTUP:=FALSE // Siempre en "FALSE" LADDR:=W#16#100 // Dirección lógica del CP, según instalación en bastidor Dirección=288 D SEND:=P#DB12.DBX0.0 BYTE 2 // Enviar dos bytes, DB12.DBB0 y DB12.DBB1 RECV :=DB12.DBB2 // Búfer de recepción, en este caso no tiene significado DONE :=M20.0 // Bit de comando realizado correctamente si se pone a "1" ERROR :=M20.1 // Bit de comando realizado con error si se pone a "1" STATUS :=MD22 // Doble palabra en donde se registra código error en el caso ERROR = 1 BEA cand: CALL FC 7 // Hago la llamada al bloque protegido FC7 ACT :=TRUE // El usuario ha de poner a "TRUE" este parámetro STARTUP:=FALSE // Siempre en "FALSE" LADDR :=W#16#100 // Dirección lógica del CP, según instalación en bastidor Dirección=288 D SEND :=P#DB12.DBX6.0 BYTE 3 // Enviar tres bytes, DB12.DBB6, DB12.DBB7 y DB12.DBB8 RECV :=DB12.DBB9 // Búfer de recepción, en este caso no tiene significado DONE :=M20.2 // Bit de comando realizado correctamente si se pone a "1" ERROR :=M20.3 // Bit de comando realizado con error si se pone a "1" STATUS :=MD22 // Doble palabra en donde se registra código error en el caso que ERROR=1 BEA

Page 24: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 23/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

actl: CALL FC 7 // Hago la llamada al bloque protegido FC7 ACT :=TRUE // El usuario ha de poner a "TRUE" este parámetro STARTUP:=FALSE // Siempre en "FALSE" LADDR :=W#16#100 // Dirección lógica del CP, según instalación en bastidor Dirección=288 D SEND :=DB12.DBB10 // Este comando necesita enviar un byte, DB13.DBB10 RECV :=DB12.DBB11 // Búfer de recepción, en este caso no tiene significado DONE :=M20.4 // Bit de comando realizado correctamente si se pone a "1" ERROR :=M20.5 // Bit de comando realizado con error si se pone a "1" STATUS :=MD22 // Doble palabra en donde se registra código error en el caso que ERROR = 1 BEA mpro: CALL FC 7 // Hago la llamada al bloque protegido FC7 ACT :=TRUE // El usuario ha de poner a "TRUE" este parámetro STARTUP:=FALSE // Siempre en "FALSE" LADDR :=W#16#100 // Dirección lógica del CP, según instalación en bastidor Dirección = 288 D SEND :=P#DB12.DBX3.0 BYTE 2 // Enviar dos bytes, DB123.DBB3 y DB12.DBB4 RECV :=DB12.DBB5 // Búfer de recepción, en este caso no tiene significado DONE :=M20.6 // Bit de comando realizado correctamente si se pone a "1" ERROR :=M20.7 // Bit de comando realizado con error si se pone a "1" STATUS :=MD22 // Doble palabra en donde se registra código error en el caso que ERROR = 1 BEA Antes de proceder a la comprobación del funcionamiento, construimos una tabla de variables para poder visualizar si se producen errores durante la ejecución de la función FC7.

Page 25: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 24/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

Ahora y tras cargar el programa a la CPU del PLC podemos comprobar el funcionamiento total del ejemplo: a) En primer lugar se ha de forzar desde la tabla de variables los valores de las direcciones actual y nueva del esclavo al cual se le quiere cambiar su dirección. Esos datos se guarda en el DB12, en los bytes 7 y 8 respectivamente, por ejemplo cambiarle al esclavo #14 por la dirección #4.

Page 26: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 25/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

Pulsamos el botón de forzado para asignar al DB12 bytes 7 y 8 los valores correspondientes:

Se observa visualizando el DB12, los valores en los bytes correspondientes:

b) Activamos la entrada E125.0, los indicadores del CP Master AS-i ilumina el led CM (Configuration Mode), desactivamos la entrada E 125.0. c) Activamos la entrada E125.1, además de mantener iluminado el led CM, se ilumina el led CER (Configuration Error), desactivamos la entrada E 125.1. d) Activamos la entrada E125.2, se iluminan se mantiene el led CM apagándose el led CER, la lista de esclavos ha sido actualizada, es por ello que el indicador del esclavo 4 luce permanentemente. Desactivamos la entrada E125.2. e) Activamos la entrada E125.3, con ello colocamos el CP de AS-i en modo protegido y desactivando la entrada se termina el proceso del cambio de la dirección. Se puede observar en la tabla de variables el funcionamiento de los bits de error y del código.

Page 27: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 26/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

5. OTROS COMANDOS.

5.1. Seleccionar autoprogramación.

5.1.1. SIGNIFCADO DEL COMANDO. Con esta llamada se puede bloquear o liberar la función “Programación automática de direcciones”. Con la función de programación automática de direcciones resulta particularmente sencilla la sustitución de esclavos AS–i averiados. Se ha de tener en cuenta que la “programación automática de direcciones” sólo es posible si el CP 343–2 está en el modo protegido y sólo ha fallado un esclavo AS–i. A continuación se explica cómo puede cambiar en forma particularmente sencilla esclavos AS–i averiados por medio de la función de programación automática de direcciones. 1. Identificar el esclavo AS–i averiado. 2. Si se enciende el indicador AUP (sólo en el modo protegido), señaliza lo siguiente:

• Que ha fallado exactamente un solo esclavo. • Por tanto es posible una programación automática de direcciones por el CP 343–2.

3. Identificar el esclavo AS–i averiado por el parpadeo del diodo asignado al esclavo en el panel frontal. 4. Sustituir el esclavo AS–i averiado.

• Reemplazar el esclavo AS–i averiado por un esclavo AS–i idéntico con la dirección 0 (estado a la entrega).

5. El CP 343–2 programa entonces para esta esclavo la dirección de la estación original averiada. 6. El indicador “AUP” se apaga. El CP 343–2 señaliza con el diodo de la indicación de esclavos el nuevo esclavo incorporado. El bit AUTO_ADDR_ENABLE se almacena en forma no volátil, lo que significa que se conserva también después de un arranque/rearranque del maestro AS–i.

• Estructura de los datos de petición en el búfer de emisión:

BYTE 0: Este byte es para colocar el comando de la operación a realizar, en este caso “0BH”. BYTE 1: De este byte tan solo se utiliza el bit menos significativo para determinar si activamos el modo autoprogramación o no:

Page 28: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 27/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

Bit 0 = 1: Programación automática de direcciones activada. Bit 0 = 0: Programación automática de direcciones desactivada.

• Estructura de datos del búfer de recepción:

Este comando no da ninguna respuesta, pero la función FC7 nos obliga a poner como mínimo un byte en el parámetro correspondiente que es RECV. El funcionamiento y la aplicación del resto de comandos se puede consultar en el documento explicativo del CP 343-2, llamado “Manual CP 342-2 AS-Interface Master”, disponible en formato pdf en la web de Siemens correspondiente a Customer Support.

Page 29: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 28/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

6. INDICACIONES DE ERRORES/REMEDIO EN CASO DE FALLOS.

A continuación se listan las causas de perturbación posibles en la operación del CP 343–2 así como las posibles soluciones.

Error Causa posible Remedio

Se enciende el indicador APF

El consumo de corriente de los esclavos AS-i es excesivo. Consecuencia: tensión demasiado baja en el cable AS-i.

Compruebe el consumo de corriente de los esclavos AS-i. Si es necesario, abastezca los esclavos AS-i con tensión auxiliar externa.

El diodo PWR no brilla

El enlace entre el CP y el bus de panel posterior no es correcto.

Compruebe si el módulo está correctamente insertado.

El CP 342–2 está en el modo protegido y existe un error de configuración AS-i (p. ej. fallo de esclavo),

Elimine el error de configuración. SF brilla sin que se apriete el pulsador

El CP está averiado. Error interno de EEPROM –> ver Señalización AS 300, búfer de diagnóstico del sistema.

Sustituya el CP.

SF se enciende al apretar el pulsador SET.

Al cambiar al modo protegido existe un esclavo AS-i con la dirección 0.

Desconecte del cable AS–i el esclavo AS-i con la dirección 0.

El CP 343–2 aún no está configurado. Configure el CP 343–2 con el pulsador SET del panel frontal.

Ha fallado un esclavo AS-i configurado (evaluar la indicación de esclavos).

Sustituya el esclavo AS-i averiado o configure de nuevo el CP 343–2 si no se necesita el esclavo AS-i.

Se ha conectado al cable AS-i un esclavo AS-i no configurado.

Desconecte el esclavo AS-i o reconfigure el CP 343–2.

El indicador CER está encendido permanentemente.

Se ha conectado un esclavo AS-i cuyos datos de configuración (configuración de E/S, códigos ID) no coinciden con los valores de los esclavos AS-i configurados.

Compruebe si se ha conectado un esclavo AS-i incorrecto. Si procede, reconfigure el CP 343–2.

Mal contacto Compruebe las conexiones de los esclavos AS-i. configurado esporádicamente.

El indicador CER centellea, lo que significa que un esclavo AS-i configurado falla esporádicamente Interferencias en el cable AS-i.

Compruebe la puesta a tierra correcta del CP 343–2 y el tendido del cable AS-i. Compruebe si el apantallamiento de la fuente de alimentación AS-i está correctamente conectado.

El AS está en el modo “RUN”. Conmute el AS al modo “STOP” de configuración al modo protegido.

Se ha apretado el pulsador SET durante un tiempo demasiado corto.

Apriete el pulsador SET durante al menos 0,5 s.

El CP 343–2 no conmuta del modo configuración al modo protegido

Un esclavo AS-i con la dirección 0 está conectado al cable AS-i. El CP 343–2 no puede cambiar al modo protegido mientras esté conectado ese esclavo.

Desconecte el esclavo AS-i con la dirección 0.

Page 30: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 29/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

Error Causa posible Remedio

El AS está en el modo “RUN” Conmute el AS al modo “STOP” El CP 343–2 no conmuta del modo protegido al modo de configuración.

Se ha apretado el pulsador SET durante un tiempo demasiado corto.

Apriete el pulsador SET durante al menos 0,5 s.

El CP 343–2 está en el modo de configuración.

En el modo de configuración no es posible la “programación automática”. Programe la dirección del nuevo esclavo AS-i con el aparato programador o a través de la interfaz de comandos del CP 343–2.

Ha fallado más de un esclavo AS-i.

Controle el cable AS-i. Si al mismo tiempo se indica “APF”, compruebe la alimentación de tensión en el cable AS-i. Si hay más de un esclavo averiado, programe la dirección de los esclavos sustituidos con el aparato programador de direcciones.

El CP 343–2 no ha identificado esclavos AS-i configurados.

Desconecte del cable AS-i los esclavos AS-i no configurados.

Después de fallar un esclavo AS-i permanece apagado el indicador ”AUP”.

No está puesto el flan “AUTO_ADRESS_ENABLE”.

Ponga el bit con las correspondientes llamadas de FC.

Los datos de configuración (E/S, código ID) del esclavo AS-i de recambio no coinciden con los valores del esclavo original.

Compruebe si se ha utilizado el “esclavo de recambio” correcto. Compruebe las indicaciones del fabricante relativas a los datos de configuración. Si el esclavo original tiene que ser reemplazado por uno de otro tipo, asigne la dirección con el aparato programador de direcciones y reconfigure el CP 343–2 (con el pulsador SET).

El esclavo AS-i de recambio no tiene la dirección “Cero”.

Ajuste la dirección del esclavo sustituido con el aparato programador de direcciones.

No se produce la programación automática de direcciones a pesar de estar encendido el indicador “AUP”.

El esclavo AS-i de recambio no está correctamente conectado o está averiado.

Compruebe las conexiones del esclavo; si es necesario, vuelva a sustituir el esclavo.

El diodo “CER” y los diodos de esclavos AS-i activo centellean irregularmente.

Se ha montado el AS-Interface un Extender con la conexiones ”Line1” y ”Line2” permutadas.

Corregir las conexiones en el Extender.

Page 31: COMUNICACIONES INDUSTRIALES Redes industriales Bus AS-iiespalauausit.com/edcai/html/documents/04_ASi_Comandos_ASi342… · Utilización de la interfaz de comandos Realizado por: Vicenç

Departament d’Educació

Electricitat/Electrònica

BUS AS-I Utilización de la interfaz de comandos

Realizado por: Vicenç Guerrero

Fecha: 25/11/2005 Versión: 1.0

Página: 30/30 Fichero:04_ASi_Comandos_ASi3422.DOC

IES PALAU AUSIT

7. EJERCICIO DE APLICACIÓN. Añadir al ejemplo presentado la opción del comando Autoprogramación, para en el caso que un esclavo AS-i falle se pueda sustituir por otro con la dirección “0” de forma automática. La opción del modo Autoprogramación deberá ser flexible y dependerá del estado de la entrada E125.4, de forma que:

• Si E125.4 = 0 el modo Autoprogramación estará desactivado. • Si E125.4 = 1 el modo Autoprogramación estará activado.

Para comprobar el correcto funcionamiento tan solo se deberá poner la E125.4 = 1 y desmontar uno de los esclavos conectado en el bus AS-i, se deberá observar como en ese momento el indicador “AUP” del CP se ilumina, a la vez que el led correspondiente al esclavo con fallo luce intermitentemente en el CP, a continuación mediante la consola direccionadora, cambiarle la dirección del esclavo desmontado a la dirección “0”, seguidamente volver a conectar el esclavo para integrarlo de nuevo en el bus AS-i, se observará como el esclavo se direcciona automáticamente con la dirección que tenia antes del fallo y el CP recupera la iluminación fija del esclavo desmontado.