MyOpenLab | SourceForge.net

Aplicaciones de simulación y control con la tarjeta
K8055 de Velleman y MyOpenlab
José Manuel Ruiz Gutiérrez
[email protected]
1
1. Descripción de la tarjeta K8055 de Velleman.
Esta tarjeta se conecta al PC mediante un puerto USB y puede ser gobernada por medio
de MyOpenlab y otros programas.
Su arquitectura es la que se presenta en la figura 1.
Figura 1
Observamos que la tarjeta nos ofrece:
2 Entradas analógicas (0 a 5v)
2 salidas Analógicas (de 0 a 5 v)
5 Entradas Digitales.
8 Salidas Digitales..
MyOpenlab tiene dos componentes en su librería de Panel de Circuito
->
->
que permiten la conexión (dialogo) con la tarjeta a través de dos librerías que se deben
copiar en el directorio Windows/system32 denominadas k8055d.dll y TWUsb.dll que
son las encargadas de gestionar el protocolo de comunicación y la interacción con la
tarjeta.
2
Esta tarjeta debemos decir que no es programable lo cual significa que para que
funcione debe estar permanentemente conectada al puerto USB. El control lo realiza
siempre el PC, es decir la aplicación MyOpenlab que tengamos en ejecución.
Versión 1.0 del componente K8055
Este componente de la librería tiene la estructura que se muestra en la figura 2.
Realmente si nos fijamos es la misma que acabamos de describir (entradas y salidas
analógicas y digitales).
Figura 2
Obsérvese que las salidas aparecen en la parte izquierda y las entradas en la derecha.
Versión 1.1 de la Interface K8055.
Esta versión de reciente creación incorpora el gobierno de dos contadores internos que
posee la tarjeta K8055 y que tienen sus salidas etiquetadas con “Counter1” y
“counter2” entregando sus valores en formato numérico de tipo entero (int). Se pueden
observar del mismo modo las dos entradas de reset de ambos contadores “Counter 1
Reset (bol)” y “Counter 2 Reset (bol)” que se encargan de poner a cero ambos
contadores. Figura 3
Otra variación de esta nueva versión es que las entradas y salidas analógicas se han
pasado a formato numérico de tipo entero (int). No olvidemos que los valores de las
entradas analógicas de la tarjeta A1 y A2 se dan entre 0 y 5v y el dato que esta entrega a
través del driver de comunicación con el PC se encuentra entre 0 y 255 y las salidas de
la tarjeta oscilan entre 0 y 5 v.
3
Figura 3
Con esta nueva versión de driver de la tarjeta K8055 también tenemos la posibilidad de
configurar el número de tarjeta (se pueden conectar hasta 4 tarjetas al PC
simultáneamente) mediante las casillas que aparecen en las propiedades del elemento
SK5 y SK6 que se corresponden con las posiciones del jumpers que hay en la tarjeta
para configurarla.
En la siguiente figura 4 vemos una imagen real de la tarjeta y los puntos en donde se
ubican las Entradas y salidas
4
Figura 4
Para realizar aplicaciones de control con esta tarjeta es muy sencillo dado que las
entradas y salidas poseen regletas de conexionado que nos permiten colocar sensores,
pulsadores, y cargas en las salidas. Las cargas de las salidas necesariamente deben se
acopladas haciendo uso de una interface de potencia (driver) que ya incorpora la tarjeta
con capacidad de suministrar la corriente de carga de lo que seria un relé o u otra carga
Conexionado de Entradas y Salidas a la tarjeta Velleman.
Para realizar las aplicaciones prácticas con la tarjeta no es preciso conectarle ningún
elemento, dado que las entradas y salidas digitales se pueden simular con los pulsadores
que trae la tarjeta y observando los 8 diodos led que señalizan el estado de las salidas..
En cuanto a las entradas analógicas se pueden simular simplemente moviendo los
potenciómetros que lleva la tarjeta y las salidas analógicas se señalizan mediante el
encendido de los dos diodos led que se conectan a ellas o simplemente poniendo un
polímetro en su salidas.
Entradas digitales:
Para conectar entradas digitales se puede hacer directamente conectando los terminales
de los elementos de entrada (pulsador, interruptor, final de carrera) siempre libres de
potencial eléctrico. En la Figura 5 vemos como hacerlo entre el Terminal GND (0 v.) y
cualquiera de los terminales rotulados como I1, I2, I3, I4 o I5.
5
Figura 5
Salidas digitales:
En este caso las salidas que entrega al placa en la regleta correspondiente O1 a O8 se
deben conectar a través de un circuito driver que incorpora la tarjeta (ULN2003) que es
capaz de suministrar la energía suficiente para excitar un relé que se podrá alimentar a
una tensión entre 5 y 30 v. Las cargas a conectar serán gobernadas por los contactos del
relé (motores, lámparas, electroimanes, etc.), En la figura 5 vemos un esquema
ilustrativo de las formas de conexión.
El conexionado de la fuente externa que alimente los reles se realizará de tal manera que
el “-“ (GND) de la fuente externa Vcc se conecte al la regleta en el punto etiquetado
con GND y el “+” positivo de la fuente externa Vcc se deberá conectar al punto
etiquetado con CLAMP. En todo caso es muy importante ver las características y
recomendaciones que el fabricante del K8055 hace en sus documentación técnica.
Entradas Analógicas
Para suministrar señales analógicas externas a la tarjeta se deberá hacer a través del
correspondiente conector al que se pueden entregar hasta dos señales distintas A1 y A2
Esas señales deberán estar comprendidas entre 0 y 5 voltios.
Para conseguir una señal en tensión basta con realizar un división de tensión como se
muestra en la figura 6. La alimentación del divisor de tensión se puede hacer tomando
tensión directamente de la tarjeta aunque no es recomendable. En los circuitos puestos
vemos como se puede medir luz, temperatura o simplemente simular con un
potenciómetro la señal. No se debe olvidar quitar los puentes marcados en la figura para
poder realizar estos montajes con señales externas.
6
Figura 6
Salidas Analógicas:
Para este tipo de salidas bastará poner un polímetro y medir la señal. En el caso de que
tengamos algún elemento externo que se pueda alimenta con una señal analógica
variable entre 0 y 5 v. podemos hacerlo, teniendo siempre presente que la cargabilidad
en corriente de las salidas analógicas debe ser muy baja con el fin de preservar los
componente de la tarjeta.
7
2. EJERCICIOS DE APLICACIÓN
1. Test de la tarjeta con el driver K8055 V1.0
En el siguiente ejemplo se ha construido un modelo básico para comprobar el
funcionamiento de la tarjeta K8055. Es posible visualizar las entradas analógicas y
digitales y también gobernar las salidas analógicas y digitales.
Se ha puesto una imagen de fondo en el panel frontal para que a la hora de realizar la
ejecución del test veamos los elementos (diodos led, interruptores, etc..) de forma
intuitiva. Para la ver las señales de salida de la tarjeta se ha colocado un led con color
variable en función del valor de la entrada (señales DAC1 y DAC2). Las entradas
analógicas de la tarjeta se han conectado a dos medidores de aguja (señales A1 y A2)
Panel de “Circuito”.
8
Vista del “Panel Frontal”.
9
2. Test de la tarjeta con el driver K8055 V1.1
En este segundo ejemplo se trata de realizar un montaje en el que se puede testear el
funcionamiento de la tarjeta K8055 pero esta vez gobernada con el nuevo driver K8055
Ver 1.1.
Vista del “Panel Frontal”.
10
3. Control de la calefacción.
Con este ejemplo se pretende controlar el encendido de la calefacción de una casa
teniendo en cuenta la temperatura a la que queremos que este la casa (temperatura de
consigna) y el valor de la temperatura ambiente.
Las variables que debemos considerar son:
tconsigna
Temperatura a la que deseamos que este la casa (valor de
consigna). Tipo double.
tambiente
Valor de la temperatura ambiente medido mediante una sonda de
temperatura.
calefactor
Señal que activa la calefacción (tipo booleano)
Montaje:
Nota:
Es importante que la variación de la medida del sensor de temperatura oscile
entre 0 y 100 dado que asé esta establecido en el objeto termómetro que
tomamos de la librería de usuario
. Para esto se puede realizar la calibración
mediante los potenciómetros de ajuste de cada canal situados en la tarjeta
K8055.
Se ha colocado también en el panel de visualización una imagen de un radiador
para darle mayor realismo al sistema.
11
Programa:
12
4. Generador de impulsos.
Se trata de realizar un montaje que permita generar un numero de impulso determinado
que seleccionaremos desde la pantalla del ordenador de tal manera que cuando se de la
orden de generar estos impulsos se generen en una de las salidas digitales de la tarjeta
que a su vez gobernará un relé, en este caso la salida 8. El tiempo de duración del
encendido y apagado será de 1 segundo.
Las señales a definir serán:
numimpul
salida
Montaje
Numero de impulso a generar (tipo double)
Salida a través de la cual se gobernará el relé RL1 (tipo booleana)
Solución:
13
5. Control de una prensa hidráulica
Disponemos de una prensa hidráulica que se acciona mediante un pedal de tal manera
que cuando lo accionamos baja el embolo de la prensa y permanece bajado durante un
tiempo de 0,8 seg. Al cabo del cual sube el cilindro y se vuelve a su posición de reposo
para quedar en situación de volver a realizar otra operación de prensado.
La prensa dispone de un sensor en la mesa de tal manera que si el operario tiene la mano
sobre esta se interrumpe la barrera del sensor y esta señal impide que baje el cilindro. Al
activarse el sensor se encenderá una lámpara roja de alarma.
El motor se gobierna mediante dos señales “bajamotor” y “subemotor”
Señales a tener en cuenta:
bajamotor: Acciona el motor para que baje el
cilindro (booleana) RLB (Salida Out 1)
subemotor: Acciona el motor para que suba el
cilindro (booleana)RLS (Salida Out 2)
pedal: Orden de actuación al pulsar el pedal
(booleana) (Entrada Inp 5)
sensor : Sensor de seguridad de la barrera
fotoeléctrica (booleana) (Entrada Inp 4)
alarma: Señalización de alarma para el caso de
que el sensor este activado (booleana) (Salida
Out 3)
Funcionamiento:
•
Cuando se active el pedal la prensa (pedal=true) deberá bajar e cabezal
(bajamotor=true) siempre y cuando la señal que llegue del sensor de la mesa sea
sensor=false, en caso contrario no bajara la prensa. Se dispondrá de un indicador
de la señal del sensor que nos pondrá en aviso de que hay una alarma
(alarma=true).
•
La prensa una vez que llega abajo permanecerá allí 1 seg. Para después retornar
(subemotor=true y bajamotor=false). Una vez arriba permanecerá la señal activa
1 seg. y de nuevo el sistema vuelve a reposo.
•
Se dispondrá un contador de piezas que se activara cada vez que subemotor=true
(pieza terminada) y también se dispondrá de un pulsador de puesta a cero.
14
Circuito
Programa
15
Panel frontal
16
6. Control de iluminación y de temperatura de una habitación
Se trata de controlar la iluminación y la temperatura de una habitación utilizando dos
sensores uno de temperatura y uno de iluminación, y a la salida se gobiernan dos relés
que activan un calefactor (RC) y un ventilador (RV) y también una lámpara. En la
figura se ve el esquema.
Las señales con las que se va realizar el montaje son:
stemp
sluz
calefactor
ventilador
lampara1
lampara2
lampara3
sonda de temperatura (double) canal A1
Sonda de luz (double) canal A2
Elemento calefactor (boolean) Out 1
Elemento ventilador (boolean) Out 2
Elemento lámpara (boolean) Out 8
Elemento lámpara(boolean) Out 7
Elemento lámpara (boolean) Out 6
El funcionamiento se deberá ajustar a las siguientes prescripciones:
•
Las lámparas se encenderán cuando la cantidad de luz sea:
lampara1
lampara2
lampara3
sluz < 100
sluz < 150
sluz < 180
•
El calefactor se activará cuando la medida de la temperatura sea menor que el
equivalente al valor medido por la sonda (100)
•
El ventilador se activara cuando la medida de la temperatura sea menor que el
equivalente al valor medido por la sonda (180)
17
18
7. Captura de datos medios por un sensor: Ejemplo1
Con esta practica se pretende demostrar la capacidad que tiene MyOpenLab de
implementar un sistema de captura de datos procedentes de una variable y su
almacenamiento en un fichero para posteriormente poder ser tratados en una hoja de
calculo como EXCEL o simplemente representados gráficamente.
Para este ejemplo vamos a utilizar el canal A1 de entrada de datos de la tarjeta
Velleman. A este canal vamos a conectar un sensor de iluminación y los valores leídos
los vamos a almacenar en una tabla que después almacenaremos en un fichero y
podremos leer cuando lo deseemos.
La captura de los datos la queremos hacer de modo automático con una cadencia de 2
segundos y el numero de datos a guardar queremos que sea de 50. Con estos parámetros
configuraremos el correspondiente elemento de librería de usuario.
->
Para poder ver el contenido de fichero s de datos que ya están grabados se ha recurrido
al bloque de librería de lectura de ficheros.
->
Este montajes es muy útil para realizar experimentos de laboratorio y guardar los
datasen ficheros. Se pueden guardar los dos canales de entrada de la tarjeta A1 y A2 y el
número máximo de muestras es de 100.
19
20
8. Captura de datos medios por un sensor: Ejemplo2
En este segundo ejemplo vamos a realizar una captura de datos de los canales A! y A2
de la tarjeta Velleman pero esta vez grabaremos los datos acompañando cada muestra
con la fecha y la hora en la que se ha tomado.
En esta aplicación las muestras se van a tomar cuando se active uno de los canales
digitales d entrada de la tarjeta Velleman (entrada I3).
Para esta aplicación vamos a hacer uso del bloque de función de Librerías de Usuario
->
Es importante que antes de lanzar el programa se haya creado un fichero (ejemplo
datos.txt) y guardado vacío con el fin de que cuando arranquemos el programa lo
encuentre para abrirlo.
21
22
9. Sistema de alarmas en una casa
Con este montaje se pretende realizar el control de las alarmas de una casa. Se
establecen tres tipos de alarmas: Intrusión, Fuego (humo) e Inundación.
Partimos del plano de la casa sobre el que estableceremos los indicadores de los
sensores (Leds) así como los iconos de cada uno de los tipos de sensores con el fin de
identificarlos.
Asignación de entradas y salidas:
Entradas de tipo booleano:
Sensor de intrusión en ventana
Sensor de intrusión en puerta
Sensor de humos en cocina
Sensor de inundación en cocina
Sensor de inundación en baño
Inp 1
Inp 2
Inp 3
Inp 4
Inp 5
Salida de tipo booleano.
Salida de alarma
Out 1
Funcionamiento:
Deseamos que ciando cualquiera de los sensores envíe una señal a través de la interface
K8055 (entradas 1 a 5) se active de forma intermitente la salida de alarma. A la vez que
se activa la alarma queremos que se emita un sonido en el ordenador de tipo sirena
(fichero tipo wav) de modo también intermitente, para ello usamos el componente de la
librería
. También podemos colocar una imagen de un altavoz mediante
un componente de tipo
.
Circuito de conexionado con K8055.
23
Panel frontal en modo simulación.
Programa
24