Debido a que a veces no es fácil adquirir cosas en el exterior, y con la experiencia de la placa de adquisición DATAQ DI-1100 que poseo, se me ocurrió tratar de reproducir la versión open source DI-188 (https://www.dataq.com/products/di-188/).
Si les interesa saber mas de la placa DI-1100 que adquirí, en este post vuelco mi experiencia con ésta: https://forodecoheteria.com.ar/t/interfaz-para-adquisicion-de-datos-en-un-banco-de-ensayos/340
Para mi, que no se mucho de programación, las placas de adquisición DATAQ son una opción muy buena, no necesito andar programando, ya viene listo para poner en marcha.
En este caso la DI-188 es open source, por lo que se dispone del código fuente del firmware que alguien que sepa de programación puede modificar a gusto. También para los que sepan de programar aplicaciones pueden hacer un software nuevo, el windaq no es opensource, pero el protocolo que usa para comunicarse esta también descrito.
Código fuente de la placa DI-188: https://github.com/dataq-instruments/Arduino_WinDaq/tree/main
Me puse a diseñar el circuito a partir del esquemático original y lo modifiqué para hacerlo con materiales fácilmente conseguibles (todos los componentes los conseguí en Argentina).
El corazón de la placa, el Arduino SEEDUINO XIAO SAMD21 lo conseguí en tienda IT&T (https://www.mercadolibre.com.ar/seeeduino-xiao-arduino-mcu-itytarg/p/MLA2048924510)
La placa decidí hacerla fácil de reproducir, con componentes de agujero pasante, lo único de montaje superficial son los capacitores de 0,1uF (son mas efectivos que los de agujero pasante) y elegí el tamaño mas grandecito (1206).
Los operacionales usé los LMC6482 porque ya los tenía, pero se puede probar usar otros siempre que sean Rail to Rail.
El offsset se puede ajustar con preset para acomodar el rango a lo que se necesite, por ejemplo, a mi me interesa usar todo el rango para señales positivas (el original esta pensado para señales negativas y positivas +/-10V).
El rango de entrada lo podemos controlar con las resistencias de ganancia de los operacionales, así podemos hacerlo por ejemplo para entrada de 5V (el original es +/-10V), o de 3V, o mas 20V, etc.
Estas resistencias están fijas.
Al armar la placa tenemos que definir que rango de entrada queremos, la placa original tiene un rango de entrada desde -10V a 10V, o sea un rango de 20V lo lleva a unos 3V que son la entrada del ADC del XIAO (a mi me dio de 0,2V a 2,96V), por ejemplo en este caso el factor de ganancia es 0,143, la placa tiene 1M Ohm y 143k Ohm. Si quisiéramos 0 a 5V de entrada sería 2,86V/5V nos queda un factor de 0,572
Entonces la relación de las resistencias, en el caso del canal 1 R6/R3 debe dar ese valor (R4 es igual a R3), las resistencias tienen que ser al 1% o mejor, los valores disponibles son los de la serie E96 de resistencias, luego hay que ver que la tienda de electrónica disponga de esos valores.
Una vez armada la placa, el XIAO se programa desde el Arduino IDE (Hay que agregar la placa a la lista), para el que ya ha programado arduino esto le va a resultar muy fácil. Pueden consultar: https://wiki.seeedstudio.com/Seeeduino-XIAO/, o en el github también lo explica.
Luego de descargar el Windaq, instalarlo e iniciarlo, con el windaq corriendo y en los cuadros donde muestra la señal que ingresa en tiempo real, con las entradas cortocircuitadas, ajustamos el cero. El windaq siempre muestra por defecto el rango -10V a +10V, nuestro cero lo podemos hacer coincidir en el cero por defecto, o lo podemos hacer coincidir con los -10V (o cualquier valor que queramos).
Luego podemos adecuar la indicación de la escala de windaq en la opción “engineering units” acá le podemos decir por ejemplo que -10V son 0kg y +10V son 100kg, o que 2,35V son 25kg y luego escala solo el máximo, guardar estos valores ya que cada vez que iniciamos el soft hay que cargarlos de nuevo (yo no encontré todavía como dejarlos por defecto)
Si tenemos una fuente de tensión de precisión podemos usarla para dejarlo bien calibrado. Si no con los sensores conectados y pesos (o presiones) conocidos lo vamos calibrando.
Les dejo los PDF originales de la placa (igual estan en el sitio de DATAQ)
DI-188 Schematic.pdf (29,3 KB)
di-188-protocol.pdf (484,2 KB)
di-188-usb-daq-manual.pdf (1,8 MB)
di-188-usb-data-acquisition.pdf (2,2 MB)

