
FluOpti V3.0
iowlabs/FluOpti
Los LEDs que se deben controlar realizan 3 tareas distintas: 1. Excitar la muestra para poder adquirir imágenes de fluorescencia: LEDs azules. 2.

Los LEDs que se deben controlar realizan 3 tareas distintas: 1. Excitar la muestra para poder adquirir imágenes de fluorescencia: LEDs azules. 2.
LEDS is an open-source printed circuit board by iowlabs, from the iowlabs/FluOpti repository on GitHub, published under the MIT licence. It is a 2-layer board with 118 parts on 94 nets, routed with 577 tracks and 5 vias.
Its parts include 115 diodes and 1 connector.
Este proyecto consiste en la realización de un control integrado para la iluminación del proyecto FluOpti. Más información respecto al poyecto se puede encontrar en los siguientes enlaces:
El sistema consiste en un dispositivo que permite observar muestras biológicas, a las cuales se les realizan procesos de activación genética por medio de otpogenética. En la práctica, el dispositivo consiste en una cámara conectada a una raspberry, la que permite observar las muestras, un set de LEDs, los que permiten realizar los procesos optogenéticos, y la respectiva electrónica de control.
Los LEDs que se deben controlar realizan 3 tareas distintas:
El proyecto también considera la necesidad de implementar sensores que permitan calibrar el sistema y monitorear variables determinadas, tales como intensidad o temperatura.
A continuación se enlista un set de requerimientos generales del proyecto:
A continuación se enlista un set de requerimientos específicos del proyecto:
Los LEDs azules empleados para iluminar la muestra corresponden a los Super Bright 5mm Blue:
Actualmente, se está pensando en una placa de LEDs azules con distribución física del tipo circular. Esto implicaría una cantidad de 55 LEDs. En la siguiente imagen se muestra esta topología propuesta:
Los LEDs verdes empleados para la activación de genes corresponden a los Kingbright WP7083ZGD/G:
Los LEDs rojos empleados para la desactivación de genes corresponden a los Deep-Red 5mm LED:
Los LEDs blancos se implementan por medio de una tira LED comercial. Típicamente su operación se caracteriza por:
El control implementado debe corresponder a PWM, con el fin de regular la intensidad lumínica de los LEDs. Se opta por este control debido a su sencilla implementación.
El sistema debe contar con un sistema de distribución de potencia para alimentar todos los sub-módulos, LEDs y raspberry.
El sistema debe contar, además, con la posibilidad de leer sensores que permitan medir y calibrar la intensidad de luz proveniente desde los LEDs. Dado que el control se implementa por medio de una raspberry, es necesario utilizar sensores digitales o incluir en el diseño un ADC que permita realizar la conversión. En este último caso será necesaria la inclusión de una etapa que acondicione las señales provenientes desde los sensores.
El sensor de intensidad lumínica tiene que cumplir:
Una alternativa es el fototransistor TEMT6000.
El sensor de temperatura es un NTC (termistor). Aquí se presenta una alternativa.
El heater es del tipo resistivo y se debe poder alimentar con 9V ó 12V. Se debe implementar un control PWM de corriente utilizando un transistor. Una posible alternativa de heater es el Film Heating Panel.
Consideraciones de operación: El dispositivo debe ser diseñado para funcionar en espacios interiores y dentro de una cápsula cerrada, en la se realiza el análisis de las muestras, por lo que no es necesaria la resistencia al agua o a condiciones de humedad extremas. La placa estará, además, dentro de una caja, por lo que tampoco estará expuesta a polvo u otros contaminantes. Una vez instalado el dispositivo, este permanecerá siempre en el mismo lugar (a menos que se deba extraer por alguna situación en particular), por lo que no es necesario que el diseño considere la exposición a posibles golpes o vibraciones muy significativas.
La única etapa del circuito que puede significar un peligro para el usuario es la alimentación, puesto que esta proviene desde la red eléctrica, por lo cual es prudente que la carcasa del producto cumpla con normas acorde al voltaje y corriente de operación, por ejemplo, IP67. Sin embargo, esta protección será ajena al circuito mismo. Es pertinente, de todas formas, la inclusión de disipadores en algunos integrados, en el caso que operen con altas corrientes. Esto, para evitar fallas durante la operación o incluso que se quemen componentes.
Teniendo presente los requerimientos planteados en la sección anterior se propone una solución basada en el siguiente esquema

El principal criterio de diseño considerado es la modularidad, con el objetivo de poder entregar una solución adaptable y escalable. Los parámetros prácticos de elección de componentes dependen de los requerimientos específicos del sistema. El esquema general consiste en un módulo que genera señales PWM, el cual es controlado por protocolo serial I2C. Este módulo genera 16 señales de PWM permitiendo controlar hasta 16 canales. Estas señales PWM controlan los módulos driver. Estos últimos ajustan la señal PWM a los requerimientos que necesitan los distintos tipos de circuitos de LEDs. Cada driver puede poseer uno o más canales dependiendo de la cantidad de subcircuitos independientes que se deseen controlar por tipo de LED. Del mismo modo, algunas de estas señales de control PWM pueden dejarse a disposición del usuario en caso que necesite controlar una placa con driver ya existente, como es el caso de este proyecto.
El otro bloque importante es el sistema de distribución de poder, el cual se encarga de generar todos los voltajes necesarios para los distintos bloques y etapas del circuito, dependiendo de cada requerimiento. La idea principal es que la placa reciba una única alimentación y que, internamente, genere los distintos voltajes y corrientes, contribuyendo, así, a la adaptabilidad de la solución.
Por último, la placa considera la inclusión de un ADC de 4 canales, controlado por I2C, el cual permite leer hasta 4 sensores analógicos. Es necesario contar con un ADC, ya que la Raspberry Pi no cuenta con ADC. Esto permite otorgar una alta adaptabilidad, ya que es posible conectar distintos tipos de sensores analógicos, dependiendo de la aplicación. Para esto, la placa considera etapas de acondicionamiento de señal, las cuales se deben configurar para el sensor específico.
Las principales características de la solución propuesta son:
Adaptabilidad: La placa total solo se controla por medio de un bus I2C (3 pines), independiente de la cantidad de LEDs y sensores que se deseen utilizar.
Integración: La disposición de canales de control PWM permite integrar tanto las soluciones existentes como soluciones creadas por distintos fabricantes.
Escalabilidad: Gracias a la utilización del protocolo I2C, es posible controlar múltiples de estas placas con una sola Raspberry Pi (o un solo microcontrolador/procesador en general). Si se integran dos placas en serie se puede llegar a disponer de 32 canales de control de LEDs y 8 canales de sensores analógicos.
A continuación, se describen en detalle los módulos a implementar. Es importante mencionar que se utilizó como guía el documento tutorial generado en el marco de este proyecto.
El ADC escogido es el ADC de la empresa Texas Instruments. La empresa adafruit posee un módulo autocontenido para integrar este ADC a la Raspberry Pi, así como una completa documentación y las bibliotecas para utilizarlo.
Las principales características de este ADC se enlistan a continuación
Los sensores que se utilizarán permiten implementar el proceso de medición gracias a la variación de sus propiedades eléctricas. En general, estas variaciones se evidencian mediante un cambio de voltaje. En consecuencia, este es el voltaje que debe ser adquirido por el circuito electrónico. Por ello, en primera instancia, se dispone de un circuito divisor que, al ser conectado con el respectivo sensor, permite obtener el voltaje asociado a la medición. En la siguiente figura se muestra un ejemplo de esta conexión circuital, para el caso de un sensor de temperatura del tipo termistor (NTC):

Para realizar correctamente la adquisición de las señales desde los sensores es necesario contar con una etapa de acondicionamiento de señal. De esta forma, se asegura que los valores de voltaje que entreguen los sensores se encuentren dentro de los límites que permiten las entradas del ADC y de la Raspberry. No solo es deseable que se opere dentro de los límites, sino también aprovechar el rango de lectura al máximo, es decir, que el voltaje mínimo de medición sea igual (o lo más cercano posible) al voltaje mínimo que permiten los pines del ADC. Y, la misma relación con el voltaje máximo de medición.
Dado que aún no existe 100% de certeza sobre los sensores a utilizar, se implementó una circuito genérico de acondicionamiento, el cual se compone de una etapa de amplificación y otra de adición de offset. En la siguiente figura se muestra este circuito:

Los símbolos de switches corresponden, en la práctica, a un solder jumper, el cual conecta la entrada con la salida solo si se unen con soldadura sus terminales. Si se conectan S1, S2 y S3 el circuito queda configurado como un buffer, lo cual, de todas formas, beneficia a la señal adquirida puesto que el buffer disminuye su impedancia. Conectando o no S1, S2 y S3 se pueden obtener distintas configuraciones: solo amplificador, solo adición de offset, o ambas. Además, los valores de las resistencias se pueden ajustar dependiendo de los sensores que se utilicen, de tal forma de fijar correctamente la ganancia y el offset, según sea el caso.
La generación de PWM se realiza por medio de un circuito integrado PCA9685. La empresa adafruit posee un módulo autocontenido para integrar este módulo a la Raspberry Pi, así como una documentación completa y las bibliotecas para utilizarlo.
Principales características:
Para los canales de bajo consumo de corriente, tales como los arreglos de LEDs rojos y verdes, se utilizará el integrado ULN2803. Este integrado implementa un arreglo de 8 transistores tipo darlington, haciendo posible el control de hasta 8 canales en un único integrado.
Principales características:
Para los canales de alto consumo se utilizará un transistor mosfet IRF740. Es necesario contar con un transistor por canal. Y, para casos de alta corriente (superiores a 1A) es necesario considerar la inclusión de disipadores (heatsink) o pads de disipación que permitan una evacuación efectiva del calor.
Principales características:
Como se mencionará más adelante, la alimentación que llegará al circuito electrónico implementado será de 12VDC, por lo que es necesario contar con convertidores de voltaje DC-DC para generar los distintos voltajes de alimentación que se requieren en el circuito. En particular, es necesario generar 5V y 3.3V para alimentar los circuitos analógicos y digitales, y un set de voltajes para alimentar los distintos arreglos de LEDs y el Heater. Se decidió disponer de los siguientes voltajes para este último uso: 9V, 16V, 20V y 24V. A continuación se especifican los convertidores empleados para generar cada uno de los voltajes mencionados.
Dado que el circuito electrónico funcionará con alimentación DC es necesario emplear una fuente DC que se enchufe directamente a la red y que entegue un voltaje de salida continuo. En particular, se decidió emplear una fuente DC conmutada. Sus principales características son:
En la siguiente figura se muestra el diagrama de bloques del esquemático implementado

| Qty | Value | Footprint | References |
|---|---|---|---|
| 115 | LED | LED_THT:LED_D5.0mm_FlatTop | D1, D10, D11, D100, D101, D102, D103, D104, D105, D106, D107, D108, D109, D110, D111, D112 +99 |
| 1 | LOGO | IoWLabsLogos:IoWLabs_logo_25mm | G*** |
| 1 | LOGO | IoWLabsLogos:borrador | G*** |
| 1 | Screw_Terminal_01x02 | IoWLabsConnectors:Tb-2x1-5p-TH-V | J1 |
118 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the iowlabs/FluOpti repository on GitHub, at the commit this page was made from: the board is hardware/LEDS/LEDS.kicad_pcb and its schematic hardware/FluOpti_V3.0/FluOpti_V3.0.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

iowlabs/FluOpti
Los LEDs que se deben controlar realizan 3 tareas distintas: 1. Excitar la muestra para poder adquirir imágenes de fluorescencia: LEDs azules. 2.

iowlabs/FluOpti
Los LEDs que se deben controlar realizan 3 tareas distintas: 1. Excitar la muestra para poder adquirir imágenes de fluorescencia: LEDs azules. 2.


TweetyDaBird/Lotus-58-Classic
A split ergo linear keyboard derived from the Lily58 family

ZeroPhone/ZeroPhone-PCBs
PCB files for ZeroPhone - for gerbers and schematics, go to "Releases" tab!

BerkeleyHCI/PolymorphicBlocks
A Python-based hardware description language for PCBs for higher-level (block-diagram / system-architecture level) PCB design through libraries of directly reusable subcircuit generators.


OPRobots/FujitoraBot
Robotracer - siguelíneas de alto rendimiento; con succión, tracción brushless en sistema tetra y procesador STM32F4

richardeoin/ax
This repository contains hardware and software for the AX5043 and AX5243 radios from AxSemi (now ON Semiconductor). They are probably the same die, but the AX5243 has fewer pins.
