Operaciones con el puerto COM:
Los componentes de comunicación ActiveMbus.ocx y ActiveNTocol.ocx, necesitan habilitar un puerto de comunicacione (RS-232) el cual utilizará para intercambiar datos con el PLC mediante las funciones de Lectura y Escritura, y luego deberá cerrarlo al finalizar la comunicación. Para realizar éstas operaciones, dichos componentes poseen funciones específicas. Además podría necesitar conocer qué puertos del hardware que se está utilizando están disponibles. Las siguientes funciones le permiten realizar distintas operaciones con el puerto.
Abrir el Puerto RS-232:
Comando: ActiveNTocol1.OpenPort
Descripción: Habilita el puerto de comunicación según los parámetros utilizando las siguientes propiedades del control:
ActiveNTocol1.SerialPort : Número del puerto COM a abrir. Ej: 1…..12
ActiveNTocol1.StopBitLength: Bit de parada. Ej: 1 o 2
ActiveNTocol1.BitLength : Longitud de datos. Ej: 7, 8
ActiveNTocol1.TimeOut : Tiempo máximo para realizar una operación. Ej: 400 ms.
ActiveNTocol1.Parity : Paridad, que puede ser None, Odd, Even. Ej: n, o, e
En este ejemplo se muestra como abrir el Puerto COM1. Se asignó el nombre miPLC al Componente ActiveNTocol1. Lo mismo es aplicable al componente ActiveMbus.ocx.
Private Sub Form_Load()
‘ Especifico las propiedades del puerto
miPLC.SerialPort = 1 ‘Número de puerto a abrir
miPLC.BaudRate = 9600
miPLC.BitDataLength = 8
miPLC.StopBit = 1
miPLC.Parity = «o»
miPLC.OpenPort
If miPLC.Status <> 0 Then
MsgBox miPLC.StatusText, vbApplicationModal, «ActiveNTocol»
End If
End Sub
Cerrar el puerto:
Comando: ActiveNTocol1.ClosePort
Descripción: Cierra y libera el puerto que estaba dedicado a la comunicación con el PLC.
Private Sub Form_Terminate()
‘Cierro el puerto al cerrar el formulario
miPLC.ClosePort
End Sub
Verificar si el puerto está disponible:
Comando: ActiveNTocol1.IsValidPort(1)
Descripción: Esta función realiza una consulta sobre el hardware de su equipo para comprobar si el puerto existe y está disponible. En el ejemplo anterior se está consultando por el puerto COM1.
Dim PortEnabled As Boolean
PortEnabled = miPLC.IsValidPort(1) ‘El valor de PortEnabled será True o False