Desbloquear una Función en Step 7 de una forma diferente a la que Siemens nos indica en sus documentos y que consideran la única forma, eliminando el KNOW_HOW_PROTECT. Pero no siempre tenemos el fichero fuente dónde está ese KNOW_HOW_PROTECT y por tanto la acción de Siemens no nos serviría.

Bloques protegidos en un proyecto de Step 7.

Ya hemos visto en otro documento de esta web cómo proteger y desproteger los bloques de nuestro proyecto, según el procedimiento normal vinculado a la información de Siemens:

Cómo proteger bloques en Step 7”.

Cómo desproteger bloques en Step 7”.

Esta documentación se basa en el conocido KNOW_HOW_PROTECT. Y este procedimiento requiere tener la fuente del bloque protegido para poder acceder a él.

Fuente del bloque es necesaria para desproteger bloques con la instrucción KNOW_HOW_PROTECT en Step 7.

Fuente del bloque es necesaria para desproteger bloques con la instrucción KNOW_HOW_PROTECT en Step 7.

Desbloquear los bloques si no tenemos la fuente.

Existe otra operación para poder desproteger esos bloques, para lo cual necesitaremos:

El proyecto Step 7.

Un software que trabaje como editor hexadecimal, como por ejemplo: WINHEX.

Procedimiento para desbloquear los bloques protegidos.

Abrir el software WINHEX.
Programa WINHEX editor hexadecimal

Programa WINHEX editor hexadecimal

Seleccionar abrir archivo.

Seleccionar el archivo “SUBBLK.DBF” que estará en el directorio del proyecto de Step 7, por ejemplo:

C:\Users\Public\Documents\Siemens\tecnoplc.com\tecnoplc_S7\ombstx\offline\00000001

Directorio donde se encuentra el archivo que necesitamos para desbloquear los datos.

Directorio donde se encuentra el archivo que necesitamos para desbloquear los datos.

Seleccionar el archivo para abrir en el editor hexadecimal

Seleccionar el archivo para abrir en el editor hexadecimal

Criterio de búsqueda del bloque protegido dentro del editor Hexadecimal.

Una vez abierto tenemos que buscar el bloque que queremos desbloquear, en nuestro ejemplo es el FC2. Para la búsqueda seguimos el siguiente criterio:

Buscamos una cadena de 7 caracteres.

Para un bloque FC: la cadena inicia con “120”, finaliza con el número de FC, en nuestro caso “2”, y el resto de caracteres en el medio serán ceros. Por tanto, quedaría así: “1200002”.

Para un bloque FB: la cadena inicia con “140”, finaliza con el número de FB, por ejemplo si se trata de un FB5, el final será “5”, y el resto de caracteres en el medio serán ceros. Por tanto, quedaría así: “1200005”.

Búsqueda del bloque a desproteger siguiendo el criterio hexadecimal de búsqueda.

Búsqueda del bloque a desproteger siguiendo el criterio hexadecimal de búsqueda.

A partir de este valor encontrado, hay que buscar en las líneas inferiores un valor de “33”. Normalmente está 5 líneas más abajo como muestra la figura:

Buscar un valor 33 en las siguientes líneas.

Buscar un valor 33 en las siguientes líneas.

Sustituir el valor “33” por un “30”.
Sustituir el valor 33 por un valor 30.

Sustituir el valor 33 por un valor 30.

Le damos a guardar y finalizado el proceso.

Últimos detalles.

Siemens confirma que la única manera de desproteger un bloque es eliminando el KNOW_HOW_PROTECT, por lo que si en nuestro proyecto no disponemos de la fuente del bloque protegido, según Siemens no podemos desproteger dicho bloque, ya que no podemos anular el KNOW_HOW_PROTECT.

Obtén información acerca de la protección de los bloques en Step 7 y otras formas de desprotegerlos en estos documentos de esta web:

Cómo proteger un bloque en Step 7”.

Cómo desproteger un bloque en Step 7: Modo KNOW_HOW_PROTECT”.

Cómo desproteger un bloque es Step 7: eliminando datos con un editor Hexadecimal”.


Desarrollo del documento

Documento desarrollado por tecnoplc.com bajo una Licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.
Ante cualquier duda, consultar en www.tecnoplc.com.
Creative Commons pequeño