Crea una cámara digital de una Kodak Brownie de los años 50 con una raspberry Pi

| |

COMPARTE EL ARTÍCULO!!!

La económica Kodak Brownie fue la primera cámara que llevó la fotografía a las masas. La simplicidad de su diseño significaba que cualquiera podía descubrir cómo usarlo con poca dificultad. Debido a que esencialmente no tiene controles que aprender (sólo hay un botón del obturador, un visor y un enrollador de película), es incluso fácil de usar en comparación con las cámaras de hoy en día.

Millones de Kodak Brownies se fabricaron a lo largo de sus 60 años de vida útil a partir de 1900, y su calidad de construcción significa que muchos de ellos sobreviven en buenas condiciones de funcionamiento. Un Kodak Brownie también es una buena opción para las modificaciones personalizadas: está disponible fácilmente en eBay o en las ventas de etiquetas, es fácil de piratear y es lo suficientemente barato como para que no importe si las cosas salen mal.

Mi plan original era construir una variante de la cámara digital estenopeica que había hecho anteriormente con un raspberry Pi y una webcam. Tenía un Pi Zero de raspberry extra que necesitaba un propósito y un Kodak Brownie Hawkeye, la variante de los años 50 con un estuche hecho de baquelita en lugar de madera o cartón, que había comprado por menos de £5 en una venta local de etiquetas. La única pieza clave que faltaba era una webcam.

[Entra en nuestro sorteo de la semana de Frambuesa Pi para tener una oportunidad en este kit de juego de arcade.]

Como había pagado menos de 5 libras esterlinas por la raspberry Pi Zero y la Kodak Brownie, lo fijé como mi límite superior de precio para una webcam. Buscando en los listados de eBay, encontré un número de vendedores que ofrecían una variedad de cámaras de 50 megapíxeles a este precio. Estas especificaciones técnicas eran falsas -nunca habría un sensor de 50MP que se vendiera por ese precio- pero valía la pena una patada para descubrir exactamente lo que la cámara ofrecía. El que compré sólo proporcionaba 640×480, un mero 0.3MP con video crudo solamente, sin MJPEG, limitando así también la velocidad de fotogramas. En otras palabras, bastante horrible, pero sólo un poco más horrible de lo esperado. La ventaja era que era fácil desmontar la carcasa, que mostraba una tarjeta de circuito muy compacta que sería del tamaño ideal para incrustar.

brownie1_webcam.jpg

La webcam «50MP» de eBay, que resultó ser de 0,3 megapíxeles, antes de quitar la carcasa.

Más sobre el Pi de raspberry

  • ¿Qué es Frambuesa Pi?
  • Introducción a Frambuesa Pi
  • Introducción a la hoja de trucos de Frambuesa Pi
  • Lo último en raspberrys Pi
  • Envíenos sus proyectos y tutoriales de Frambuesa Pi

Al probar la cámara web con una placa improvisada, quedó claro que el sensor tenía un rendimiento inaceptablemente pobre en condiciones de poca luz. Aunque podría servir como una cámara estenopeica, sólo se podría utilizar en exteriores en condiciones de luminosidad. Quería construir una cámara que fuera más versátil, así que cambié mi plan para construir una cámara digital «normal» en lugar de una cámara digital estenopeica.

Con las piezas clave en la mano, comencé el diseño y el montaje. Mi idea inicial era mantener la lente original de la Brownie en su lugar y colocar el sensor de la webcam detrás de ella. Para lograr un enfoque nítido, el sensor tendría que estar sentado en la misma posición, en relación con la lente, en la que se encuentra la película. Sin embargo, los negativos de película de Brownie eran de 60x60mm cada uno, mientras que el sensor de la webcam es de menos de 5x5mm. Las pruebas confirmaron que la cámara web tendría un campo de visión increíblemente estrecho, haciendo casi imposible componer tomas con el espejo del visor.

La alternativa era desmontar el Brownie y quitar su lente de plástico. Entonces la tarjeta de circuito de la webcam podría ser colocada de modo que su lente esté justo detrás del obturador. La placa de circuito es sólo unos pocos milímetros más grande para encajar en la posición correcta, así que usé una herramienta Dremel para tallar una ranura dentro de la caja para que la placa de circuito pudiera deslizarse en su lugar.

brownie2_interior.jpg

El interior de la Kodak Brownie muestra la placa de circuito impreso inmediatamente detrás de la lente. El circuito sobresale a través de una ranura cortada en la pared y se mantiene en su lugar con masilla azul.

Esto le dio a la webcam un campo de visión similar al de la Brownie original. De hecho, el campo de visión era lo suficientemente amplio como para cubrir toda la apertura del obturador, por lo que las imágenes resultantes tenían una viñeta circular.

brownie3_kew-bridge-steam-museum.jpg

Imagen fija capturada por la cámara web desde detrás del objetivo Kodak Brownie. El campo de visión del sensor se extiende más allá del tamaño máximo de la apertura del obturador.

La segunda tarea fue decidir cómo posicionar al Pi Zero de Frambuesa en el caso. Por suerte, el ancho del Pi Zero es exactamente el mismo que la longitud de la bobina de película 620 utilizada por el Brownie de Kodak, por lo que los soportes de película de la cámara podrían agarrar la placa de circuito Pi Zero.

Al igual que mi anterior cámara web estenopeica, este proyecto utiliza dos LEDs como indicadores de estado: uno se ilumina cuando la cámara web está encendida, y el otro se ilumina cuando la cámara web está capturando una imagen. Taladré dos pequeños agujeros en la parte superior de la caja de Brownie junto al botón del obturador; los LEDs atraviesan esos agujeros y un poco de pegamento instantáneo los mantiene en la posición correcta.

brownie4_interior-con-raspberry.jpg

Dentro del maletín Brownie que muestra la tarjeta Raspberry Pi Zero, el cable de alimentación USB y los indicadores de estado LED.

Uno de mis principales objetivos de diseño era que el botón del obturador de Kodak Brownie activara la captura de imágenes en la cámara web. Lo ideal sería que una sola pulsación del botón del obturador capturara una sola imagen. Para lograr esto, necesitaba crear una interfaz entre el botón mecánico del obturador y los pines GPIO de Frambuesa Pi. Después de pensar en este delicado problema por un tiempo, concebí una solución que incluía un par de alambres desnudos y algo de pintura conductora. Un cable se conecta a un pin GPIO programable configurado como entrada en modo pull-up. El segundo cable se conecta a una clavija de tierra GPIO. Para implementar la solución, taladré un orificio a través de la caja, inmediatamente debajo del botón obturador, a través del cual pasan los cables. Quité el aislamiento de los cables y los pegué en posición debajo del botón del obturador. Finalmente, apliqué una mancha de pintura conductora en la parte inferior del botón del obturador. Cuando se presiona el botón del obturador, la pintura conductora corta los dos cables y tira de la clavija GPIO a tierra. Este cambio es detectado por el Pi Zero y activa el obturador.

brownie5_shutter.jpg

El botón del obturador de la Kodak Brownie con una mancha de pintura conductora que provoca un cortocircuito en los cables para activar la captura de la cámara web.

El mecanismo de obturación Brownie está diseñado para películas con una velocidad de obturación fija. No era práctico sincronizar la captura de la imagen con la fracción precisa de segundo que el obturador estaba abierto. Afortunadamente, el Brownie tiene un modo de exposición prolongada, en el que el obturador permanece abierto mientras se pulsa el botón del obturador. Normalmente este modo de exposición prolongada se activa levantando un segundo botón en el Brownie, pero esto es un poco tedioso. Con un poco de cinta eléctrica aplicada al mecanismo del obturador, lo enganché permanentemente en el modo de exposición prolongada.

brownie6_long-exposure-shutter.jpg

El mecanismo de obturador Brownie con una mancha de cinta eléctrica que lo fija permanentemente en el modo de exposición prolongada.

La prueba del mecanismo de obturación reveló un pequeño problema: la cámara web tarda uno o dos segundos en medir y ajustar automáticamente la exposición para adaptarse a las condiciones de luz. Como resultado, si una imagen se capturara inmediatamente después de pulsar el botón del obturador, a menudo estaría subexpuesta. Esto provocó otro pequeño cambio en el diseño. En lugar de capturar una sola imagen inmediatamente mientras se presiona el obturador, programé el software para que esperara un segundo después de presionar el obturador y luego capturara imágenes continuamente, una por segundo, hasta que se suelte el obturador. En otras palabras, actúa como un dispositivo de captura de lapso de tiempo.

La única tarea que quedaba era la energía. El Pi Zero y la combinación de cámara web requieren muy poca energía, como máximo 200 miliamperios, y una unidad de alimentación de iones de litio USB proporciona una fuente de alimentación excelente y duradera. El problema es que el tamaño físico no es un factor muy importante para la mayoría de las mochilas que se venden hoy en día, y no he encontrado una lo suficientemente pequeña como para caber dentro del caso Brownie: necesitaría menos de 6 cm para tener la oportunidad de encajar una vez que el cable USB esté enchufado, y 5 cm sería aún mejor. Además, si la batería estuviera dentro de la caja, necesitaría un interruptor de alimentación físico entre el Pi Zero y la batería, de lo contrario tendría que abrir la cámara para encenderla/apagarla cada vez. Mi solución simple era taladrar un agujero en la caja para el cable USB y dejar la batería en el exterior.

brownie7_completed-camera.jpg

Acabado Kodak Brownie cámara digital con un cable a la batería externa.

Una vez finalizada la construcción del hardware, me centré en el software para controlarlo. En lugar de empezar de cero, amplié el código que escribí para la webcam de agujero de alfiler Arcturus. Como mi webcam barata no proporciona captura MJPEG, he sacado libjpeg, una librería C para la lectura/escritura de imágenes JPEG, para codificar los fotogramas sin procesar en archivos de imágenes fijas JPEG. La captura de imágenes en formato crudo significa que el dispositivo USB debe transferir grandes cantidades de datos. Aunque esto no era un problema en el portátil que usé para el desarrollo, el Frambuesa Pi continuamente se caía o los cuadros incompletos de la webcam.

Después de incontables horas de depuración, descubrí que el problema estaba en el controlador para el controlador USB en la línea principal de Linux usado por Pignus (la bifurcación Fedora para las tarjetas ARM6 de Raspberry Pi). ElRaspbiankernel, en comparación, tiene un controlador fuera de árbol para el controlador USB, que resultó funcionar bien. El otro cambio de software que hice fue el que mencioné anteriormente para capturar continuamente imágenes fijas.

Aquí está el primer video que tomé con mi cámara digital de lapso de tiempo Kodak Brownie, hecha a medida, de una máquina de vapor que funcionaba en Kew Bridge en Londres.

Esto se publicó originalmente en el blog f/138 del ingeniero de software de Red Hat Daniel Berrangé y se reimprime con permiso.

COMPARTE EL ARTÍCULO!!!

Previous

Dentro de la serie de videos «Fellowship of the Things» de SparkFun

Cómo enviar hojas de cálculo por correo electrónico automáticamente en un calendario periódico

Next

Deja un comentario

shares