ACTIVEX2 LIBRERÍA VARPACKER El uso de las variables de tipo VARIANT es complicado sobre todo cuando se manejan vectores o matrices de datos. DaqBench incorpora una librería del tipo DLL con funciones que permiten el paso de variables tipo C a VARIANT y viceversa. Esta librería se encuentra en el directorio Addlink\Daqbench\Varpacker. En este directorio se encuentran 3 ficheros: varpaker.h, varpacker.lib y varpacker.dll. Para usar la librería debe procederse de la siguiente forma: • Copiar los 3 ficheros al directorio de la aplicación que estemos creando. • En cada fichero de extensión cpp donde queramos usar la librería incluir al principio del fichero y después de los #include existentes, la sentencia #include “varpacker.h” • Incluir la librería varpacker.lib en el proyecto a través del menú Project->Add To Project->Files->varpacker.lib La descripción de las funciones de la librería se encuentran en el manual Addlink\Daqbench\Manual\Varpacker_Ref.pdf CONTROL DAQBENCH DCHART Este control es una representación gráfica de valores instantáneos (Registrador gráfico). Un ejemplo de utilización de este control está en el programa de ejemplo Programas>AddlinkDaqBench->SampleProgramsBrowser->VC++Samples->UI->DChart.Su código fuente se encuentra en el directorio Addlink\DaqBench\Samples\VC\Ui\Dchart. Podemos ejecutar el proyecto haciendo un doble clic sobre el fichero DChar Simple.dsw y estudiar el código de la aplicación. La documentación completa del control se encuentra Addlink\DaqBench\Manual\DAQBenchRef.pdf página 114. en el manual PRÁCTICA 1. 2. 3. 4. 5. 6. 7. 8. Crear una aplicación VC++ tipo diálogo Incorporar al proyecto la librería VarPacker.lib Incluir en el proyecto el control activeX DaqBench DChart Crear un botón Marcha Crear un botón Paro Incorporar al diálogo un control DChart. Crear una variable para el control DChart de tipo Control Crear la función del evento Clic del botón Marcha y en ella crear un Timer de 10ms 9. Crear la función del evento del botón Paro y en ella destruir el Timer 10. Incluir el fichero VarPacker.h en el fichero fuente CxxxDlg.cpp después de las sentencias #include existentes. 11. Crear el evento WM_TIMER en el dialogo. 12. Modificar las propiedades del control DChart dando los valores mínimo del ejeY=-10, máximo del ejeY=+10, número de puntos del ejeX=500 13. En la función OnTimer dar valor contante de 3.5 al gráfico del control DChar. Para dar los valores, usar el método PlotChart del control DChart. El argumento de la función debe ser un VARIANT que contenga un dato de tipo double. Usar la librería varPAcker para obtener el VARIANT. 14. Repetir el apartado anterior, dando valores que construyan una representación triangular que oscile entre -10 y +10. 15. Probar distintas opciones de aspecto del gráfico configurando el control en la pestaña propiedades-Plots y propiedades-Chart 16. Modificar las propiedades del control para que se representen simultáneamente 2 curvas. Usando el método PlotCharts representar 2 curvas constantes, dando el valor 3.5 a la primera curva y 5.6 a la segunda. Los pasos a seguir para realizar esta representación son: • Crear un vector de tipo double y de dimensión 2 • Introducir los valores constantes en los dos elementos del vector • Crear una variable VARIANT que contenga el array. Usar para ello la librería VarPacker. • Llamar al método PlotCharts del control, comprobando primeramente sus argumentos en el prototipo de la función y si hace falta en la documentación del control. 17. Repetir el proceso anterior representando en la primera curva la función triangular anterior y en la segunda una onda cuadrada entre -5 y +5. 18. Probar las opciones de gráficos OVERLAID y STACKED en la opción PlotMode en la pestaña de propiedades-CHART del control