Documente Academic
Documente Profesional
Documente Cultură
Electricitat/Electrnica
BUS AS-I
Utilizacin de la interfaz de comandos
COMUNICACIONES INDUSTRIALES
Redes industriales
Bus AS-i
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 0/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
Electricitat/Electrnica
BUS AS-I
Utilizacin de la interfaz de comandos
PRLOGO
Esta documentacin forma parte de una serie de manuales que un grupo de profesores de tres institutos
de educacin 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 temtica de la
automatizacin, el control y las comunicaciones industriales.
Este equipo de profesores, formaron un grupo de trabajo, llamado EDCAI (Experimentacin y
Documentacin en Control y Automatizacin Industrial), reconocido tanto por el Departament dEducaci
de la Generalitat de Catalunya como por la empresa Siemens, con unos objetivos tan sencillos como
claros y que se basaban en la realizacin de documentacin realizada por profesores/as para
profesores/as, y que adems, pudiese servir como manual para los alumnos, esto quiere decir que se ha
intentado realizar una documentacin que sea fcil 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 contina trabajando en cada uno de los temas para poder ir actualizando da a da
esta documentacin, es por ello, que nos podis enviar vuestras sugerencias a travs de la informacin
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 dedicacin que hemos realizado pueda ayudar a mejorar vuestra labor
educativa.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 1/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
INDICE.
1. La funcin FC ASI_3422.
1.1. Introduccin.
1.2. Programa para completar los parmetros.
1.3. Orden de proceso de los parmetros en el programa.
1.4. Codificacin de los errores.
3
3
5
6
7
11
11
11
11
13
13
13
14
14
17
17
18
18
20
20
20
21
5. Otros comandos.
5.1. Seleccionar autoprogramacin
5.1.1. Significado del comando.
26
26
26
28
7. Ejercicio de aplicacin.
30
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 2/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
1. LA FUNCIN FC ASI_3422.
1.1. Introduccin.
En SIMATIC S7 se ofrece con el mdulo FC ASI_3422 que es un bloque FC para realizar de una forma
cmoda la lectura y escritura de los esclavos AS-i, a travs de las llamadas a los bloques SFC 58 de
Escribir_bloque_datos y tambin el SFC 59 de Leer_bloque_datos.
La estructura del bloque FC, as como el tipo de variables para cada parmetro es:
BOOL
BOOL
BOOL
BOOL
WORD
ANY
ANY
DWORD
A continuacin se describe con detalle cada uno de los parmetros utilizados por la funcin FC:
Nombre
Clase
Tipo
rea
memoria
BOOL
E,A,M,D,L,
constante
ACT
Realizado por:
Vicen Guerrero
de
Observacin
Mientras ACT =1, se inicia un procesamiento
de comando si no se est procesando ya una
llamada
Fecha: 25/11/2005
Pgina: 3/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
STARTUP
BOOL
E,A,M,D,L,
constante
LADDR
WORD
E,A,M,D,L,
constante
SEND
ANY
E,A,M,D,L
RECV
ANY
E,A,M,D,L
DONE
BOOL
A,M,D,L
ERROR
BOOL
A,M,D,L
STATUS
E/A
DWORD
M,D
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 4/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
1.2.
Un programa que realiza nicamente la llamada al FC 7 completando todos los parmetros es:
CALL FC 7
ACT:= TRUE
STARTUP:= FALSE
LADDR:= W#16#120
SEND:= P#DB13.DBX4.0 BYTE 2
RECV:= P#DB13.DBX228.0 BYTE 1
DONE:= M20.0
ERROR:= M20.1
STATUS:= MW22
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
Llamada al FC ASI_3432
Que procese la ejecucin siempre que haya finalizado la
anterior
La CPU pone a 1 este parmetro del FC7, el usuario lo
tiene que anular
Direccin en hexadecimal del CP (slot 6, 288 DECIMAL)
Buffer de emisin, rea de memoria que el usuario declara
el lugar en donde almacenar los datos para enviar al CP,
el nmero de bytes depender del comando utilizado.
Buffer de recepcin, rea de memoria que el usuario
declara el lugar en donde recoger los datos devueltos por
el CP, el nmero de bytes depender del comando
utilizado.
Al finalizar la peticin, si DONE=1 indica que no hay
errores.
Al finalizar la peticin, si ERROR=1 indica que hay errores.
En la 1 palabra se indica el cdigo del error producido
(segn lista). En la 2 palabra es para uso interno del
sistema y no debe ser modificada
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 5/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
1.3. Orden de proceso de los parmetros 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
parmetro EN = TRUE, haciendo cumplir la ecuacin lgica 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 bfer de emisin. El PLC transfiere este bfer de emisin
con el parmetro de llamada SEND.
3. Dependiendo del tipo de comando se necesita un bfer de respuesta, por tanto debemos especificar el
lugar en donde queremos guardar la respuesta recibida, este lugar se le conoce como bfer de
recepcin. El PLC transfiere este bfer de repuesta con el parmetro de llamada RECV. Para
informaciones de estado no se necesita el bfer de respuesta en el caso de esta interfaz de FC.
4. Activar la peticin a travs del parmetro ACT, este parmetro se deber poner a 1 para ejecutar el
comando previsto.
5. A continuacin, consultar los parmetros DONE, ERROR y STATUS, que nos dar informacin de cual
ha sido el resultado de la ejecucin:
DONE: Se pondr a estado 1 si la ejecucin de ha producido sin errores.
ERROR: Se pondr a estado 1 si la ejecucin de ha producido con errores.
STATUS: Nos indica de forma codificada en un valor en hexadecimal el tipo de error producido.
Estos parmetros permanecen invariables hasta el siguiente procesamiento de peticin
Los cdigos de error durante la peticin son los siguientes:
Una llamada de comando se inicia con ACT = 1. Durante un procesamiento de peticin, la primera
palabra de STATUS contiene el valor 8181H. Con esto se comunica que se est procesando una peticin.
Al trmino de la peticin se notifica al usuario el resultado en los parmetros DONE o ERROR.
Si no se ha presentado ningn error, se pone DONE=1. En el caso de peticiones con datos de respuesta
del CP 3432, stos se ponen a disposicin en el bfer de recepcin 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 3432 no pone a disposicin ningn dato de recepcin. Para una descripcin ms
detallada del error producido se inscribe un cdigo de error en la primera palabra de STATUS.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 6/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
1.4. Codificacin de los errores.
DONE
ERROR
STATUS
Significado
0000H
8090H
8092H
8093H
80A0H
80A1H
80A2H
80A3H
80A4H
80B0H
80B1H
80B2H
80B3H
80C0H
80C1H
80C2H
Atasco de peticiones
80C3H
80C4H
Error de comunicacin
80C5H
80C6H
8181H
8182H
8184H
8381H
8382H
8383H
Error en ASInterface
8384H
8385H
8386H
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 7/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
DONE
ERROR
STATUS
Significado
83A1H
83A2H
83A3H
83A4H
83A5H
83A6H
83A7H
83A8H
83B1H
83B2H
83F8H
83F9H
8F22H
8F23H
8F24H
8F25H
8F28H
8F29H
8F30H
8F31H
8F32H
8F42H
8F43H
8F44H
8F45H
8F7FH
Error interno
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 8/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
2. DESCRIPCIN DE LOS COMANDOS.
A continuacin se describen las llamadas de comandos que pueden ser emitidas por el programa de
usuario al CP 3432. El CP 3432 proporciona con estas llamadas de comandos toda la funcionalidad del
perfil de maestro M1e de la especificacin de maestro ASi.
Nombre
Parmetros
Retorno
Codificacin
Configurar_parmetro_permanente
(Set_Permanent_Parameter)
Leer_parmetro_permanente
(Get_Permanent_Parameter)
Parmetros
01H
Escribir_parmetro
(Write_Parameter)
Eco parmetro
(opcional)
02H
Leer_parmetro
(Read_Parameter)
Parmetro
03H
00H
Almacenar_parmetros_actuales
(Store_Actual_Parameters)
04H
Almacenar_datos_configuracin_ext
endidos
Almacenar_datos_configuracin_ext
endidos_actuales
Direccin de esclavo
configuracin
25H
Datos de
configuracin
proyectados
Almacenar_configuracin_actual
(Store_Actual_Configuration)
26H
07H
Leer_datos_configuracin_reales
Direccin - esclavo
Configurar_LPS_extendida
LPS
29H
Poner_modo_Offline
Modo
0AH
Seleccionar autoprogramacin
Modo
0BH
Poner_modo
Modo
0CH
Cambiar_direccin_esclavo_AS-I
(Change_AS-i_Slave_Address)
Direccin 1,
Direccin 2
0DH
Leer_estado_esclavo_AS-i
Direccin de esclavo
Registro de errores
del esclavo AS-i
0FH
Leer_listas_y_flags
Ninguno
30H
Realizado por:
Vicen Guerrero
Datos configuracin
- reales
28H
Fecha: 25/11/2005
Pgina: 9/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
Nombre
Parmetros
Leer_configuracin_global_extendid
a
Retorno
Datos de
configuracinreales, parmetros
actuales, LAS, Flags
Codificacin
39H
Almacenar_configuracin_global_ex
tendida
Configuracin-global
3AH
Escribir_lista_parmetros_extendida
Lista de parmetros
3CH
Leer_lista_eco_parmetros_extendi
da
Lista_eco
parmetros
33H
Leer_identificador_versin
String_versin
14H
Leer_ID-esclavo_AS-i
Cdigo_ID
17H
Leer_ID1_extendida_esclavo_AS-i
Direccin de esclavo
Extended ID1_Code
37H
Escribir_ID1_extendida_esclavo_AS
-i
Extended ID-Code
Leer_ID2_extendida_esclavo_AS-i
Direccin de esclavo
Extended ID2_Code
38H
Leer_ES_esclavo_AS-i
Direccin de esclavo
Configuracin_E/S
18H
LPF
3EH
Leer_lista_errores_periferia
3FH
Escribir_string_parmetros_esclavo
_ASi
Direccin de esclavo
String de parmetros
Leer_string_parmetros_esclavo_AS
i
Direccin de esclavo
String de
parmetros
41H
Leer_string_ID_esclavo_ASi
Direccin de esclavo
String ID
42H
Leer_string_diagnstico_esclavo_AS
i
Direccin de esclavo
String diagnstico
43H
Realizado por:
Vicen Guerrero
40H
Fecha: 25/11/2005
Pgina: 10/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
3. BFER DE EMISIN Y DE RECEPCIN.
A continuacin se expone las diferentes estructuras del bfer, tanto de emisin como de recepcin, as
como se codifica las direcciones de los esclavos para diferenciar el tipo estndar o A del tipo B.
3.1. Estructura del bfer de emisin.
La estructura bsica del bfer de emisin para comandos se indica como sigue. Aparecen con fondo gris
los bytes relevantes slo para determinados comandos.
La direccin inicial del bfer de emisin en el maestro DP queda indicada en el parmetro SEND de la
llamada al FC AS_3432.
La direccin inicial del bfer de recepcin en el maestro DP queda indicado en el parmetro RECV de la
llamada al FC AS_3432.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 11/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
donde el SBit (Select-Bit) es para la seleccin del tipo de esclavo, y se tiene que indicar del siguiente
modo:
SBit = 0
: Esclavo ASi estndar o esclavo ASi con modo de direccionamiento extendido en el rea
de direcciones A
SBit = 1
Ejemplos:
a)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
11 estndar o A
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
11 B
b)
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
25 estndar o A
18 B
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 12/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
BYTE 0: Este byte es para colocar el comando de la operacin a realizar, en este caso 0CH
BYTE 1: En el bit 0 se deber colocar un 1 para MODO Configuracin o un 0 para elegir MODO
Protegido. El resto de bits estn reservados para el sistema.
Este comando no da ninguna respuesta, pero la funcin FC7 nos obliga a poner como mnimo un byte en
el parmetro correspondiente que es RECV.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 13/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
4.1.2. PREPARACIN DEL PROYECTO.
Antes de iniciar el proceso de aplicar diferentes comandos dentro de un programa de PLC, realizamos
una preparacin previa del proyecto de STEP 7 con el que vamos a trabajar.
Crearemos un proyecto en el que incluiremos lo siguiente:
MDULO
OB 1
FC7
FC8
DB12
APLICACIN
Bloque de organizacin cclico
Funcin protegida ASi_3422
Funcin de usuario para la llamada al FC7
Bloque de datos para el bfer de emisin y recepcin
Para este caso el bfer de emisin necesita de 2 bytes que son el byte 0 y el 1, para el bfer de
recepcin 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 funcin 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 Configuracin del CP de AS-i.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 14/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
mcon: CALL FC 7
// Hago la llamada al bloque protegido FC7
ACT:=TRUE
// El usuario ha de poner a "TRUE" este parmetro
STARTUP:=FALSE
// Siempre en "FALSE"
LADDR:=W#16#100 // Direccin lgica del CP, segn instalacin en bastidor Direccin=288 D
SEND:=P#DB12.DBX0.0 BYTE 2 // Enviar dos bytes, DB12.DBB0 y DB12.DBB1
RECV :=DB12.DBB2
// Bfer de recepcin, 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 cdigo 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.
Aadimos en la declaracin del DB los bytes necesarios:
Aadidas
Al igual que en el caso anterior el bfer de emisin necesita de 2 bytes que son el byte 3 y el 4, para el
bfer de recepcin 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 funcin 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 aadimos otra parte de programa (en negrita) para cambiar a modo Protegido, quedando el
programa:
U
E 125.0
SPB mcon
U E 125.1
SPB mpro
BEA
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 15/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
mcon: CALL FC
7
ACT:=TRUE
STARTUP:=FALSE
LADDR:=W#16#100
SEND:=P#DB12.DBX0.0
RECV :=DB12.DBB2
DONE :=M20.0
ERROR :=M20.1
STATUS :=MD22
BEA
mpro: CALL FC 7
// Hago la llamada al bloque protegido FC7
ACT :=TRUE
// El usuario ha de poner a "TRUE" este parmetro
STARTUP:=FALSE
// Siempre en "FALSE"
LADDR :=W#16#100 // Direccin lgica del CP, segn instalacin en bastidor Direccin = 288 D
SEND :=P#DB12.DBX3.0 BYTE 2 // Enviar dos bytes, DB123.DBB3 y DB12.DBB4
RECV :=DB12.DBB5
// Bfer de recepcin, 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 cdigo error en el caso que ERROR = 1
BEA
Antes de proceder a la comprobacin del funcionamiento, construimos una tabla de variables para poder
visualizar si se producen errores durante la ejecucin de la funcin FC7.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 16/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
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 cdigo.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 17/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
4.2.2.
Ampliamos la declaracin del bloque de datos DB12 con la estructura necesaria para el bfer de emisin
y de recepcin:
Aadidas
Para este caso el bfer de emisin necesita de 3 bytes que son los bytes 6, 7 y 8, para el bfer de
recepcin 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 funcin FC 7:
BYTE 6 tendr como valor D hex = 0D hex, que corresponde a elegir el comando de cambio de direccin
para un esclavo.
BYTE 7 deberemos cargar, previo a la ejecucin de la funcin FC7, la direccin actual del esclavo AS-i al
cual le queremos cambiar la direccin.
BYTE 8 deberemos cargar, previo a la ejecucin de la funcin FC7, la direccin nueva que se le quiere
dar al esclavo AS-i elegido.
4.2.3.
PROGRAMA DE EJEMPLO.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 18/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
De todas forma sealamos en negrita la parte de programa que se ha de aadir a la del anterior
apartado, necesaria para ir completando el ejercicio completo.
U
E 125.0
SPB mcon
U E 125.1
SPB cand
U
E 125.3
SPB mpro
BEA
mcon: CALL FC
7
ACT:=TRUE
STARTUP:=FALSE
LADDR:=W#16#100
SEND:=P#DB12.DBX0.0
RECV :=DB12.DBB2
DONE :=M20.0
ERROR :=M20.1
STATUS :=MD22
BEA
cand: CALL FC 7
// Hago la llamada al bloque protegido FC7
ACT :=TRUE
// El usuario ha de poner a "TRUE" este parmetro
STARTUP:=FALSE
// Siempre en "FALSE"
LADDR :=W#16#100 // Direccin lgica del CP, segn instalacin en bastidor Direccin=288 D
SEND :=P#DB12.DBX6.0 BYTE 3 // Enviar tres bytes, DB12.DBB6, DB12.DBB7 y DB12.DBB8
RECV :=DB12.DBB6
// Bfer de recepcin, 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 cdigo 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 parmetro
STARTUP:=FALSE
// Siempre en "FALSE"
LADDR :=W#16#100
// Direccin lgica del CP, segn instalacin en bastidor Direccin = 288 D
SEND :=P#DB12.DBX3.0 BYTE 2
// Enviar dos bytes, DB12.DBB3 y DB12.DBB4
RECV :=DB12.DBB5
// Bfer de recepcin, 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 cdigo error en el caso que ERROR = 1
BEA
Tambin podemos modificar la tabla de variables construida anteriormente para poder visualizar si se
producen errores durante la ejecucin de la funcin FC7.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 19/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
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 cdigo.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 20/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
4.3. Almacenar_Configuracin_Actual (Store_Actual_Configuration).
4.3.1.
Con esta llamada, los datos de configuracin (actuales) determinados en el ASInterface (configuracin
de E/S, IDCode, Extended ID1Code y Extended ID2Code) para todos los esclavos ASi son
almacenados en forma no voltil en EEPROM como datos de configuracin (TEORICOS). La lista de
esclavos ASi activados (LAS) se transfiere a la lista de esclavos ASi configurados (LPS).
Al ejecutar este comando, el maestro ASi cambia a la fase Off line y a continuacin vuelve al modo
normal (reinicio del maestro ASi).
En el modo protegido no se ejecuta esta llamada.
BYTE 0: Este byte es para colocar el comando de la operacin a realizar, en este caso 07H.
Este comando no da ninguna respuesta, pero la funcin FC7 nos obliga a poner como mnimo un byte en
el parmetro correspondiente que es RECV.
Este comando nos puede servir para actualizar la configuracin de esclavos, por ejemplo, tras un cambio
de direccin de algn esclavo.
4.3.2.
Modificamos el bloque de datos DB12 con la estructura necesaria para el bfer de emisin y de
recepcin:
Aadidas
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 21/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
Para este caso el bfer de emisin necesita de 1 byte que es el byte 10, para el bfer de recepcin
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 funcin FC 7:
BYTE 10 tendr como valor 7 hex = 07 hex, que corresponde a elegir el comando de almacenar
configuracin actual.
4.3.3.
PROGRAMA DE EJEMPLO.
Ahora aadimos otra parte de programa (en negrita) para cambiar a modo Protegido, quedando el
programa:
U
E 125.0
SPB mcon
U
E 125.1
SPB cand
U E 125.2
U(
L MW 22
L W#16#0
<>I
)
SPB actl
U
E 125.3
SPB mpro
BEA
mcon: CALL FC
7
ACT:=TRUE
STARTUP:=FALSE
LADDR:=W#16#100
SEND:=P#DB12.DBX0.0
RECV :=DB12.DBB2
DONE :=M20.0
ERROR :=M20.1
STATUS :=MD22
BEA
cand: CALL FC
7
// Hago la llamada al bloque protegido FC7
ACT :=TRUE
// El usuario ha de poner a "TRUE" este parmetro
STARTUP:=FALSE
// Siempre en "FALSE"
LADDR :=W#16#100 // Direccin lgica del CP, segn instalacin en bastidor Direccin=288 D
SEND :=P#DB12.DBX6.0 BYTE 3 // Enviar tres bytes, DB12.DBB6, DB12.DBB7 y DB12.DBB8
RECV :=DB12.DBB9
// Bfer de recepcin, 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 cdigo error en el caso que ERROR=1
BEA
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 22/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
actl: CALL FC 7
// Hago la llamada al bloque protegido FC7
ACT :=TRUE
// El usuario ha de poner a "TRUE" este parmetro
STARTUP:=FALSE
// Siempre en "FALSE"
LADDR :=W#16#100 // Direccin lgica del CP, segn instalacin en bastidor Direccin=288 D
SEND :=DB12.DBB10
// Este comando necesita enviar un byte, DB13.DBB10
RECV :=DB12.DBB11
// Bfer de recepcin, 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 cdigo 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 parmetro
STARTUP:=FALSE
// Siempre en "FALSE"
LADDR :=W#16#100 // Direccin lgica del CP, segn instalacin en bastidor Direccin = 288 D
SEND :=P#DB12.DBX3.0 BYTE 2 // Enviar dos bytes, DB123.DBB3 y DB12.DBB4
RECV :=DB12.DBB5
// Bfer de recepcin, 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 cdigo error en el caso que ERROR = 1
BEA
Antes de proceder a la comprobacin del funcionamiento, construimos una tabla de variables para poder
visualizar si se producen errores durante la ejecucin de la funcin FC7.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 23/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
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 direccin. Esos datos se guarda en el DB12, en los
bytes 7 y 8 respectivamente, por ejemplo cambiarle al esclavo #14 por la direccin #4.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 24/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
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, adems 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 apagndose 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 direccin.
Se puede observar en la tabla de variables el funcionamiento de los bits de error y del cdigo.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 25/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
5. OTROS COMANDOS.
5.1. Seleccionar autoprogramacin.
5.1.1.
Con esta llamada se puede bloquear o liberar la funcin Programacin automtica de direcciones.
Con la funcin de programacin automtica de direcciones resulta particularmente sencilla la sustitucin
de esclavos ASi averiados.
Se ha de tener en cuenta que la programacin automtica de direcciones slo es posible si el CP 3432
est en el modo protegido y slo ha fallado un esclavo ASi.
A continuacin se explica cmo puede cambiar en forma particularmente sencilla esclavos ASi averiados
por medio de la funcin de programacin automtica de direcciones.
1. Identificar el esclavo ASi averiado.
2. Si se enciende el indicador AUP (slo en el modo protegido), sealiza lo siguiente:
Que ha fallado exactamente un solo esclavo.
Por tanto es posible una programacin automtica de direcciones por el CP 3432.
3. Identificar el esclavo ASi averiado por el parpadeo del diodo asignado al esclavo en el panel frontal.
4. Sustituir el esclavo ASi averiado.
Reemplazar el esclavo ASi averiado por un esclavo ASi idntico con la direccin 0 (estado a la
entrega).
5. El CP 3432 programa entonces para esta esclavo la direccin de la estacin original averiada.
6. El indicador AUP se apaga. El CP 3432 sealiza con el diodo de la indicacin de esclavos
el nuevo esclavo incorporado.
El bit AUTO_ADDR_ENABLE se almacena en forma no voltil, lo que significa que se conserva tambin
despus de un arranque/rearranque del maestro ASi.
BYTE 0: Este byte es para colocar el comando de la operacin 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
autoprogramacin o no:
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 26/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
Bit 0 = 1: Programacin automtica de direcciones activada.
Bit 0 = 0: Programacin automtica de direcciones desactivada.
Este comando no da ninguna respuesta, pero la funcin FC7 nos obliga a poner como mnimo un byte en
el parmetro correspondiente que es RECV.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 27/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
Causa posible
Remedio
Sustituya el CP.
Compruebe si se ha conectado un
esclavo AS-i incorrecto.
Mal contacto
Compruebe si el apantallamiento de la
fuente de alimentacin AS-i est
correctamente conectado.
El CP 3432 no conmuta del modo
configuracin al modo protegido
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 28/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
Error
Causa posible
Remedio
En el modo de configuracin no es
posible la programacin automtica.
Programe la direccin del nuevo esclavo
AS-i con el aparato programador o a
travs de la interfaz de comandos del CP
3432.
No se produce la programacin
automtica de direcciones a pesar de
estar encendido el indicador AUP.
Realizado por:
Vicen Guerrero
Se ha montado el AS-Interface un
Extender con la conexiones Line1
y Line2 permutadas.
Fecha: 25/11/2005
Pgina: 29/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC
Departament dEducaci
BUS AS-I
Utilizacin de la interfaz de comandos
Electricitat/Electrnica
7. EJERCICIO DE APLICACIN.
Aadir al ejemplo presentado la opcin del comando Autoprogramacin, para en el caso que un esclavo
AS-i falle se pueda sustituir por otro con la direccin 0 de forma automtica.
La opcin del modo Autoprogramacin deber ser flexible y depender del estado de la entrada E125.4,
de forma que:
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
continuacin mediante la consola direccionadora, cambiarle la direccin del esclavo desmontado a la
direccin 0, seguidamente volver a conectar el esclavo para integrarlo de nuevo en el bus AS-i, se
observar como el esclavo se direcciona automticamente con la direccin que tenia antes del fallo y el
CP recupera la iluminacin fija del esclavo desmontado.
Realizado por:
Vicen Guerrero
Fecha: 25/11/2005
Pgina: 30/30
Versin: 1.0
Fichero:04_ASi_Comandos_ASi3422.DOC