En el ciclo formativo de grado superior “Sistemas de regulación y control
automáticos”
En este curso, hemos planteado un desarrollo progresivo
sobre la tarjeta de comunicación por puerto paralelo desarrollada en el
proyecto, utilizando como objetivo el manejo de la “mesa de coordenadas”
construida como primer prototipo de plotter, también
dentro del proyecto. Esta maqueta didáctica ha sido construida con material
genérico de bajo coste: tableros de aglomerado, escuadras metálicas de
fijación, guías de cajones, varilla roscada M6 y un par de motores paso a paso
unipolares de 7.5 V. Se trata de dos ejes de avance lineal, siendo la posición
de la mesa superior el resultado del movimiento de ambos. Los motores
utilizados son de 48 pasos por vuelta, y la transmisión a la varilla roscada es
directa, con lo que, al ser el paso de esta de
1 mm ,
la precisión de avance teórica es de 1/48 mm.
La tarjeta CRR se ha utilizado con los alumnos en modo
local. Dispone de doce salidas, correspondientes al registro de datos y al de
control del puerto, y de cinco entradas, que corresponden al registro de estado
del mismo.
Como los programas están preparados para funcionar en
Windows XP, se ha usado la biblioteca de enlace dinámico io.dll, de libre
difusión, para las funciones de E/S del puerto paralelo. El lenguaje de
programación, cuyo manejo es el principal objetivo de estas actividades, es
Visual C++.
1ª propuesta de actividad:
Programa pap1. Mover un solo motor paso a paso, con botones
de avance, retroceso y parada. Se indica el período de paso en una EditBox, lo que cambia la velocidad del motor.
Conceptos y capacidades:
Definición de controles de botón y texto estático.
Variables miembro de la clase de diálogo.
Funciones miembro relacionadas con eventos.
Argumentos de función.
Condiciones combinadas de byte.
Actualización de controles de texto.
Manejo de DLL externa. Inclusión y funciones.
Dirección del puerto paralelo. Manejo con las funciones de
la DLL.
Definición de un Timer de Windows.
El recurso AboutBox: Modificación.
Foto del conjunto utilizado en las actividades
2ª propuesta de actividad:
Programa pap2. Control mediante botones de un motor, con
posible variación de velocidad, e indicación de la posición actual del mismo en
número de pasos desde el origen del movimiento.
Conceptos y capacidades:
Reutilización de código.
Condiciones numéricas.
Controles Static con variable.
3ª propuesta de actividad:
Programa pap3. Un control deslizante con el mismo número de
posiciones que el máximo de pasos del motor determinará la posición de éste.
Existirán dos indicadores de texto estático, una para la posición del control y
otro para la posición del motor. Podrá pararse aunque aún no haya llegado a la
posición indicada y modificar la velocidad. El motor parará cuando llegue a la
posición deseada.
Conceptos y capacidades:
Inicialización de un control deslizante. División y aspecto.
Captura y representación de la posición del control
deslizante.
Condiciones en función de la posición del control.
4ª propuesta de actividad:
Programa Mcoord1. Los dos motores paso a paso de la mesa de
coordenadas podrán moverse individualmente, indicándose sus posiciones deseadas
mediante sendos deslizadores. En controles de texto estático, se informará
sobre la posición deseada y sobre la posición actual. Cada motor parará
individualmente cuando llegue a la posición deseada. Podrá cambiarse la
velocidad común de ambos motores y pararse ambos, aunque no hayan llegado a sus
posiciones.
Conceptos y capacidades:
Reutilización de código.
Condiciones numéricas.
Estructuras y arrays.
Desplazamiento y formación de bytes.
5ª propuesta de actividad:
Programa Tarjeta1crr: Programa de prueba de la tarjeta sin
gestión de motores, en modo local. Se indicarán visualmente los registros del
puerto paralelo, separados en entradas y salidas. La actuación sobre uno de los
bits de salidas cambiará su estado, tanto en la ventana como en la tarjeta CRR.
La actuación sobre una entrada de la tarjeta cambiará el estado del bit correspondiente en la ventana.
Se indica la posición del ratón y si el ratón pica fuera de
los controles. También se indican los valores de los bytes resultantes, en valor decimal. En las salidas, se distingue entre el registro
de datos y el de control.
Conceptos y capacidades:
Inicialización de controles de mapa de bits.
Obtención del estado de un mapa de bits.
Numeración automática de identificadores.
Intercambio del mapa de bits a través de evento de ratón.
Intercambio del mapa de bits mediante evento externo por
puerto.
Proceso síncrono de lectura de
puerto.
Localización de la posición del ratón. Cpoint y Crect.
El recurso de icono IDR_MAINFRAME:
Edición de iconos. |