domingo, 16 de febrero de 2014

Cámara de vigilancia IP HD.


Cámara Modelo IPG-63H13(38)PL-S 
Las nuevas cámaras de vigilancia ofrecen alta definición y funcionamiento en red. Los potentes procesadores de imagen hacen compresión hardware con cierta calidad,  por lo que no es imprescindible una LAN gigabit.

Mi intención es ver si este modelo, aparentemente muy sensible para ser un CMOS, puede ser útil tanto para allsky como para autoguiado.

Se trata de tecnología punta 100% china, sensor y procesador.
La placa, sin accesorios ni cables cuesta $50 por internet.

Un extracto mínimo de sus características:

Sensor Aptina AR0130 
CMOS 1/3'' alta sensibilidad.
Color 0.01Lux a F1.2 ,B/W 0.001 Lux a F1.2.
Resolución: 1280H x 960V (1.2Mp)
Pixel: 3.75μm x 3.75μm.
Color Array: Monocromo, RGB Bayer.
ADC 12-bit interno, salida raw paralelo.
Rango dinámico 83.5 dB
SNRmax: 44 dB
QE  50% a 60% en los canales RGB.

Procesador HiSilicon Hi3518C 
Sistema RTOS embebido, dual core 32 DSP, compresión hardware.  
Consumo 270mW
Compresión H.264
Servidor WEB , detección de movimiento, captura JPEG etc.


Montaje de la placa.
La placa viene sola, sin cables ni adaptador. Para hacer una prueba rápida he soldado los cables directamente a los conectores. La distancia entre pines es pequeña y requiere cuidado. Con todo solo hace falta soldar dos cables para la alimentación de 12v y cuatro para la red.
El adaptador a rosca C puede ser más problemático, ya que hay al menos dos distancias entre tornillos, afortunadamente tenía el adecuado, o mejor dicho casi, porque he tenido que rebajar la altura para conseguir el enfoque. 
Montaje del adaptador a rosca C.

Adaptador de 1 '1/4 a rosca C.

Primeras tomas de ejemplo.

Detalle macro, sin filtro IR pero con iluminación LED de muy baja potencia.

Captura de día añadiendo un filtro de corte IR.

Captura nocturna en cielo muy contaminado sin filtro IR. Objetivo C 12mm F1.2. 
Primeras Conclusiones.
La impresión general es muy positiva, sobre todo por la sensibilidad. La cámara se adapta automáticamente a cualquier ambiente para dar la mejor imagen. 
Llama la atención la diferencia de actualización de la imagen en función del movimiento de la escena. Cuando se mueve toda la escena, el vídeo se relentiza, en cambio, cuando solo se mueven algunas partes de la escena apenas hay retrasos.

El software de captura que me mandaron con la cámara es muy potente, aunuque claro está, enfocado a la vigilancia. Puede manejar muchas cámaras simultáneamente, hacer capturas programadas y mucho más. 
Me queda mucho que averiguar, lo más importante que aún no he conseguido reproducir el video capturado salvo con el mismo programa, debido a la compresión H264. Tambén me falta por saber como pedirle una imagen via web.


PRUEBAS CON TELESCOPIO SC 8' + reductor a f6.3
Lo siguiente son capturas sueltas sobre el video, sin ningún  apilado ni tratamiento adicional.
mulo M48, salen estrellas de magnitud 12. También se observan pixeles calientes.



 Así se ve M42 en el vídeo.  Parece que salen las mismas estrellas en BW que en color. 
Este video de M42 es orientativo en pequeño. A pantalla completa no representa el video real porque youtube lo ha comprimido. El original y otro de la Luna con la resolución nativa estan en el grupo de Yahoo ObservatorioRemoto.

La Luna con el SC8' a 6.3. Las atopistas de abajo son pelusas sobre el sensor.


Estas pruebas sobre telescopio confirman la impresión de que la cámara promete.
En la nebulosa, el vídeo está a 5 cuadros por segundo, en la Luna a 20. En ambos casos la exposición es automática con un máximo de 80msg. Aún hay bastantes parámetros que no he tocado porque aún no entiendo.

La sensibilidad parece buena, sensación que se confirma a la vista de la documentación del fabricante. Según las curvas de respuesta, este sensor CMOS sobrepasa el 50% de eficiencia en los canales RGB. En la versión BW su QE max. es del 78% en 550 nm.

El aspecto que veo más crítico es el retraso en la respuesta en función de la cantidad de información.  Me refiero al tiempo entre que movemos el telescopio y vemos el movimiento en el monitor. A máxima resolución, cuando solo hay estrellas sueltas, la respuesta es bastante rápida, quizás medio sg.  En el caso del video lunar, con la turbulencia haciendo crepitar toda la imagen, este retraso llega a los 5sg.  La caputura está realizada con una CPU Atom de hace cuatro años, tengo que ver con otra más rápida por si influye.
Afortunadamente el autoguiado no lo hacemos sobre la Luna, por lo que confío que sea viable.

A la vista de la documentación, hay opciones muy interesantes para su aplicación en el observatorio. Las principales son el bining y la capacidad de explorar fragmentos de imagen. Esto sería ideal para el guiado. Falta saber si están implementadas en el procesador Hi3518C, el encargado de manejar al sensor.





domingo, 9 de febrero de 2014

Camara IP con Raspberry PI.

NOTA: nueva entrada de máximo interes sobre este tema: MotionEyeOS.

Del boom PI se escapan pocos enredas. Servidor no iba a ser menos, esta que muestro la adquirí en la primera tirada, es decir, la compré antes de ser fabricada, tan interesante me pareció, y vaya por delante que no me manejo en Linux.
Debo admitir, como tantos otros, que después de la espera inicial, la PI pasó algún otro mes en el cajón. Y después de trastear un poco para ir aprendiendo algo, volvió al cajón otra temporada, no por falta de ganas, sino de tiempo. Hasta que sacaron la  cámara hace unos meses. Así que está va a ser la primera aplicación practica: actuar como cámara IP, en mi caso para la estación meteorológica EMA.
Normalmente vengo usando cámaras cctv de diferente índole con un adaptador de vídeo ethernet IP9100 que admite cuatro entradas analógicas.

 La Raspberry y la cámara en una misma caja de 125x105x35 queda muy compacta. La salida HDMI es accesible por un lateral, mientras que el conector de vídeo y sonido quedan dentro dado que no se van a usar.

La PI va conectada a una placa, aún en prototipo, que contiene un regulador conmutado para entrada a 12v, el driver RS232 y un relé auxiliar. La cámara está al fondo, sujeta con separadores de plástico y dos tornillos M2.

Gracias a vivir en un piso alto, simplemente colocando las cámaras detrás de la ventana de la terraza puedo  tener unas buenas vistas hacia la sierra norte de Madrid.


 La calidad de imagen para este tipo de aplicación es superior, en el horizonte se ven incluso las torres de control de Barajas y algunos aviones.
 Para subir fotos a la web periódicamente, los particulares podemos tener limites de trafico, por lo que solo se captura el centro de la imagen. Este pequeño trozo de 800x600 con calidad jpg 30%, ocupa 122KB. La cámara puede comprimir aún más, a 60KB sin gran perdida. 


 De noche la imagen también tiene buen aspecto, gracias a que se puede aumentar el tiempo de exposición hasta 2.5sg. Este cambio de modo de exposición no es automático, se consigue mediante un script que tiene en cuenta la altura del Sol. 

Dejo para otro momento hablar del software, del que se está encargando R. Gonzalez. 
Tan solo comentar que la captura periódica se guarda en disco RAM, para no machacar la SD y que la imagen, una vez adquirida, se pide al servidor web incorporado en el magnifico Webiopi.







sábado, 21 de diciembre de 2013

Observatorio Abierto.


Pues no, no me refiero a la puerta del observatorio, ni al software libre ;-) 
Me refiero a la forma de conectar entre sí los diferentes equipos del observatorio.

Muchos elementos del observatorio se comunican por puerto serie: telescopio, estación meteorológica, rueda de filtros, enfocador, .... Si en vez de adaptar esos puertos a usb, como es habitual, los adaptamos a ethernet estaremos haciendo una instalación abierta.
Dispositivos del observatorio conectados en red. 

Ciertamente hay un elemento más difícil de poner en red: la cámara principal. Son pocas y caras las que tienen conexión ethernet. Por eso un día me animé a diseñar el COR, para tener también las cámaras en red. No obstante, en un control remoto, no menos importante que la adquisición, es la seguridad del observatorio, estar seguro de su estado, y para eso es bueno tener alternativas de acceso al resto del sistema.

Las instalaciones abiertas, en red, ofrecen la mayor flexibilidad y fiabilidad.
- El observatorio no depende de un único ordenador , es posible tener una cpu de backup. 
- Los dispositivos en red son accesibles desde diferentes ordenadores sin tener que cambiar un cable. Por ejemplo, podemos añadir una cpu para pruebas. 
- No hay problema de distancia con los cables, o se puede acceder vía wifi.

Una ventaja adicional es poder disponer de los mismos datos en más de una aplicación. Esto también es útil de cara a solucionar problemas o desarrollar programas nuevos,  podemos ver que está saliendo por cada dispositivo sin desconectarlo de su aplicación. Basta hacer un simple telnet para monitorizar que se mueve por ese puerto.
 Mensajes de la estación meteorológica EMA a su aplicación.
Una vez en red, la flexibilidad es total, por ejemplo si estamos probando un programa, o modificandolo, la estación puede estar en el observatorio y el programa que desarrollamos en casa.

Adaptadores RS232 a Ethernet baratos.

Este tipo de adaptadores, también llamados servidores serie, no existen en electrónica de consumo, solo se encuentra en entornos industriales, razón por la cual nunca han sido baratos.
Pero como no podía ser menos, gracias (o por desgracia, según se mire) a China, y al avance de la tecnología, los precios están bajando.  
Ciertamente, aún muy lejos de marcas clásicas como Perle o Digi, hay un fabricante chino que va tomando fuerza en módulos de uno o dos canales: USR TechnologyUn puerto sale por unos 20$ comprando la placa suelta, con caja 40$.
  Adaptador USR-TCP232 de un canal, la placa y en caja. Derecha, adaptador de 2 canales a TTL.

Tengo en pruebas desde hace cuatro meses el modelo USR-TCP232, de un canal,  con una estación EMA. Después de unas dudas iniciales finalmente no achacables al dispositivo, en un funcionamiento ininterrumpido de meses, puedo decir que va sin problemas. 
El módulo de dos canales está pensado para ser montado sobre circuito impreso y no lo he probado.

La comunicación en la red es TCP/IP.  Si los datos van a ser recibidos por una aplicación propia, lo eficaz es comunicarse por sockets, ( ej. los programas TESS y EMA).
Si los datos se quieren en una aplicación que solo acepte puertos series, por ejemplo un planetario, hay que recurrir a un programa que cree puertos serie virtuales, como por ejemplo el VSPM que USR entrega con sus adaptadores, es bueno y fácil de usar. 

VSPM, programa usado por los adaptadores USR para crear puertos series virtuales.


Un adaptador  de cinco puertos: ET232.

Para uno o dos canales los adaptadores anteriores están bien, pero para cuatro o cinco canales es deseable un dispositivo multipuerto para simplificar el cableado. Pero aqui los chinos aún no han entrado y siguen muy caros.
Total, que como ya conocemos los módulos de Rabbit Semiconductor, nos hemos animado a fabricar un adaptador de cinco puertos con el módulo más moderno, el minicore RCM6710.
Primer montaje del adaptador ET232 en caja de aluminio de 125x105x35. 
Los conectores DB9 van directamente en la placa para evitar el cableado.
Casi todo lo hace el RCM6710, solo debemos añadir en la placa algunas cosas: 
- Drivers RS232 para los cinco puertos.
- Regulador de tensión conmutado para optimizar el consumo y aceptar tensiones de entre 7 y   14v con un consumo inferior a 2W.
- Tensión en el pin 9 para alimentar a dispositivos como al TESS.
- Opción de 6 E/S auxiliares y un puerto I2C.

En cuanto al programa del modulo se carga fácilmente por uno de los puertos serie desde el  mismo compilador.
Es posible ver la configuración de los puertos en una pagina web alojada en el dispositivo.

PCB por el lado de los componentes.

Parte inferior de la placa donde va el core RCM6710.

La versión actual del programa esta operativa desde hace dos meses. Funcionan los cinco puertos, por ahora solo con una conexión TCP por puerto.
 La posibilidad de controlar las E/S y el I2C queda para más adelante.

El modulo RCM6710 cuesta 37€ en la tienda online de Digi, el resto del material unos 25€ adicionales. 

Si alguien se anima  a programar este módulo, el entorno de Dinamic C, es relativamente asequible. El compilador es gratis y tiene ejemplos para todo lo imaginable, incluido uno para manejar multiples puertos serie.


TESS: Sensor de Nubes y Calidad de Cielo.

El destino inicial del TESS (Telescope Encoder & Sky Sensor) fué el telescopio de un observatorio remoto sin encoder absoluto ya que nos dá la dirección de apuntado. Por eso, la comunicación nativa es RS232 , la más fiable y que permite cables de hasta 25m. 
TESS-RS232 sobre telescopio SC. 

 TESS modular USB / Bluetooth.
Esta nueva placa, más pequeña, complementa a la anterior en el uso portatil. Reduce su tamaño sacando fuera el adaptador de comunicaciónes y alimentándose a 5v.

Aunque escalable a la versión completa, está más enfocado a:
- Medidas de calidad de cielo.
- Sensor de nubes para astrofotografía (alarma acústica de nubes, o cuando se despeja).

La comunicación es una opción externa a elegir entre los diferentes módulos adaptadores disponibles comercialmente. Si solo  interesa el brillo del cielo por USB, el coste es casi la mitad respecto al modelo completo. 
1- El prototipo de TESS modular junto a la versión RS232.
La salida de la placa es serie de nivel TTL a 3.3v, para conectar el adaptador USB, Bluetooth, o llegado el caso RS232.  La alimentación es a 5v, a diferencia de la placa grande que admite 12v.

Placa final del módulo.
La placa final mide 30x40mm, se pueden montar cualquier combinación de sensores con los tres disponibles según la aplicación. Para una instalación fija no hace falta el acelerómetro, si solo interesa el brillo del cielo,  con el sensor luminoso es suficiente. 
2 - TESS modular con los tres sensores instalados.

TESS-USB.
Una forma sencilla y barata de alojar la placa es usando un manguito de PVC de 40mm y dos tapones. Un trozo de tubo de 40 sirve de soporte para sujetar la pcb.
Si se quiere un acabado perfecto se pueden tornear las piezas. El PVC mecanizado queda en un prudente gris aviación que no requiere pintado.

  

3 - Montaje sobre dos tapónes y un manguito de PVC de 40mm mecanizados.
 La conexión es con adaptador TTL-USB, donde el convertidor a USB va en el mismo conector.

El adaptador TTL-USB puede ir en una plaquita o en el mismo cable. Según el chip que incorporen, pueden costar 3€ sin son clónicos  o 6€ si son originales marca FDI.
 Este último es preferible por varias razones, una de ellas que no importa en que boca se conecta, una vez identificado por windows, siempre le asigna el mismo numero de puerto.

Además del USB, podemos añadir un módulo bluetooth para recibir la información en el móvil Android.
4 - Un modulo bluetooth HC-06 puede conectarse directamente sobre la placa. Es necesario que el adaptador bluetooth tenga los pines en el orden Vcc,Gnd,Tx y Rx, ya que hay varios modelos.
5 -También podemos colocar el adaptador TTL-USB en el interior.  


Instalación con batería portátil.
La forma de uso más independiente para uso portátil es comunicando por bluetooth, por ejemplo alojando el módulo dentro de un cargador portátil para móviles. 
Esta caja con dos baterías de litio puede salir por unos 10€ en Ebay.
6 - Instalación en alimentador de reserva. A la derecha con una protección de goma eva.


7 - Colocando solo dos pilas de litio queda espacio para la placa y el módulo bluetooth.
Con esta adaptación, ademas de los sensores, seguiremos disponiendo de la función batería de emergencia USB y pequeña linterna.


Software
El programa es idéntico para cualquier version en Windows y Android. 
Su funcionamiento se explica con detalle en el manual:  TESS. 
Unos pantallazos ilustrativos:

 Ventana principal.

Gráfica de brillo del cielo.

 Gráfica de nivel de nubes.

Ventana del programa Android.

Adaptador LCD

Para medir manualmente solo el brillo del cielo, sin necesidad de pc o móvil,  en lugar del modulo bluetooth podemos colocar  un adaptador con display LCD, aunque esto supone la perdida de prestaciones.


8 - Prototipo de adaptador LCD para medidas de brillo.


Coste.
 Aunque comprar componentes sueltos no es barato, el coste del material electrónico de la placa, con sensor de brillo, acelerómetro-magnetómetro y filtro IR dicróico, sale por unos 22€, con termopila  sobre 36€ y hay que añadir la comunicación, otros 6€ y la caja.
En total con todos los sensores, caja y doble comunicación (USB y Bluetooth) el material puede salir por unos 52€. 



viernes, 6 de septiembre de 2013

Construye tu All Sky.

Gracias a las cámaras de vigilancia de alta sensibilidad, es posible construir una all-sky a partir de 100€.
Al igual que las cámaras usadas en planetaria, Mintron ó Watec [1], estas cámaras llevan CCD Sony de la familia 960H, solo que usan el formato de 1/3'', de pixeles algo menores.
Además de la buena sensibilidad de los CCDs de Sony, el secreto de estas cámaras es que en esa plaquita tan pequeña, incorporan un potente procesador de imagen, también de Sony, llamado Effio-P. Su principal función se llama SENSE-UP. Resumiendo, digitaliza a 12bit y acumula hasta 500 cuadros, el equivalente a 10sg de exposición, para luego entregar el resultado en formato video CCTV.
Otro detalle curioso de estas cámaras es que mientras hay luz suficiente trabajan en color mientras que al bajar la iluminación empiezan a funcionar en blanco y negro. 

Camara CML2329X y objetivo de 1.7mm F1.6 ambos de Camera2000.  

Estos apuntes parten del trabajo realizado por Jose Mª Petit en Ager en 2010, que sigue siendo válido salvo por la cámara. El empezó usando la VD101H-B36 de RF-Concepts. Cuando yo la pedí en 2012, seguía apareciendo en la web, pero me mandaron un modelo algo diferente que en la practica era inservible porque no tenía sense-up.
En 2012 le siguió la MNL2466X de Camera2000, que es incluso mejor. Con ella están realizadas las fotos en cielo oscuro de abajo. 
Pero ese modelo también esta saliendo de catalogo, así que me he animado a probar otra, la CML2329X, que en teoría es igual y algo más barata, 66€, al no traer caja ni objetivo por defecto. 
Con algunos cambios en el menú de configuración, en las primeras pruebas el resultado es igualmente bueno.

Hace falta una capturadora de vídeo: 
Por Ethernet, como el IP9100A de cuatro canales (70 a 100€)

 Por USB como el EasyZCap (10€)

Material necesario:
 - Cámara CML2329X (63€)     (posible sustituta en 2014: MNL2353X-L36)
 - Objetivo de gran campo PL0074 (27€)
 - Caja de conexiones de 160x115x70 
 - Ventana o cupula.
 - Prensaestopas, para pasar los cables.
 - Capturadora de video. 
 - Alimentador regulado de 12v 1A.

CONFIGURACIÓN DE LA CÁMARA.

La configuración de la cámara se hace pulsando el botón insertado en el cable de la cámara. A continuación una configuración que funciona, al menos en cielos muy contaminados.

CAJAS PARA ALOJAR LA CÁMARA. 

La caja debe ser lo suficientemente estanca para que la cámara no se moje. Una caja de empalmes puede servir, o también un manguito de PVC. La ventana ideal es una semiesfera transparente, aunque un cristal plano también puede valer si es para algo menos de 180º.
Otras precauciones a considerar son la condensación interior y el calor excesivo.
Instalación en caja de conexiones (160x115x70)con ventana plana de cristal corriente. La ventana mide 74mm de diametro. Algo escasa como se ve en la primera foto de abajo, para el objetivo de 165º.

Semiesfera de metacrilato de 100mm de diametro interior [2]. Cuestan unos 15€ con porte pero su calidad óptica es muy baja. Presenta distorsiones locales fuertes. En esta caja de 180x150x110 cabe una cámara reflex con ojo de pez.

Aunque el espesor del borde es 3mm, en el centro baja a 1mm. 

La semiesfera es muy grande para una cámara pequeña. Cortándola por la mitad salen dos piezas de 70mm, ideal para usar como caja un manguito de PVC, como este de 110mm.

La camara se sujeta por el adaptador metálico a una pieza de aluminio. Esto mejora la disipación de calor.

Un disco metálico refuerza la sujección de la semiesfera. Al estar separado de la caja, hace un poco de sombra para evitar el sobrecalentamiento de la caja por el Sol.

USOS DE UNA ALL-SKY

ESTADO DEL CIELO. En el control remoto permite ver el estado del cielo. En un funcionamiento totalmente robótico es preferible un detector de nubes normal que no requiere analizar la imagen.

VIGILANCIA DE METEORITOS. Es una aplicación muy interesante y fácil de poner en marcha. Hay programas que analizan el vídeo en tiempo real , sacando los fragmentos que contienen el meteorito.
MetRec: es un clásico. Lo usa la IMO Video Meteor Network  desde 1999. Esta red dispone de una gran base de datos y presentan unos trabajos semiprofesionales, incluso han descubierto nuevos radiantes.
El problema de MetRec es que sigue funcionado solo con capturadoras de video Matrox exoticas. No acepta otra entrada de video, como una capturadora USB. Si que puede trabajar con grabaciones, pero lo que interesa es trabajar en tiempo real.
UFOCapture: es la alternativa moderna a MetRec, admite capturadoras normales por USB, incluso video en HD. Dispone de paquetes para análisis de trayectorias y calculo de órbitas.
Es el único recomendado por el autor de MetRec. 

CAPTURAS DE EJEMPLO 

Las siguientes tomas son sin quitar el filtro de IR. Es posible retirarlo del CCD para aumentar la sensibilidad.
Captura en cielo muy contaminado, periferia de Madrid, con CML2329X-P y objetivo de 1.7mm F1.6
 Orion a la izquierda, aproximadamente salen las mismas estrellas que se ven a simple vista. 


Cielo muy bueno. Inazares, Granada. Toma con MNL2466X y objetivo 3.6mm F2.

Cielo muy oscuro. Inazares, Granada. MNL2466X con objetivo 3.6mm F2. .

Meteorito con Luna casi llena el 2012-12-2 a las 22-49-7. MNL2466X con objetivo 3.6mm F2