FPControl, Automating the world


Ejemplos de Programación en Visual Basic .NET 

Una vez instalado el componente AutomationToolKit.ocx, abra un nuevo proyecto  "Aplicación de Windows" para probar el componente.  Haga Click Derecho sobre el Cuadro de Herramientas y seleccione "Elegir Elementos..." como se muestra en la siguiente figura.

    Luego Seleccione  desde la solapa "Componentes COM" el Kit del control AutomationToolKit   y ActiveNTocol , pulse Aceptar para agregarlo a la barra de herramientas.

IMPORTANTE: Una vez creado el nuevo proyecto y guardarlo, se debe agregar una referencia al objeto  ATK_V3 (AutomationToolKit V3x). Para ello debe realizar lo siguiente.

Desde la ventana explorador de proyecto, debe hacer doble Click en “My Project”.

Luego seleccione la lengüeta “Referencias” y pulse el botón Agregar.

Busque la referencia a AutomationToolKit V3 y agréguela al proyecto.

 

 

Pegue el/los controles que desea utilizar sobre el formulario como se muestra en el siguiente ejemplo.

 

El siguiente ejemplo lee valores de DT 100, DT101 y DT102 para mostrarlos en los instrumentos del formulario.

         Dim DTs(24) As String  'Defino un vector para contener datos de memorias leídos del PLC
         Dim x As String
 

Private Sub Form1_Load()
         'Para poder utilizar los comandos que interactúan con el PLC
         'primero necesitamos configurar y abrir el puerto.

          With ActiveNTocol1
                 .SerialPort = 1
                 .BaudRate = 9600
                 .BitDataLength = 8
                 .TimeOut = 1000
 

                  'Configuro el Timer interno número 1 para establecer la frecuencia de lectura cada 500 milisegundos

                 .Timer1_Interval = 500
                 .Timer1_Enabled = True
 


                 .OpenPort  'Abre el Puerto
          End With

End Sub


Private Sub ActiveNTocol1_Timer1()
         x = ActiveNTocol1.ReadData(1, "D", 100, 123)   'Lee un registro de 24 posiciones de memorias del PLC al mismo tiempo

        ActiveNTocol1.CstrToArray x, DTs   'Convierte el string de la variable "x" en elementos de un vector "DTx"

        'Carga los valores leídos del PLC a los instrumentos
        Instrument1.Value = DTs(0)       'DT100
        GaugeX1.Value = DTs(1)          'DT101
        LCDPanel1.Value = DTs(2)      'DT102
End Sub
 


Private Sub Button1_Click()
        'Envía un Mail a los destinatarios
        ActiveMail1.Port = 25
        ActiveMail1.Subject = "Alarma de proceso! "
        ActiveMail1.Importance = 2 '0-Normal, 1-Baja, 2-Alta
        ActiveMail1.MessageText = xText
        ActiveMail1.SendMail
End Sub
 


Private Sub Form1_Deactivate()
          ActiveNTocol1.ClosePort     'Cierro el puerto antes de salir
End Sub

 

Si ya ha conectado el PLC a su CPU mediante un puerto RS232,  está en condiciones de probar la lectura de los datos en memoria del PLC en las posiciones DT100, DT101, DT102.

Note que la función  ActiveNTocol1.ReadData(1, "D", 100, 123) devuelve un String con los datos leídos separados por comas. En este ejemplo el DT100=50, el DT101=65 y el DT102=133.58. Luego utilizamos la función ActiveNTocol1.CStrToArray X, DTs para deparar los 24 datos leídos y cargarlos al vector DTs.

NOTA: Cuando se necesitan realizar lecturas de varias posiciones de memorias, es conveniente realizarlas todas en una sola operación de lectura tal como se mostró en el ejemplo anterior ya que la función "ReadData" nos permite ller de hasta 24 posiciones de memorias de una vez. Esto agiliza el tiempo de lectura y por lo tanto la performance de toda la aplicación.

Automatizacion industrial, desde San Justo Para el Mundo