Librerias C++ en WinCC

“La gratitud en silencio no sirve a nadie”. Gladys Bronwyn Stern

Primero de todo Feliz y Prospero año nuevo 2017... Está será la primera práctica de este año, aunque se quedo pendiente como otras del año pasado, poco a poco seguiré actualizando

Pues como estabamos creando Librerias y Controles, vamos a seguir por ese camino, y en esta ocasion vamos a crear una Libreria Dinamica en C++ para utilizar en WinCC obviamente. He utilizado el Visual Studio 2010 para el desarrollo de esta práctica.

Vamos a crear un nuevo proyecto Visual C++ del tipo Proyecto Win32, a continuación asignamos el nombre que deseemos y seguimos con el asistente.

En el asistente, pulsamos siguiente para acceder a la siguiente pantalla.

Aquí es donde vamos a Seleccionar el tipo de aplicacion que vamos a Desarrollar.

En nuestro caso es una Biblioteca de vínculos dínamicos.

Con esto finalizamos el asistente.

Llegado a este punto, es donde abrimos el archivo SystemTime.cpp y donde vamos a implementar nuestro código.

Para este ejemplo vamos a ver como acceder a la fecha, pero vamos a descomponerla en varias funciones, como hora, minuto, segundo, etc...

No vamos a entrar en detalles del código C++, simplemente que para que podamos acceder este WinCC tenemos que seguir unas pautas, pero en la siguiente imagen, se ve claramente el concepto que hay que seguir.

 

Una vez implementado nuestro código, ya podemos compilar y generar la libreria que vamos a implementar, como podemos observar aqui tenemos nuestra libreria

El siguiente paso es utilizarla en WinCC, en este caso como esta desarrollada en C++ vamos a utilizarla en Codigo Ansi C, y para poder utilizarla tenemos que declararla tal y como se muestra en la siguiente imagen. La vamos a utilizar en un botón.

Previamente he copiado en el directorio Controls, la Libreria SystemTime.dll

Utilizamos el código #pragma code(Ruta de nuestra Libreria)

Declaramos las funciones que vamos a utilizar

Cerramos #pragma code

Y ya podemos utilizar en nuestro codigo las funciones que previamente hemos declarado.

Por último , compilamos y lo probamos en Runtime a ver su funcionamiento...

Como se puede comprobar funciona correctamente.

14 de Enero del 2017