Tarjeta ENCONOR - Programación en Visual Basic |
 |
La programación de este caso se estructura en los siguientes pasos.
Se crea un nuevo proyecto EXE Estándar.
Agregar un Modulo Existente, éste será un modulo para la programación en Visual Basic que nos proporciona Enconor. El modulo se denomina “Enconor”.
Además se agregará un modulo nuevo, en el cuál se creará un procedimiento denominado “Motor” que llamará a la función “enviar” del modulo Enconor. En este módulo se agregaran tres variables denominadas “motor1”, “motor2” y “motor3” que serán las que guardaran los valores de las salidas digitales para utilizarlas sobre los tres motores que se utilizan. El motor1 corresponde al giro horizontal de la grúa, el motor2 corresponde al motor que recoge la cuerda de la grúa, y el motor3 corresponde al desplazamiento horizontal de la barra.
Public Sub Motor(led)
Enviar (led)
End Sub
Hay que agregar un objeto del tipo “Microsoft Comm Control 6.0”, dentro del formulario donde trabajaremos. Si en la barra de herramientas no existe un objeto del tipo MSComm, identificado por un icono de un teléfono, deberá añadirlo a la barra de herramientas del siguiente modo:
1.- Seleccionar el menú “Proyecto”.
2.- Elegir la opción “Componentes”.
3.- Buscar el componente del tipo “Microsoft Comm Control 6.0”.
4.- Aceptar.
Suponiendo que utilizaremos el puerto serie COM 1, se actuará de la siguiente manera: (para cualquier otro puerto, los valores deberán adecuarse con el puerto elegido).
Todas las órdenes referidas a la comunicación con el puerto, tienen el siguiente formato:
Nombre_Formulario.Nombre_Objeto_MSComm.Operación = Valor_Operación
Por ejemplo, nosotros asumiremos lo siguiente, aunque el usuario podrá ponerlo a su gusto:
Nombre_Formulario = FormEnconor
Nombre_Objeto_MSComm = ENCONOR
De esta manera, en el procedimiento Form_Load del formulario FormEnconor, se inicializará el puerto COM1:
Private Sub Form_Load()
‘Se elige el Puerto COM1 mediante la propiedad CommPort
FormEnconor.ENCONOR.CommPort = 1
‘Se establece el modo de comunicación a 9600 baudios, sin paridad, 8 bits de ‘datos y 1 bit de parada mediante la propiedad Settings
FormEnconor.ENCONOR.Settings = "9600,N,8,1"
'Indicar al control que lea todo el búfer al usar ' Input.
FormEnconor.ENCONOR.InputLen = 0
' Abrir el puerto, poniendo a True la propiedad PortOpen
FormEnconor.ENCONOR.PortOpen = True
End Sub
En el formulario creado, en el código de carga del formulario se introducirá el siguiente comando “canal = DetectarPuerto()” para que la aplicación a crear se pueda comunicar con la controladora Enconor.
Dentro del formulario se crearán varios botones para que realicen distintas acciones, como por ejemplo que la grúa gire a la izquierda. Para ello cada botón llamará a la función “Motor” creada en el modulo. A continuación mostramos el código del botón girar izquierda.
Private Sub Command1_Click()
motor1 = 1
Call Motor(motor1)
End Sub
También en el formulario se creará un procedimiento de control, el cual interpreta el dato leído en las entradas digitales para a continuación realizar la acción que corresponda a ese dato, activando las salidas digitales adecuadas. Por ejemplo, si el dato leído en las entradas digitales indica que la grúa ha llegado al tope izquierdo, entonces se activarán las salidas digitales adecuadas para que la grúa gire en el sentido contrario.
El procedimiento de control incluye un Timer para que vaya leyendo el valor de las entradas digitales continuamente. A continuación mostramos parte del procedimiento.
Private Sub Timer1_Timer()
x = Recibir()
Dato = ValorEntradas
Select Case Dato
Case 1
motor1 = 1'La grúa gira a la izquierda
Call Motor(motor1)
.
.
End Sub
Una vez terminado el proyecto, éste se guarda y pulsa F5 o el botón Iniciar para ejecutar la aplicación.
Una vez comprobada que la aplicación funciona, se creará un archivo ejecutable del proyecto creado.
Puede descargarse desde este enlace que viene a continuación los diferentes archivos que forman todo el proyecto.
|